user.lua 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  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. moduleData:hset(uid, MODULE_NAME, "uid", uid)
  18. moduleData:hset(uid, MODULE_NAME, "registerTime", skynet_time())
  19. moduleData:hset(uid, MODULE_NAME, "version", info.version or "")
  20. moduleData:hset(uid, MODULE_NAME, "registerVersion", info.version or "")
  21. moduleData:hset(uid, MODULE_NAME, "appVerison", info.version or "")
  22. moduleData:hset(uid, MODULE_NAME, "uuid", info.uuid or "")
  23. moduleData:hset(uid, MODULE_NAME, "udid", info.udid or "")
  24. moduleData:hset(uid, MODULE_NAME, "device", info.device or "")
  25. moduleData:hset(uid, MODULE_NAME, "sysVer", info.sysVer or "")
  26. moduleData:hset(uid, MODULE_NAME, "deviceId", info.deviceId or "")
  27. moduleData:hset(uid, MODULE_NAME, "channel", info.channel)
  28. moduleData:hset(uid, MODULE_NAME, "phone", info.phone)
  29. moduleData:hset(uid, MODULE_NAME, "shareCode", info.shareCode)
  30. moduleData:hset(uid, MODULE_NAME, "nickname", info.nickname or string.format("玩家%06d", uid))
  31. -- 非测试环境随机密码
  32. local password = info.password
  33. if is_nil(password) then
  34. if not IS_TEST then
  35. local r = {}
  36. for i = 1, 8 do
  37. table.insert(r, string.char(math.random(97, 122)))
  38. end
  39. password = table.concat(r)
  40. else
  41. password = "123456"
  42. end
  43. end
  44. moduleData:hset(uid, MODULE_NAME, "password", password)
  45. return true
  46. end
  47. -- 密码匹配
  48. function root:user_is_match_password(uid, password)
  49. if uid == nil then
  50. return false
  51. end
  52. return password == moduleData:hget(uid, MODULE_NAME, "password")
  53. end
  54. -- 渠道匹配
  55. function root:user_is_match_channel(uid, channel)
  56. if uid == nil or channel == nil then
  57. return false
  58. end
  59. return channel == moduleData:get_channel(uid)
  60. end
  61. -- 账号状态
  62. function root:get_status(uid)
  63. if uid == nil then
  64. return 1
  65. end
  66. return moduleData:hget(uid, MODULE_NAME, "status")
  67. end
  68. -- 获取当前邀请码
  69. function root:get_share_code(uid)
  70. if is_empty(uid) then
  71. return
  72. end
  73. return moduleData:hget(uid, MODULE_NAME, "shareCode")
  74. end
  75. -- 绑定邀请码
  76. function root:band_share_code(uid, sharecode)
  77. if is_empty(uid) then
  78. return false
  79. end
  80. moduleData:hset(uid, MODULE_NAME, "bandShareCode", sharecode)
  81. return true
  82. end
  83. -- 获取属性
  84. function root:get_key_int(uid, key)
  85. if uid == nil or is_empty(key) then
  86. return 0
  87. end
  88. return moduleData:hget_int(uid, MODULE_NAME, key)
  89. end
  90. function root:get_key_info(uid, key)
  91. if uid == nil or is_empty(key) then
  92. return 0
  93. end
  94. return moduleData:hget(uid, MODULE_NAME, key)
  95. end
  96. function root:get_key_json(uid, key)
  97. if uid == nil or is_empty(key) then
  98. return 0
  99. end
  100. return moduleData:hget_json(uid, MODULE_NAME, key)
  101. end
  102. return root