AuthPlatform/src/service/system/role.lua

88 lines
2.3 KiB
Lua
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
--- Generated by EmmyLua(https://github.com/EmmyLua)
--- Created by .
--- DateTime: 2025/9/27 15:19
--- 业务逻辑 对用户角色数据表进行数据表业务处理
local validator = require("util.validator")
local helpers = require("util.helpers")
local role = require("model.role")
local _M = {}
-- 查询数据表中的所有角色信息
function _M.getAllRole()
return role:all()
end
--根据角色id获取角色信息
function _M.getRole(id)
return role.find(id)
end
--增加角色信息到数据表
function _M.addRole(jsonData)
--验证数据的正确性,错误时返回
local success, result = validator.checkJson(jsonData)
if success == false then
return 0x000001, result
end
--解析json中的键和数据值
local name = ""
for key, value in pairs(result) do
if key == "name" then name = value end
end
--根据角色进行验证是否存在
local code, res = role:where("name", "=", name):get()
if code ~= 0 then
return 0x000001, res
end
local num = 0
for _, row in ipairs(res) do
for key, value in pairs(row) do
num = num + 1
end
end
--角色存在时返回账号已经存在
if num <= 0 then
return 0x01000C, nil
end
--键值为id产生uuid数据值增加到json中
result.id = helpers.getUuid()
local ret = helpers.convert_json(result)
-- 创建一个角色
return role:create('{'..ret..'}')
end
--增加角色信息到数据表
function _M.deleteRole(id)
return role:delete(id)
end
--更新角色信息到数据表
function _M.updateRole(id, jsonData)
--根据角色id进行验证角色是否存在
local code, res = role:find(id)
if code ~= 0 then
return 0x000001, res
end
local num = 0
for _, row in ipairs(res) do
for key, value in pairs(row) do
num = num + 1
end
end
--角色不存在返回错误
if num <= 0 then
return 0x01000C, nil
end
--验证数据的正确性,错误时返回
local success, result = validator.checkJson(jsonData)
if success == false then
return 0x000001, result
end
--对数据内容进行更新
return role:where('id', '=', id):update(jsonData)
end
return _M