You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
128 lines
4.5 KiB
128 lines
4.5 KiB
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 |
|
}
|
|
|