From 5d0d6a9253ae2645b3a367e87c905d115469fd89 Mon Sep 17 00:00:00 2001 From: liwei1dao Date: Wed, 31 May 2023 18:01:53 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E4=BB=A3=E7=A0=81=E8=A7=84?= =?UTF-8?q?=E8=8C=83=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/items/api_buyphysical.go | 17 +++++++++++++++- modules/items/api_buyunifiedticket.go | 4 ++++ modules/items/api_decompose.go | 29 +++++++++++++++++++++------ modules/items/api_getlist.go | 4 ++++ modules/items/api_potionsynthesis.go | 4 ++++ modules/items/api_sellinbulk.go | 13 ++++++++---- modules/items/module.go | 2 ++ 7 files changed, 62 insertions(+), 11 deletions(-) diff --git a/modules/items/api_buyphysical.go b/modules/items/api_buyphysical.go index edcee2ef4..1637f4a39 100644 --- a/modules/items/api_buyphysical.go +++ b/modules/items/api_buyphysical.go @@ -15,7 +15,7 @@ func (this *apiComp) BuyPhysicalCheck(session comm.IUserSession, req *pb.ItemsBu return } -//出售道具 +//购买 func (this *apiComp) BuyPhysical(session comm.IUserSession, req *pb.ItemsBuyPhysicalReq) (code pb.ErrorCode, data *pb.ErrorData) { var ( err error @@ -25,15 +25,27 @@ func (this *apiComp) BuyPhysical(session comm.IUserSession, req *pb.ItemsBuyPhys sale []*cfg.Gameatn ) if code = this.BuyPhysicalCheck(session, req); code != pb.ErrorCode_Success { + data = &pb.ErrorData{ + Title: code.ToString(), + Message: req.String(), + } return } if user, err = this.module.ModuleUser.GetUserExpand(session.GetUserId()); err != nil { code = pb.ErrorCode_ReqParameterError + data = &pb.ErrorData{ + Title: code.ToString(), + Message: req.String(), + } return } if needs = this.module.ModuleTools.GetGlobalConf().PsBuy; needs == nil && len(needs) == 0 { code = pb.ErrorCode_ConfigNoFound + data = &pb.ErrorData{ + Title: code.ToString(), + Message: comm.NewNotFoundConfErr(modelName, "global.json", "PsBuy").Error(), + } return } @@ -43,6 +55,9 @@ func (this *apiComp) BuyPhysical(session comm.IUserSession, req *pb.ItemsBuyPhys if req.Amount+uint32(user.Physicalbuynum) > uint32(len(needs)) { code = pb.ErrorCode_ItemsBuyPsUpperLimit + data = &pb.ErrorData{ + Title: code.ToString(), + } return } diff --git a/modules/items/api_buyunifiedticket.go b/modules/items/api_buyunifiedticket.go index 2555c0450..ad56c8898 100644 --- a/modules/items/api_buyunifiedticket.go +++ b/modules/items/api_buyunifiedticket.go @@ -19,6 +19,10 @@ func (this *apiComp) BuyUnifiedTicket(session comm.IUserSession, req *pb.ItemsBu info *pb.DBUserExpand ) if code = this.BuyUnifiedTicketCheck(session, req); code != pb.ErrorCode_Success { + data = &pb.ErrorData{ + Title: code.ToString(), + Message: req.String(), + } return } if info, code = this.module.modelItems.buyTicket(session, req.BuyNum); code != pb.ErrorCode_Success { diff --git a/modules/items/api_decompose.go b/modules/items/api_decompose.go index d78a7a3a0..cade22963 100644 --- a/modules/items/api_decompose.go +++ b/modules/items/api_decompose.go @@ -1,6 +1,7 @@ package items import ( + "fmt" "go_dreamfactory/comm" "go_dreamfactory/pb" cfg "go_dreamfactory/sys/configure/structs" @@ -14,7 +15,7 @@ func (this *apiComp) DecomposeCheck(session comm.IUserSession, req *pb.ItemsDeco return } -//出售道具 +//分解道具 func (this *apiComp) Decompose(session comm.IUserSession, req *pb.ItemsDecomposeReq) (code pb.ErrorCode, data *pb.ErrorData) { var ( err error @@ -27,18 +28,30 @@ func (this *apiComp) Decompose(session comm.IUserSession, req *pb.ItemsDecompose } if item, err = this.module.modelItems.QueryUserPackByGridId(session.GetUserId(), req.GridId); err != nil { code = pb.ErrorCode_ReqParameterError + data = &pb.ErrorData{ + Title: code.ToString(), + Message: err.Error(), + } return } if itemcf, err = this.module.configure.GetItemConfigure(item.ItemId); err != nil { code = pb.ErrorCode_ConfigurationException return } - if itemcf.Sale == nil || len(itemcf.Sale) == 0 { - code = pb.ErrorCode_ItemsUseNoCanSell - return - } + // if itemcf.Sale == nil || len(itemcf.Sale) == 0 { + // code = pb.ErrorCode_ItemsUseNoCanSell + // data = &pb.ErrorData{ + // Title: code.ToString(), + // Message: fmt.Sprintf("道具未配置"), + // } + // return + // } if itemcf.DecomposeDeplete == nil || len(itemcf.DecomposeDeplete) == 0 { code = pb.ErrorCode_ItemsUseNoCanSell + data = &pb.ErrorData{ + Title: code.ToString(), + Message: fmt.Sprintf("道具分解配置未配置! 道具id:%s", itemcf.Id), + } return } sale = make([]*cfg.Gameatn, 0, len(itemcf.DecomposeDeplete)) @@ -54,8 +67,12 @@ func (this *apiComp) Decompose(session comm.IUserSession, req *pb.ItemsDecompose } if req.Amount > item.Amount { - code = pb.ErrorCode_ReqParameterError this.module.Errorf("SellItemCheck over all amount:[%d:%d]", req.Amount, item.Amount) + code = pb.ErrorCode_ReqParameterError + data = &pb.ErrorData{ + Title: code.ToString(), + Message: fmt.Sprintf("道具数量不足! 道具数量:%s", item.Amount), + } return } sale = make([]*cfg.Gameatn, len(itemcf.Sale)) diff --git a/modules/items/api_getlist.go b/modules/items/api_getlist.go index 686692758..4a27be265 100644 --- a/modules/items/api_getlist.go +++ b/modules/items/api_getlist.go @@ -37,6 +37,10 @@ func (this *apiComp) Getlist(session comm.IUserSession, req *pb.ItemsGetlistReq) if items, err = this.module.modelItems.QueryUserPack(session.GetUserId()); err != nil { this.module.Errorf("QueryUserPackReq err:%v", err) code = pb.ErrorCode_CacheReadError + data = &pb.ErrorData{ + Title: code.ToString(), + Message: err.Error(), + } return } else { // tempgrids = this.module.configure.GetPackItemByType(items, req.IType) diff --git a/modules/items/api_potionsynthesis.go b/modules/items/api_potionsynthesis.go index 1e894c0d5..6dcfbfbad 100644 --- a/modules/items/api_potionsynthesis.go +++ b/modules/items/api_potionsynthesis.go @@ -22,6 +22,10 @@ func (this *apiComp) PotionSynthesis(session comm.IUserSession, req *pb.ItemsPot ) if configure, err = this.module.configure.GetMaterialConfigure(req.Id); err != nil { code = pb.ErrorCode_ConfigNoFound + data = &pb.ErrorData{ + Title: code.ToString(), + Message: err.Error(), + } return } need = make([]*cfg.Gameatn, len(configure.Material)) diff --git a/modules/items/api_sellinbulk.go b/modules/items/api_sellinbulk.go index a5da6890a..d68330827 100644 --- a/modules/items/api_sellinbulk.go +++ b/modules/items/api_sellinbulk.go @@ -37,6 +37,10 @@ func (this *apiComp) Sellinbulk(session comm.IUserSession, req *pb.ItemsSellinbu } if itemcf, err = this.module.configure.GetItemConfigures(cids); err != nil { code = pb.ErrorCode_ConfigurationException + data = &pb.ErrorData{ + Title: code.ToString(), + Message: err.Error(), + } return } issucc = make([]bool, len(items)) @@ -68,12 +72,13 @@ func (this *apiComp) Sellinbulk(session comm.IUserSession, req *pb.ItemsSellinbu if err = this.module.modelItems.UpdateUserPack(session.GetUserId(), items...); err != nil { this.module.Errorln(err) code = pb.ErrorCode_DBError + data = &pb.ErrorData{ + Title: code.ToString(), + Message: err.Error(), + } return } - if err = this.module.itemsChangePush(session, items); err != nil { - this.module.Errorln(err) - return - } + this.module.itemsChangePush(session, items) session.SendMsg(string(this.module.GetType()), "sellitem", &pb.ItemsSellinbulkResp{Grids: req.Grids, Amount: req.Amount, Issucc: issucc}) return } diff --git a/modules/items/module.go b/modules/items/module.go index 9e0ea1d88..6f132b332 100644 --- a/modules/items/module.go +++ b/modules/items/module.go @@ -12,6 +12,8 @@ import ( "go_dreamfactory/lego/sys/event" ) +const modelName = "道具背包" + /* 模块名:Pack 描述:背包系统模块