|
|
|
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
|
|
|
|
}
|