Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
smart_gov_platform
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_gov_platform
Commits
ed30516f
Commit
ed30516f
authored
Oct 30, 2024
by
“yiyousong”
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
perf: 优化工作人员管理
parent
d8920e5d
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
40 additions
and
79 deletions
+40
-79
base-manager-ui/admin/src/pages/basicset/workman/personnel.vue
...manager-ui/admin/src/pages/basicset/workman/personnel.vue
+40
-79
No files found.
base-manager-ui/admin/src/pages/basicset/workman/personnel.vue
View file @
ed30516f
...
@@ -183,12 +183,8 @@
...
@@ -183,12 +183,8 @@
</div>
</div>
<a-space>
<a-space>
<a-select
v-model=
"searchType"
style=
"width: 120px"
>
<a-select
v-model=
"searchType"
style=
"width: 120px"
>
<a-select-option
:value=
"1"
>
<a-select-option
value=
"name"
>
按姓名
</a-select-option>
按姓名
<a-select-option
value=
"number"
>
按工号
</a-select-option>
</a-select-option>
<a-select-option
:value=
"2"
>
按工号
</a-select-option>
</a-select>
</a-select>
<a-input-search
<a-input-search
placeholder=
"请输入关键字搜索"
placeholder=
"请输入关键字搜索"
...
@@ -201,82 +197,74 @@
...
@@ -201,82 +197,74 @@
</div>
</div>
<div
class=
"table-content"
>
<div
class=
"table-content"
>
<!-- 表格 -->
<!-- 表格 -->
<a-table
<y-table
:pagination=
"{
showTotal: (total) => `共 ${total} 条`,
current: page,
total: total,
pageSize: size,
showSizeChanger: true,
showQuickJumper: true,
pageSizeOptions: pageSizeOptions,
onChange: handlePagination,
onShowSizeChange: showSizeChange,
}"
bordered
:scroll=
"{ y: 500 }"
:loading=
"loading"
:columns=
"columns"
:columns=
"columns"
:data-source=
"WorkmanData"
:data=
"WorkmanData"
:rowKey=
"(record) => record.id"
:pageSize.sync=
"size"
:page.sync=
"page"
:total=
"total"
:loading=
"loading"
:scroll=
"{ y: 500 }"
@
changePagination=
"getWorkmanData"
>
>
<a
slot=
"name"
slot-scope=
"text"
>
{{ text }}
</a>
<span
slot=
"num"
slot-scope=
"{ index }"
>
{{
<span
slot=
"num"
slot-scope=
"text, record, index"
>
{{
(page - 1) * size + index + 1
(page - 1) * size + index + 1
}}
</span>
}}
</span>
<!-- 照片 -->
<!-- 照片 -->
<
template
slot=
"pic"
slot-scope=
"
text
"
>
<
template
slot=
"pic"
slot-scope=
"
{ record }
"
>
<img
<img
v-if=
"
text
.photoPath"
v-if=
"
record
.photoPath"
:src=
"
text
.photoPath"
:src=
"
record
.photoPath"
@
click=
"handlePreview(
text
.photoPath)"
@
click=
"handlePreview(
record
.photoPath)"
class=
"pht"
class=
"pht"
/>
/>
<span
v-else
>
--
</span>
<span
v-else
>
--
</span>
</
template
>
</
template
>
<!-- 电话 -->
<!-- 电话 -->
<
template
slot=
"mobile"
slot-scope=
"
text
"
>
<
template
slot=
"mobile"
slot-scope=
"
{ record }
"
>
<span>
{{
text
.
mobile
||
text
.
phone
||
"
--
"
}}
</span>
<span>
{{
record
.
mobile
||
record
.
phone
||
"
--
"
}}
</span>
</
template
>
</
template
>
<!-- 称号 -->
<!-- 称号 -->
<
template
slot=
"dangyuan"
slot-scope=
"text"
>
<
template
slot=
"dangyuan"
slot-scope=
"{ record }"
>
<div
v-if=
"text.dangyuan === 0 || text.dangyuan"
>
<div
v-if=
"record.dangyuan === 0 || record.dangyuan"
>
<span
v-if=
"text.dangyuan === 99"
>
{{
text
.
dangyuanext
}}
</span>
<span
v-if=
"record.dangyuan === 99"
>
{{
<span
v-else
>
{{
designation
(
text
.
dangyuan
)
}}
</span>
record
.
dangyuanext
}}
</span>
<span
v-else
>
{{
designation
(
record
.
dangyuan
)
}}
</span>
</div>
</div>
<span
v-else
>
--
</span>
<span
v-else
>
--
</span>
</
template
>
</
template
>
<!-- 所属窗口 -->
<!-- 所属窗口 -->
<
template
slot=
"windowId"
slot-scope=
"
text
"
>
<
template
slot=
"windowId"
slot-scope=
"
{ record }
"
>
{{
text
.
windowId
?
filterWindow
(
text
.
windowId
)
:
"
--
"
}}
{{
record
.
windowId
?
filterWindow
(
record
.
windowId
)
:
"
--
"
}}
</
template
>
</
template
>
<!-- 创建时间 -->
<!-- 创建时间 -->
<
template
slot=
"time"
slot-scope=
"
text
"
>
<
template
slot=
"time"
slot-scope=
"
{ record }
"
>
{{
text
.
createTime
|
dateFormat
}}
{{
record
.
createTime
|
dateFormat
}}
</
template
>
</
template
>
<!-- 最后登录时间 -->
<!-- 最后登录时间 -->
<
template
slot=
"lastLoginTime"
slot-scope=
"
text
"
>
<
template
slot=
"lastLoginTime"
slot-scope=
"
{ record }
"
>
<span
v-if=
"
text
.lastLoginTime"
>
{{
<span
v-if=
"
record
.lastLoginTime"
>
{{
text
.
lastLoginTime
|
dateFormat
record
.
lastLoginTime
|
dateFormat
}}
</span>
}}
</span>
<span
v-else
>
--
</span>
<span
v-else
>
--
</span>
</
template
>
</
template
>
<!-- 操作 -->
<!-- 操作 -->
<span
slot=
"action"
slot-scope=
"
text
"
>
<span
slot=
"action"
slot-scope=
"
{ record }
"
>
<a-space>
<a-space>
<span
class=
"primary pointer"
@
click=
"editModal(
text
)"
<span
class=
"primary pointer"
@
click=
"editModal(
record
)"
>
编辑
</span
>
编辑
</span
>
>
<span
class=
"primary pointer"
@
click=
"changePwd(
text
)"
<span
class=
"primary pointer"
@
click=
"changePwd(
record
)"
>
修改密码
</span
>
修改密码
</span
>
>
<span
class=
"delete pointer"
@
click=
"handleDel(
text
.id)"
<span
class=
"delete pointer"
@
click=
"handleDel(
record
.id)"
>
删除
</span
>
删除
</span
>
>
</a-space>
</a-space>
</span>
</span>
</
a
-table>
</
y
-table>
</div>
</div>
</div>
</div>
<!-- 新增工作人员 -->
<!-- 新增工作人员 -->
...
@@ -310,8 +298,8 @@ import EditPersonel from "./components/EditPersonel.vue";
...
@@ -310,8 +298,8 @@ import EditPersonel from "./components/EditPersonel.vue";
import
TabHeader
from
"
@/components/TabHeader
"
;
import
TabHeader
from
"
@/components/TabHeader
"
;
import
local
from
"
@/utils/local
"
;
import
local
from
"
@/utils/local
"
;
import
{
Empty
}
from
"
ant-design-vue
"
;
import
{
Empty
}
from
"
ant-design-vue
"
;
import
{
pageSizeOptions
}
from
"
@/config/pageConfig.js
"
;
import
{
mapGetters
}
from
"
vuex
"
;
import
{
mapGetters
}
from
"
vuex
"
;
import
YTable
from
"
@/components/YTable.vue
"
;
// import axios from "axios";
// import axios from "axios";
import
{
import
{
getDeptList
,
getDeptList
,
...
@@ -398,6 +386,7 @@ export default {
...
@@ -398,6 +386,7 @@ export default {
EditPwd
,
EditPwd
,
EditPersonel
,
EditPersonel
,
TabHeader
,
TabHeader
,
YTable
,
},
},
data
()
{
data
()
{
return
{
return
{
...
@@ -415,13 +404,12 @@ export default {
...
@@ -415,13 +404,12 @@ export default {
WorkmanData
:
[],
// 工作人员列表
WorkmanData
:
[],
// 工作人员列表
deptSearch
:
""
,
//部门搜索
deptSearch
:
""
,
//部门搜索
windowSearch
:
""
,
// 窗口搜索
windowSearch
:
""
,
// 窗口搜索
searchType
:
1
,
// 搜索类型
searchType
:
"
name
"
,
// 搜索类型
searchVal
:
""
,
searchVal
:
""
,
visibleAll
:
false
,
visibleAll
:
false
,
page
:
1
,
page
:
1
,
size
:
10
,
size
:
10
,
total
:
0
,
total
:
0
,
pageSizeOptions
,
designationDict
:
{},
// 称号字典
designationDict
:
{},
// 称号字典
politicalDict
:
{},
// 政治面貌字典
politicalDict
:
{},
// 政治面貌字典
curDept
:
""
,
// 当前选中部门
curDept
:
""
,
// 当前选中部门
...
@@ -466,11 +454,8 @@ export default {
...
@@ -466,11 +454,8 @@ export default {
async
getWorkmanData
(
search
=
{})
{
async
getWorkmanData
(
search
=
{})
{
this
.
loading
=
true
;
this
.
loading
=
true
;
let
obj
=
{};
let
obj
=
{};
if
(
this
.
searchType
==
1
)
{
let
value
=
`%
${
this
.
searchVal
}
%`
;
obj
.
name
=
`%
${
this
.
searchVal
}
%`
;
obj
[
this
.
searchType
]
=
value
;
}
else
if
(
this
.
searchType
==
2
)
{
obj
.
number
=
`%
${
this
.
searchVal
}
%`
;
}
let
res
=
await
getWorkmanList
({
let
res
=
await
getWorkmanList
({
siteId
:
this
.
siteId
,
siteId
:
this
.
siteId
,
page
:
this
.
page
,
page
:
this
.
page
,
...
@@ -546,13 +531,6 @@ export default {
...
@@ -546,13 +531,6 @@ export default {
onSearch
()
{
onSearch
()
{
this
.
page
=
1
;
this
.
page
=
1
;
this
.
getWorkmanData
();
this
.
getWorkmanData
();
// if (/^[\u4e00-\u9fa5]+$/.test(val)) {
// this.getWorkmanData({ name: `%${val}%` });
// } else if (/^[a-zA-z0-9]+$/.test(val)) {
// this.getWorkmanData({ number: `%${val}%` });
// } else {
// this.getWorkmanData();
// }
},
},
// 新增工作人员
// 新增工作人员
showModal
()
{
showModal
()
{
...
@@ -569,17 +547,6 @@ export default {
...
@@ -569,17 +547,6 @@ export default {
this
.
$refs
.
EditPersonel
.
onEdit
(
data
);
this
.
$refs
.
EditPersonel
.
onEdit
(
data
);
// this.$refs.EditPersonel.editWindow(data.deptId);
// this.$refs.EditPersonel.editWindow(data.deptId);
},
},
// 翻页
handlePagination
(
num
)
{
this
.
page
=
num
;
this
.
getWorkmanData
();
},
// 改变每页显示数量
showSizeChange
(
current
,
size
)
{
this
.
page
=
current
;
this
.
size
=
size
;
this
.
getWorkmanData
();
},
// 批量导入工作人员模板下载
// 批量导入工作人员模板下载
async
handleDownload
()
{
async
handleDownload
()
{
...
@@ -623,13 +590,7 @@ export default {
...
@@ -623,13 +590,7 @@ export default {
});
});
if
(
res
.
data
.
code
==
1
)
{
if
(
res
.
data
.
code
==
1
)
{
this
.
$message
.
success
(
"
导入成功
"
);
this
.
$message
.
success
(
"
导入成功
"
);
// this.$notification.success({
// message: "导入结果",
// duration: null,
// description: res.data.msg,
// });
this
.
getWorkmanData
();
this
.
getWorkmanData
();
// this.spinning = false;
}
}
}
else
{
}
else
{
this
.
$message
.
error
(
msg
);
this
.
$message
.
error
(
msg
);
...
...
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