47 lines
1.3 KiB
Go
47 lines
1.3 KiB
Go
package hero
|
|
|
|
import (
|
|
"go_dreamfactory/comm"
|
|
"go_dreamfactory/pb"
|
|
)
|
|
|
|
//参数校验
|
|
func (this *apiComp) AppointHeroCheck(session comm.IUserSession, req *pb.HeroAppointHeroReq) (errdata *pb.ErrorData) {
|
|
if req.Heroid == "" {
|
|
errdata = &pb.ErrorData{
|
|
Code: pb.ErrorCode_ReqParameterError,
|
|
Title: pb.ErrorCode_ReqParameterError.ToString(),
|
|
}
|
|
}
|
|
return
|
|
}
|
|
|
|
func (this *apiComp) AppointHero(session comm.IUserSession, req *pb.HeroAppointHeroReq) (errdata *pb.ErrorData) {
|
|
update := make(map[string]interface{}, 0)
|
|
if errdata = this.AppointHeroCheck(session, req); errdata != nil {
|
|
return
|
|
}
|
|
|
|
heroRecord, _ := this.module.modelRecord.GetHeroRecord(session.GetUserId())
|
|
if req.DrawType == 0 { //招募类型 0 限定招募 1 许愿招募
|
|
if heroRecord.LimitHero != req.Heroid {
|
|
heroRecord.LimitHero = req.Heroid
|
|
update["limitHero"] = heroRecord.LimitHero
|
|
this.module.modelRecord.ChangeHeroRecord(session.GetUserId(), update)
|
|
}
|
|
|
|
} else {
|
|
if heroRecord.WishHero != req.Heroid {
|
|
heroRecord.WishHero = req.Heroid
|
|
update["wishHero"] = heroRecord.WishHero
|
|
this.module.modelRecord.ChangeHeroRecord(session.GetUserId(), update)
|
|
}
|
|
}
|
|
|
|
session.SendMsg(string(this.module.GetType()), HeroAppointHeroResp, &pb.HeroAppointHeroResp{
|
|
DrawType: req.DrawType,
|
|
Heroid: req.Heroid,
|
|
})
|
|
return
|
|
}
|