service.go 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. package leagueMember
  2. import (
  3. "f1-game/internal/component/redis"
  4. nameRedis "f1-game/internal/name/redis"
  5. nameRoute "f1-game/internal/name/route"
  6. "f1-game/internal/pb"
  7. "f1-game/internal/sessions"
  8. "f1-game/nodes/map/internal/db"
  9. mapFacade "f1-game/nodes/map/internal/facade"
  10. cstring "github.com/cherry-game/cherry/extend/string"
  11. cproto "github.com/cherry-game/cherry/net/proto"
  12. )
  13. func Service() *service {
  14. return &service{}
  15. }
  16. type service struct {
  17. mapFacade.LeagueServiceBase[*db.MapLeagueTable]
  18. }
  19. // 推送联盟邮件列表
  20. func (p *service) Push(leagueTable *db.MapLeagueTable, session *cproto.Session) {
  21. // 推送联盟职位信息
  22. p.JobPush(leagueTable, session)
  23. }
  24. func (p *service) JobPush(leagueTable *db.MapLeagueTable, session *cproto.Session) {
  25. var (
  26. playerID = sessions.GetPlayerID(session)
  27. leagueID = leagueTable.LeagueID
  28. )
  29. leagueMemberTable, found := db.GetMapLeagueMemberTable(leagueID)
  30. if !found {
  31. return
  32. }
  33. jobID := leagueMemberTable.LeagueMember.GetLeagueMemberJob(playerID)
  34. // 没有职位
  35. if jobID <= 0 {
  36. return
  37. }
  38. permissions, _ := leagueMemberTable.GetJobPermissions(jobID)
  39. resp := &pb.LeagueJob{
  40. Job: jobID,
  41. Permissions: permissions,
  42. }
  43. sessions.PushWithSession(session, nameRoute.PushLeague_JobInfo, resp)
  44. }
  45. func (p *service) GetPlayerName(playerID int64) string {
  46. playerData := p.GetPlayerData(playerID)
  47. if playerData != nil {
  48. return playerData.PlayerName
  49. }
  50. return cstring.ToString(playerID)
  51. }
  52. func (p *service) GetPlayerData(playerID int64) *pb.PlayerData {
  53. playerData := redis.Game.GetPlayerData(playerID, nameRedis.PlayerBaseFields...)
  54. if playerData != nil {
  55. return playerData
  56. }
  57. return nil
  58. }