redis_query_option.go 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. package task
  2. import (
  3. "context"
  4. "encoding/json"
  5. "fmt"
  6. "log-server/global"
  7. "log-server/model/task"
  8. )
  9. //定义游戏厂商结构体,以及返回游戏厂商结构体
  10. func GamePortOptionQuery() (channelOptionReturn []task.GamePortOption){
  11. var channelOption []task.GamePortOption //回传前端的信息结构体
  12. var objectChannel task.GamePortOption //用于反序列化的结构体
  13. ctx := context.Background() //redis上下文环境
  14. key := "typeManage:gameChannel" //查询的redis表
  15. channelKeys, _ := global.GVA_REDIS.HKeys(ctx, key).Result() //hash表中的所有key
  16. return RedisQueryChannel(ctx, channelOption, objectChannel, key, channelKeys)
  17. }
  18. //定义登录方式结构体,以及返回登录方式结构体
  19. func LoginTypeOptionQuery() (loginOptionReturn []task.LoginTypeOption){
  20. var loginOption []task.LoginTypeOption //回传前端的信息结构体
  21. var objectLogin task.LoginTypeOption //用于反序列化的结构体
  22. ctx := context.Background() //redis上下文环境
  23. key := "typeManage:loginType" //查询的redis表
  24. loginKeys, _ := global.GVA_REDIS.HKeys(ctx, key).Result() //hash表中的所有key
  25. return RedisQueryLogin(ctx, loginOption, objectLogin, key, loginKeys)
  26. }
  27. //定义账号类型结构体,以及返回账号类型结构体
  28. func AccountTypeOptionQuery() (accountOptionReturn []task.AccountTypeOption){
  29. var accountOption []task.AccountTypeOption //回传前端的信息结构体
  30. var objectAccount task.AccountTypeOption //用于反序列化的结构体
  31. ctx := context.Background() //redis上下文环境
  32. key := "typeManage:accountType" //查询的redis表
  33. accountKeys, _ := global.GVA_REDIS.HKeys(ctx, key).Result() //hash表中的所有key
  34. return RedisQueryAccount(ctx, accountOption, objectAccount, key, accountKeys)
  35. }
  36. //定义负责人结构体,以及返回负责人结构体
  37. func ResponsiblePersonOptionQuery() (responsiblePersonOptionReturn []task.ResponsiblePersonOption){
  38. var responsiblePersonOption []task.ResponsiblePersonOption //回传前端的信息结构体
  39. var objectResponsiblePerson task.ResponsiblePersonOption //用于反序列化的结构体
  40. ctx := context.Background() //redis上下文环境
  41. key := "typeManage:responsiblePerson" //查询的redis表
  42. responsiblePersonKeys, _ := global.GVA_REDIS.HKeys(ctx, key).Result() //hash表中的所有key
  43. return RedisQueryResponsiblePerson(ctx, responsiblePersonOption, objectResponsiblePerson, key, responsiblePersonKeys)
  44. }
  45. //定义游戏列表结构体,以及返回游戏列表结构体
  46. func GameListOptionQuery() (gameListOptionReturn []task.GameListOption){
  47. var gameListOption []task.GameListOption //回传前端的信息结构体
  48. var objectGameList task.GameListOption //用于反序列化的结构体
  49. ctx := context.Background() //redis上下文环境
  50. key := "typeManage:gameList" //查询redis表
  51. gameListKeys, _ := global.GVA_REDIS.HKeys(ctx, key).Result() //hash表中的所有key
  52. return RedisQueryGameList(ctx, gameListOption, objectGameList, key, gameListKeys)
  53. }
  54. //查询游戏厂商具体数据
  55. func RedisQueryChannel(ctx context.Context, channelOption []task.GamePortOption, objectChannel task.GamePortOption, keyName string, keys []string) (channelOptionReturn []task.GamePortOption){
  56. for k := range keys{
  57. //遍历查找redis记录
  58. bytes, _ := global.GVA_REDIS.HGet(ctx, keyName, keys[k]).Bytes()
  59. json.Unmarshal(bytes, &objectChannel)
  60. fmt.Println(objectChannel)
  61. //将记录添加到数组
  62. channelOption = append(channelOption, objectChannel)
  63. }
  64. return channelOption
  65. }
  66. //查询登录方式具体数据
  67. func RedisQueryLogin(ctx context.Context, loginOption []task.LoginTypeOption, objectLogin task.LoginTypeOption, keyName string, keys []string) (loginOptionReturn []task.LoginTypeOption){
  68. for k := range keys{
  69. //遍历查找redis记录
  70. bytes, _ := global.GVA_REDIS.HGet(ctx, keyName, keys[k]).Bytes()
  71. json.Unmarshal(bytes, &objectLogin)
  72. fmt.Println(objectLogin)
  73. //将记录添加到数组
  74. loginOption = append(loginOption, objectLogin)
  75. }
  76. return loginOption
  77. }
  78. //查询账号类型具体数据
  79. func RedisQueryAccount(ctx context.Context, accountOption []task.AccountTypeOption, objectAccount task.AccountTypeOption, keyName string, keys []string) (accountOptionReturn []task.AccountTypeOption){
  80. for k := range keys{
  81. //遍历查找redis记录
  82. bytes, _ := global.GVA_REDIS.HGet(ctx, keyName, keys[k]).Bytes()
  83. json.Unmarshal(bytes, &objectAccount)
  84. fmt.Println(objectAccount)
  85. //将记录添加到数组
  86. accountOption = append(accountOption, objectAccount)
  87. }
  88. return accountOption
  89. }
  90. //查询负责人具体数据
  91. func RedisQueryResponsiblePerson(ctx context.Context, responsiblePersonOption []task.ResponsiblePersonOption, objectResponsiblePerson task.ResponsiblePersonOption, keyName string, keys []string) (responsiblePersonOptionReturn []task.ResponsiblePersonOption){
  92. for k := range keys{
  93. //遍历查找redis记录
  94. bytes, _ := global.GVA_REDIS.HGet(ctx, keyName, keys[k]).Bytes()
  95. json.Unmarshal(bytes, &objectResponsiblePerson)
  96. fmt.Println(objectResponsiblePerson)
  97. //将记录添加到数组
  98. responsiblePersonOption = append(responsiblePersonOption, objectResponsiblePerson)
  99. }
  100. return responsiblePersonOption
  101. }
  102. //查询游戏列表具体数据
  103. func RedisQueryGameList(ctx context.Context, gameListOption []task.GameListOption, objectGameList task.GameListOption, keyName string, keys []string) (gameListOptionReturn []task.GameListOption){
  104. for k := range keys{
  105. //遍历查找redis记录
  106. bytes, _ := global.GVA_REDIS.HGet(ctx, keyName, keys[k]).Bytes()
  107. json.Unmarshal(bytes, &objectGameList)
  108. fmt.Println(objectGameList)
  109. //将记录添加到数组
  110. gameListOption = append(gameListOption, objectGameList)
  111. }
  112. return gameListOption
  113. }