2025-10-22 08:46:41 +08:00
|
|
|
|
---
|
|
|
|
|
|
--- Generated by EmmyLua(https://github.com/EmmyLua)
|
|
|
|
|
|
--- Created by .
|
|
|
|
|
|
--- DateTime: 2025/9/25 08:19
|
|
|
|
|
|
--- 业务逻辑 对用户数据表进行数据表业务处理
|
2025-10-24 11:43:02 +08:00
|
|
|
|
local validator = require("util.validator")
|
|
|
|
|
|
local helpers = require("util.helpers")
|
2025-10-25 17:33:31 +08:00
|
|
|
|
local user = require("model.user")
|
2025-10-22 08:46:41 +08:00
|
|
|
|
|
|
|
|
|
|
local _M = {}
|
|
|
|
|
|
|
2025-10-22 14:35:41 +08:00
|
|
|
|
-- 查询数据表中的所有用户信息
|
|
|
|
|
|
function _M.getAllUser()
|
2025-10-25 17:33:31 +08:00
|
|
|
|
return user:all()
|
2025-10-22 14:35:41 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
--根据用户id获取用户信息
|
2025-10-23 11:14:19 +08:00
|
|
|
|
function _M.getUser(id)
|
2025-10-25 17:33:31 +08:00
|
|
|
|
return user:find(id)
|
2025-10-22 14:35:41 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
--增加用户信息到数据表
|
|
|
|
|
|
function _M.addUser(jsonData)
|
|
|
|
|
|
--验证数据的正确性,错误时返回
|
2025-10-24 14:58:03 +08:00
|
|
|
|
local success, result = validator.checkJson(jsonData)
|
2025-10-22 08:46:41 +08:00
|
|
|
|
if success == false then
|
2025-10-22 14:35:41 +08:00
|
|
|
|
return 0x000001,result
|
2025-10-22 08:46:41 +08:00
|
|
|
|
end
|
|
|
|
|
|
--解析json中的键和数据值
|
2025-10-25 17:33:31 +08:00
|
|
|
|
local name, phone, email
|
2025-10-22 08:46:41 +08:00
|
|
|
|
for key, value in pairs(result) do
|
2025-10-25 17:33:31 +08:00
|
|
|
|
if key == "username" then name = value end
|
2025-10-22 14:35:41 +08:00
|
|
|
|
if key == "phone" then phone = value end
|
|
|
|
|
|
if key == "email" then email = value end
|
|
|
|
|
|
end
|
2025-10-25 17:33:31 +08:00
|
|
|
|
|
2025-10-23 17:46:02 +08:00
|
|
|
|
--根据用户、手机号、邮箱进行验证用户是否存在
|
2025-10-28 19:59:29 +08:00
|
|
|
|
local code, res = user:where("name", "=", name):where("phone", "=", phone):where("email", "=", phone):get()
|
2025-10-25 17:33:31 +08:00
|
|
|
|
if code ~= 0 then
|
2025-10-22 14:35:41 +08:00
|
|
|
|
return 0x000001,res
|
|
|
|
|
|
end
|
2025-10-22 15:37:13 +08:00
|
|
|
|
local num = 0
|
|
|
|
|
|
for _, row in ipairs(res) do
|
|
|
|
|
|
for key, value in pairs(row) do
|
2025-10-25 17:33:31 +08:00
|
|
|
|
num = num + 1
|
2025-10-22 15:37:13 +08:00
|
|
|
|
end
|
2025-10-22 14:35:41 +08:00
|
|
|
|
end
|
2025-10-25 17:33:31 +08:00
|
|
|
|
--用户存在时返回用户已经存在
|
2025-10-28 16:57:06 +08:00
|
|
|
|
if num > 0 then
|
2025-10-25 17:33:31 +08:00
|
|
|
|
return 0x01000C,nil
|
2025-10-22 08:46:41 +08:00
|
|
|
|
end
|
2025-10-25 17:33:31 +08:00
|
|
|
|
|
2025-10-27 17:17:58 +08:00
|
|
|
|
--键值为id产生uuid数据值,增加到json中
|
|
|
|
|
|
result.id = helpers.getUuid()
|
|
|
|
|
|
local ret = helpers.convert_json(result)
|
2025-10-25 17:33:31 +08:00
|
|
|
|
-- 创建一个用户
|
2025-10-27 17:17:58 +08:00
|
|
|
|
return user:create('{'..ret..'}')
|
2025-10-22 08:46:41 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
2025-10-28 10:33:35 +08:00
|
|
|
|
--删除用户信息到数据表
|
2025-10-24 10:44:12 +08:00
|
|
|
|
function _M.deleteUser(id)
|
2025-10-25 17:33:31 +08:00
|
|
|
|
return user:delete(id)
|
2025-10-22 08:46:41 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
2025-10-23 17:46:02 +08:00
|
|
|
|
--更新用户信息到数据表
|
2025-10-24 10:44:12 +08:00
|
|
|
|
function _M.updateUser(id, jsonData)
|
2025-10-23 17:46:02 +08:00
|
|
|
|
--根据用户id进行验证用户是否存在
|
2025-10-25 17:33:31 +08:00
|
|
|
|
local code, res = user:find(id)
|
|
|
|
|
|
if code ~= 0 then
|
2025-10-23 17:46:02 +08:00
|
|
|
|
return 0x000001,res
|
|
|
|
|
|
end
|
|
|
|
|
|
local num = 0
|
|
|
|
|
|
for _, row in ipairs(res) do
|
|
|
|
|
|
for key, value in pairs(row) do
|
2025-10-25 17:33:31 +08:00
|
|
|
|
num = num + 1
|
2025-10-23 17:46:02 +08:00
|
|
|
|
end
|
|
|
|
|
|
end
|
2025-10-25 17:33:31 +08:00
|
|
|
|
--用户不存在返回错误
|
2025-10-23 17:46:02 +08:00
|
|
|
|
if num <= 0 then
|
|
|
|
|
|
return 0x01000C,nil
|
|
|
|
|
|
end
|
|
|
|
|
|
--验证数据的正确性,错误时返回
|
2025-10-24 11:43:02 +08:00
|
|
|
|
local success, result = validator.checkJson(jsonData)
|
2025-10-23 17:46:02 +08:00
|
|
|
|
if success == false then
|
|
|
|
|
|
return 0x000001,result
|
|
|
|
|
|
end
|
2025-10-25 17:33:31 +08:00
|
|
|
|
--对数据内容进行更新
|
|
|
|
|
|
return user:where('id', '=', id):update(jsonData)
|
2025-10-23 17:46:02 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
2025-10-22 08:46:41 +08:00
|
|
|
|
return _M
|