Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
center-project
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
EzijingWeb
center-project
Commits
cb1d1aba
提交
cb1d1aba
authored
10月 14, 2021
作者:
王鹏飞
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat: 权限管理
上级
6c30edee
隐藏空白字符变更
内嵌
并排
正在显示
10 个修改的文件
包含
345 行增加
和
87 行删除
+345
-87
AppList.vue
src/components/base/AppList.vue
+12
-10
api.js
src/modules/permissions/api.js
+36
-0
Editform.vue
src/modules/permissions/components/Editform.vue
+100
-0
index.js
src/modules/permissions/index.js
+10
-0
List.vue
src/modules/permissions/views/List.vue
+146
-0
api.js
src/modules/roles/api.js
+16
-28
Editform.vue
src/modules/roles/components/Editform.vue
+6
-9
List.vue
src/modules/roles/views/List.vue
+13
-34
api.js
src/modules/school/api.js
+5
-5
vite.config.js
vite.config.js
+1
-1
没有找到文件。
src/components/base/AppList.vue
浏览文件 @
cb1d1aba
...
@@ -190,24 +190,25 @@ export default {
...
@@ -190,24 +190,25 @@ export default {
let
params
=
this
.
params
let
params
=
this
.
params
// 翻页参数设置
// 翻页参数设置
if
(
this
.
hasPagination
)
{
if
(
this
.
hasPagination
)
{
params
.
page
=
(
this
.
page
.
currentPage
-
1
).
toString
()
params
.
page
=
this
.
page
.
currentPage
params
.
page_size
=
this
.
page
.
size
.
toString
()
params
.
limit
=
this
.
page
.
size
}
}
// 接口请求之前
// 接口请求之前
if
(
beforeRequest
)
{
if
(
beforeRequest
)
{
params
=
beforeRequest
(
params
,
isReset
)
params
=
beforeRequest
(
params
,
isReset
)
}
}
//
for (const key in params) {
for
(
const
key
in
params
)
{
//
if (params[key] === '' || params[key] === undefined || params[key] === undefined) {
if
(
params
[
key
]
===
''
||
params
[
key
]
===
undefined
||
params
[
key
]
===
undefined
)
{
//
delete params[key]
delete
params
[
key
]
//
}
}
//
}
}
this
.
loading
=
true
this
.
loading
=
true
httpRequest
(
params
)
httpRequest
(
params
)
.
then
(
res
=>
{
.
then
(
res
=>
{
const
{
data
=
[],
page_info
:
pageInfo
=
{}
}
=
res
||
{}
const
data
=
res
.
data
||
{}
this
.
page
.
total
=
parseInt
(
pageInfo
.
total_number
||
''
)
const
{
data
:
list
=
[],
total
=
0
}
=
data
this
.
dataList
=
callback
?
callback
(
data
)
:
data
this
.
page
.
total
=
total
this
.
dataList
=
callback
?
callback
(
data
)
:
list
})
})
.
catch
(()
=>
{
.
catch
(()
=>
{
this
.
page
.
total
=
0
this
.
page
.
total
=
0
...
@@ -277,6 +278,7 @@ export default {
...
@@ -277,6 +278,7 @@ export default {
}
}
.table-list-hd
{
.table-list-hd
{
display
:
flex
;
display
:
flex
;
margin-bottom
:
10px
;
}
}
.table-list-filter
{
.table-list-filter
{
flex
:
1
;
flex
:
1
;
...
...
src/modules/permissions/api.js
0 → 100644
浏览文件 @
cb1d1aba
import
httpRequest
from
'@/utils/axios'
/**
* 获取权限列表
*/
export
function
getPermissionList
(
params
)
{
return
httpRequest
.
get
(
'/api/xedu/admin/v1/permissions'
,
{
params
})
}
/**
* 获取权限详情
*/
export
function
getPermission
(
params
)
{
return
httpRequest
.
get
(
`/api/xedu/admin/v1/permission/
${
params
.
id
}
`
,
{
params
})
}
/**
* 创建权限
*/
export
function
createPermission
(
data
)
{
return
httpRequest
.
post
(
'/api/xedu/admin/v1/permission'
,
data
)
}
/**
* 修改权限
*/
export
function
updatePermission
(
data
)
{
return
httpRequest
.
put
(
`/api/xedu/admin/v1/permission/
${
data
.
id
}
`
,
data
)
}
/**
* 删除权限
*/
export
function
deletePermission
(
data
)
{
return
httpRequest
.
delete
(
`/api/xedu/admin/v1/permission/
${
data
.
id
}
`
,
data
)
}
src/modules/permissions/components/Editform.vue
0 → 100644
浏览文件 @
cb1d1aba
<
template
>
<el-dialog
:title=
"title"
:close-on-click-modal=
"false"
v-bind=
"$attrs"
v-on=
"$listeners"
width=
"600px"
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-position=
"top"
>
<el-form-item
label=
"名称"
prop=
"name"
>
<el-input
v-model=
"form.name"
clearable
></el-input>
</el-form-item>
<el-form-item
label=
"权限标识"
prop=
"tag"
>
<el-input
v-model=
"form.tag"
clearable
:disabled=
"isEdit"
></el-input>
</el-form-item>
<el-form-item
label=
"类型"
prop=
"type"
>
<el-radio-group
v-model=
"form.type"
:disabled=
"isEdit"
>
<el-radio
:label=
"1"
>
菜单权限
</el-radio>
<el-radio
:label=
"2"
>
按钮权限
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item
label=
"所属系统"
prop=
"system_tag"
>
<el-radio-group
v-model=
"form.system_tag"
:disabled=
"isEdit"
>
<el-radio
:label=
"1"
>
学校端
</el-radio>
<el-radio
:label=
"2"
>
教师端
</el-radio>
<el-radio
:label=
"3"
>
学生端
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item
label=
"路由"
prop=
"effect_uris"
>
<el-input
type=
"textarea"
v-model=
"form.effect_uris"
clearable
placeholder=
"多个请用英文逗号隔开"
></el-input>
</el-form-item>
<el-form-item
label=
"权限描述"
prop=
"desc"
>
<el-input
type=
"textarea"
v-model=
"form.desc"
clearable
></el-input>
</el-form-item>
</el-form>
<template
#
footer
>
<el-button
type=
"text"
@
click=
"onCancel"
>
取消
</el-button>
<el-button
type=
"primary"
size=
"medium"
@
click=
"onPrimary"
>
保存
</el-button>
</
template
>
</el-dialog>
</template>
<
script
>
// lodash
import
{
createPermission
,
updatePermission
}
from
'../api.js'
export
default
{
props
:
{
isEdit
:
{
type
:
Boolean
,
default
:
false
},
data
:
{
type
:
Object
,
default
:
()
=>
({})
}
},
data
()
{
return
{
form
:
{
parent_id
:
'0'
,
type
:
1
,
name
:
''
,
tag
:
''
,
system_tag
:
''
,
desc
:
''
,
effect_uris
:
''
},
rules
:
{
name
:
[{
required
:
true
,
message
:
'请输入权限名称'
,
trigger
:
'blur'
}],
tag
:
[{
required
:
true
,
message
:
'请输入权限唯一标识'
,
trigger
:
'blur'
}],
type
:
[{
required
:
true
,
message
:
'请选择权限类型'
,
trigger
:
'blur'
}],
system_tag
:
[{
required
:
true
,
message
:
'请选择所属系统'
,
trigger
:
'blur'
}]
}
}
},
watch
:
{
data
:
{
immediate
:
true
,
handler
(
data
)
{
this
.
form
=
Object
.
assign
({},
this
.
form
,
data
)
}
}
},
computed
:
{
title
()
{
return
this
.
isEdit
?
'修改权限'
:
'创建权限'
}
},
methods
:
{
// 取消
onCancel
()
{
this
.
$emit
(
'update:visible'
,
false
)
},
// 确定
onPrimary
()
{
this
.
$refs
.
form
.
validate
().
then
(()
=>
{
this
.
isEdit
?
this
.
edit
()
:
this
.
create
()
})
},
// 创建权限
create
()
{
createPermission
(
this
.
form
).
then
(
res
=>
{
this
.
$message
.
success
(
'创建成功'
)
this
.
$emit
(
'update:visible'
,
false
)
this
.
$emit
(
'success'
,
res
.
data
)
})
},
// 编辑权限
edit
()
{
updatePermission
(
this
.
form
).
then
(
res
=>
{
this
.
$message
.
success
(
'修改成功'
)
this
.
$emit
(
'update:visible'
,
false
)
this
.
$emit
(
'success'
,
res
.
data
)
})
}
}
}
</
script
>
<
style
></
style
>
src/modules/permissions/index.js
0 → 100644
浏览文件 @
cb1d1aba
const
routes
=
[
{
path
:
'/permissions'
,
component
:
()
=>
import
(
'@/components/layout/Index.vue'
),
meta
:
{
title
:
'权限管理'
},
children
:
[{
path
:
''
,
component
:
()
=>
import
(
'./views/List.vue'
)
}]
}
]
export
{
routes
}
src/modules/permissions/views/List.vue
0 → 100644
浏览文件 @
cb1d1aba
<
template
>
<app-card>
<app-list
v-bind=
"tableOptions"
ref=
"list"
row-key=
"id"
>
<template
#
header-aside
>
<el-button
type=
"primary"
@
click=
"handleCreate()"
>
创建权限
</el-button>
</
template
>
<el-tabs
v-model=
"activeName"
type=
"card"
@
tab-click=
"handleClick"
>
<el-tab-pane
:label=
"item.label"
:name=
"item.value"
v-for=
"(item, index) in typeList"
:key=
"index"
></el-tab-pane>
</el-tabs>
<
template
v-slot:table-x=
"{ row }"
>
<el-button
type=
"text"
@
click=
"handleCreate(row)"
>
创建子权限
</el-button><br
/>
<el-button
type=
"text"
@
click=
"handleUpdate(row)"
>
编辑
</el-button>
<el-button
type=
"text"
@
click=
"onRemove(row)"
>
删除
</el-button>
</
template
>
</app-list>
<editform
:visible
.
sync=
"visible"
:isEdit=
"isEdit"
:data=
"editRaw"
@
success=
"handleSuccess"
v-if=
"visible"
></editform>
</app-card>
</template>
<
script
>
// 接口
import
{
getPermissionList
,
deletePermission
}
from
'../api'
export
default
{
components
:
{
Editform
:
()
=>
import
(
'../components/Editform.vue'
)
},
data
()
{
return
{
visible
:
false
,
isEdit
:
false
,
// 是否是编辑状态
editRaw
:
{},
// 编辑的数据
activeName
:
''
,
typeList
:
[
{
value
:
''
,
label
:
'全部'
},
{
value
:
'1'
,
label
:
'菜单'
},
{
value
:
'2'
,
label
:
'按钮'
}
]
}
},
computed
:
{
// 列表配置
tableOptions
()
{
return
{
hasPagination
:
false
,
remote
:
{
httpRequest
:
getPermissionList
,
params
:
{
name
:
''
,
tag
:
''
,
system_tag
:
''
,
type
:
''
,
is_format
:
1
},
beforeRequest
:
this
.
beforeRequest
,
callback
(
data
)
{
return
Array
.
isArray
(
data
)
?
data
:
[]
}
},
filters
:
[
{
type
:
'input'
,
prop
:
'name'
,
placeholder
:
'权限名称'
},
{
type
:
'input'
,
prop
:
'tag'
,
placeholder
:
'权限标识'
},
{
type
:
'select'
,
prop
:
'system_tag'
,
placeholder
:
'所属系统'
,
options
:
[
{
label
:
'学校端'
,
value
:
'1'
},
{
label
:
'教师端'
,
value
:
'2'
},
{
label
:
'学生端'
,
value
:
'3'
}
]
}
],
columns
:
[
{
label
:
'权限名称'
,
prop
:
'name'
},
{
label
:
'权限标识'
,
prop
:
'tag'
},
{
label
:
'所属系统'
,
prop
:
'system_tag'
,
computed
({
row
})
{
const
map
=
{
1
:
'学校端'
,
2
:
'教师端'
,
3
:
'学生端'
}
return
map
[
row
.
system_tag
]
||
row
.
system_tag
}
},
{
label
:
'类型'
,
prop
:
'type'
,
computed
({
row
})
{
const
map
=
{
1
:
'菜单权限'
,
2
:
'按钮权限'
}
return
map
[
row
.
type
]
||
row
.
type
}
},
{
label
:
'权限描述'
,
prop
:
'desc'
},
{
label
:
'操作'
,
slots
:
'table-x'
,
align
:
'center'
,
width
:
150
,
fixed
:
'right'
}
]
}
}
},
methods
:
{
beforeRequest
(
params
)
{
params
.
type
=
this
.
activeName
===
'0'
?
''
:
this
.
activeName
return
params
},
// tab
handleClick
()
{
this
.
$refs
.
list
.
refetch
(
true
)
},
// 创建成功刷新列表
handleSuccess
()
{
this
.
$refs
.
list
.
refetch
()
},
// 创建
handleCreate
(
row
)
{
this
.
isEdit
=
false
this
.
editRaw
=
row
?
{
parent_id
:
row
.
id
,
type
:
row
.
type
,
system_tag
:
row
.
system_tag
}
:
{
parent_id
:
'0'
}
this
.
visible
=
true
},
// 编辑
handleUpdate
(
row
)
{
this
.
isEdit
=
true
this
.
editRaw
=
row
this
.
visible
=
true
},
// 删除
onRemove
(
row
)
{
this
.
$confirm
(
'权限删除请谨慎操作,确定删除?'
,
'删除权限'
,
{
confirmButtonText
:
'删除'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
}).
then
(()
=>
{
this
.
handleRemove
(
row
)
})
},
// 删除
handleRemove
(
row
)
{
deletePermission
({
id
:
row
.
id
}).
then
(
res
=>
{
this
.
$message
({
type
:
'success'
,
message
:
'删除成功'
})
this
.
$refs
.
list
.
refetch
()
})
}
}
}
</
script
>
src/modules/roles/api.js
浏览文件 @
cb1d1aba
...
@@ -4,64 +4,52 @@ import httpRequest from '@/utils/axios'
...
@@ -4,64 +4,52 @@ import httpRequest from '@/utils/axios'
* 获取角色列表
* 获取角色列表
*/
*/
export
function
getRoleList
(
params
)
{
export
function
getRoleList
(
params
)
{
return
httpRequest
.
get
(
`/api/permissions/admin/v1/
${
params
.
app_id
}
/application/roles`
,
{
params
})
return
httpRequest
.
get
(
'/api/xedu/admin/v1/roles'
,
{
params
})
}
}
/**
/**
*
创建角色
*
获取角色详情
*/
*/
export
function
createRole
(
data
)
{
export
function
getRole
(
params
)
{
return
httpRequest
.
post
(
`/api/permissions/admin/v1/
${
data
.
app_id
}
/application/role`
,
data
)
return
httpRequest
.
get
(
`/api/xedu/admin/v1/role/
${
params
.
id
}
`
,
{
params
}
)
}
}
/**
/**
*
修改
角色
*
创建
角色
*/
*/
export
function
upd
ateRole
(
data
)
{
export
function
cre
ateRole
(
data
)
{
return
httpRequest
.
p
ut
(
`/api/permissions/admin/v1/application/
${
data
.
id
}
/role`
,
data
)
return
httpRequest
.
p
ost
(
'/api/xedu/admin/v1/role'
,
data
)
}
}
/**
/**
*
批量删除
角色
*
修改
角色
*/
*/
export
function
deleteRoles
(
data
)
{
export
function
updateRole
(
data
)
{
return
httpRequest
.
p
ost
(
`/api/permissions/admin/v1/
${
data
.
app_id
}
/application/batch-delete/roles
`
,
data
)
return
httpRequest
.
p
ut
(
`/api/xedu/admin/v1/role/
${
data
.
id
}
`
,
data
)
}
}
/**
/**
* 添加角色用户
* 删除角色
*/
export
function
addRoleUsers
(
data
)
{
return
httpRequest
.
post
(
`/api/permissions/admin/v1/
${
data
.
app_id
}
/application/assign/users-to-role`
,
data
)
}
/**
* 获取角色用户
*/
export
function
getRoleUsers
(
params
)
{
return
httpRequest
.
get
(
`/api/permissions/admin/v1/
${
params
.
app_id
}
/application/assign/role-users`
,
{
params
})
}
/**
* 删除角色用户
*/
*/
export
function
deleteRole
Users
(
data
)
{
export
function
deleteRole
(
data
)
{
return
httpRequest
.
post
(
`/api/permissions/admin/v1/
${
data
.
app_id
}
/application/assign/remove-role-users
`
,
data
)
return
httpRequest
.
delete
(
`/api/xedu/admin/v1/role/
${
data
.
id
}
`
,
data
)
}
}
/**
/**
* 获取权限列表
* 获取权限列表
*/
*/
export
function
getPermissionList
(
params
)
{
export
function
getPermissionList
(
params
)
{
return
httpRequest
.
get
(
`/api/
permissions
/admin/v1/
${
params
.
app_id
}
/application/permissions`
,
{
params
})
return
httpRequest
.
get
(
`/api/
xedu
/admin/v1/
${
params
.
app_id
}
/application/permissions`
,
{
params
})
}
}
/**
/**
* 获取角色所有权限
* 获取角色所有权限
*/
*/
export
function
getRolePermissions
(
params
)
{
export
function
getRolePermissions
(
params
)
{
return
httpRequest
.
get
(
`/api/
permissions
/admin/v1/
${
params
.
app_id
}
/application/assign/role-permissions`
,
{
params
})
return
httpRequest
.
get
(
`/api/
xedu
/admin/v1/
${
params
.
app_id
}
/application/assign/role-permissions`
,
{
params
})
}
}
/**
/**
* 更新角色权限
* 更新角色权限
*/
*/
export
function
updateRolePermissions
(
data
)
{
export
function
updateRolePermissions
(
data
)
{
return
httpRequest
.
post
(
`/api/
permissions
/admin/v1/
${
data
.
app_id
}
/application/assign/permissions-to-role`
,
data
)
return
httpRequest
.
post
(
`/api/
xedu
/admin/v1/
${
data
.
app_id
}
/application/assign/permissions-to-role`
,
data
)
}
}
src/modules/roles/components/Editform.vue
浏览文件 @
cb1d1aba
<
template
>
<
template
>
<el-dialog
:title=
"title"
:close-on-click-modal=
"false"
v-bind=
"$attrs"
v-on=
"$listeners"
width=
"500px"
>
<el-dialog
:title=
"title"
:close-on-click-modal=
"false"
v-bind=
"$attrs"
v-on=
"$listeners"
width=
"500px"
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-position=
"top"
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-position=
"top"
>
<el-form-item
label=
"名称"
prop=
"name"
>
<el-form-item
label=
"
角色
名称"
prop=
"name"
>
<el-input
v-model=
"form.name"
clearable
></el-input>
<el-input
v-model=
"form.name"
clearable
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"唯一标识"
prop=
"tag"
>
<el-form-item
label=
"角色描述"
prop=
"desc"
>
<el-input
v-model=
"form.tag"
clearable
:disabled=
"isEdit"
></el-input>
</el-form-item>
<el-form-item
label=
"描述"
prop=
"desc"
>
<el-input
type=
"textarea"
v-model=
"form.desc"
clearable
></el-input>
<el-input
type=
"textarea"
v-model=
"form.desc"
clearable
></el-input>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
...
@@ -30,7 +27,7 @@ export default {
...
@@ -30,7 +27,7 @@ export default {
form
:
{
name
:
''
,
tag
:
''
,
desc
:
''
},
form
:
{
name
:
''
,
tag
:
''
,
desc
:
''
},
rules
:
{
rules
:
{
name
:
[{
required
:
true
,
message
:
'请输入角色名称'
,
trigger
:
'blur'
}],
name
:
[{
required
:
true
,
message
:
'请输入角色名称'
,
trigger
:
'blur'
}],
tag
:
[{
required
:
true
,
message
:
'请输入角色唯一标识
'
,
trigger
:
'blur'
}]
desc
:
[{
required
:
true
,
message
:
'请输入角色描述
'
,
trigger
:
'blur'
}]
}
}
}
}
},
},
...
@@ -47,7 +44,7 @@ export default {
...
@@ -47,7 +44,7 @@ export default {
return
this
.
$store
.
state
.
appid
return
this
.
$store
.
state
.
appid
},
},
title
()
{
title
()
{
return
this
.
isEdit
?
'修改角色'
:
'
新增
角色'
return
this
.
isEdit
?
'修改角色'
:
'
添加
角色'
}
}
},
},
methods
:
{
methods
:
{
...
@@ -61,11 +58,11 @@ export default {
...
@@ -61,11 +58,11 @@ export default {
this
.
isEdit
?
this
.
edit
()
:
this
.
create
()
this
.
isEdit
?
this
.
edit
()
:
this
.
create
()
})
})
},
},
//
新增
角色
//
添加
角色
create
()
{
create
()
{
const
params
=
Object
.
assign
({
app_id
:
this
.
appid
},
this
.
form
)
const
params
=
Object
.
assign
({
app_id
:
this
.
appid
},
this
.
form
)
createRole
(
params
).
then
(
res
=>
{
createRole
(
params
).
then
(
res
=>
{
this
.
$message
.
success
(
'
新增
成功'
)
this
.
$message
.
success
(
'
添加
成功'
)
this
.
$emit
(
'update:visible'
,
false
)
this
.
$emit
(
'update:visible'
,
false
)
this
.
$emit
(
'success'
,
res
.
data
)
this
.
$emit
(
'success'
,
res
.
data
)
})
})
...
...
src/modules/roles/views/List.vue
浏览文件 @
cb1d1aba
<
template
>
<
template
>
<app-card>
<app-card>
<app-list
v-bind=
"tableOptions"
ref=
"list"
@
selection-change=
"handleSelectionChange"
>
<app-list
v-bind=
"tableOptions"
ref=
"list"
>
<template
#
header-aside
>
<template
#
header-aside
>
<el-button
type=
"primary"
icon=
"el-icon-plus"
@
click=
"handleCreate"
>
添加角色
</el-button>
<el-button
type=
"primary"
icon=
"el-icon-plus"
@
click=
"handleCreate"
>
添加角色
</el-button>
</
template
>
</
template
>
<
template
v-slot:table-x=
"{ row }"
>
<
template
v-slot:table-x=
"{ row }"
>
<el-button
type=
"text"
@
click=
"handleUpdate(row)"
>
修改
</el-button>
<el-button
type=
"text"
@
click=
"handleUpdate(row)"
>
修改
</el-button>
<el-button
type=
"text"
@
click=
"onRemove(row)"
>
删除
</el-button>
<el-button
type=
"text"
@
click=
"handlePermission(row)"
>
权限配置
</el-button>
<el-button
type=
"text"
@
click=
"handlePermission(row)"
>
权限配置
</el-button>
</
template
>
</
template
>
<
template
#
footer
>
<el-button
type=
"primary"
@
click=
"onRemove"
:disabled=
"!multipleSelection.length"
>
删除
</el-button>
</
template
>
</app-list>
</app-list>
<!-- 创建/编辑 -->
<!-- 创建/编辑 -->
<editform
<editform
...
@@ -27,7 +25,7 @@
...
@@ -27,7 +25,7 @@
<
script
>
<
script
>
// 接口
// 接口
import
{
getRoleList
,
deleteRole
s
}
from
'../api'
import
{
getRoleList
,
deleteRole
}
from
'../api'
export
default
{
export
default
{
components
:
{
components
:
{
Editform
:
()
=>
import
(
'../components/Editform.vue'
),
Editform
:
()
=>
import
(
'../components/Editform.vue'
),
...
@@ -38,14 +36,10 @@ export default {
...
@@ -38,14 +36,10 @@ export default {
visible
:
false
,
visible
:
false
,
isEdit
:
false
,
// 是否是编辑状态
isEdit
:
false
,
// 是否是编辑状态
editRaw
:
{},
// 编辑的数据
editRaw
:
{},
// 编辑的数据
permisssionVisible
:
false
,
// 是否显示权限设置
permisssionVisible
:
false
// 是否显示权限设置
multipleSelection
:
[]
// 已选择的数据
}
}
},
},
computed
:
{
computed
:
{
appid
()
{
return
this
.
$store
.
state
.
appid
},
// 列表配置
// 列表配置
tableOptions
()
{
tableOptions
()
{
return
{
return
{
...
@@ -53,33 +47,17 @@ export default {
...
@@ -53,33 +47,17 @@ export default {
httpRequest
:
getRoleList
,
httpRequest
:
getRoleList
,
params
:
{
app_id
:
this
.
$store
.
state
.
appid
,
name
:
''
,
tag
:
''
}
params
:
{
app_id
:
this
.
$store
.
state
.
appid
,
name
:
''
,
tag
:
''
}
},
},
filters
:
[
filters
:
[{
type
:
'input'
,
prop
:
'name'
,
placeholder
:
'角色名称'
}],
{
type
:
'input'
,
prop
:
'name'
,
placeholder
:
'角色名称'
},
{
type
:
'input'
,
prop
:
'tag'
,
placeholder
:
'角色唯一标识'
}
],
columns
:
[
columns
:
[
{
type
:
'selection'
},
{
label
:
'角色名称'
,
prop
:
'name'
},
{
label
:
'角色名称'
,
prop
:
'name'
},
{
label
:
'标识'
,
prop
:
'tag'
},
{
label
:
'角色描述'
,
prop
:
'desc'
},
{
label
:
'角色描述'
,
prop
:
'desc'
},
{
label
:
'创建时间'
,
prop
:
'created_at'
},
{
label
:
'操作'
,
slots
:
'table-x'
,
align
:
'right'
,
width
:
200
,
fixed
:
'right'
}
{
label
:
'操作'
,
slots
:
'table-x'
,
align
:
'right'
,
width
:
200
,
fixed
:
'right'
}
]
]
}
}
}
}
},
},
methods
:
{
methods
:
{
// 选择
handleSelectionChange
(
value
)
{
this
.
multipleSelection
=
value
},
// 创建成功刷新列表
// 创建成功刷新列表
handleSuccess
()
{
handleSuccess
()
{
this
.
$refs
.
list
.
refetch
()
this
.
$refs
.
list
.
refetch
()
...
@@ -102,17 +80,18 @@ export default {
...
@@ -102,17 +80,18 @@ export default {
this
.
permisssionVisible
=
true
this
.
permisssionVisible
=
true
},
},
// 删除
// 删除
onRemove
()
{
onRemove
(
row
)
{
this
.
$confirm
(
'
角色删除请谨慎操作,确定删除?
'
,
'删除角色'
,
{
this
.
$confirm
(
'
删除该角色后,已绑定该角色的账号将失效
'
,
'删除角色'
,
{
confirmButtonText
:
'删除'
,
confirmButtonText
:
'删除'
,
cancelButtonText
:
'取消'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
type
:
'warning'
}).
then
(
this
.
handleRemove
)
}).
then
(()
=>
{
this
.
handleRemove
(
row
)
})
},
},
// 删除
// 删除
handleRemove
()
{
handleRemove
(
row
)
{
const
ids
=
this
.
multipleSelection
.
map
(
item
=>
item
.
id
)
deleteRole
({
id
:
row
.
id
}).
then
(
res
=>
{
deleteRoles
({
app_id
:
this
.
appid
,
ids
:
JSON
.
stringify
(
ids
)
}).
then
(
res
=>
{
this
.
$message
({
type
:
'success'
,
message
:
'删除成功'
})
this
.
$message
({
type
:
'success'
,
message
:
'删除成功'
})
this
.
$refs
.
list
.
refetch
()
this
.
$refs
.
list
.
refetch
()
})
})
...
...
src/modules/school/api.js
浏览文件 @
cb1d1aba
...
@@ -4,33 +4,33 @@ import httpRequest from '@/utils/axios'
...
@@ -4,33 +4,33 @@ import httpRequest from '@/utils/axios'
* 获取机构列表
* 获取机构列表
*/
*/
export
function
getOrgList
(
params
)
{
export
function
getOrgList
(
params
)
{
return
httpRequest
.
get
(
'/admin/v1/organization'
,
{
params
})
return
httpRequest
.
get
(
'/a
pi/xedu/a
dmin/v1/organization'
,
{
params
})
}
}
/**
/**
* 获取机构详情
* 获取机构详情
*/
*/
export
function
getOrg
(
params
)
{
export
function
getOrg
(
params
)
{
return
httpRequest
.
get
(
`/admin/v1/organization/
${
params
.
id
}
`
,
{
params
})
return
httpRequest
.
get
(
`/a
pi/xedu/a
dmin/v1/organization/
${
params
.
id
}
`
,
{
params
})
}
}
/**
/**
* 创建机构
* 创建机构
*/
*/
export
function
createOrg
(
data
)
{
export
function
createOrg
(
data
)
{
return
httpRequest
.
post
(
'/api/
permissions
/admin/v1/organization'
,
data
)
return
httpRequest
.
post
(
'/api/
xedu
/admin/v1/organization'
,
data
)
}
}
/**
/**
* 修改机构
* 修改机构
*/
*/
export
function
updateOrg
(
data
)
{
export
function
updateOrg
(
data
)
{
return
httpRequest
.
put
(
`/admin/v1/organization/
${
data
.
id
}
`
,
data
)
return
httpRequest
.
put
(
`/a
pi/xedu/a
dmin/v1/organization/
${
data
.
id
}
`
,
data
)
}
}
/**
/**
* 删除机构
* 删除机构
*/
*/
export
function
deleteOrg
(
data
)
{
export
function
deleteOrg
(
data
)
{
return
httpRequest
.
delete
(
`/admin/v1/organization/
${
data
.
id
}
`
,
data
)
return
httpRequest
.
delete
(
`/a
pi/xedu/a
dmin/v1/organization/
${
data
.
id
}
`
,
data
)
}
}
vite.config.js
浏览文件 @
cb1d1aba
...
@@ -14,7 +14,7 @@ export default defineConfig({
...
@@ -14,7 +14,7 @@ export default defineConfig({
cert
:
fs
.
readFileSync
(
path
.
join
(
__dirname
,
'./https/dev.ezijing.com.pem'
))
cert
:
fs
.
readFileSync
(
path
.
join
(
__dirname
,
'./https/dev.ezijing.com.pem'
))
},
},
proxy
:
{
proxy
:
{
'/api'
:
'https://x-school2.ezijing.com'
'/api'
:
'https://x-school
-admin
2.ezijing.com'
}
}
},
},
resolve
:
{
resolve
:
{
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论