diff --git a/modules/dispatch/api_autoreceive.go b/modules/dispatch/api_autoreceive.go index 6f43d7245..01f3fe301 100644 --- a/modules/dispatch/api_autoreceive.go +++ b/modules/dispatch/api_autoreceive.go @@ -14,7 +14,10 @@ func (a *apiComp) Autoreceive(session comm.IUserSession, req *pb.DispatchAutoRec rsp := &pb.DispatchAutoReceiveResp{} d := a.module.modelDispatch.getDBDispatch(session.GetUserId()) if d == nil { - code = pb.ErrorCode_DataNotFound + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DataNotFound, + Title: pb.ErrorCode_DataNotFound.ToString(), + } return } // var flag bool diff --git a/modules/dispatch/api_do.go b/modules/dispatch/api_do.go index a5a2b5fed..1f694f98f 100644 --- a/modules/dispatch/api_do.go +++ b/modules/dispatch/api_do.go @@ -38,7 +38,11 @@ func (this *apiComp) Do(session comm.IUserSession, req *pb.DispatchDoReq) (errda dConf, err := this.module.configure.getDispatchTaskConf(req.TaskId) if err != nil { - code = pb.ErrorCode_SystemError + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_ConfigNoFound, + Title: pb.ErrorCode_ConfigNoFound.ToString(), + Message: err.Error(), + } return } @@ -53,20 +57,32 @@ func (this *apiComp) Do(session comm.IUserSession, req *pb.DispatchDoReq) (errda if len(req.HeroIds) < int(dConf.Taskneed) { this.module.Error("英雄派遣:", log.Field{Key: "HeroIds len", Value: len(req.HeroIds)}, log.Field{Key: "Taskneed", Value: dConf.Taskneed}) - code = pb.ErrorCode_DispatchHeroNoEnough + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DispatchHeroNoEnough, + Title: pb.ErrorCode_DispatchHeroNoEnough.ToString(), + Message: err.Error(), + } return } d := this.module.modelDispatch.getDBDispatch(session.GetUserId()) if d == nil && d.Nb == nil { - code = pb.ErrorCode_DataNotFound + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DataNotFound, + Title: pb.ErrorCode_DataNotFound.ToString(), + Message: err.Error(), + } return } //校验门票 ticketAtn := this.module.ModuleTools.GetGlobalConf().DispatchNumtools if errdata = this.module.CheckRes(session, []*cfg.Gameatn{ticketAtn}); errdata != nil { - code = pb.ErrorCode_DispatchTicketNoEnough + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DispatchTicketNoEnough, + Title: pb.ErrorCode_DispatchTicketNoEnough.ToString(), + Message: err.Error(), + } return } @@ -74,6 +90,7 @@ func (this *apiComp) Do(session comm.IUserSession, req *pb.DispatchDoReq) (errda if err := this.module.modelDispatch.dispatch(session.GetUserId(), req.TaskId, req.HeroIds, d); err != nil { var errCustom = new(comm.CustomError) + var code pb.ErrorCode if errors.As(err, &errCustom) { code = errCustom.Code } else { @@ -82,6 +99,12 @@ func (this *apiComp) Do(session comm.IUserSession, req *pb.DispatchDoReq) (errda Title: pb.ErrorCode_DBError.ToString(), Message: err.Error(), } + return + } + errdata = &pb.ErrorData{ + Code: code, + Title: code.ToString(), + Message: err.Error(), } return } diff --git a/modules/dispatch/api_notice.go b/modules/dispatch/api_notice.go index 103a34405..a4cfccfea 100644 --- a/modules/dispatch/api_notice.go +++ b/modules/dispatch/api_notice.go @@ -17,7 +17,10 @@ func (a *apiComp) NoticeCheck(session comm.IUserSession, req *pb.DispatchNoticeR func (a *apiComp) Notice(session comm.IUserSession, req *pb.DispatchNoticeReq) (errdata *pb.ErrorData) { d := a.module.modelDispatch.getDBDispatch(session.GetUserId()) if d == nil { - code = pb.ErrorCode_DataNotFound + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DataNotFound, + Title: pb.ErrorCode_DataNotFound.ToString(), + } return } uid := session.GetUserId() diff --git a/modules/dispatch/api_receive.go b/modules/dispatch/api_receive.go index fd04f0fb8..4999b7295 100644 --- a/modules/dispatch/api_receive.go +++ b/modules/dispatch/api_receive.go @@ -24,7 +24,10 @@ func (a *apiComp) Receive(session comm.IUserSession, req *pb.DispatchReceiveReq) } d := a.module.modelDispatch.getDBDispatch(session.GetUserId()) if d == nil { - code = pb.ErrorCode_DataNotFound + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DataNotFound, + Title: pb.ErrorCode_DataNotFound.ToString(), + } return } @@ -39,7 +42,10 @@ func (a *apiComp) Receive(session comm.IUserSession, req *pb.DispatchReceiveReq) } if !flag { - code = pb.ErrorCode_DispatchNoFinished + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DispatchNoFinished, + Title: pb.ErrorCode_DispatchNoFinished.ToString(), + } return } diff --git a/modules/dispatch/api_refresh.go b/modules/dispatch/api_refresh.go index 1f686d6b9..76cd6c367 100644 --- a/modules/dispatch/api_refresh.go +++ b/modules/dispatch/api_refresh.go @@ -17,7 +17,10 @@ func (a *apiComp) Refresh(session comm.IUserSession, req *pb.DispatchRefreshReq) d := a.module.modelDispatch.getDBDispatch(session.GetUserId()) if d == nil { - code = pb.ErrorCode_DataNotFound + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DataNotFound, + Title: pb.ErrorCode_DataNotFound.ToString(), + } return } @@ -26,8 +29,14 @@ func (a *apiComp) Refresh(session comm.IUserSession, req *pb.DispatchRefreshReq) //更新刷新次数 if err := a.module.modelDispatch.updateFreeCount(session.GetUserId(), d.Nb); err != nil { var customer = new(comm.CustomError) + var code pb.ErrorCode if errors.As(err, &customer) { code = customer.Code + errdata = &pb.ErrorData{ + Code: code, + Title: code.ToString(), + Message: err.Error(), + } } else { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, @@ -40,7 +49,10 @@ func (a *apiComp) Refresh(session comm.IUserSession, req *pb.DispatchRefreshReq) } else { refreshCount := a.module.ModuleTools.GetGlobalConf().DispatchRefreshtimes if d.Nb.RefreshCount >= refreshCount { - code = pb.ErrorCode_DispatchRefreshMax + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DispatchRefreshMax, + Title: pb.ErrorCode_DispatchRefreshMax.ToString(), + } return } //消耗金币 diff --git a/modules/dispatch/api_week.go b/modules/dispatch/api_week.go index 63c40476d..8cff098cb 100644 --- a/modules/dispatch/api_week.go +++ b/modules/dispatch/api_week.go @@ -23,7 +23,10 @@ func (a *apiComp) Weekrecive(session comm.IUserSession, req *pb.DispatchWeekReci d := a.module.modelDispatch.getDBDispatch(session.GetUserId()) if d == nil { - code = pb.ErrorCode_DataNotFound + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DataNotFound, + Title: pb.ErrorCode_DataNotFound.ToString(), + } return } diff --git a/modules/dispatch/model_dispatch.go b/modules/dispatch/model_dispatch.go index e7b291ede..608e54148 100644 --- a/modules/dispatch/model_dispatch.go +++ b/modules/dispatch/model_dispatch.go @@ -253,7 +253,7 @@ func (this *modelDispatch) validHeroCond(uid string, taskId int32, heroId string //获取英雄信息 hero, code := this.module.ModuleHero.GetHeroByObjID(uid, heroId) - if code == pb.ErrorCode_Success && hero != nil { + if code == nil && hero != nil { for _, v := range gd.Taskreq { switch v.Key { case 1: //校验英雄的基础条件