Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
so-manage-ui
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
smart-operation
so-manage-ui
Commits
4c83ec3c
Commit
4c83ec3c
authored
Nov 08, 2022
by
张俊
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' of
https://cloud.wodcloud.com/git/apaas/apaas-system-ui
into dev
parents
4422adb8
4deaf832
Changes
9
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
99 additions
and
36 deletions
+99
-36
src/bg-ui/index.scss
src/bg-ui/index.scss
+1
-1
src/components/login-by-account.vue
src/components/login-by-account.vue
+1
-1
src/page/main/config/dict/index.vue
src/page/main/config/dict/index.vue
+2
-2
src/page/main/develop/menu/index.vue
src/page/main/develop/menu/index.vue
+65
-18
src/page/main/develop/menu/menu-form.vue
src/page/main/develop/menu/menu-form.vue
+1
-3
src/page/main/system/organization/tree.vue
src/page/main/system/organization/tree.vue
+1
-1
src/page/main/system/role/add/role_form.vue
src/page/main/system/role/add/role_form.vue
+7
-2
src/page/main/system/role/index.vue
src/page/main/system/role/index.vue
+13
-2
src/router/function.js
src/router/function.js
+8
-6
No files found.
src/bg-ui/index.scss
View file @
4c83ec3c
...
...
@@ -663,7 +663,7 @@ a {
>
.cell
{
padding
:
0
10px
!
important
;
color
:
#404a62
;
line-height
:
1
4
px
;
line-height
:
1
6
px
;
}
}
...
...
src/components/login-by-account.vue
View file @
4c83ec3c
...
...
@@ -126,7 +126,7 @@ export default {
}
else
{
this
.
getImg
(
true
);
this
.
$message
({
message
:
data
.
errMsg
,
message
:
data
.
data
,
type
:
"
error
"
,
});
}
...
...
src/page/main/config/dict/index.vue
View file @
4c83ec3c
...
...
@@ -9,7 +9,7 @@
<div
class=
"flex_row"
>
<div
class=
"flex_left"
>
<div
class=
"box"
>
<el-input
class=
"type-input"
v-model=
"typeKeyword"
@
input=
"searchType"
:prefix-icon=
"Search"
placeholder=
"请输入搜索内容"
></el-input>
<el-input
class=
"type-input"
v-model
.trim
=
"typeKeyword"
@
input=
"searchType"
:prefix-icon=
"Search"
placeholder=
"请输入搜索内容"
></el-input>
<div
class=
"type_station bg-scroll"
>
<div
class=
"type-box"
:class=
"
{'current-type':nodeClassifyId==item.classify_id}" @click="nodeClick(item)" v-for="(item,index) in typeList" :key="'type'+index+200">
...
...
@@ -189,7 +189,7 @@ const state = reactive({
width
:
220
,
},
{
label
:
"
状态
"
,
label
:
"
是否启用
"
,
prop
:
"
state
"
,
},
{
...
...
src/page/main/develop/menu/index.vue
View file @
4c83ec3c
...
...
@@ -11,7 +11,7 @@
<div
class=
"tree_content"
>
<div
class=
"search"
>
<el-input
v-model=
"search"
v-model
.trim
=
"search"
placeholder=
"请输入内容"
:prefix-icon=
"Search"
/>
...
...
@@ -90,6 +90,26 @@
</div>
</div>
</div>
<!-- 删除弹窗 -->
<el-dialog
custom-class=
"dialog_box"
title=
"提示"
v-model=
"delDialog"
width=
"400px"
:before-close=
"
() => {
delDialog = false;
}
"
>
<div>
确定要删除此菜单吗?
</div>
<
template
v-slot:footer
>
<div
class=
"apaas_button"
>
<el-button
type=
"default"
@
click=
"delDialog = false"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"deleteData"
>
确 定
</el-button>
</div>
</
template
>
</el-dialog>
</div>
</template>
...
...
@@ -127,6 +147,7 @@ const state = reactive({
addType
:
1
,
// 1-新增本级 2-新增下级
newMenuId
:
0
,
// 新增菜单时用来指定menu_id,达到选中效果
timer
:
null
,
// 定时器
delDialog
:
false
,
})
const
moveIndex
=
computed
({
...
...
@@ -150,7 +171,7 @@ watch(() => state.search,(n,o) => {
},
500
);
})
// 树形搜索值
const
getMenuTree
=
(
type
)
=>
{
const
getMenuTree
=
(
type
,
id
)
=>
{
axios
.
get
(
`/apaas/system/v5/menu/tree`
)
.
then
((
res
)
=>
{
...
...
@@ -165,7 +186,10 @@ const getMenuTree = (type) => {
state
.
menuTree
&&
state
.
menuTree
.
setCurrentKey
(
state
.
data
[
0
].
menu_id
);
handleNodeClick
(
state
.
data
[
0
]);
}
}
else
{
// 新建,上下移,初始化时默认选中节点
}
else
{
// 上下移,初始化时默认选中节点 新建选中新增的节点
if
(
id
)
{
findData
(
state
.
data
,
id
)
}
if
(
state
.
selectData
)
{
state
.
menuTree
&&
state
.
menuTree
.
setCurrentKey
(
state
.
selectData
.
menu_id
);
handleNodeClick
(
state
.
selectData
);
...
...
@@ -182,6 +206,18 @@ const getMenuTree = (type) => {
})
}
// 获取菜单树
const
findData
=
(
arr
,
id
)
=>
{
arr
.
forEach
(
e
=>
{
if
(
e
.
menu_id
==
id
)
{
state
.
selectData
=
e
}
else
{
if
(
e
.
Child
&&
e
.
Child
.
length
>
0
)
{
findData
(
e
.
Child
,
id
)
}
}
})
}
// 处理数据 用于新增菜单后选中新增的菜单
const
findIndex
=
(
code
,
arr
)
=>
{
arr
.
forEach
((
e
,
i
)
=>
{
if
(
e
.
menu_id
==
code
)
{
...
...
@@ -298,18 +334,12 @@ const fileAction = (val,data,parent,disabled=false) => {
state
.
selectParentData
=
data
state
.
newMenuId
++
}
else
if
(
val
==
3
)
{
// 删除菜单
axios
.
delete
(
`/apaas/system/v5/menu/
${
data
.
id
}
`
)
.
then
((
res
)
=>
{
if
(
res
.
data
.
code
==
200
)
{
ElMessage
.
success
(
res
.
data
.
msg
)
state
.
selectData
=
null
let
type
=
parent
?
1
:
2
// 1--有父级 2--无父级
getMenuTree
(
type
)
}
else
{
ElMessage
.
error
(
res
.
data
.
data
)
if
(
data
.
state
==
1
)
{
ElMessage
.
error
(
"
删除内容中有启用状态的数据,不可删除!
"
)
return
}
})
state
.
delDialog
=
true
}
else
if
(
val
==
4
)
{
// 菜单上移
if
(
disabled
)
{
return
...
...
@@ -360,6 +390,22 @@ const fileAction = (val,data,parent,disabled=false) => {
}
// 清除表单验证
}
// 各种操作按钮
const
deleteData
=
()
=>
{
axios
.
delete
(
`/apaas/system/v5/menu/
${
state
.
selectData
.
id
}
`
)
.
then
((
res
)
=>
{
if
(
res
.
data
.
code
==
200
)
{
ElMessage
.
success
(
res
.
data
.
msg
)
state
.
selectData
=
null
let
type
=
state
.
selectParentData
?
1
:
2
// 1--有父级 2--无父级
getMenuTree
(
type
)
state
.
delDialog
=
false
}
else
{
ElMessage
.
error
(
res
.
data
.
data
)
}
})
}
const
changeSort
=
(
data
,
nextObj
)
=>
{
let
params
=
[
{
...
...
@@ -427,7 +473,7 @@ const saveMenu = (el,type) => {
if
(
res
.
data
.
code
==
200
)
{
ElMessage
.
success
(
res
.
data
.
msg
)
state
.
selectData
=
null
getMenuTree
()
getMenuTree
(
null
,
res
.
data
.
data
)
}
else
{
ElMessage
.
error
(
res
.
data
.
data
)
}
...
...
@@ -457,6 +503,7 @@ const {
selectData
,
menuFormData
,
addType
,
delDialog
,
}
=
toRefs
(
state
)
</
script
>
...
...
src/page/main/develop/menu/menu-form.vue
View file @
4c83ec3c
...
...
@@ -40,7 +40,7 @@
/>
</el-form-item>
<el-form-item
label=
"菜单路径"
:prop=
"topLevel ? '' : 'menu_url'"
>
<el-input
v-model=
"menuForm.menu_url"
placeholder=
"请输入菜单路径"
/>
<el-input
v-model=
"menuForm.menu_url"
show-word-limit
maxlength=
"200"
placeholder=
"请输入菜单路径"
/>
</el-form-item>
<el-form-item
label=
"菜单图标"
prop=
"menu_logo"
>
<div
class=
"iconBox"
:style=
"iconFlag ?
{'border-color':'#2b4695'} : {} " @click="openIconbox">
...
...
@@ -182,7 +182,6 @@ const searchIcon = () => {
}
// 图标筛选
const
setForm
=
(
data
)
=>
{
console
.
log
(
data
)
if
(
data
.
level
&&
data
.
level
==
1
)
{
state
.
topLevel
=
true
}
else
{
...
...
@@ -194,7 +193,6 @@ const setForm = (data) => {
}
}
state
.
typeDisFlag
=
data
.
p_menu_type
console
.
log
(
state
.
groupFlag
)
if
(
data
.
id
)
{
// 编辑状态
state
.
radioDisabled
=
true
}
else
{
...
...
src/page/main/system/organization/tree.vue
View file @
4c83ec3c
...
...
@@ -74,7 +74,7 @@ import { useRouter } from 'vue-router';
const
actionFlag
=
ref
(
false
)
const
selectData
=
ref
(
null
)
const
selectDataParent
=
ref
(
null
)
const
mvDataParent
=
ref
(
null
)
const
mvDataParent
=
ref
(
[]
)
const
treeRef
=
ref
(
null
)
const
orgData
=
ref
([])
...
...
src/page/main/system/role/add/role_form.vue
View file @
4c83ec3c
...
...
@@ -17,7 +17,7 @@
class=
"role_form"
>
<el-form-item
prop=
"role_name"
label=
"角色名称"
>
<el-input
v-model=
"formData.role_name"
maxlength=
"50"
show-word-limit
/>
<el-input
v-model=
"formData.role_name"
maxlength=
"50"
show-word-limit
:disabled=
"rowType != 0"
/>
</el-form-item>
<el-form-item
prop=
"role_desc"
label=
"描述"
>
<el-input
...
...
@@ -27,11 +27,12 @@
maxlength=
"300"
show-word-limit
:autosize=
"
{ minRows: 5 }"
:disabled="rowType != 0"
>
</el-input>
</el-form-item>
<el-form-item
label=
"数据权限"
prop=
"data_purview"
>
<el-radio-group
v-model=
"formData.data_purview"
>
<el-radio-group
v-model=
"formData.data_purview"
:disabled=
"rowType != 0"
>
<el-radio
:label=
"3"
>
全平台所有
</el-radio>
<el-radio
:label=
"2"
>
本组织所有
</el-radio>
<el-radio
:label=
"1"
>
仅自己
</el-radio>
...
...
@@ -54,6 +55,7 @@
inline-prompt
active-text=
"是"
inactive-text=
"否"
:disabled=
"rowType != 0"
/>
</el-form-item>
...
...
@@ -117,6 +119,7 @@ const roleState = reactive({
children
:
'
Child
'
,
},
// 菜单框默认配置
permissionData
:
[],
// 菜单数据
rowType
:
0
,
})
const
getMenuTree
=
()
=>
{
axios
...
...
@@ -140,6 +143,7 @@ const getRoleDetail = () => {
.
then
((
res
)
=>
{
if
(
res
.
data
.
code
==
200
)
{
let
{
role_name
,
role_desc
,
data_purview
,
state
,
menus
}
=
res
.
data
.
data
roleState
.
rowType
=
res
.
data
.
data
.
role_type
let
permission_arr
=
[]
if
(
menus
&&
menus
.
length
>
0
)
{
menus
.
forEach
(
e
=>
{
...
...
@@ -214,6 +218,7 @@ const {
rules
,
defaultProps
,
permissionData
,
rowType
,
}
=
toRefs
(
roleState
)
</
script
>
...
...
src/page/main/system/role/index.vue
View file @
4c83ec3c
...
...
@@ -49,14 +49,14 @@
:labels=
"['否','是']"
:values=
"[0,1]"
v-model=
"row.state"
:disabled=
"row.role_type == 1"
:disabled=
"row.role_type == 1
|| row.role_type == 2
"
/>
</
template
>
<
template
v-slot:created_time=
"{ row }"
>
{{
row
.
created_time
.
split
(
"
+
"
)[
0
].
replace
(
"
T
"
,
"
"
).
replace
(
"
Z
"
,
"
"
)
}}
</
template
>
<
template
v-slot:action=
"{ row }"
>
<bg-table-btn
class=
"can_click_text"
:click=
"()=>
{edit_row(row)}"
:disabled="row.state == 1 || row.role_type == 1"
>
<bg-table-btn
class=
"can_click_text"
:click=
"()=>
{edit_row(row)}">
编辑
</bg-table-btn>
<bg-table-btn
class=
"can_click_text"
:click=
"()=>
{distribute_user(row)}" :disabled="row.cant_allot == 1">
...
...
@@ -621,6 +621,17 @@ const {
height
:
calc
(
100%
-
68px
);
.user_table
{
max-height
:
calc
(
100%
-
48px
);
:deep
()
.bg-table
{
.el-scrollbar
{
--el-scrollbar-bg-color
:
#fff
}
.el-table__empty-block
{
.empty_container
{
height
:
calc
(
100%
-
45px
);
}
}
}
}
}
}
...
...
src/router/function.js
View file @
4c83ec3c
...
...
@@ -40,12 +40,6 @@ var adminMenu = [
dict_group_id
:
"
64c156e0-bfff-4bfc-a63a-56effe130a25
"
,
menuType
:
2
,
},
{
menuName
:
"
ui服务测试
"
,
path
:
"
/ui-example
"
,
dict_group_id
:
"
64c156e0-bfff-4bfc-a63a-56effe130a25
"
,
menuType
:
2
,
},
{
menuName
:
"
注册认证
"
,
path
:
"
/register-valid
"
,
...
...
@@ -99,6 +93,14 @@ var adminMenu = [
path
:
"
/ability-manage/sold-list/service-test
"
,
dict_group_id
:
"
64c156e0-bfff-4bfc-a63a-56effe130a25
"
,
menuType
:
2
,
children
:
[
{
menuName
:
"
ui服务测试
"
,
path
:
"
/ui-example
"
,
dict_group_id
:
"
64c156e0-bfff-4bfc-a63a-56effe130a25
"
,
menuType
:
2
,
},
]
},
],
dict_group_id
:
"
64c156e0-bfff-4bfc-a63a-56effe130a25
"
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment