diff --git a/backend/controller/role.py b/backend/controller/role.py
index d9e1222..c103ccd 100644
--- a/backend/controller/role.py
+++ b/backend/controller/role.py
@@ -62,8 +62,8 @@ async def role_put(pk: int, data: RoleIn) -> Response:
async def role_query(query: RoleQuery) -> Response[ListAll[list[RoleRead]]]:
"""post条件查询角色表"""
- limit = query.size
- skip = (query.offset - 1) * limit
- del query.offset, query.size
- users, count = await get_roles(skip, limit, query.dict())
+ size = query.limit
+ skip = (query.offset - 1) * size
+ del query.offset, query.limit
+ users, count = await get_roles(skip, size, query.dict())
return Response(data=ListAll(total=count, items=users))
diff --git a/backend/dbhelper/role.py b/backend/dbhelper/role.py
index 4c9a4a0..6e91526 100644
--- a/backend/dbhelper/role.py
+++ b/backend/dbhelper/role.py
@@ -38,7 +38,7 @@ async def get_roles(skip: int, limit: int, kwargs: dict = None):
kwargs = {f"{k}__contains": v for k, v in kwargs.items()}
else:
kwargs = {}
- result = RoleModel.filter(status__not=9, **kwargs).all().order_by("-created")
+ result = RoleModel.filter(**kwargs).all().order_by("-created")
return await result.offset(skip).limit(limit), await result.count()
diff --git a/backend/mini.db b/backend/mini.db
index 60e7509..e2a2455 100644
Binary files a/backend/mini.db and b/backend/mini.db differ
diff --git a/backend/mini.db-shm b/backend/mini.db-shm
new file mode 100644
index 0000000..2644cf9
Binary files /dev/null and b/backend/mini.db-shm differ
diff --git a/backend/mini.db-wal b/backend/mini.db-wal
new file mode 100644
index 0000000..015d765
Binary files /dev/null and b/backend/mini.db-wal differ
diff --git a/backend/router/url.py b/backend/router/url.py
index 29111c0..d0d6d51 100644
--- a/backend/router/url.py
+++ b/backend/router/url.py
@@ -157,7 +157,9 @@ routes = [
summary="查询角色拥有权限",
**has_perm
),
- Route.put("/role", endpoint=role_put, tags=["角色管理"], summary="角色更新", **has_perm),
+ Route.put(
+ "/role/{pk}", endpoint=role_put, tags=["角色管理"], summary="角色更新", **has_perm
+ ),
Route.post(
"/role/query", endpoint=role_query, tags=["角色管理"], summary="角色条件查询", **has_perm
),
diff --git a/backend/tests/test_case.py b/backend/tests/test_case.py
index 4d708a7..8e68bc3 100644
--- a/backend/tests/test_case.py
+++ b/backend/tests/test_case.py
@@ -247,7 +247,7 @@ params = [
type=2,
component=None,
pid=4,
- identifier="",
+ identifier="role:query",
api="/role/query",
method="POST",
).dict(),
@@ -276,7 +276,7 @@ params = [
component=None,
pid=4,
identifier="role:update",
- api="/role",
+ api="/role/{pk}",
method="PUT",
).dict(),
),
diff --git a/frontend/src/service/role.js b/frontend/src/service/role.js
index 5336e77..209e025 100644
--- a/frontend/src/service/role.js
+++ b/frontend/src/service/role.js
@@ -1,9 +1,44 @@
import request from '@/utils/request'
// 获取角色列表, 需要考虑创建用户选择角色应该是所有未被删除的情况
-export function getRoles(parms) {
+export function getRoles(params) {
return request({
url: '/role',
- parms
+ params
+ })
+}
+
+// 条件查询
+export function queryRole(data) {
+ return request({
+ url: '/role/query',
+ method: 'post',
+ data
+ })
+}
+
+// 删除
+export function delRole(id) {
+ return request({
+ url: `/role/${id}`,
+ method: 'delete'
+ })
+}
+
+// 创建
+export function addRole(data) {
+ return request({
+ url: '/role',
+ method: 'post',
+ data
+ })
+}
+
+// 修改
+export function putRole(id, data) {
+ return request({
+ url: `/role/${id}`,
+ method: 'put',
+ data
})
}
diff --git a/frontend/src/views/main/system/role/conf.js b/frontend/src/views/main/system/role/conf.js
new file mode 100644
index 0000000..288de5b
--- /dev/null
+++ b/frontend/src/views/main/system/role/conf.js
@@ -0,0 +1,49 @@
+export const columns = [
+ {
+ title: 'ID',
+ dataIndex: 'id',
+ key: 'id'
+ },
+ {
+ title: '名称',
+ dataIndex: 'name',
+ key: 'name'
+ },
+ {
+ title: '描述',
+ dataIndex: 'remark',
+ key: 'remark'
+ },
+ {
+ title: '状态',
+ dataIndex: 'status',
+ key: 'status'
+ },
+ {
+ title: '创建时间',
+ dataIndex: 'created',
+ key: 'created'
+ },
+ {
+ title: '更新时间',
+ dataIndex: 'modified',
+ key: 'modified'
+ },
+ {
+ title: '操作',
+ key: 'action'
+ }
+]
+
+export const addRoleRules = [
+ {
+ name: [
+ { required: true, message: '请输入名称', trigger: 'blur' },
+ { min: 3, max: 12, message: '3-12', trigger: 'blur' }
+ ],
+ remark: [
+ { required: true, message: '请输入描述', trigger: 'blur' },
+ { min: 1, max: 20, message: '1~20', trigger: 'blur' }
+ ]
+ }
+]
diff --git a/frontend/src/views/main/system/role/role.vue b/frontend/src/views/main/system/role/role.vue
index dc6f494..678a2a9 100644
--- a/frontend/src/views/main/system/role/role.vue
+++ b/frontend/src/views/main/system/role/role.vue
@@ -1,7 +1,268 @@
-
+
- role
+
+
+
+
+
+
+
+
+ 查询
+ 重置
+
+
+
+
+
+
+
+
+
+ 新增
+
+
+
+
+
+
+
+ {{ record.status !== 9 ? '正常' : '删除' }}
+
+
+
+ {{ formatTime(record.created) }}
+
+
+ {{ formatTime(record.modified) }}
+
+
+
+ 编辑
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+