2025-10-27 21:18:16 +08:00
|
|
|
|
---
|
|
|
|
|
|
--- Generated by EmmyLua(https://github.com/EmmyLua)
|
|
|
|
|
|
--- Created by admin.
|
|
|
|
|
|
--- DateTime: 2025/10/25 16:36
|
|
|
|
|
|
--- 数据表模型文件
|
|
|
|
|
|
|
2025-10-29 23:00:17 +08:00
|
|
|
|
local helpers = require("share.helpers")
|
2025-10-27 21:18:16 +08:00
|
|
|
|
--引用使用的库文件
|
2025-10-29 23:00:17 +08:00
|
|
|
|
local model = require("share.model")
|
2025-10-27 21:18:16 +08:00
|
|
|
|
--创建一个数据表相关的模型
|
2025-10-29 23:00:17 +08:00
|
|
|
|
local roleModel = model:new('sys_role')
|
|
|
|
|
|
|
|
|
|
|
|
local _M = {}
|
|
|
|
|
|
|
|
|
|
|
|
--判断角色是否存在
|
|
|
|
|
|
local function isExistRole(id)
|
|
|
|
|
|
--根据角色id进行验证角色是否存在
|
|
|
|
|
|
local code, res = roleModel:find(id)
|
|
|
|
|
|
if code ~= 0 then
|
|
|
|
|
|
return false
|
|
|
|
|
|
end
|
|
|
|
|
|
local num = 0
|
|
|
|
|
|
if res ~= nil then
|
|
|
|
|
|
num = table.getn(res)
|
|
|
|
|
|
end
|
|
|
|
|
|
--角色不存在返回错误
|
|
|
|
|
|
if num <= 0 then
|
|
|
|
|
|
return false
|
|
|
|
|
|
end
|
|
|
|
|
|
return true
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
-- 查询数据表中的所有角色信息
|
2025-11-08 00:01:43 +08:00
|
|
|
|
function _M.getAllSystemRoles()
|
|
|
|
|
|
return roleModel:all()
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
-- 根据页码和数量查询数据表中的角色信息
|
2025-10-29 23:00:17 +08:00
|
|
|
|
function _M.getSystemRoles(pageNum, pageSize)
|
|
|
|
|
|
return roleModel:paginate(pageNum, pageSize)
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
--根据角色id获取角色信息
|
|
|
|
|
|
function _M.getSystemRole(id)
|
|
|
|
|
|
return roleModel:find(id)
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
--增加角色信息到数据表
|
|
|
|
|
|
function _M.addSystemRole(jsonData)
|
|
|
|
|
|
--解析json中的键和数据值
|
|
|
|
|
|
local roleName = jsonData['role_name']
|
|
|
|
|
|
|
|
|
|
|
|
--根据角色、手机号、邮箱进行验证角色是否存在
|
|
|
|
|
|
local code, res = roleModel:where("role_name", "=", roleName):get()
|
|
|
|
|
|
if code ~= 0 then
|
|
|
|
|
|
return 0x000001,res
|
|
|
|
|
|
end
|
|
|
|
|
|
local num = 0
|
|
|
|
|
|
if res ~= nil then
|
|
|
|
|
|
num = table.getn(res)
|
|
|
|
|
|
end
|
|
|
|
|
|
--角色存在时返回角色已经存在
|
|
|
|
|
|
if num > 0 then
|
|
|
|
|
|
return 0x01000C,nil
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
--键值为id产生uuid数据值,增加到json中
|
|
|
|
|
|
jsonData.id = helpers.getUuid()
|
|
|
|
|
|
-- 创建一个角色
|
2025-10-31 21:32:39 +08:00
|
|
|
|
return roleModel:create(jsonData)
|
2025-10-29 23:00:17 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
--删除角色信息到数据表
|
|
|
|
|
|
function _M:deleteSystemRole(id)
|
|
|
|
|
|
--根据角色id进行验证角色是否存在
|
|
|
|
|
|
local ok = isExistRole(id)
|
|
|
|
|
|
--角色不存在则返回
|
|
|
|
|
|
if ok == false then
|
|
|
|
|
|
return 0x000001,nil
|
|
|
|
|
|
end
|
|
|
|
|
|
return roleModel:delete(id)
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
--更新角色信息到数据表
|
|
|
|
|
|
function _M:updateSystemRole(id, jsonData)
|
|
|
|
|
|
--根据角色id进行验证角色是否存在
|
|
|
|
|
|
local ok = isExistRole(id)
|
|
|
|
|
|
--角色不存在则返回
|
|
|
|
|
|
if ok == false then
|
|
|
|
|
|
return 0x000001,nil
|
|
|
|
|
|
end
|
2025-11-04 09:33:40 +08:00
|
|
|
|
jsonData.update_time = ngx.time()
|
2025-10-29 23:00:17 +08:00
|
|
|
|
--对数据内容进行更新
|
|
|
|
|
|
return roleModel:where('id', '=', id):update(jsonData)
|
|
|
|
|
|
end
|
|
|
|
|
|
|
2025-11-07 22:38:32 +08:00
|
|
|
|
--通过角色id获取用户权限
|
|
|
|
|
|
function _M:getPermission2roleId(role_id, status)
|
|
|
|
|
|
local sql = [[SELECT "A"."id","A".role_name,"B".permission_id,"B".permission_name,"B".permission_code,
|
|
|
|
|
|
"A".status FROM sys_role AS "A" INNER JOIN sys_role_permission AS "C" ON "A"."id"="C".role_id
|
|
|
|
|
|
INNER JOIN sys_permission AS "B" ON "C".permission_id="B".permission_id WHERE "A"."id"=]]..tostring(role_id)
|
|
|
|
|
|
if status ~= nil then
|
|
|
|
|
|
sql = sql.." AND \"A\".status='"..status.."'"
|
|
|
|
|
|
end
|
2025-11-08 00:01:43 +08:00
|
|
|
|
return roleModel:exec(sql)
|
2025-11-07 22:38:32 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
2025-10-29 23:00:17 +08:00
|
|
|
|
return _M
|