From 29dc6e5be5f7963fc52ba5bb060844f91901f848 Mon Sep 17 00:00:00 2001 From: linquan <349589071@qq.com> Date: Fri, 4 Jul 2025 15:32:15 +0800 Subject: [PATCH] debug --- api/v1/game/order.go | 1 + internal/controller/game_pub.go | 12 +- internal/service/aliyunSms.go | 2 +- internal/service/email.go | 2 +- internal/service/tencentSms.go | 3 +- internal/serviceGame/internal/basicinfo.go | 7 +- internal/serviceGame/manage.go | 131 ++++++++------------- internal/serviceGame/order.go | 11 +- utils/util.go | 8 ++ 9 files changed, 84 insertions(+), 93 deletions(-) diff --git a/api/v1/game/order.go b/api/v1/game/order.go index 8774c80..cab4a37 100644 --- a/api/v1/game/order.go +++ b/api/v1/game/order.go @@ -10,6 +10,7 @@ type OrderSearchReq struct { g.Meta `path:"/order/list" tags:"订单" method:"get" summary:"订单列表"` common.Page64Req Account string `p:"account"` + Id string `p:"id"` Uid int32 `p:"uid"` Status int32 `p:"status"` OrderId string `p:"orderId"` diff --git a/internal/controller/game_pub.go b/internal/controller/game_pub.go index 9b5782e..4af5bfe 100644 --- a/internal/controller/game_pub.go +++ b/internal/controller/game_pub.go @@ -2,8 +2,8 @@ package controller import ( "context" - "fmt" "github.com/gogf/gf/v2/encoding/gjson" + "github.com/gogf/gf/v2/errors/gerror" "github.com/gogf/gf/v2/frame/g" "log" "tyj_admin/api/v1/game" @@ -11,7 +11,6 @@ import ( "tyj_admin/internal/service" "tyj_admin/internal/serviceGame" "tyj_admin/library/libUtils" - "tyj_admin/library/liberr" ) var GamePub = pubController{} @@ -54,12 +53,12 @@ func (c *pubController) GetCCD(ctx context.Context, req *game.GetGameCCDReq) (re err = g.Try(ctx, func(ctx context.Context) { if _, ok := set[req.Platform]; !ok { - fmt.Println("err ", err) - liberr.ErrIsNil(ctx, err, "平台输入错误") + err = gerror.New("平台输入错误") + return } res, err = serviceGame.GameCCD().GetGameCCD(ctx, req) - g.Log().Debugf(ctx, "GetGameCCD -> "+res.Url, "Version: "+res.Version) + g.Log().Debugf(ctx, "GetGameCCD -> %s Version: %s", res.Url, res.Version) return }) return @@ -74,8 +73,7 @@ func (c *pubController) GetCCD1(ctx context.Context, req *game.GetGameCCD1Req) ( err = g.Try(ctx, func(ctx context.Context) { if _, ok := set[req.Platform]; !ok { - liberr.ErrIsNil(ctx, err, "平台输入错误") - fmt.Println("err ", err) + err = gerror.New("平台输入错误") return } diff --git a/internal/service/aliyunSms.go b/internal/service/aliyunSms.go index e7a205c..9ccc6c3 100644 --- a/internal/service/aliyunSms.go +++ b/internal/service/aliyunSms.go @@ -57,7 +57,7 @@ func (a *aliYunSmsServiceTmpl) ConfigInit() { smsConfig.CodeSignName = g.Cfg().MustGet(ctx, "game.sms.codeSignName").String() smsConfig.TemplateCode = g.Cfg().MustGet(ctx, "game.sms.templateCode").String() - log.Println("aliyunsms init: ", smsConfig) + log.Println("aliyunsms init: ", gjson.MustEncodeString(smsConfig)) } /* diff --git a/internal/service/email.go b/internal/service/email.go index de8d69c..d62d9f1 100644 --- a/internal/service/email.go +++ b/internal/service/email.go @@ -54,7 +54,7 @@ func (a *emailServiceTmpl) ConfigInit() { emailConfig.Port = g.Cfg().MustGet(ctx, "game.email.port").String() emailConfig.Subject = g.Cfg().MustGet(ctx, "game.email.subject").String() emailConfig.HTML = g.Cfg().MustGet(ctx, "game.email.html").String() - log.Printf("email init") + log.Println("email init: ", gjson.MustEncodeString(emailConfig)) } /* diff --git a/internal/service/tencentSms.go b/internal/service/tencentSms.go index 3f84acc..086e604 100644 --- a/internal/service/tencentSms.go +++ b/internal/service/tencentSms.go @@ -2,6 +2,7 @@ package service import ( "fmt" + "github.com/gogf/gf/v2/encoding/gjson" "github.com/gogf/gf/v2/frame/g" "github.com/gogf/gf/v2/os/gctx" "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common" @@ -51,7 +52,7 @@ func (a *tencentSmsServiceTmpl) ConfigInit() { tencentSmsConfig.CodeSignName = g.Cfg().MustGet(ctx, "game.tencentSms.codeSignName").String() // 已审核通过的短信签名内容 tencentSmsConfig.TemplateCode = g.Cfg().MustGet(ctx, "game.tencentSms.templateCode").String() // 已审核通过的模板ID - log.Println("tencentSms init", tencentSmsConfig) + log.Println("tencentSms init", gjson.MustEncodeString(tencentSmsConfig)) } func (a *tencentSmsServiceTmpl) Main(args []string) (_err error) { diff --git a/internal/serviceGame/internal/basicinfo.go b/internal/serviceGame/internal/basicinfo.go index 2a7c586..98e1114 100644 --- a/internal/serviceGame/internal/basicinfo.go +++ b/internal/serviceGame/internal/basicinfo.go @@ -729,7 +729,6 @@ func GetItemLogTwo(ctx context.Context, req *game.GetItemLogTwoReq) (res *game.G return } model = model.Where("uid=? ", uid) - model = model.Where("server=? ", req.ServerId) } else if req.Uid != 0 { uid, _ := GetIdToUid(ctx, req.Uid) if uid == 0 { @@ -737,7 +736,6 @@ func GetItemLogTwo(ctx context.Context, req *game.GetItemLogTwoReq) (res *game.G return } model = model.Where("uid=? ", uid) - model = model.Where("server=? ", req.ServerId) } else if req.Id != "" { uid, _ := strconv.ParseInt(req.Id, 10, 64) if uid == 0 { @@ -745,11 +743,13 @@ func GetItemLogTwo(ctx context.Context, req *game.GetItemLogTwoReq) (res *game.G return } model = model.Where("uid=? ", uid) - model = model.Where("server=? ", req.ServerId) } if req.ItemId != 0 { model = model.Where("item_id=? ", req.ItemId) } + if req.ServerId != 0 { + model = model.Where("server=? ", req.ServerId) + } res.Total, err = model.Count() err = model.Page(req.PageNum, req.PageSize).Order("c_time desc").Scan(&res.Logs) if err != nil { @@ -818,6 +818,7 @@ func GameRegister(ctx context.Context, req *game.RegisterReq) (res *game.Registe }) return } + func setAccount(ctx context.Context, req *game.LoginOutReq) { g.Try(ctx, func(ctx context.Context) { account, err := GetAccountByUid(ctx, req.Uid, fmt.Sprint(req.Server)) diff --git a/internal/serviceGame/manage.go b/internal/serviceGame/manage.go index 2743c1b..9c43280 100644 --- a/internal/serviceGame/manage.go +++ b/internal/serviceGame/manage.go @@ -91,7 +91,7 @@ func (ga *gameManageImpl) CopyUnit(ctx context.Context, req *game.CopyUnitReq) ( return res, errors.New("区服不存在!") } filename := "Unit" + fmt.Sprint(req.SrcName) + ".json" - storeFilename := "storeComponent" + fmt.Sprint(req.SrcName) + ".json" + storeFilename := "StoreComponent" + fmt.Sprint(req.SrcName) + ".json" deadFilename := "DeadVillagerManagerComponent" + fmt.Sprint(req.SrcName) + ".json" decorationFilename := "DecorationManagerComponent" + fmt.Sprint(req.SrcName) + ".json" //userDir := "./download/" + filename @@ -163,17 +163,48 @@ func (ga *gameManageImpl) UpdateUnit(ctx context.Context, req *game.UpdateUnitRe destId, err1 := internal.GetIdToUid(ctx, int64(req.DestName)) if err1 != nil { - return res, err1 + err = err1 + return } userDir := "./download/Unit" + fmt.Sprint(req.DestName) + fmt.Sprint(time.Now().Unix()) + ".json" - srcUserDir := "./download/" + req.Filename + srcId, err1 := writeFile1(destId, userDir, req.Filename, req.DestName) + if err1 != nil { + err = err1 + return + } + log.Printf("copyUnit srcid: %s, destid: %d, DestName: %d", srcId, destId, req.DestName) + userStoreDir := "./download/StoreComponent" + fmt.Sprint(req.DestName) + fmt.Sprint(time.Now().Unix()) + ".json" + err = writeFile(destId, srcId, userStoreDir, req.StoreFilename) + if err != nil { + return + } + userDeadDir := "./download/DeadVillagerManagerComponent" + fmt.Sprint(req.DestName) + fmt.Sprint(time.Now().Unix()) + ".json" + err = writeFile(destId, srcId, userDeadDir, req.DeadFilename) + if err != nil { + return + } + userDecorationDir := "./download/DecorationManagerComponent" + fmt.Sprint(req.DestName) + fmt.Sprint(time.Now().Unix()) + ".json" + err = writeFile(destId, srcId, userDecorationDir, req.DecorationFilename) + if err != nil { + return + } + g.Try(ctx, func(ctx context.Context) { + mongoimportCommand(ctx, "Unit", userDir, mongoConfig) + mongoimportCommand(ctx, "StoreComponent", userStoreDir, mongoConfig) + mongoimportCommand(ctx, "DeadVillagerManagerComponent", userDeadDir, mongoConfig) + mongoimportCommand(ctx, "DecorationManagerComponent", userDecorationDir, mongoConfig) + }) + return +} + +func writeFile1(destId int64, userDir string, fileName string, destName int) (srcId string, err error) { + srcUserDir := "./download/" + fileName writeByte, err1 := os.ReadFile(srcUserDir) if err1 != nil { - return res, err1 + return "", err1 } srcUid := "" - srcId := "" var v1 map[string]interface{} if strings.HasPrefix(string(writeByte), "[") { user := []interface{}{} @@ -192,103 +223,45 @@ func (ga *gameManageImpl) UpdateUnit(ctx context.Context, req *game.UpdateUnitRe srcId = fmt.Sprint(UniqueId["$numberLong"]) } - log.Printf("copyUnit srcid: %s, uid: %s, destid: %d, uid: %d", srcId, srcUid, destId, req.DestName) + log.Printf("copyUnit srcid: %s, uid: %s, destId: %d, destName: %d", srcId, srcUid, destId, destName) if srcId == "" || srcUid == "" { return } writeUnitString := strings.ReplaceAll(gjson.MustEncodeString(v1), srcId, fmt.Sprint(destId)) - writeUnitString = internal.ReplaceLastOccurrence(writeUnitString, srcUid, fmt.Sprint(req.DestName)) + writeUnitString = internal.ReplaceLastOccurrence(writeUnitString, srcUid, fmt.Sprint(destName)) if err = os.WriteFile(userDir, []byte(writeUnitString), 0666); err != nil { log.Println(err) return } - userStoreDir := "./download/storeComponent" + fmt.Sprint(req.DestName) + fmt.Sprint(time.Now().Unix()) + ".json" - srcStoreDir := "./download/" + req.StoreFilename - writeStoreByte, err1 := os.ReadFile(srcStoreDir) - if err1 != nil { - return res, err1 - } - - var v2 map[string]interface{} - if strings.HasPrefix(string(writeStoreByte), "[") { - user := []interface{}{} - json.Unmarshal(writeStoreByte, &user) - if len(user) != 0 { - v2 = user[0].(map[string]interface{}) - } - } else { - json.Unmarshal(writeStoreByte, &v2) - } - writeStoreString := strings.ReplaceAll(gjson.MustEncodeString(v2), srcId, fmt.Sprint(destId)) - if err = os.WriteFile(userStoreDir, []byte(writeStoreString), 0666); err != nil { - log.Println(err) - return - } - - userDeadDir := "./download/DeadVillagerManagerComponent" + fmt.Sprint(req.DestName) + fmt.Sprint(time.Now().Unix()) + ".json" - srcDeadDir := "./download/" + req.DeadFilename - writeDeadByte, err1 := os.ReadFile(srcDeadDir) - if err1 != nil { - return res, err1 - } - - var v3 map[string]interface{} - if strings.HasPrefix(string(writeDeadByte), "[") { - user := []interface{}{} - json.Unmarshal(writeDeadByte, &user) - if len(user) != 0 { - v3 = user[0].(map[string]interface{}) - } - } else { - json.Unmarshal(writeDeadByte, &v3) - } - if len(v3) != 0 { - writeDeadString := strings.ReplaceAll(gjson.MustEncodeString(v3), srcId, fmt.Sprint(destId)) - if err = os.WriteFile(userDeadDir, []byte(writeDeadString), 0666); err != nil { - log.Println(err) - return - } - } + return +} - userDecorationDir := "./download/DecorationManagerComponent" + fmt.Sprint(req.DestName) + fmt.Sprint(time.Now().Unix()) + ".json" - srcDecorationDir := "./download/" + req.DecorationFilename - writeDecorationByte, err1 := os.ReadFile(srcDecorationDir) +func writeFile(destId int64, srcId string, userDir string, fileName string) (err error) { + srcDir := "./download/" + fileName + writeByte, err1 := os.ReadFile(srcDir) if err1 != nil { - return res, err1 + return err1 } - var v4 map[string]interface{} - if strings.HasPrefix(string(writeDecorationByte), "[") { + var v map[string]interface{} + if strings.HasPrefix(string(writeByte), "[") { user := []interface{}{} - json.Unmarshal(writeDecorationByte, &user) + json.Unmarshal(writeByte, &user) if len(user) != 0 { - v4 = user[0].(map[string]interface{}) + v = user[0].(map[string]interface{}) } } else { - json.Unmarshal(writeDecorationByte, &v4) + json.Unmarshal(writeByte, &v) } - if len(v4) != 0 { - writeDecorationString := strings.ReplaceAll(gjson.MustEncodeString(v4), srcId, fmt.Sprint(destId)) - if err = os.WriteFile(userDecorationDir, []byte(writeDecorationString), 0666); err != nil { + if len(v) != 0 { + writeString := strings.ReplaceAll(gjson.MustEncodeString(v), srcId, fmt.Sprint(destId)) + if err = os.WriteFile(userDir, []byte(writeString), 0666); err != nil { log.Println(err) return } } - //writeUnitCmd := fmt.Sprintf("mongoimport --uri=\"%s\" --authenticationDatabase=%s --collection=Unit --file=\"%s\" --type=json --mode=upsert", - // mongoConfig.Link1, mongoConfig.Auth, userDir) - //writeStoreCmd := fmt.Sprintf("mongoimport --uri=\"%s\" --authenticationDatabase=%s --collection=StoreComponent --file=\"%s\" --type=json --mode=upsert", - // mongoConfig.Link1, mongoConfig.Auth, userStoreDir) - //log.Println("sh Unit: ", writeUnitCmd) - //log.Println("sh StoreComponent: ", writeStoreCmd) - g.Try(ctx, func(ctx context.Context) { - mongoimportCommand(ctx, "Unit", userDir, mongoConfig) - mongoimportCommand(ctx, "StoreComponent", userStoreDir, mongoConfig) - mongoimportCommand(ctx, "DeadVillagerManagerComponent", userDeadDir, mongoConfig) - mongoimportCommand(ctx, "DecorationManagerComponent", userDecorationDir, mongoConfig) - }) - //fmt.Println("UpdateUnit GetRoleDelta", gjson.MustEncodeString(req)) return } diff --git a/internal/serviceGame/order.go b/internal/serviceGame/order.go index efd384e..7dfa0ba 100644 --- a/internal/serviceGame/order.go +++ b/internal/serviceGame/order.go @@ -11,6 +11,7 @@ import ( "github.com/gogf/gf/v2/errors/gerror" "github.com/gogf/gf/v2/frame/g" "log" + "strconv" "time" "tyj_admin/api/v1/game" "tyj_admin/internal/consts" @@ -20,6 +21,7 @@ import ( "tyj_admin/internal/service" "tyj_admin/internal/serviceGame/internal" "tyj_admin/library/libUtils" + "tyj_admin/utils" ) type IGameOrder interface { @@ -216,12 +218,19 @@ func (o gameOrderImpl) GetOrders(ctx context.Context, req *game.OrderSearchReq) } orderModel := dao.GameRecharge.Ctx(ctx) if req.Account != "" { - uid, err := internal.AccountToUids(ctx, req.Account) + uid, err := internal.AccountToUids(ctx, utils.GetAccount(req.Account, req.Channel)) if err != nil { return nil, err } orderModel = orderModel.Where(`unitId in (?) `, uid) } + if req.Id != "" { + uid, err := strconv.ParseInt(req.Id, 10, 64) + if err != nil { + return nil, err + } + orderModel = orderModel.Where(`unitId=? `, uid) + } if req.Uid != 0 { uid, err := internal.GetIdToUid(ctx, int64(req.Uid)) if err != nil { diff --git a/utils/util.go b/utils/util.go index eb4b1c2..a478011 100644 --- a/utils/util.go +++ b/utils/util.go @@ -10,6 +10,7 @@ import ( "os" "os/exec" "strconv" + "strings" "time" "tyj_admin/internal/model/entity" ) @@ -191,3 +192,10 @@ func GenerateRandomString(length int) string { } return string(b) } + +func GetAccount(account, channel string) string { + if channel == "000000000000" && !strings.Contains(account, channel) { + account = channel + account + } + return account +}