user.lua 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. --[[
  2. Descripttion:玩家信息
  3. version:
  4. Author: Neo,Huang
  5. Date: 2021-09-15 19:47:54
  6. LastEditors: Neo,Huang
  7. LastEditTime: 2021-09-15 19:47:55
  8. --]]
  9. local moduleData = require("data.module")
  10. local MODULE_NAME = "user"
  11. local root = {}
  12. -- 设置注册数据
  13. function root:user_init_register_info(uid, info)
  14. if uid == nil or is_empty(info) then
  15. return false
  16. end
  17. log.info("user_init_register_info uid[%s] info[%s]", tostring(uid), tostring(info))
  18. moduleData:hset(uid, MODULE_NAME, "uid", uid)
  19. moduleData:hset(uid, MODULE_NAME, "registerTime", skynet_time())
  20. moduleData:hset(uid, MODULE_NAME, "version", info.version or "")
  21. moduleData:hset(uid, MODULE_NAME, "registerVersion", info.version or "")
  22. moduleData:hset(uid, MODULE_NAME, "appVerison", info.version or "")
  23. moduleData:hset(uid, MODULE_NAME, "uuid", info.uuid or "")
  24. moduleData:hset(uid, MODULE_NAME, "udid", info.udid or "")
  25. moduleData:hset(uid, MODULE_NAME, "device", info.device or "")
  26. moduleData:hset(uid, MODULE_NAME, "sysVer", info.sysVer or "")
  27. moduleData:hset(uid, MODULE_NAME, "deviceId", info.deviceId or "")
  28. moduleData:hset(uid, MODULE_NAME, "channel", info.channel)
  29. moduleData:hset(uid, MODULE_NAME, "phone", info.phone)
  30. moduleData:hset(uid, MODULE_NAME, "shareCode", info.shareCode)
  31. moduleData:hset(uid, MODULE_NAME, "nickname", info.nickname or string.format("玩家%06d", uid))
  32. -- 非测试环境随机密码
  33. local password = info.password
  34. if is_nil(password) then
  35. if not IS_TEST then
  36. local r = {}
  37. for i = 1, 8 do
  38. table.insert(r, string.char(math.random(97, 122)))
  39. end
  40. password = table.concat(r)
  41. else
  42. password = "123456"
  43. end
  44. end
  45. moduleData:hset(uid, MODULE_NAME, "password", password)
  46. return true
  47. end
  48. -- 密码匹配
  49. function root:user_is_match_password(uid, password)
  50. if uid == nil then
  51. return false
  52. end
  53. return password == moduleData:hget(uid, MODULE_NAME, "password")
  54. end
  55. -- 渠道匹配
  56. function root:user_is_match_channel(uid, channel)
  57. if uid == nil or channel == nil then
  58. return false
  59. end
  60. return channel == moduleData:get_channel(uid)
  61. end
  62. -- 账号状态
  63. function root:get_status(uid)
  64. if uid == nil then
  65. return 1
  66. end
  67. return moduleData:hget(uid, MODULE_NAME, "status")
  68. end
  69. -- 获取当前邀请码
  70. function root:get_share_code(uid)
  71. if is_empty(uid) then
  72. return
  73. end
  74. return moduleData:hget(uid, MODULE_NAME, "shareCode")
  75. end
  76. -- 绑定邀请码
  77. function root:band_share_code(uid, sharecode)
  78. if is_empty(uid) then
  79. return false
  80. end
  81. moduleData:hset(uid, MODULE_NAME, "bandShareCode", sharecode)
  82. return true
  83. end
  84. -- 获取属性
  85. function root:get_key_int(uid, key)
  86. if uid == nil or is_empty(key) then
  87. return 0
  88. end
  89. return moduleData:hget_int(uid, MODULE_NAME, key)
  90. end
  91. function root:get_key_info(uid, key)
  92. if uid == nil or is_empty(key) then
  93. return 0
  94. end
  95. return moduleData:hget(uid, MODULE_NAME, key)
  96. end
  97. function root:get_key_json(uid, key)
  98. if uid == nil or is_empty(key) then
  99. return 0
  100. end
  101. return moduleData:hget_json(uid, MODULE_NAME, key)
  102. end
  103. return root