Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
video-monitoring
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
刘怀志
video-monitoring
Commits
563e5c50
Commit
563e5c50
authored
Aug 06, 2024
by
拾柒
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev-sunyu'
parents
668ca04b
a78ca7bf
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
59 additions
and
25 deletions
+59
-25
index.vue
src/components/TopNav/index.vue
+4
-0
index.vue
src/views/employee/index.vue
+55
-25
No files found.
src/components/TopNav/index.vue
View file @
563e5c50
...
@@ -33,6 +33,7 @@
...
@@ -33,6 +33,7 @@
margin-left: 1px;
margin-left: 1px;
"
"
index=
"/employee/employee"
index=
"/employee/employee"
v-if=
"roles[0] === 'admin'"
>
>
<i
style=
"width: 10px; height: 10px; margin-top: -12px"
></i>
<i
style=
"width: 10px; height: 10px; margin-top: -12px"
></i>
员工信息
员工信息
...
@@ -101,6 +102,7 @@ export default {
...
@@ -101,6 +102,7 @@ export default {
components
:
{
Menu
},
components
:
{
Menu
},
data
()
{
data
()
{
return
{
return
{
roles
:
[],
backTag
:
false
,
backTag
:
false
,
newTopNev
:
[
newTopNev
:
[
{
{
...
@@ -197,6 +199,8 @@ export default {
...
@@ -197,6 +199,8 @@ export default {
this
.
currentIndex
=
this
.
$route
.
path
this
.
currentIndex
=
this
.
$route
.
path
this
.
$store
.
dispatch
(
'app/toggleSideBarHide'
,
true
);
this
.
$store
.
dispatch
(
'app/toggleSideBarHide'
,
true
);
this
.
setVisibleNumber
();
this
.
setVisibleNumber
();
//获取用户角色
this
.
roles
=
this
.
$store
.
getters
.
roles
;
},
},
created
()
{
created
()
{
this
.
getinfo
();
this
.
getinfo
();
...
...
src/views/employee/index.vue
View file @
563e5c50
...
@@ -43,7 +43,7 @@
...
@@ -43,7 +43,7 @@
<!-- @keyup.enter.native="handleQuery"-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- />-->
<!--
</el-form-item>
-->
<!--
</el-form-item>
-->
<el-form-item
prop=
"userName"
>
<!--
<el-form-item
prop=
"userName"
>
<el-input
<el-input
v-model=
"queryParams.userName"
v-model=
"queryParams.userName"
placeholder=
"请输入账号"
placeholder=
"请输入账号"
...
@@ -60,7 +60,7 @@
...
@@ -60,7 +60,7 @@
style=
"width: 200px"
style=
"width: 200px"
@
keyup
.
enter
.
native=
"handleQuery"
@
keyup
.
enter
.
native=
"handleQuery"
/>
/>
</el-form-item>
</el-form-item>
-->
<el-form-item
prop=
"phonenumber"
>
<el-form-item
prop=
"phonenumber"
>
<el-input
<el-input
v-model=
"queryParams.phonenumber"
v-model=
"queryParams.phonenumber"
...
@@ -155,14 +155,23 @@
...
@@ -155,14 +155,23 @@
<el-table
v-loading=
"loading"
:data=
"userList"
@
selection-change=
"handleSelectionChange"
style=
"min-height: 650px"
ref=
"table"
>
<el-table
v-loading=
"loading"
:data=
"userList"
@
selection-change=
"handleSelectionChange"
style=
"min-height: 650px"
ref=
"table"
>
<el-table-column
type=
"selection"
width=
"60"
align=
"center"
/>
<el-table-column
type=
"selection"
width=
"60"
align=
"center"
/>
<!--
<el-table-column
label=
"用户编号"
align=
"center"
key=
"userId"
prop=
"userId"
v-if=
"columns[0].visible"
/>
-->
<!--
<el-table-column
label=
"用户编号"
align=
"center"
key=
"userId"
prop=
"userId"
v-if=
"columns[0].visible"
/>
-->
<el-table-column
label=
"序号"
align=
"center"
type=
"index"
width=
"190"
/>
<el-table-column
label=
"序号"
align=
"center"
width=
"100"
>
<el-table-column
label=
"账号"
align=
"center"
key=
"userName"
prop=
"userName"
width=
"190"
v-if=
"columns[1].visible"
:show-overflow-tooltip=
"true"
/>
<template
slot-scope=
"scope"
>
<span>
{{
(
queryParams
.
pageNum
-
1
)
*
queryParams
.
pageSize
+
scope
.
$index
+
1
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"手机号码"
align=
"center"
key=
"phonenumber"
prop=
"phonenumber"
width=
"300"
v-if=
"columns[4].visible"
/>
<!-- <el-table-column label="账号" align="center" key="userName" prop="userName" width="190" v-if="columns[1].visible" :show-overflow-tooltip="true" />-->
<el-table-column
label=
"员工姓名"
align=
"center"
key=
"nickName"
prop=
"nickName"
width=
"190"
v-if=
"columns[2].visible"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"员工姓名"
align=
"center"
key=
"nickName"
prop=
"nickName"
width=
"190"
v-if=
"columns[2].visible"
:show-overflow-tooltip=
"true"
/>
<!-- <el-table-column label="部门" align="center" key="deptName" prop="dept.deptName" v-if="columns[3].visible" :show-overflow-tooltip="true" />-->
<!-- <el-table-column label="部门" align="center" key="deptName" prop="dept.deptName" v-if="columns[3].visible" :show-overflow-tooltip="true" />-->
<el-table-column
label=
"手机号码"
align=
"center"
key=
"phonenumber"
prop=
"phonenumber"
width=
"190"
v-if=
"columns[4].visible"
/>
<el-table-column
label=
"权重"
align=
"center"
key=
"weightNum"
prop=
"weightNum"
width=
"150"
v-if=
"columns[8].visible"
/>
<el-table-column
label=
"权重"
align=
"center"
key=
"weightNum"
prop=
"weightNum"
width=
"150"
v-if=
"columns[8].visible"
/>
<el-table-column
label=
"创建人"
align=
"center"
key=
"createBy"
prop=
"createBy"
width=
"190"
v-if=
"columns[7].visible"
/>
<el-table-column
label=
"创建人"
align=
"center"
key=
"createBy"
prop=
"createBy"
width=
"190"
v-if=
"columns[7].visible"
/>
<el-table-column
label=
"创建时间"
align=
"center"
key=
"createTime"
prop=
"createTime"
width=
"
19
0"
v-if=
"columns[6].visible"
>
<el-table-column
label=
"创建时间"
align=
"center"
key=
"createTime"
prop=
"createTime"
width=
"
30
0"
v-if=
"columns[6].visible"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<span>
{{
parseTime
(
scope
.
row
.
createTime
)
}}
</span>
<span>
{{
parseTime
(
scope
.
row
.
createTime
)
}}
</span>
</
template
>
</
template
>
...
@@ -177,7 +186,7 @@
...
@@ -177,7 +186,7 @@
<el-table-column
<el-table-column
label=
"操作"
label=
"操作"
align=
"center"
align=
"center"
width=
"2
3
2"
width=
"2
9
2"
class-name=
"small-padding fixed-width"
class-name=
"small-padding fixed-width"
>
>
<
template
slot-scope=
"scope"
v-if=
"scope.row.userId !== 1"
>
<
template
slot-scope=
"scope"
v-if=
"scope.row.userId !== 1"
>
...
@@ -220,7 +229,7 @@
...
@@ -220,7 +229,7 @@
<h3><span
class=
"blue-square"
></span>
用户详细信息
</h3>
<h3><span
class=
"blue-square"
></span>
用户详细信息
</h3>
</div>
</div>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"80px"
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"80px"
>
<el-row>
<!--
<el-row>
<el-col :span="12">
<el-col :span="12">
<el-form-item label="账号" prop="userName">
<el-form-item label="账号" prop="userName">
<el-input v-model="form.userName" placeholder="请输入用户名称" maxlength="10px" />
<el-input v-model="form.userName" placeholder="请输入用户名称" maxlength="10px" />
...
@@ -231,11 +240,11 @@
...
@@ -231,11 +240,11 @@
<el-input v-model="form.password" placeholder="请输入用户密码" type="password" maxlength="20" show-password/>
<el-input v-model="form.password" placeholder="请输入用户密码" type="password" maxlength="20" show-password/>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
</el-row>
</el-row>
-->
<el-row>
<el-row>
<el-col
:span=
"12"
>
<el-col
:span=
"12"
>
<el-form-item
label=
"员工姓名"
prop=
"nickName"
>
<el-form-item
label=
"员工姓名"
prop=
"nickName"
>
<el-input
v-model=
"form.nickName"
placeholder=
"请输入
用户昵称
"
maxlength=
"30"
/>
<el-input
v-model=
"form.nickName"
placeholder=
"请输入
员工姓名
"
maxlength=
"30"
/>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<el-col
:span=
"12"
>
<el-col
:span=
"12"
>
...
@@ -283,18 +292,18 @@
...
@@ -283,18 +292,18 @@
<h3><span
class=
"blue-square"
></span>
用户详细信息
</h3>
<h3><span
class=
"blue-square"
></span>
用户详细信息
</h3>
</div>
</div>
<el-form
ref=
"form"
:model=
"form"
:rules=
"updaterules"
label-width=
"80px"
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"updaterules"
label-width=
"80px"
>
<el-row>
<!--
<el-row>
<el-col :span="12">
<el-col :span="12">
<el-form-item label="账号" prop="userName">
<el-form-item label="账号" prop="userName">
<el-input v-model="form.userName" placeholder="请输入用户名称" maxlength="10px" />
<el-input v-model="form.userName" placeholder="请输入用户名称" maxlength="10px" />
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<!--
<el-col :span="12">
<el-col :span="12">
<el-form-item label="用户密码" prop="password">
<el-form-item label="用户密码" prop="password">
<el-input v-model="form.password" placeholder="请输入用户密码" type="password" maxlength="20" show-password/>
<el-input v-model="form.password" placeholder="请输入用户密码" type="password" maxlength="20" show-password/>
</el-form-item>
</el-form-item>
</el-col>
-->
</el-col>
</el-row>
</el-row>
-->
<el-row>
<el-row>
<el-col
:span=
"12"
>
<el-col
:span=
"12"
>
<el-form-item
label=
"员工姓名"
prop=
"nickName"
>
<el-form-item
label=
"员工姓名"
prop=
"nickName"
>
...
@@ -533,38 +542,46 @@ export default {
...
@@ -533,38 +542,46 @@ export default {
],
],
// 表单校验
// 表单校验
updaterules
:{
updaterules
:{
userName
:
[
/*
userName: [
{ required: true, message: "账号不能为空", trigger: "blur" },
{ required: true, message: "账号不能为空", trigger: "blur" },
{ min: 2, max: 20, message: '账号长度必须介于 2 和 20 之间', trigger: 'blur' }
{ min: 2, max: 20, message: '账号长度必须介于 2 和 20 之间', trigger: 'blur' }
],
],
*/
nickName
:
[
nickName
:
[
{
required
:
true
,
message
:
"姓名不能为空"
,
trigger
:
"blur"
}
{
required
:
true
,
message
:
"姓名不能为空"
,
trigger
:
"blur"
}
],
],
phonenumber
:
[
{
required
:
true
,
pattern
:
/^1
[
3|4|5|6|7|8|9
][
0-9
]{9}
$/
,
message
:
"请输入正确的手机号码"
,
trigger
:
"blur"
}
]
},
},
rules
:
{
rules
:
{
userName
:
[
/*
userName: [
{ required: true, message: "账号不能为空", trigger: "blur" },
{ required: true, message: "账号不能为空", trigger: "blur" },
{ min: 2, max: 20, message: '账号长度必须介于 2 和 20 之间', trigger: 'blur' }
{ min: 2, max: 20, message: '账号长度必须介于 2 和 20 之间', trigger: 'blur' }
],
],
*/
nickName
:
[
nickName
:
[
{
required
:
true
,
message
:
"姓名不能为空"
,
trigger
:
"blur"
}
{
required
:
true
,
message
:
"姓名不能为空"
,
trigger
:
"blur"
}
],
],
password
:
[
/*
password: [
{ required: true, message: "用户密码不能为空", trigger: "blur" },
{ required: true, message: "用户密码不能为空", trigger: "blur" },
{ min: 5, max: 20, message: '用户密码长度必须介于 5 和 20 之间', trigger: 'blur' },
{ min: 5, max: 20, message: '用户密码长度必须介于 5 和 20 之间', trigger: 'blur' },
{ pattern: /^[^<>"'|\\]+$/, message: "不能包含非法字符:< > \" ' \\\ |", trigger: "blur" }
{ pattern: /^[^<>"'|\\]+$/, message: "不能包含非法字符:< > \" ' \\\ |", trigger: "blur" }
],
],
*/
email
:
[
/*
email: [
{
{
type: "email",
type: "email",
message: "请输入正确的邮箱地址",
message: "请输入正确的邮箱地址",
trigger: ["blur", "change"]
trigger: ["blur", "change"]
}
}
],
],
*/
phonenumber
:
[
phonenumber
:
[
{
{
pattern
:
/^1
[
3|4|5|6|7|8|9
][
0-9
]\d{8}
$/
,
required
:
true
,
pattern
:
/^1
[
3|4|5|6|7|8|9
][
0-9
]{9}
$/
,
message
:
"请输入正确的手机号码"
,
message
:
"请输入正确的手机号码"
,
trigger
:
"blur"
trigger
:
"blur"
}
}
...
@@ -759,13 +776,15 @@ export default {
...
@@ -759,13 +776,15 @@ export default {
},
},
/** 提交按钮 */
/** 提交按钮 */
submitForm
:
function
()
{
submitForm
:
function
()
{
//账号默认为手机号
this
.
form
.
userName
=
this
.
form
.
phonenumber
;
this
.
$refs
[
"form"
].
validate
(
valid
=>
{
this
.
$refs
[
"form"
].
validate
(
valid
=>
{
if
(
valid
)
{
if
(
valid
)
{
if
(
this
.
form
.
userId
!==
undefined
)
{
if
(
this
.
form
.
userId
!==
undefined
)
{
// 更新现有记录
// 更新现有记录
updateUser
(
this
.
form
).
then
(
response
=>
{
updateUser
(
this
.
form
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"修改成功"
);
this
.
$modal
.
msgSuccess
(
"修改成功"
);
this
.
open
=
false
;
this
.
userupdate
=
false
;
this
.
getList
();
this
.
getList
();
});
});
}
else
{
}
else
{
...
@@ -793,6 +812,17 @@ export default {
...
@@ -793,6 +812,17 @@ export default {
handleExport
()
{
handleExport
()
{
// 获取选中的用户 ID
// 获取选中的用户 ID
const
userIds
=
this
.
ids
;
const
userIds
=
this
.
ids
;
if
(
userIds
.
length
===
0
)
{
// 如果没有选中的数据,显示提示信息
this
.
$message
({
message
:
'请至少选择一条数据进行导出。'
,
type
:
'warning'
});
return
;
}
// 如果有选中的数据,则继续导出操作
this
.
download
(
'system/user/export'
,
userIds
,
`user_
${
new
Date
().
getTime
()}
.xlsx`
);
this
.
download
(
'system/user/export'
,
userIds
,
`user_
${
new
Date
().
getTime
()}
.xlsx`
);
},
},
/** 导入按钮操作 */
/** 导入按钮操作 */
...
...
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