This commit is contained in:
meixiongfeng 2024-01-10 11:13:42 +08:00
commit cfbc02c43e
3 changed files with 146 additions and 146 deletions

View File

@ -1,60 +1,60 @@
package mainline package mainline
import ( // import (
"go_dreamfactory/comm" // "go_dreamfactory/comm"
"go_dreamfactory/pb" // "go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs" // cfg "go_dreamfactory/sys/configure/structs"
) // )
// 参数校验 // // 参数校验
func (this *apiComp) ShopCheck(session comm.IUserSession, req *pb.MainlineShopReq) (errdata *pb.ErrorData) { // func (this *apiComp) ShopCheck(session comm.IUserSession, req *pb.MainlineShopReq) (errdata *pb.ErrorData) {
return // return
} // }
// 查询商店信息 // // 查询商店信息
func (this *apiComp) Shop(session comm.IUserSession, req *pb.MainlineShopReq) (errdata *pb.ErrorData) { // func (this *apiComp) Shop(session comm.IUserSession, req *pb.MainlineShopReq) (errdata *pb.ErrorData) {
var ( // var (
info *pb.DBMainlineShop // info *pb.DBMainlineShop
err error // err error
shopinfo []*cfg.GameMainShopItemData // shopinfo []*cfg.GameMainShopItemData
condiIds []int32 // condiIds []int32
bchange bool // bchange bool
) // )
errdata = this.ShopCheck(session, req) // errdata = this.ShopCheck(session, req)
if errdata != nil { // if errdata != nil {
return // 参数校验失败直接返回 // return // 参数校验失败直接返回
} // }
info, err = this.module.modelShop.getMainlineShopData(session.GetUserId()) // info, err = this.module.modelShop.getMainlineShopData(session.GetUserId())
if err != nil { // if err != nil {
errdata = &pb.ErrorData{ // errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError, // Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(), // Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(), // Message: err.Error(),
} // }
return // return
} // }
shopinfo = this.module.configure.GetAllShopConf() // shopinfo = this.module.configure.GetAllShopConf()
for _, v := range shopinfo { // for _, v := range shopinfo {
condiIds = append(condiIds, v.Unlock) // condiIds = append(condiIds, v.Unlock)
} // }
info.Unlock = make(map[int32]int32) // info.Unlock = make(map[int32]int32)
if data, err := this.module.ModuleBuried.CheckCondition(session, condiIds...); err == nil { // if data, err := this.module.ModuleBuried.CheckCondition(session, condiIds...); err == nil {
for pos, v := range data { // for pos, v := range data {
if int32(v.State) == 1 { // 记录解锁的数据 // if int32(v.State) == 1 { // 记录解锁的数据
key := shopinfo[pos].Key // key := shopinfo[pos].Key
if _, ok := info.Unlock[key]; !ok { // if _, ok := info.Unlock[key]; !ok {
info.Unlock[key] = 1 // info.Unlock[key] = 1
bchange = true // bchange = true
} // }
} // }
} // }
} // }
if bchange { // if bchange {
this.module.modelShop.updateMainlineShopData(session.GetUserId(), info) // this.module.modelShop.updateMainlineShopData(session.GetUserId(), info)
} // }
session.SendMsg(string(this.module.GetType()), "shop", &pb.MainlineShopResp{ // session.SendMsg(string(this.module.GetType()), "shop", &pb.MainlineShopResp{
Info: info, // Info: info,
}) // })
return // return
} // }

View File

@ -1,99 +1,99 @@
package mainline package mainline
import ( // import (
"go_dreamfactory/comm" // "go_dreamfactory/comm"
"go_dreamfactory/pb" // "go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs" // cfg "go_dreamfactory/sys/configure/structs"
) // )
// 参数校验 // // 参数校验
func (this *apiComp) ShopBuyCheck(session comm.IUserSession, req *pb.MainlineShopBuyReq) (errdata *pb.ErrorData) { // func (this *apiComp) ShopBuyCheck(session comm.IUserSession, req *pb.MainlineShopBuyReq) (errdata *pb.ErrorData) {
if req.Cid <= 0 { // if req.Cid <= 0 {
errdata = &pb.ErrorData{ // errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError, // Code: pb.ErrorCode_ReqParameterError,
Title: pb.ErrorCode_ReqParameterError.ToString(), // Title: pb.ErrorCode_ReqParameterError.ToString(),
} // }
return // return
} // }
return // return
} // }
// 商店购买 // // 商店购买
func (this *apiComp) ShopBuy(session comm.IUserSession, req *pb.MainlineShopBuyReq) (errdata *pb.ErrorData) { // func (this *apiComp) ShopBuy(session comm.IUserSession, req *pb.MainlineShopBuyReq) (errdata *pb.ErrorData) {
var ( // var (
info *pb.DBMainlineShop // info *pb.DBMainlineShop
err error // err error
shopConf *cfg.GameMainShopItemData // shopConf *cfg.GameMainShopItemData
bUnlock bool // bUnlock bool
atno []*pb.UserAtno // atno []*pb.UserAtno
tasks []*pb.BuriedParam = make([]*pb.BuriedParam, 0) // tasks []*pb.BuriedParam = make([]*pb.BuriedParam, 0)
) // )
bUnlock = true // bUnlock = true
errdata = this.ShopBuyCheck(session, req) // errdata = this.ShopBuyCheck(session, req)
if errdata != nil { // if errdata != nil {
return // 参数校验失败直接返回 // return // 参数校验失败直接返回
} // }
info, err = this.module.modelShop.getMainlineShopData(session.GetUserId()) // info, err = this.module.modelShop.getMainlineShopData(session.GetUserId())
if err != nil { // if err != nil {
errdata = &pb.ErrorData{ // errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError, // Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(), // Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(), // Message: err.Error(),
} // }
return // return
} // }
if shopConf, err = this.module.configure.GetMlineShopConfById(req.Cid); err != nil { // if shopConf, err = this.module.configure.GetMlineShopConfById(req.Cid); err != nil {
errdata = &pb.ErrorData{ // errdata = &pb.ErrorData{
Code: pb.ErrorCode_ConfigNoFound, // Code: pb.ErrorCode_ConfigNoFound,
Title: pb.ErrorCode_ConfigNoFound.ToString(), // Title: pb.ErrorCode_ConfigNoFound.ToString(),
Message: err.Error(), // Message: err.Error(),
} // }
return // return
} // }
// 检查是否需要解锁 // // 检查是否需要解锁
if shopConf.Unlock != 0 { // if shopConf.Unlock != 0 {
bUnlock = false // bUnlock = false
if _, ok := info.Unlock[req.Cid]; ok { // if _, ok := info.Unlock[req.Cid]; ok {
bUnlock = true // bUnlock = true
} // }
} // }
if !bUnlock { // if !bUnlock {
errdata = &pb.ErrorData{ // errdata = &pb.ErrorData{
Code: pb.ErrorCode_MainlineShopUnlock, // Code: pb.ErrorCode_MainlineShopUnlock,
Title: pb.ErrorCode_MainlineShopUnlock.ToString(), // Title: pb.ErrorCode_MainlineShopUnlock.ToString(),
} // }
return // return
} // }
info.Buytime[req.Cid] += 1 // info.Buytime[req.Cid] += 1
if shopConf.Bugtime > info.Buytime[req.Cid] { // 限购了 买不了 // if shopConf.Bugtime > info.Buytime[req.Cid] { // 限购了 买不了
errdata = &pb.ErrorData{ // errdata = &pb.ErrorData{
Code: pb.ErrorCode_MainlineBuyMaxCount, // Code: pb.ErrorCode_MainlineBuyMaxCount,
Title: pb.ErrorCode_MainlineBuyMaxCount.ToString(), // Title: pb.ErrorCode_MainlineBuyMaxCount.ToString(),
} // }
return // return
} // }
if errdata = this.module.ConsumeRes(session, shopConf.Need, true); errdata != nil { // if errdata = this.module.ConsumeRes(session, shopConf.Need, true); errdata != nil {
return // return
} // }
if errdata, atno = this.module.DispenseAtno(session, shopConf.Itemsell, true); errdata != nil { // if errdata, atno = this.module.DispenseAtno(session, shopConf.Itemsell, true); errdata != nil {
this.module.DispenseRes(session, shopConf.Need, true) // 资源回退 // this.module.DispenseRes(session, shopConf.Need, true) // 资源回退
return // return
} // }
this.module.modelShop.updateMainlineShopData(session.GetUserId(), info) // this.module.modelShop.updateMainlineShopData(session.GetUserId(), info)
session.SendMsg(string(this.module.GetType()), "shopbuy", &pb.MainlineShopBuyResp{ // session.SendMsg(string(this.module.GetType()), "shopbuy", &pb.MainlineShopBuyResp{
Info: info, // Info: info,
Item: atno, // Item: atno,
}) // })
tasks = append(tasks, comm.GetBuriedParam(comm.Rtype236, shopConf.Shopid, 1)) // tasks = append(tasks, comm.GetBuriedParam(comm.Rtype236, shopConf.Shopid, 1))
go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { // go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) {
this.module.ModuleBuried.TriggerBuried(session, tasks...) // this.module.ModuleBuried.TriggerBuried(session, tasks...)
this.module.WriteUserLog(session.GetUserId(), req, comm.GMResAddType, "MainlineShopBuyReq", atno) // this.module.WriteUserLog(session.GetUserId(), req, comm.GMResAddType, "MainlineShopBuyReq", atno)
this.module.WriteUserLog(session.GetUserId(), req, comm.GMResDelType, "MainlineShopBuyReq", shopConf.Need) // this.module.WriteUserLog(session.GetUserId(), req, comm.GMResDelType, "MainlineShopBuyReq", shopConf.Need)
}) // })
return // return
} // }

View File

@ -13,7 +13,7 @@ func (this *apiComp) CompleteTaskCheck(session comm.IUserSession, req *pb.Warord
return return
} }
// /获取系统公告 //获取系统公告
func (this *apiComp) CompleteTask(session comm.IUserSession, req *pb.WarorderCompleteTaskReq) (errdata *pb.ErrorData) { func (this *apiComp) CompleteTask(session comm.IUserSession, req *pb.WarorderCompleteTaskReq) (errdata *pb.ErrorData) {
var ( var (
conf *cfg.GamePassCheckTaskData conf *cfg.GamePassCheckTaskData