package serviceGame import ( "context" "fmt" "github.com/gogf/gf/v2/encoding/gcharset" "github.com/gogf/gf/v2/encoding/gjson" "github.com/gogf/gf/v2/frame/g" "log" "tyj_admin/api/v1/game" "tyj_admin/internal/serviceGame/internal" ) type IGameRank interface { Get(ctx context.Context, req *game.GetRankReq) (res *game.GetRankRes, err error) Update(ctx context.Context, req *game.UpdateRankReq) (res *game.UpdateRankRes, err error) Insert(ctx context.Context, req *game.InsertRankReq) (res *game.InsertRankRes, err error) Del(ctx context.Context, req *game.DelRankReq) (res *game.DelRankRes, err error) Check(ctx context.Context, req *game.CheckRankReq) (res *game.CheckRankRes, err error) GetAward(ctx context.Context, req *game.GetRankAwardReq) (res *game.GetRankAwardRes, err error) UpdateAward(ctx context.Context, req *game.UpdateRankAwardReq) (res *game.UpdateRankAwardRes, err error) InsertAward(ctx context.Context, req *game.InsertRankAwardReq) (res *game.InsertRankAwardRes, err error) AddRankGroup(ctx context.Context, req *game.AddRankGroupReq) (res *game.AddRankGroupRes, err error) GetGameRank(ctx context.Context, req *game.GetGameRankReq) (res *game.GetGameRankRes, err error) DeleteGameRank(ctx context.Context, req *game.DeleteGameRankReq) (res *game.DeleteGameRankRes, err error) } type gameRankImpl struct { } var gameRankService = gameRankImpl{} func GameRank() IGameRank { return &gameRankService } func (r *gameRankImpl) GetAward(ctx context.Context, req *game.GetRankAwardReq) (res *game.GetRankAwardRes, err error) { res = new(game.GetRankAwardRes) res.RankAward, err = internal.GetRankAward(ctx, req.Id, req.Type) log.Print("GetRankAward ", res) return } func (r *gameRankImpl) UpdateAward(ctx context.Context, req *game.UpdateRankAwardReq) (res *game.UpdateRankAwardRes, err error) { err = internal.UpdateRankAward(ctx, req.RankAward) log.Print("UpdateRankAward", err) return } func (r *gameRankImpl) InsertAward(ctx context.Context, req *game.InsertRankAwardReq) (res *game.InsertRankAwardRes, err error) { err = internal.InsertRankAward(ctx, req.RankAward) log.Print("InsertRankAward", err) return } func (r *gameRankImpl) Get(ctx context.Context, req *game.GetRankReq) (res *game.GetRankRes, err error) { res, err = internal.GetRank(ctx, req) log.Print("GetRankAward ", res) return } func (r *gameRankImpl) Update(ctx context.Context, req *game.UpdateRankReq) (res *game.UpdateRankRes, err error) { err = internal.UpdateRank(ctx, req.Rank) log.Print("UpdateRankAward", err) return } func (r *gameRankImpl) Insert(ctx context.Context, req *game.InsertRankReq) (res *game.InsertRankRes, err error) { err = internal.InsertRank(ctx, req.Rank) log.Print("InsertRank", err) return } func (r *gameRankImpl) Del(ctx context.Context, req *game.DelRankReq) (res *game.DelRankRes, err error) { err = internal.DelRank(ctx, req.Rank) log.Print("InsertRank", err) return } func (r *gameRankImpl) Check(ctx context.Context, req *game.CheckRankReq) (res *game.CheckRankRes, err error) { res = new(game.CheckRankRes) res.Rank, res.StringId, err = internal.CheckRank(ctx, req.Rank) log.Print("InsertRank", err) return } func (r *gameRankImpl) AddRankGroup(ctx context.Context, req *game.AddRankGroupReq) (res *game.AddRankGroupRes, err error) { res = new(game.AddRankGroupRes) res, err = internal.AddRankGroup(ctx, req) log.Print("InsertRank", err) return } func (r *gameRankImpl) GetGameRank(ctx context.Context, req *game.GetGameRankReq) (res *game.GetGameRankRes, err error) { res = new(game.GetGameRankRes) res, err = internal.GetGameRank(ctx, req) log.Print("GetGameRank", err) return } func (r *gameRankImpl) DeleteGameRank(ctx context.Context, req *game.DeleteGameRankReq) (res *game.DeleteGameRankRes, err error) { res = new(game.DeleteGameRankRes) ip := internal.ServerConfig[fmt.Sprint(req.ServerId)] url := "http://" + ip + "/deleteRank?unitId=" uid, _ := internal.GetIdToUid(ctx, req.Uid) url += fmt.Sprint(uid) bytes := g.Client().GetBytes(ctx, url) fmt.Println("DeleteGameRank: ", url) src := string(bytes) if g.IsEmpty(src) { g.Log().Printf(ctx, "%d DeleteGameRank: gerror.New(\"空回调,发送失败\")", req.ServerId) return res, nil } srcCharset := "UTF-8" tmp, _ := gcharset.ToUTF8(srcCharset, src) fmt.Println("DeleteGameRank: ", tmp) json, err := gjson.DecodeToJson(tmp) if err != nil { return } fmt.Println("DeleteGameRank: ", gjson.MustEncodeString(json)) if json.Get("Error").Int() == 200 { res.Mess = json.Get("Message").String() return } return }