Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
P
pica-admin-IM
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
Close sidebar
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
com.pica.cloud.education.frontend
pica-admin-IM
提交
eb9ccc1e
提交
eb9ccc1e
编写于
3月 14, 2019
作者:
zhentian.jia
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
角色管理页面逻辑
上级
22e419da
变更
4
隐藏空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
173 行增加
和
63 行删除
+173
-63
filter.js
src/utils/filter.js
+12
-0
item-manager.vue
src/views/education/item-manager.vue
+2
-1
item-role.vue
src/views/system/item-role.vue
+154
-47
role.vue
src/views/system/role.vue
+5
-15
未找到文件。
src/utils/filter.js
浏览文件 @
eb9ccc1e
...
...
@@ -141,5 +141,17 @@ const vueFilter = {
return
'已拒绝'
}
},
projeceRoleType
:
(
value
)
=>
{
if
(
value
==
"L1"
)
{
return
'内部管理员'
}
else
if
(
value
==
"L2"
)
{
return
'项目负责人'
}
else
if
(
value
==
"L3"
)
{
return
'次级负责人'
}
else
if
(
value
==
"L4"
)
{
return
'普通用户'
}
},
}
export
default
vueFilter
\ No newline at end of file
src/views/education/item-manager.vue
浏览文件 @
eb9ccc1e
...
...
@@ -6,7 +6,7 @@
<div
style=
"margin: 10px 0 0 10px"
>
<el-form
:inline=
"true"
:model=
"formInline"
class=
"demo-form-inline"
>
<el-form-item
label=
"项目名称:"
>
<el-input
v-model=
"formInline.projectName"
size=
"mini"
placeholder=
"
审批人
"
></el-input>
<el-input
v-model=
"formInline.projectName"
size=
"mini"
placeholder=
"
请输入项目名称
"
></el-input>
</el-form-item>
<el-form-item
label=
"项目时间:"
>
<el-date-picker
...
...
@@ -215,6 +215,7 @@ export default {
setParam
(
data
)
{
let
param
=
{};
if
(
data
.
duringTime
!==
null
&&
data
.
duringTime
!==
""
&&
data
.
duringTime
[
0
]
!==
null
&&
data
.
duringTime
[
1
]
!==
null
...
...
src/views/system/item-role.vue
浏览文件 @
eb9ccc1e
...
...
@@ -5,12 +5,12 @@
<div
class=
"header-title"
>
查询条件
</div>
<el-row
:gutter=
"30"
class=
"row"
type=
"flex"
style=
"margin-top: 10px;"
>
<el-form
ref=
"serchForm"
:model=
"formInline"
label-width=
"75px"
class=
"form-inline"
>
<el-col
:span=
"
5
"
>
<el-col
:span=
"
6
"
>
<el-form-item
label=
"姓名:"
>
<el-input
size=
"mini"
v-model=
"formInline.name"
placeholder=
"审批人"
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"
5
"
>
<el-col
:span=
"
6
"
>
<el-form-item
label=
"所属机构:"
>
<el-select
size=
"mini"
v-model=
"formInline.organization"
placeholder=
"请选择所属机构"
>
<el-option
label=
"机构1"
value=
"organization1"
></el-option>
...
...
@@ -18,7 +18,7 @@
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"
5
"
>
<el-col
:span=
"
6
"
>
<el-form-item
label=
"所属科室:"
>
<el-select
size=
"mini"
v-model=
"formInline.department"
placeholder=
"请选择所属科室"
>
<el-option
label=
"科室1"
value=
"department1"
></el-option>
...
...
@@ -26,9 +26,9 @@
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"6"
style=
"padding:0;text-align:right;padding-right:1
5
px;"
>
<el-button
type=
"primary"
size=
"small"
@
click=
"
search
"
>
查询
</el-button>
<el-button
type=
"default"
size=
"small"
@
click=
"reseat"
style=
"margin-left:0;"
>
重置
</el-button>
<el-col
:span=
"6"
style=
"padding:0;text-align:right;padding-right:1
0
px;"
>
<el-button
type=
"primary"
size=
"small"
@
click=
"
queryRoleList()
"
>
查询
</el-button>
<el-button
type=
"default"
size=
"small"
@
click=
"reseat
()
"
style=
"margin-left:0;"
>
重置
</el-button>
</el-col>
</el-form>
</el-row>
...
...
@@ -37,15 +37,35 @@
:data=
"tableData"
:header-cell-style=
"
{background:'#FAFAFA',color:'#000'}"
>
<el-table-column
prop=
"id"
label=
"用户ID"
align=
"center"
></el-table-column>
<el-table-column
prop=
"name"
label=
"姓名"
align=
"center"
></el-table-column>
<el-table-column
prop=
"role"
label=
"角色"
align=
"center"
></el-table-column>
<el-table-column
prop=
"organization"
label=
"所属机构"
align=
"center"
></el-table-column>
<el-table-column
prop=
"department"
label=
"科室"
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=
"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
fixed=
"right"
label=
"操作"
width=
"300"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<el-button
type=
"primary"
size=
"small"
@
click=
"toPage(scope)"
>
升级项目负责人
</el-button>
<el-button
type=
"primary"
size=
"small"
@
click=
"toPage(scope)"
>
降为普通用户
</el-button>
<el-button
type=
"primary"
size=
"small"
v-show=
"showButton(scope.row,'L2')"
@
click=
"openDialog(scope.row,'L2')"
>
升级项目负责人
</el-button>
<el-button
type=
"primary"
size=
"small"
v-show=
"showButton(scope.row,'L3')"
@
click=
"openDialog(scope.row,'L3')"
>
升级次级负责人
</el-button>
<el-button
type=
"primary"
size=
"small"
v-show=
"showButton(scope.row,'L4')"
@
click=
"openDialog(scope.row,'L4')"
>
降为普通用户
</el-button>
</
template
>
</el-table-column>
</el-table>
...
...
@@ -54,30 +74,52 @@
background
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
:current-page=
"
currentPage
"
:current-page=
"
formInline.pageNo
"
:page-sizes=
"[100, 200, 300, 400]"
:page-size=
"
100
"
:page-size=
"
formInline.pageSize
"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"
400
"
:total=
"
totalRows
"
></el-pagination>
</div>
<el-dialog
title
:visible
.
sync=
"dialog.show"
width=
"30%"
center
>
<p
class=
"dialog-p"
>
确认将{{ dialog.role }}
<span
class=
"user-name"
>
"{{ dialog.name }}"
</span>
{{ dialog.option }}吗?"
</p>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"default"
size=
"small"
@
click=
"dialog.show = false"
>
取消
</el-button>
<el-button
type=
"primary"
size=
"small"
@
click=
"changeRole()"
>
确定
</el-button>
</span>
</el-dialog>
<el-dialog
title
:visible
.
sync=
"dialogFull"
width=
"30%"
center
>
<p
class=
"dialog-p"
>
无法操作,项目负责人已满
<span
class=
"user-name"
>
5人
</span>
</p>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"default"
size=
"small"
@
click=
"dialogFull = false"
>
取消
</el-button>
<el-button
type=
"primary"
size=
"small"
@
click=
"dialogFull = false"
>
确定
</el-button>
</span>
</el-dialog>
</div>
</div>
</template>
<
script
>
import
BreadCrumb
from
"../../components/breadcrumb.vue"
;
import
{
create
}
from
"domain"
;
let
vm
=
null
;
export
default
{
components
:
{
BreadCrumb
},
data
()
{
const
item
=
{
i
d
:
"298490"
,
n
ame
:
"李雪"
,
role
:
"项目负责人
"
,
organization
:
"浙江省人民医院"
,
department
:
"外科"
userI
d
:
"298490"
,
userN
ame
:
"李雪"
,
projeceRole
:
"L4
"
,
organization
Name
:
"浙江省人民医院"
,
department
sName
:
"外科"
};
return
{
curmbFirst
:
"系统管理"
,
...
...
@@ -86,31 +128,106 @@ export default {
tableData
:
Array
(
10
).
fill
(
item
),
loading
:
false
,
timingTime
:
""
,
totalRows
:
0
,
currentPage
:
1
,
formInline
:
{
name
:
""
,
role
:
""
,
organization
:
""
,
department
:
""
portalProjectId
:
""
,
pageNo
:
1
,
pageSize
:
10
,
departmentsName
:
""
,
organizationName
:
""
,
projeceRole
:
""
,
userName
:
""
},
dialog
:
{
show
:
false
,
role
:
"项目负责人"
,
name
:
"李雷"
,
option
:
"升级为项目负责人"
,
full
:
false
},
dialogFull
:
false
};
},
created
()
{},
created
()
{
vm
=
this
;
this
.
queryRoleList
();
},
methods
:
{
toPage
()
{
this
.
$router
.
push
(
"item-role"
);
//查询用户列表
queryRoleList
()
{
this
.
formInline
.
portalProjectId
=
vm
.
getUrlSearch
(
window
.
location
.
href
,
"portalProjectId"
);
if
(
this
.
formInline
.
portalProjectId
==
null
)
{
this
.
formInline
.
portalProjectId
=
""
;
}
let
req
=
{};
req
=
this
.
formInline
;
console
.
log
(
req
);
vm
.
GET
(
"portalProjectOrRole/queryRoleList"
,
req
).
then
(
res
=>
{
if
(
res
.
code
==
"000000"
)
{
vm
.
tableData
=
res
.
data
;
vm
.
totalRows
=
res
.
data
.
total
;
this
.
loading
=
false
;
}
});
},
changeRole
(
row
)
{},
handleSizeChange
(
val
)
{
console
.
log
(
`每页
${
val
}
条`
);
},
handleCurrentChange
(
val
)
{
console
.
log
(
`当前页:
${
val
}
`
);
},
search
()
{
search
()
{},
reseat
()
{},
//按钮展示情况
showButton
(
row
,
projeceRole
)
{
let
flag
=
false
;
//console.log("当前等级 " + row.projeceRole + " 改变成等级 " + projeceRole);
if
(
row
.
projeceRole
==
"L2"
)
{
if
(
projeceRole
==
"L4"
)
{
flag
=
true
;
}
}
else
if
(
row
.
projeceRole
==
"L3"
)
{
if
(
projeceRole
==
"L2"
||
projeceRole
==
"L4"
)
{
flag
=
true
;
}
}
else
if
(
row
.
projeceRole
==
"L4"
)
{
if
(
projeceRole
==
"L2"
||
projeceRole
==
"L3"
)
{
flag
=
true
;
}
}
return
flag
;
},
reseat
()
{
//打开弹出框
openDialog
(
row
,
projeceRole
)
{
this
.
dialog
.
show
=
true
;
this
.
dialog
.
name
=
row
.
userName
;
if
(
row
.
projeceRole
==
"L2"
)
{
this
.
dialog
.
role
=
"项目负责人"
;
if
(
projeceRole
==
"L4"
)
{
this
.
dialog
.
option
=
"降级为普通用户"
;
}
}
else
if
(
row
.
projeceRole
==
"L3"
)
{
this
.
dialog
.
role
=
"次级负责人"
;
if
(
projeceRole
==
"L2"
)
{
this
.
dialog
.
option
=
"升级为项目负责人"
;
this
.
dialogFull
=
true
;
}
else
if
(
projeceRole
==
"L4"
)
{
this
.
dialog
.
option
=
"降级为普通用户"
;
}
}
else
if
(
row
.
projeceRole
==
"L4"
)
{
this
.
dialog
.
role
=
"普通用户"
;
if
(
projeceRole
==
"L2"
)
{
this
.
dialog
.
option
=
"升级为项目负责人"
;
this
.
dialogFull
=
true
;
}
else
if
(
projeceRole
==
"L3"
)
{
this
.
dialog
.
option
=
"升级为次级负责人"
;
}
}
}
}
};
...
...
@@ -129,21 +246,11 @@ export default {
color
:
#449284
;
border-bottom
:
1px
solid
#efefef
;
}
.to-right
{
float
:
right
;
}
.table-option
span
{
color
:
#409eff
;
}
.add-button
{
float
:
right
;
}
.el-table
.cell
{
color
:
#929292
;
}
.el-table
th
>
.cell
{
font-weight
:
bold
;
color
:
#000
;
.dialog-p
{
text-align
:
center
;
span
{
color
:
#449284
;
}
}
}
}
...
...
src/views/system/role.vue
浏览文件 @
eb9ccc1e
...
...
@@ -7,7 +7,7 @@
<el-form
ref=
"formInline"
:model=
"formInline"
label-width=
"75px"
style=
"width:100%;"
>
<el-col
:span=
"6"
>
<el-form-item
label=
"项目名称:"
>
<el-input
v-model=
"formInline.projectName"
size=
"mini"
placeholder=
"
审批人
"
></el-input>
<el-input
v-model=
"formInline.projectName"
size=
"mini"
placeholder=
"
请输入项目名称
"
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
...
...
@@ -46,7 +46,7 @@
</el-table-column>
<el-table-column
fixed=
"right"
label=
"操作"
width=
"200"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<el-button
type=
"primary"
size=
"small"
@
click=
"toPage(scope)"
>
查看项目人员
</el-button>
<el-button
type=
"primary"
size=
"small"
@
click=
"toPage(scope
.row
)"
>
查看项目人员
</el-button>
</
template
>
</el-table-column>
</el-table>
...
...
@@ -74,20 +74,10 @@ export default {
BreadCrumb
},
data
()
{
const
item
=
{
id
:
"298490"
,
projectName
:
"浙江省防控中心指空中..."
,
createName
:
"李雷"
,
projectBrief
:
"显示项目简介简介"
,
address
:
"浙江省"
,
startTime
:
"2018-12-15 15:39:23"
,
endTime
:
"2018-12-15 15:39:23"
,
state
:
"草稿"
};
return
{
curmbFirst
:
"系统管理"
,
curmbSecond
:
"角色管理"
,
tableData
:
Array
(
10
).
fill
(
item
)
,
tableData
:
[]
,
loading
:
false
,
timingTime
:
""
,
currentPage
:
1
,
...
...
@@ -144,8 +134,8 @@ export default {
});
},
reseat
()
{},
toPage
()
{
this
.
$router
.
push
(
"item-role
"
);
toPage
(
row
)
{
this
.
$router
.
push
(
"item-role
?portalProjectId="
+
row
.
id
);
},
handleSizeChange
(
val
)
{
console
.
log
(
`每页
${
val
}
条`
);
...
...
写
预览
Markdown
格式
0%
请重试
or
附加一个文件
附加文件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录