Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
P
pica.cloud.web-education-admin
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
成员
成员
收起侧边栏
Close sidebar
动态
分支图
统计图
提交
打开侧边栏
com.pica.cloud.education.frontend
pica.cloud.web-education-admin
提交
59edb857
提交
59edb857
编写于
9月 02, 2019
作者:
zhentian.jia
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
角色管理 学情报告更新
上级
116995e6
变更
1
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
146 行增加
和
13 行删除
+146
-13
item-role.vue
src/views/system/item-role.vue
+146
-13
未找到文件。
src/views/system/item-role.vue
浏览文件 @
59edb857
...
...
@@ -72,15 +72,32 @@
</el-form>
</el-row>
<el-table
:data=
"tableData"
style=
"width: 100%"
>
<
el-table-column
prop=
"userId"
label=
"用户ID"
align=
"center"
></el-table-column
>
<
!--
<el-table-column
prop=
"userId"
label=
"用户ID"
align=
"center"
></el-table-column>
--
>
<el-table-column
prop=
"userName"
label=
"姓名"
align=
"center"
></el-table-column>
<el-table-column
prop=
"county"
label=
"所属区县"
align=
"center"
></el-table-column>
<el-table-column
prop=
"organizationName"
label=
"所属机构"
align=
"center"
></el-table-column>
<el-table-column
prop=
"departmentsName"
label=
"科室"
align=
"center"
></el-table-column>
<el-table-column
prop=
"projeceRole"
label=
"角色"
align=
"center"
>
<template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
projeceRole
|
projeceRoleType
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"organizationName"
label=
"所属机构"
align=
"center"
></el-table-column>
<el-table-column
prop=
"departmentsName"
label=
"科室"
align=
"center"
></el-table-column>
<el-table-column
prop=
"area"
label=
"负责区域"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<el-popover
placement=
"bottom"
title=
""
width=
"200"
trigger=
"hover"
class=
"more-text"
>
<p
class=
"more-text"
>
{{
scope
.
row
.
departmentsName
}}
!!!是一段内这是一段内容,这是一段内这是一段内容,这是一段内这是这是一段内容,这是一段内这是一段内容,这是一段内这是一段内容,这是一段内这是一段内容,这是一段内一段内容,这是一段内这是一段内容,这是一段内这是一段内容,这是一段内这是一段内容,这是一段内容,这是一段内容,这是一段内容
</p>
<p
slot=
"reference"
>
{{
scope
.
row
.
departmentsName
}}
</p>
</el-popover>
</
template
>
</el-table-column>
<el-table-column
fixed=
"right"
label=
"操作"
width=
"400"
align=
"left"
>
<
template
slot-scope=
"scope"
>
<el-button
...
...
@@ -106,6 +123,7 @@
size=
"small"
v-show=
"scope.row.projeceRole == 'L3'"
@
click=
"addArea()"
:disabled=
"activeUser !== 'L1'"
>
追加区域权限
</el-button>
</
template
>
</el-table-column>
...
...
@@ -142,7 +160,7 @@
<p
v-else
>
确认将{{ dialog.role }}
<span
class=
"user-name"
>
"{{ dialog.name }}"
</span>
{{ dialog.option }}吗?
"
{{ dialog.option }}吗?
</p>
<span
slot=
"footer"
class=
"dialog-footer"
>
...
...
@@ -205,7 +223,7 @@
width=
"70%"
class=
"dialog-area"
center
>
<el-col
class=
"area-choose"
:span=
"1
2
"
>
<el-col
class=
"area-choose"
:span=
"1
5
"
>
<el-tree
default-expand-all
:data=
"treeData"
...
...
@@ -229,7 +247,16 @@
</span>
</el-tree>
</el-col>
<el-col
class=
"rim"
:span=
"11"
></el-col>
<el-col
class=
"area-choose"
:span=
"8"
>
<p
class=
"area-p"
><i
class=
"el-icon-bottom"
></i>
追加下列区域的学情报告查看权限 已选择({{ tagsRegion.length }})
</p>
<el-tag
v-for=
"tag in tagsRegion"
:key=
"tag.name"
closable
:type=
"tag.type"
@
close=
"handleCloseTree(tag)"
>
{{tag.name}}
</el-tag>
</el-col>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
size=
"small"
@
click=
"dialogArea = false"
>
取消
</el-button>
<el-button
type=
"primary"
size=
"small"
@
click=
"dialogArea = false"
>
确认
</el-button>
...
...
@@ -378,15 +405,17 @@ export default {
nowL
:
this
.
scopeRow
.
projeceRole
};
vm
.
GET
(
"portal/portalProjectOrRole/roleLevelUpdate"
,
req
).
then
(
res
=>
{
this
.
dialog
.
show
=
false
;
vm
.
dialog
.
show
=
false
;
if
(
res
.
code
==
"000000"
)
{
console
.
log
(
res
);
this
.
queryRoleList
();
vm
.
queryRoleList
();
vm
.
$message
({
message
:
'设置成功!'
,
type
:
'success'
});
}
else
{
this
.
$message
.
error
(
'设置失败!'
);
}
vm
.
$message
({
type
:
'info'
,
message
:
res
.
message
,
})
});
},
handleSizeChange
(
val
)
{
...
...
@@ -519,6 +548,25 @@ export default {
this
.
$refs
.
tree
.
setCheckedKeys
(
treeIdList
);
this
.
tagsRegion
=
checkList
;
},
initCheckList
(
allSelectedKeys
)
{
this
.
tagsRegion
=
[];
// console.log(allSelectedKeys);
// console.log(this.$refs.tree.getCheckedNodes());
let
nodeData
=
this
.
$refs
.
tree
.
getCheckedNodes
();
for
(
let
i
=
0
;
i
<
nodeData
.
length
;
i
++
)
{
for
(
let
j
=
0
;
j
<
allSelectedKeys
.
length
;
j
++
)
{
if
(
allSelectedKeys
[
j
].
type
==
1
&&
nodeData
[
i
].
id
==
allSelectedKeys
[
j
].
key
)
{
let
tagObj
=
{};
tagObj
.
name
=
nodeData
[
i
].
label
;
tagObj
.
key
=
nodeData
[
i
].
id
;
this
.
tagsRegion
.
push
(
tagObj
);
}
}
}
},
onChecked
()
{
let
cData
=
[],
oldData
=
(
this
.
treeData
.
length
&&
this
.
treeData
.
slice
())
||
[],
...
...
@@ -535,7 +583,42 @@ export default {
allSelectedKeys
=
savedCheckedKeys
.
concat
(
savedHalfCheckedKeys
);
this
.
allSelectedKeys
=
allSelectedKeys
;
// this.initCheckList(allSelectedKeys);
this
.
initCheckList
(
allSelectedKeys
);
},
// 递归删除列表中所有子节点
delSubKeysByNode
(
node
,
checkedKeys
)
{
let
idIndex
;
if
(
node
.
children
&&
node
.
children
.
length
)
{
if
(
node
.
children
&&
node
.
children
.
length
)
{
node
.
children
.
forEach
(
elm
=>
{
idIndex
=
checkedKeys
.
findIndex
(
id
=>
{
return
id
===
elm
.
id
;
});
if
(
idIndex
>
-
1
)
{
checkedKeys
.
splice
(
idIndex
,
1
);
}
if
(
elm
.
children
&&
elm
.
children
.
length
)
{
this
.
delSubKeysByNode
(
elm
,
checkedKeys
);
}
});
}
}
},
// 去除子节点
handlerCheckedData
(
oldData
,
checkedKeys
)
{
oldData
.
forEach
(
element
=>
{
for
(
let
i
=
0
;
i
<
checkedKeys
.
length
;
i
++
)
{
// 如果此节点被选中,则删除所有子节点
if
(
element
.
id
===
checkedKeys
[
i
])
{
this
.
delSubKeysByNode
(
element
,
checkedKeys
);
}
else
{
if
(
element
.
children
&&
element
.
children
.
length
)
{
this
.
handlerCheckedData
(
element
.
children
,
checkedKeys
);
}
}
}
});
return
checkedKeys
;
},
//添加子节点
append
(
data
,
node
)
{
...
...
@@ -577,6 +660,22 @@ export default {
this
.
$refs
.
tree
.
setCheckedKeys
(
checkList
);
});
},
//通过key设置tree
setCheckedKeys
(
tagsRegion
)
{
console
.
log
(
tagsRegion
);
let
treeKeyList
=
[];
for
(
let
index
=
0
;
index
<
tagsRegion
.
length
;
index
++
)
{
treeKeyList
[
index
]
=
tagsRegion
[
index
].
key
;
}
console
.
log
(
treeKeyList
);
this
.
$refs
.
tree
.
setCheckedKeys
(
treeKeyList
);
},
//删除label节点 同步树结构
handleCloseTree
(
tag
)
{
this
.
tagsRegion
.
splice
(
this
.
tagsRegion
.
indexOf
(
tag
),
1
);
this
.
setCheckedKeys
(
this
.
tagsRegion
);
},
}
};
</
script
>
...
...
@@ -604,6 +703,13 @@ export default {
margin-left
:
10px
;
}
}
.user-name
{
color
:
#449284
;
}
.more-text
{
max-height
:
40px
;
overflow-y
:
scroll
;
}
.dialog-p
{
text-align
:
center
;
span
{
...
...
@@ -653,12 +759,39 @@ export default {
.el-dialog__body
{
overflow
:
hidden
;
.area-choose
{
padding
:
10px
0
0
10px
;
height
:
515px
;
overflow-y
:
scroll
;
border
:
1px
solid
#dddddd
;
.el-icon-caret-bottom
{
color
:
#449284
;
}
.area-p
{
color
:
#449284
;
margin-bottom
:
10px
;
}
.el-checkbox__input.is-indeterminate
.el-checkbox__inner
{
background-color
:
#449284
;
border-color
:
#449284
;
}
}
}
}
.el-tag
{
margin
:
0
10px
10px
0
;
border
:
1
.3px
solid
#48a8fe
;
color
:
#1e92fe
;
background-color
:
#e7f6fe
;
.el-icon-close
{
width
:
13px
;
height
:
13px
;
line-height
:
13px
;
font-size
:
12px
;
background-color
:
#0486fe
;
border-radius
:
50%
;
color
:
#d4edfe
;
}
}
}
.table-empty
{
img
{
...
...
写
预览
Markdown
格式
0%
请重试
or
附加一个文件
附加文件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录