Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
J
JINRUN-PERPOSITION
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
xinzhedeai
JINRUN-PERPOSITION
Commits
ee2ab82b
Commit
ee2ab82b
authored
Nov 27, 2025
by
xinzhedeai
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add:人员字段对接
parent
825aa82a
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
337 additions
and
744 deletions
+337
-744
common.js
src/api/jinrun/common.js
+1
-1
fangke.vue
src/views/person/fangke.vue
+320
-694
renyuan.vue
src/views/person/renyuan.vue
+5
-15
yuangong.vue
src/views/person/yuangong.vue
+11
-34
No files found.
src/api/jinrun/common.js
View file @
ee2ab82b
...
@@ -4,7 +4,7 @@ import request from '@/utils/request'
...
@@ -4,7 +4,7 @@ import request from '@/utils/request'
// 查询人员信息详细
// 查询人员信息详细
export
function
getDict
(
data
)
{
export
function
getDict
(
data
)
{
return
request
({
return
request
({
url
:
'
/sys/dict/
findDictType
'
,
url
:
'
/sys/dict/
getDictList
'
,
method
:
'
get
'
,
method
:
'
get
'
,
params
:
data
params
:
data
})
})
...
...
src/views/person/fangke.vue
View file @
ee2ab82b
...
@@ -8,23 +8,34 @@
...
@@ -8,23 +8,34 @@
v-show=
"showSearch"
v-show=
"showSearch"
label-width=
"68px"
label-width=
"68px"
>
>
<el-form-item
label=
"人员
编号"
prop=
"personCod
e"
>
<el-form-item
label=
"人员
姓名"
prop=
"realNam
e"
>
<el-input
<el-input
v-model=
"queryParams.
personCod
e"
v-model=
"queryParams.
realNam
e"
placeholder=
"请输入人员
编号
"
placeholder=
"请输入人员
姓名
"
clearable
clearable
@
keyup.enter.native=
"handleQuery"
@
keyup.enter.native=
"handleQuery"
/>
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"
公司名称"
prop=
"companyName
"
>
<el-form-item
label=
"
定位卡号"
prop=
"cardId
"
>
<el-input
<el-input
v-model=
"queryParams.c
ompanyName
"
v-model=
"queryParams.c
ardId
"
placeholder=
"请输入
公司名称
"
placeholder=
"请输入
定位卡号
"
clearable
clearable
@
keyup.enter.native=
"handleQuery"
@
keyup.enter.native=
"handleQuery"
/>
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"来访状态"
prop=
"personType"
>
<el-select
v-model=
"queryParams.onlineStatus"
placeholder=
"请选择来访状态"
clearable
>
<el-option
label=
"未离开"
:value=
"1"
></el-option>
<el-option
label=
"已离开"
:value=
"0"
></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-form-item>
<el-button
<el-button
type=
"primary"
type=
"primary"
...
@@ -50,45 +61,6 @@
...
@@ -50,45 +61,6 @@
>
新增
</el-button
>
新增
</el-button
>
>
</el-col>
</el-col>
<!--
<el-col
:span=
"1.5"
>
<el-button
type=
"success"
plain
icon=
"el-icon-edit"
size=
"mini"
:disabled=
"single"
@
click=
"handleUpdate"
v-hasPermi=
"['system:info:edit']"
>
修改
</el-button
>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"danger"
plain
icon=
"el-icon-delete"
size=
"mini"
:disabled=
"multiple"
@
click=
"handleDelete"
v-hasPermi=
"['system:info:remove']"
>
删除
</el-button
>
</el-col>
-->
<el-col
:span=
"1.5"
>
<el-button
type=
"warning"
plain
icon=
"el-icon-download"
size=
"mini"
@
click=
"handleExport"
v-hasPermi=
"['system:info:export']"
>
导出
</el-button
>
</el-col>
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
</el-row>
</el-row>
<el-table
<el-table
...
@@ -96,232 +68,38 @@
...
@@ -96,232 +68,38 @@
:data=
"infoList"
:data=
"infoList"
@
selection-change=
"handleSelectionChange"
@
selection-change=
"handleSelectionChange"
>
>
<el-table-column
type=
"selection"
width=
"55"
align=
"center"
/>
<el-table-column
label=
"姓名"
align=
"center"
prop=
"realName"
/>
<!--
<el-table-column
label=
"人员ID"
align=
"center"
prop=
"personId"
/>
-->
<el-table-column
label=
"人员类型"
align=
"center"
prop=
"personType"
/>
<el-table-column
label=
"人员类型名称"
align=
"center"
prop=
"personTypeName"
/>
<el-table-column
label=
"员工类型编码"
align=
"center"
prop=
"staffType"
/>
<el-table-column
label=
"员工类型名称"
align=
"center"
prop=
"staffTypeName"
/>
<el-table-column
label=
"定位图标类型"
align=
"center"
prop=
"positionIconType"
/>
<el-table-column
label=
"定位图标类型名称"
align=
"center"
prop=
"positionIconTypeName"
/>
<el-table-column
label=
"真实姓名"
align=
"center"
prop=
"realName"
/>
<el-table-column
label=
"手机号"
align=
"center"
prop=
"phone"
/>
<el-table-column
label=
"性别"
align=
"center"
prop=
"sex"
/>
<el-table-column
label=
"性别"
align=
"center"
prop=
"sex"
/>
<el-table-column
label=
"出生日期"
align=
"center"
prop=
"birth"
width=
"180"
>
<el-table-column
label=
"身份证号"
align=
"center"
prop=
"idCard"
/>
<template
slot-scope=
"scope"
>
<el-table-column
label=
"联系方式"
align=
"center"
prop=
"phone"
/>
<span>
{{
parseTime
(
scope
.
row
.
birth
,
"
{y
}
-{m
}
-{d
}
"
)
}}
<
/span
>
<el-table-column
label=
"来访单位1"
align=
"center"
prop=
"dept"
/>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"
邮箱
"
align
=
"
center
"
prop
=
"
email
"
/>
<
el
-
table
-
column
label
=
"
籍贯
"
align
=
"
center
"
prop
=
"
nativePlace
"
/>
<
el
-
table
-
column
label
=
"
民族
"
align
=
"
center
"
prop
=
"
nation
"
/>
<
el
-
table
-
column
label
=
"
婚姻状况
"
align
=
"
center
"
prop
=
"
maritalStatus
"
/>
<
el
-
table
-
column
label
=
"
政治面貌
"
align
=
"
center
"
prop
=
"
politicsStatus
"
/>
<
el
-
table
-
column
label
=
"
健康状态
"
align
=
"
center
"
prop
=
"
healthStatus
"
/>
<
el
-
table
-
column
label
=
"
证件类型
"
align
=
"
center
"
prop
=
"
idType
"
/>
<
el
-
table
-
column
label
=
"
身份证号
"
align
=
"
center
"
prop
=
"
idNumber
"
/>
<
el
-
table
-
column
label
=
"
人员IC卡号
"
align
=
"
center
"
prop
=
"
personIc
"
/>
<
el
-
table
-
column
label
=
"
人员编号
"
align
=
"
center
"
prop
=
"
personCode
"
/>
<
el
-
table
-
column
label
=
"
人员来源
"
align
=
"
center
"
prop
=
"
personSource
"
/>
<
el
-
table
-
column
label
=
"
所属公司
"
align
=
"
center
"
prop
=
"
company
"
/>
<
el
-
table
-
column
label
=
"
公司名称
"
align
=
"
center
"
prop
=
"
companyName
"
/>
<
el
-
table
-
column
label
=
"
管理员姓名
"
align
=
"
center
"
prop
=
"
administratorName
"
/>
<
el
-
table
-
column
label
=
"
管理员电话
"
align
=
"
center
"
prop
=
"
administratorPhone
"
/>
<
el
-
table
-
column
label
=
"
工号
"
align
=
"
center
"
prop
=
"
jobNumber
"
/>
<
el
-
table
-
column
label
=
"
在职状态
"
align
=
"
center
"
prop
=
"
jobStatus
"
/>
<
el
-
table
-
column
label
=
"
入职日期
"
align
=
"
center
"
prop
=
"
hireDate
"
width
=
"
180
"
>
<
template
slot
-
scope
=
"
scope
"
>
<
span
>
{{
parseTime
(
scope
.
row
.
hireDate
,
"
{y
}
-{m
}
-{d
}
"
)
}}
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"
入职日期别名
"
align
=
"
center
"
prop
=
"
hireDateAlias
"
/>
<
el
-
table
-
column
label
=
"
离职日期
"
align
=
"
center
"
prop
=
"
dimissionDate
"
width
=
"
180
"
>
<
template
slot
-
scope
=
"
scope
"
>
<
span
>
{{
parseTime
(
scope
.
row
.
dimissionDate
,
"
{y
}
-{m
}
-{d
}
"
)
}}
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"
办公电话
"
align
=
"
center
"
prop
=
"
officePhone
"
/>
<
el
-
table
-
column
label
=
"
职务
"
align
=
"
center
"
prop
=
"
duty
"
/>
<
el
-
table
-
column
label
=
"
职称
"
align
=
"
center
"
prop
=
"
professionalTitle
"
/>
<
el
-
table
-
column
label
=
"
职称编号
"
align
=
"
center
"
prop
=
"
professionalTitleNumber
"
/>
<
el
-
table
-
column
label
=
"
工龄
"
align
=
"
center
"
prop
=
"
seniority
"
/>
<
el
-
table
-
column
label
=
"
经验年限
"
align
=
"
center
"
prop
=
"
experience
"
/>
<
el
-
table
-
column
label
=
"
经验描述
"
align
=
"
center
"
prop
=
"
yearPlusExperience
"
/>
<
el
-
table
-
column
label
=
"
最高学历
"
align
=
"
center
"
prop
=
"
highestEducation
"
/>
<
el
-
table
-
column
label
=
"
最高学位
"
align
=
"
center
"
prop
=
"
highestDegree
"
/>
<
el
-
table
-
column
label
=
"
专业
"
align
=
"
center
"
prop
=
"
profession
"
/>
<
el
-
table
-
column
label
=
"
毕业学校
"
align
=
"
center
"
prop
=
"
school
"
/>
<
el
-
table
-
column
label
=
"
毕业证编号
"
align
=
"
center
"
prop
=
"
diplomaNumber
"
/>
<
el
-
table
-
column
label
=
"
CENG编号
"
align
=
"
center
"
prop
=
"
cengNumber
"
/>
<
el
-
table
-
column
label
=
"
附件
"
align
=
"
center
"
prop
=
"
accessory
"
/>
<
el
-
table
-
column
label
=
"
附件列表
"
align
=
"
center
"
prop
=
"
accessoryList
"
/>
<
el
-
table
-
column
label
=
"
承包商ID
"
align
=
"
center
"
prop
=
"
contractorId
"
/>
<
el
-
table
-
column
label
=
"
承包商名称
"
align
=
"
center
"
prop
=
"
contractorName
"
/>
<
el
-
table
-
column
label
=
"
接收入负责人
"
align
=
"
center
"
prop
=
"
receiveLeader
"
/>
<
el
-
table
-
column
label
=
"
接收入电话
"
align
=
"
center
"
prop
=
"
receivePhone
"
/>
<
el
-
table
-
column
label
=
"
是否通行
"
align
=
"
center
"
prop
=
"
gateThrough
"
/>
<
el
-
table
-
column
label
=
"
离开时间
"
align
=
"
center
"
prop
=
"
leaveTime
"
width
=
"
180
"
>
<
template
slot
-
scope
=
"
scope
"
>
<
span
>
{{
parseTime
(
scope
.
row
.
leaveTime
,
"
{y
}
-{m
}
-{d
}
"
)
}}
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"
访客状态
"
align
=
"
center
"
prop
=
"
visitorStatus
"
/>
<
el
-
table
-
column
label
=
"
访问时间
"
align
=
"
center
"
prop
=
"
visitTime
"
width
=
"
180
"
>
<
template
slot
-
scope
=
"
scope
"
>
<
span
>
{{
parseTime
(
scope
.
row
.
visitTime
,
"
{y
}
-{m
}
-{d
}
"
)
}}
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"
流程状态
"
align
=
"
center
"
prop
=
"
process
"
/>
<
el
-
table
-
column
label
=
"
最后更新时间
"
align
=
"
center
"
prop
=
"
lastUpdateDate
"
width
=
"
180
"
>
<
template
slot
-
scope
=
"
scope
"
>
<
span
>
{{
parseTime
(
scope
.
row
.
lastUpdateDate
,
"
{y
}
-{m
}
-{d
}
"
)
}}
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"
最后创建时间
"
align
=
"
center
"
prop
=
"
lastCreateDate
"
width
=
"
180
"
>
<
template
slot
-
scope
=
"
scope
"
>
<
span
>
{{
parseTime
(
scope
.
row
.
lastCreateDate
,
"
{y
}
-{m
}
-{d
}
"
)
}}
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"
更新失败标志
"
align
=
"
center
"
prop
=
"
updateFail
"
/>
<
el
-
table
-
column
label
=
"
在线状态
"
align
=
"
center
"
prop
=
"
onlineStatus
"
/>
<
el
-
table
-
column
label
=
"
进出状态
"
align
=
"
center
"
prop
=
"
inOutStatus
"
/>
<
el
-
table
-
column
label
=
"
卡类型
"
align
=
"
center
"
prop
=
"
cardType
"
/>
<
el
-
table
-
column
label
=
"
卡类型名称
"
align
=
"
center
"
prop
=
"
cardTypeName
"
/>
<el-table-column
label=
"定位卡号"
align=
"center"
prop=
"cardId"
/>
<el-table-column
label=
"定位卡号"
align=
"center"
prop=
"cardId"
/>
<
el
-
table
-
column
label
=
"
IC卡号
"
align
=
"
center
"
prop
=
"
icCardId
"
/>
<el-table-column
label=
"来访时间1"
align=
"center"
prop=
"dept"
/>
<
el
-
table
-
column
label
=
"
电量百分比
"
align
=
"
center
"
prop
=
"
cardPower
"
/>
<el-table-column
label=
"离开时间1"
align=
"center"
prop=
"idCard"
/>
<
el
-
table
-
column
label
=
"
人员照片URL
"
align
=
"
center
"
prop
=
"
personPhoto
"
/>
<
el
-
table
-
column
label
=
"
照片签名
"
align
=
"
center
"
prop
=
"
photoSign
"
/>
<
el
-
table
-
column
label
=
"
部门名称
"
align
=
"
center
"
prop
=
"
deptName
"
/>
<
el
-
table
-
column
label
=
"
预约进场开始时间
"
align
=
"
center
"
prop
=
"
reservationEntryStartTime
"
width
=
"
180
"
>
<
template
slot
-
scope
=
"
scope
"
>
<
span
>
{{
parseTime
(
scope
.
row
.
reservationEntryStartTime
,
"
{y
}
-{m
}
-{d
}
"
)
}}
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"
预约进场结束时间
"
align
=
"
center
"
prop
=
"
reservationEntryEndTime
"
width
=
"
180
"
>
<
template
slot
-
scope
=
"
scope
"
>
<
span
>
{{
parseTime
(
scope
.
row
.
reservationEntryEndTime
,
"
{y
}
-{m
}
-{d
}
"
)
}}
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"
预约访问时间
"
align
=
"
center
"
prop
=
"
reservationVisitingTime
"
width
=
"
180
"
>
<
template
slot
-
scope
=
"
scope
"
>
<
span
>
{{
parseTime
(
scope
.
row
.
reservationVisitingTime
,
"
{y
}
-{m
}
-{d
}
"
)
}}
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"
当前操作人姓名
"
align
=
"
center
"
prop
=
"
curUserName
"
/>
<
el
-
table
-
column
label
=
"
访客id
"
align
=
"
center
"
prop
=
"
visitorId
"
/>
<
el
-
table
-
column
label
=
"
备注
"
align
=
"
center
"
prop
=
"
remark
"
/>
<el-table-column
<el-table-column
label=
"操作"
label=
"操作"
align=
"center"
align=
"center"
class-name=
"small-padding fixed-width"
class-name=
"small-padding fixed-width"
fixed=
"right"
fixed=
"right"
width=
"180"
>
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
<el-button
v-if=
"scope.row.laifangStatus == 'Y'"
size=
"mini"
type=
"text"
icon=
"el-icon-link"
@
click=
"handleLeave(scope.row)"
>
离开
</el-button
>
<el-button
v-if=
"scope.row.laifangStatus == 'N'"
size=
"mini"
type=
"text"
icon=
"el-icon-unlock"
@
click=
"handleHistory(scope.row)"
>
历史轨迹
</el-button
>
<el-button
<el-button
size=
"mini"
size=
"mini"
type=
"text"
type=
"text"
...
@@ -336,13 +114,6 @@
...
@@ -336,13 +114,6 @@
@
click=
"handleDelete(scope.row)"
@
click=
"handleDelete(scope.row)"
>
删除
</el-button
>
删除
</el-button
>
>
<
el
-
button
size
=
"
mini
"
type
=
"
text
"
icon
=
"
el-icon-unlock
"
@
click
=
"
handleUnbindCard(scope.row)
"
>
解绑卡
<
/el-butto
n
>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
...
@@ -355,331 +126,134 @@
...
@@ -355,331 +126,134 @@
@
pagination=
"getList"
@
pagination=
"getList"
/>
/>
<!--
添加或修改
人员
信息对话框
-->
<!-- 添加或修改
员工
信息对话框 -->
<
el
-
dialog
:
title
=
"
title
"
:
visible
.
sync
=
"
open
"
width
=
"
5
00px
"
append
-
to
-
body
>
<el-dialog
:title=
"title"
:visible.sync=
"open"
width=
"
7
00px"
append-to-body
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"80px"
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"80px"
>
<
el
-
form
-
item
label
=
"
备注
"
prop
=
"
remark
"
>
<!-- 使用el-row和el-col实现一行两列布局 -->
<
el
-
input
<el-row
:gutter=
"20"
>
v
-
model
=
"
form.remark
"
<el-col
:span=
"12"
>
type
=
"
textarea
"
<el-form-item
label=
"姓名"
prop=
"realName"
>
placeholder
=
"
请输入内容
"
<el-input
v-model=
"form.realName"
placeholder=
"请输入姓名"
/>
/>
</el-form-item>
<
/el-form-item
>
</el-col>
<
el
-
form
-
item
label
=
"
人员类型名称
"
prop
=
"
personTypeName
"
>
<
el
-
input
<el-col
:span=
"12"
>
v
-
model
=
"
form.personTypeName
"
<el-form-item
label=
"定位卡号"
prop=
"cardId"
>
placeholder
=
"
请输入人员类型名称
"
<el-select
/>
v-model=
"form.cardId"
<
/el-form-item
>
placeholder=
"请选择定位卡号"
<
el
-
form
-
item
label
=
"
员工类型名称
"
prop
=
"
staffTypeName
"
>
clearable
<
el
-
input
>
v
-
model
=
"
form.staffTypeName
"
<el-option
placeholder
=
"
请输入员工类型名称
"
v-for=
"item in cardIdOptions"
/>
:key=
"item.cardId"
<
/el-form-item
>
:label=
"item.cardId"
<
el
-
form
-
item
label
=
"
定位图标类型名称
"
prop
=
"
positionIconTypeName
"
>
:value=
"item.cardId"
<
el
-
input
></el-option>
v
-
model
=
"
form.positionIconTypeName
"
</el-select>
placeholder
=
"
请输入定位图标类型名称
"
</el-form-item>
/>
</el-col>
<
/el-form-item
>
<el-col
:span=
"12"
>
<
el
-
form
-
item
label
=
"
真实姓名
"
prop
=
"
realName
"
>
<el-form-item
label=
"性别"
prop=
"sex"
>
<
el
-
input
v
-
model
=
"
form.realName
"
placeholder
=
"
请输入真实姓名
"
/>
<el-radio-group
v-model=
"form.sex"
>
<
/el-form-item
>
<el-radio
label=
"男"
>
男
</el-radio>
<
el
-
form
-
item
label
=
"
手机号
"
prop
=
"
phone
"
>
<el-radio
label=
"女"
>
女
</el-radio>
<
el
-
input
v
-
model
=
"
form.phone
"
placeholder
=
"
请输入手机号
"
/>
</el-radio-group>
<
/el-form-item
>
</el-form-item>
<
el
-
form
-
item
label
=
"
出生日期
"
prop
=
"
birth
"
>
</el-col>
<
el
-
date
-
picker
<el-col
:span=
"12"
>
clearable
<el-form-item
label=
"出生日期"
prop=
"birth"
>
v
-
model
=
"
form.birth
"
<el-date-picker
type
=
"
date
"
clearable
value
-
format
=
"
yyyy-MM-dd
"
v-model=
"form.birth"
placeholder
=
"
请选择出生日期
"
type=
"date"
>
value-format=
"yyyy-MM-dd"
<
/el-date-picker
>
placeholder=
""
<
/el-form-item
>
>
<
el
-
form
-
item
label
=
"
邮箱
"
prop
=
"
email
"
>
</el-date-picker>
<
el
-
input
v
-
model
=
"
form.email
"
placeholder
=
"
请输入邮箱
"
/>
</el-form-item>
<
/el-form-item
>
</el-col>
<
el
-
form
-
item
label
=
"
籍贯
"
prop
=
"
nativePlace
"
>
<
el
-
input
v
-
model
=
"
form.nativePlace
"
placeholder
=
"
请输入籍贯
"
/>
<el-col
:span=
"12"
>
<
/el-form-item
>
<el-form-item
label=
"身份证号"
prop=
"idNumber"
>
<
el
-
form
-
item
label
=
"
民族
"
prop
=
"
nation
"
>
<el-input
v-model=
"form.idNumber"
placeholder=
""
/>
<
el
-
input
v
-
model
=
"
form.nation
"
placeholder
=
"
请输入民族
"
/>
</el-form-item>
<
/el-form-item
>
</el-col>
<
el
-
form
-
item
label
=
"
身份证号
"
prop
=
"
idNumber
"
>
<el-col
:span=
"12"
>
<
el
-
input
v
-
model
=
"
form.idNumber
"
placeholder
=
"
请输入身份证号
"
/>
<el-form-item
label=
"联系方式"
prop=
"phone"
>
<
/el-form-item
>
<el-input
v-model=
"form.phone"
placeholder=
""
/>
<
el
-
form
-
item
label
=
"
人员IC卡号
"
prop
=
"
personIc
"
>
</el-form-item>
<
el
-
input
v
-
model
=
"
form.personIc
"
placeholder
=
"
请输入人员IC卡号
"
/>
</el-col>
<
/el-form-item
>
<el-col
:span=
"12"
>
<
el
-
form
-
item
label
=
"
人员编号
"
prop
=
"
personCode
"
>
<el-form-item
label=
"来访单位"
prop=
"seniority"
>
<
el
-
input
v
-
model
=
"
form.personCode
"
placeholder
=
"
请输入人员编号
"
/>
<el-input
v-model=
"form.seniority"
placeholder=
""
/>
<
/el-form-item
>
</el-form-item>
<
el
-
form
-
item
label
=
"
人员来源
"
prop
=
"
personSource
"
>
</el-col>
<
el
-
input
v
-
model
=
"
form.personSource
"
placeholder
=
"
请输入人员来源
"
/>
<el-col
:span=
"12"
>
<
/el-form-item
>
<el-form-item
label=
"来访时间"
prop=
"hireDate"
>
<
el
-
form
-
item
label
=
"
所属公司
"
prop
=
"
company
"
>
<el-datetime-picker
<
el
-
input
v
-
model
=
"
form.company
"
placeholder
=
"
请输入所属公司
"
/>
clearable
<
/el-form-item
>
v-model=
"form.hireDate"
<
el
-
form
-
item
label
=
"
公司名称
"
prop
=
"
companyName
"
>
type=
"date"
<
el
-
input
v
-
model
=
"
form.companyName
"
placeholder
=
"
请输入公司名称
"
/>
value-format=
"yyyy-MM-dd"
<
/el-form-item
>
placeholder=
"请选择入职日期"
<
el
-
form
-
item
label
=
"
管理员姓名
"
prop
=
"
administratorName
"
>
>
<
el
-
input
</el-datetime-picker>
v
-
model
=
"
form.administratorName
"
</el-form-item>
placeholder
=
"
请输入管理员姓名
"
</el-col>
/>
</el-row>
<
/el-form-item
>
<el-row
v-if=
"dialogType !== 'dimission' && dialogType !== 'return'"
>
<
el
-
form
-
item
label
=
"
管理员电话
"
prop
=
"
administratorPhone
"
>
<el-col
:span=
"24"
>
<
el
-
input
<el-form-item
label=
"备注"
prop=
"remark"
>
v
-
model
=
"
form.administratorPhone
"
<el-input
v-model=
"form.remark"
type=
"textarea"
placeholder=
""
/>
placeholder
=
"
请输入管理员电话
"
</el-form-item>
/>
</el-col>
<
/el-form-item
>
</el-row>
<
el
-
form
-
item
label
=
"
工号
"
prop
=
"
jobNumber
"
>
</el-form>
<
el
-
input
v
-
model
=
"
form.jobNumber
"
placeholder
=
"
请输入工号
"
/>
<div
slot=
"footer"
class=
"dialog-footer"
>
<
/el-form-item
>
<el-button
type=
"primary"
@
click=
"submitForm"
>
确 定
</el-button>
<
el
-
form
-
item
label
=
"
入职日期
"
prop
=
"
hireDate
"
>
<el-button
@
click=
"cancel"
>
关 闭
</el-button>
<
el
-
date
-
picker
</div>
clearable
</el-dialog>
v
-
model
=
"
form.hireDate
"
type
=
"
date
"
<!-- 定位卡绑定对话框 -->
value
-
format
=
"
yyyy-MM-dd
"
<el-dialog
placeholder
=
"
请选择入职日期
"
:title=
"'定位卡绑定 - ' + bindForm.realName"
>
:visible.sync=
"bindOpen"
<
/el-date-picker
>
width=
"500px"
<
/el-form-item
>
append-to-body
<
el
-
form
-
item
label
=
"
入职日期别名
"
prop
=
"
hireDateAlias
"
>
>
<
el
-
input
<el-form
v
-
model
=
"
form.hireDateAlias
"
ref=
"bindForm"
placeholder
=
"
请输入入职日期别名
"
:model=
"bindForm"
/>
:rules=
"bindRules"
<
/el-form-item
>
label-width=
"80px"
<
el
-
form
-
item
label
=
"
离职日期
"
prop
=
"
dimissionDate
"
>
>
<
el
-
date
-
picker
<el-form-item
label=
"姓名"
prop=
"realName"
>
clearable
v
-
model
=
"
form.dimissionDate
"
type
=
"
date
"
value
-
format
=
"
yyyy-MM-dd
"
placeholder
=
"
请选择离职日期
"
>
<
/el-date-picker
>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
办公电话
"
prop
=
"
officePhone
"
>
<
el
-
input
v
-
model
=
"
form.officePhone
"
placeholder
=
"
请输入办公电话
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
职务
"
prop
=
"
duty
"
>
<
el
-
input
v
-
model
=
"
form.duty
"
placeholder
=
"
请输入职务
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
职称
"
prop
=
"
professionalTitle
"
>
<
el
-
input
v
-
model
=
"
form.professionalTitle
"
placeholder
=
"
请输入职称
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
职称编号
"
prop
=
"
professionalTitleNumber
"
>
<
el
-
input
v
-
model
=
"
form.professionalTitleNumber
"
placeholder
=
"
请输入职称编号
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
工龄
"
prop
=
"
seniority
"
>
<
el
-
input
v
-
model
=
"
form.seniority
"
placeholder
=
"
请输入工龄
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
经验年限
"
prop
=
"
experience
"
>
<
el
-
input
v
-
model
=
"
form.experience
"
placeholder
=
"
请输入经验年限
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
经验描述
"
prop
=
"
yearPlusExperience
"
>
<
el
-
input
v
-
model
=
"
form.yearPlusExperience
"
placeholder
=
"
请输入经验描述
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
最高学历
"
prop
=
"
highestEducation
"
>
<
el
-
input
v
-
model
=
"
form.highestEducation
"
placeholder
=
"
请输入最高学历
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
最高学位
"
prop
=
"
highestDegree
"
>
<
el
-
input
v
-
model
=
"
form.highestDegree
"
placeholder
=
"
请输入最高学位
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
专业
"
prop
=
"
profession
"
>
<
el
-
input
v
-
model
=
"
form.profession
"
placeholder
=
"
请输入专业
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
毕业学校
"
prop
=
"
school
"
>
<
el
-
input
v
-
model
=
"
form.school
"
placeholder
=
"
请输入毕业学校
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
毕业证编号
"
prop
=
"
diplomaNumber
"
>
<
el
-
input
v
-
model
=
"
form.diplomaNumber
"
placeholder
=
"
请输入毕业证编号
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
CENG编号
"
prop
=
"
cengNumber
"
>
<
el
-
input
v
-
model
=
"
form.cengNumber
"
placeholder
=
"
请输入CENG编号
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
附件
"
prop
=
"
accessory
"
>
<
el
-
input
v
-
model
=
"
form.accessory
"
type
=
"
textarea
"
placeholder
=
"
请输入内容
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
附件列表
"
prop
=
"
accessoryList
"
>
<
el
-
input
v
-
model
=
"
form.accessoryList
"
type
=
"
textarea
"
placeholder
=
"
请输入内容
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
承包商ID
"
prop
=
"
contractorId
"
>
<
el
-
input
v
-
model
=
"
form.contractorId
"
placeholder
=
"
请输入承包商ID
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
承包商名称
"
prop
=
"
contractorName
"
>
<
el
-
input
v
-
model
=
"
form.contractorName
"
placeholder
=
"
请输入承包商名称
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
接收入负责人
"
prop
=
"
receiveLeader
"
>
<
el
-
input
v
-
model
=
"
form.receiveLeader
"
placeholder
=
"
请输入接收入负责人
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
接收入电话
"
prop
=
"
receivePhone
"
>
<
el
-
input
v
-
model
=
"
form.receivePhone
"
placeholder
=
"
请输入接收入电话
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
是否通行
"
prop
=
"
gateThrough
"
>
<
el
-
input
v
-
model
=
"
form.gateThrough
"
placeholder
=
"
请输入是否通行
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
离开时间
"
prop
=
"
leaveTime
"
>
<
el
-
date
-
picker
clearable
v
-
model
=
"
form.leaveTime
"
type
=
"
date
"
value
-
format
=
"
yyyy-MM-dd
"
placeholder
=
"
请选择离开时间
"
>
<
/el-date-picker
>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
访问时间
"
prop
=
"
visitTime
"
>
<
el
-
date
-
picker
clearable
v
-
model
=
"
form.visitTime
"
type
=
"
date
"
value
-
format
=
"
yyyy-MM-dd
"
placeholder
=
"
请选择访问时间
"
>
<
/el-date-picker
>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
流程状态
"
prop
=
"
process
"
>
<
el
-
input
v
-
model
=
"
form.process
"
placeholder
=
"
请输入流程状态
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
最后更新时间
"
prop
=
"
lastUpdateDate
"
>
<
el
-
date
-
picker
clearable
v
-
model
=
"
form.lastUpdateDate
"
type
=
"
date
"
value
-
format
=
"
yyyy-MM-dd
"
placeholder
=
"
请选择最后更新时间
"
>
<
/el-date-picker
>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
最后创建时间
"
prop
=
"
lastCreateDate
"
>
<
el
-
date
-
picker
clearable
v
-
model
=
"
form.lastCreateDate
"
type
=
"
date
"
value
-
format
=
"
yyyy-MM-dd
"
placeholder
=
"
请选择最后创建时间
"
>
<
/el-date-picker
>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
更新失败标志
"
prop
=
"
updateFail
"
>
<
el
-
input
v
-
model
=
"
form.updateFail
"
placeholder
=
"
请输入更新失败标志
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
卡类型名称
"
prop
=
"
cardTypeName
"
>
<el-input
<el-input
v
-
model
=
"
form.cardTypeName
"
v-model=
"bindForm.realName"
placeholder
=
"
请输入卡类型名称
"
disabled
placeholder=
"人员姓名"
/>
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"定位卡号"
prop=
"cardId"
>
<el-form-item
label=
"定位卡号"
prop=
"cardId"
>
<
el
-
input
v
-
model
=
"
form.cardId
"
placeholder
=
"
请输入定位卡号
"
/>
<el-select
<
/el-form-item
>
v-model=
"bindForm.cardId"
<
el
-
form
-
item
label
=
"
IC卡号
"
prop
=
"
icCardId
"
>
placeholder=
"请选择定位卡号"
<
el
-
input
v
-
model
=
"
form.icCardId
"
placeholder
=
"
请输入IC卡号
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
电量百分比
"
prop
=
"
cardPower
"
>
<
el
-
input
v
-
model
=
"
form.cardPower
"
placeholder
=
"
请输入电量百分比
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
人员照片URL
"
prop
=
"
personPhoto
"
>
<
el
-
input
v
-
model
=
"
form.personPhoto
"
type
=
"
textarea
"
placeholder
=
"
请输入内容
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
照片签名
"
prop
=
"
photoSign
"
>
<
el
-
input
v
-
model
=
"
form.photoSign
"
type
=
"
textarea
"
placeholder
=
"
请输入内容
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
部门名称
"
prop
=
"
deptName
"
>
<
el
-
input
v
-
model
=
"
form.deptName
"
placeholder
=
"
请输入部门名称
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
预约进场开始时间
"
prop
=
"
reservationEntryStartTime
"
>
<
el
-
date
-
picker
clearable
v
-
model
=
"
form.reservationEntryStartTime
"
type
=
"
date
"
value
-
format
=
"
yyyy-MM-dd
"
placeholder
=
"
请选择预约进场开始时间
"
>
<
/el-date-picker
>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
预约进场结束时间
"
prop
=
"
reservationEntryEndTime
"
>
<
el
-
date
-
picker
clearable
clearable
v
-
model
=
"
form.reservationEntryEndTime
"
type
=
"
date
"
value
-
format
=
"
yyyy-MM-dd
"
placeholder
=
"
请选择预约进场结束时间
"
>
>
<
/el-date-picker
>
<el-option
<
/el-form-item
>
v-for=
"item in cardIdOptions"
<
el
-
form
-
item
label
=
"
预约访问时间
"
prop
=
"
reservationVisitingTime
"
>
:key=
"item.cardId"
<
el
-
date
-
picker
:label=
"item.cardId"
clearable
:value=
"item.cardId"
v
-
model
=
"
form.reservationVisitingTime
"
></el-option>
type
=
"
date
"
</el-select>
value
-
format
=
"
yyyy-MM-dd
"
placeholder
=
"
请选择预约访问时间
"
>
<
/el-date-picker
>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
当前操作人姓名
"
prop
=
"
curUserName
"
>
<
el
-
input
v
-
model
=
"
form.curUserName
"
placeholder
=
"
请输入当前操作人姓名
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
访客id
"
prop
=
"
visitorId
"
>
<
el
-
input
v
-
model
=
"
form.visitorId
"
placeholder
=
"
请输入访客id
"
/>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<div
slot=
"footer"
class=
"dialog-footer"
>
<
el
-
button
type
=
"
primary
"
@
click
=
"
submitForm
"
>
确
定
<
/el-button
>
<el-button
type=
"primary"
@
click=
"submit
Bind
Form"
>
确 定
</el-button>
<
el
-
button
@
click
=
"
cancel
"
>
取
消
<
/el-button
>
<el-button
@
click=
"cancel
Bind"
>
关 闭
</el-button>
</div>
</div>
</el-dialog>
</el-dialog>
</div>
</div>
...
@@ -688,16 +262,46 @@
...
@@ -688,16 +262,46 @@
<
script
>
<
script
>
import
{
import
{
listInfo
,
listInfo
,
getInfo
,
delInfo
,
delInfo
,
addInfo
,
addInfo
,
updateInfo
,
updateInfo
,
unbindCard
,
unbindCard
,
getCardList
,
// 引入获取定位卡号列表的接口
}
from
"
@/api/jinrun/fangke
"
;
}
from
"
@/api/jinrun/fangke
"
;
import
{
getDict
}
from
"
@/api/jinrun/common
"
;
export
default
{
export
default
{
name
:
"
Info
"
,
name
:
"
Info
"
,
data
()
{
data
()
{
return
{
return
{
deptOptions
:
[
{
label
:
"
部门1
"
,
value
:
"
1
"
,
},
{
label
:
"
部门2
"
,
value
:
"
2
"
,
},
],
// 绑定卡对话框
bindOpen
:
false
,
// 绑定卡表单
bindForm
:
{
personId
:
null
,
realName
:
null
,
cardId
:
null
,
personType
:
"
staff
"
,
},
// 绑定卡表单校验
bindRules
:
{
cardId
:
[
{
required
:
true
,
message
:
"
请选择定位卡号
"
,
trigger
:
"
change
"
},
],
},
dialogType
:
""
,
// 人员类型下拉列表数据
personTypeOptions
:
[],
// 遮罩层
// 遮罩层
loading
:
true
,
loading
:
true
,
// 选中数组
// 选中数组
...
@@ -710,7 +314,7 @@ export default {
...
@@ -710,7 +314,7 @@ export default {
showSearch
:
true
,
showSearch
:
true
,
// 总条数
// 总条数
total
:
0
,
total
:
0
,
//
人员
信息表格数据
//
员工
信息表格数据
infoList
:
[],
infoList
:
[],
// 弹出层标题
// 弹出层标题
title
:
""
,
title
:
""
,
...
@@ -720,94 +324,110 @@ export default {
...
@@ -720,94 +324,110 @@ export default {
queryParams
:
{
queryParams
:
{
pageNum
:
1
,
pageNum
:
1
,
pageSize
:
10
,
pageSize
:
10
,
personType
:
"
visitor
"
,
personType
:
"
staff
"
,
personTypeName
:
null
,
staffType
:
null
,
staffTypeName
:
null
,
positionIconType
:
null
,
positionIconTypeName
:
null
,
realName
:
null
,
realName
:
null
,
phone
:
null
,
sex
:
null
,
birth
:
null
,
email
:
null
,
nativePlace
:
null
,
nation
:
null
,
maritalStatus
:
null
,
politicsStatus
:
null
,
healthStatus
:
null
,
idType
:
null
,
idNumber
:
null
,
personIc
:
null
,
personCode
:
null
,
personSource
:
null
,
company
:
null
,
companyName
:
null
,
administratorName
:
null
,
administratorPhone
:
null
,
jobNumber
:
null
,
jobStatus
:
null
,
hireDate
:
null
,
hireDateAlias
:
null
,
dimissionDate
:
null
,
officePhone
:
null
,
duty
:
null
,
professionalTitle
:
null
,
professionalTitleNumber
:
null
,
seniority
:
null
,
experience
:
null
,
yearPlusExperience
:
null
,
highestEducation
:
null
,
highestDegree
:
null
,
profession
:
null
,
school
:
null
,
diplomaNumber
:
null
,
cengNumber
:
null
,
accessory
:
null
,
accessoryList
:
null
,
contractorId
:
null
,
contractorName
:
null
,
receiveLeader
:
null
,
receivePhone
:
null
,
gateThrough
:
null
,
leaveTime
:
null
,
visitorStatus
:
null
,
visitTime
:
null
,
process
:
null
,
lastUpdateDate
:
null
,
lastCreateDate
:
null
,
updateFail
:
null
,
onlineStatus
:
null
,
inOutStatus
:
null
,
cardType
:
null
,
cardTypeName
:
null
,
cardId
:
null
,
cardId
:
null
,
icCardId
:
null
,
jobNumber
:
null
,
cardPower
:
null
,
personPhoto
:
null
,
photoSign
:
null
,
deptName
:
null
,
reservationEntryStartTime
:
null
,
reservationEntryEndTime
:
null
,
reservationVisitingTime
:
null
,
curUserName
:
null
,
visitorId
:
null
,
},
},
// 表单参数
// 表单参数
form
:
{
}
,
form
:
{
personType
:
"
staff
"
,
sex
:
"
男
"
,
// 默认选择男
},
// 表单校验
// 表单校验
rules
:
{
rules
:
{
personType
:
[
personType
:
[
{
required
:
true
,
message
:
"
人员类型不能为空
"
,
trigger
:
"
change
"
},
{
required
:
true
,
message
:
"
人员类型不能为空
"
,
trigger
:
"
change
"
},
],
],
realName
:
[
{
required
:
true
,
message
:
"
姓名不能为空
"
,
trigger
:
"
blur
"
},
],
},
},
};
};
},
},
created
()
{
created
()
{
this
.
getList
();
this
.
getList
();
this
.
getPersonTypeOptions
();
// 获取定位卡号列表
this
.
getCardIdList
();
},
},
methods
:
{
methods
:
{
/** 查询人员信息列表 */
/** 解绑卡按钮操作 */
handleLeave
(
row
)
{
this
.
$modal
.
confirm
(
"
是否确认离开?
"
)
.
then
(
function
()
{
return
unbindCard
({
personId
:
row
.
personId
,
personType
:
row
.
personType
,
});
})
.
then
(()
=>
{
this
.
getList
();
this
.
$modal
.
msgSuccess
(
"
操作成功
"
);
})
.
catch
(()
=>
{});
},
/** 绑定卡按钮操作 */
handleHistory
(
row
)
{
// 跳转到李麒麟页面
window
.
open
(
"
https://www.baidu.com
"
);
},
/** 取消绑定卡对话框 */
cancelBind
()
{
this
.
bindOpen
=
false
;
this
.
bindForm
=
{
personId
:
null
,
realName
:
null
,
cardId
:
null
,
personType
:
"
staff
"
,
};
},
/** 提交绑定卡表单 */
submitBindForm
()
{
this
.
$refs
[
"
bindForm
"
].
validate
((
valid
)
=>
{
if
(
valid
)
{
bindCard
(
this
.
bindForm
)
.
then
((
response
)
=>
{
this
.
$modal
.
msgSuccess
(
"
绑定成功
"
);
this
.
bindOpen
=
false
;
this
.
getList
();
})
.
catch
((
error
)
=>
{
this
.
$modal
.
msgError
(
"
绑定失败,请重试
"
);
console
.
error
(
"
绑定卡失败:
"
,
error
);
});
}
});
},
/** 获取人员类型下拉列表数据 */
getPersonTypeOptions
()
{
// 调用数据字典接口
getDict
({
dictType
:
"
staff_type
"
})
.
then
((
response
)
=>
{
this
.
personTypeOptions
=
response
.
data
;
})
.
catch
((
error
)
=>
{
this
.
$modal
.
msgError
(
"
获取人员类型数据失败
"
);
console
.
error
(
"
获取人员类型数据失败:
"
,
error
);
});
},
/** 获取定位卡号列表数据 */
getCardIdList
()
{
getCardList
()
.
then
((
response
)
=>
{
this
.
cardIdOptions
=
response
.
data
||
[];
})
.
catch
((
error
)
=>
{
this
.
$modal
.
msgError
(
"
获取定位卡号列表失败
"
);
console
.
error
(
"
获取定位卡号列表失败:
"
,
error
);
});
},
/** 查询员工信息列表 */
getList
()
{
getList
()
{
this
.
loading
=
true
;
this
.
loading
=
true
;
listInfo
(
this
.
queryParams
).
then
((
response
)
=>
{
listInfo
(
this
.
queryParams
).
then
((
response
)
=>
{
...
@@ -837,7 +457,7 @@ export default {
...
@@ -837,7 +457,7 @@ export default {
positionIconTypeName
:
null
,
positionIconTypeName
:
null
,
realName
:
null
,
realName
:
null
,
phone
:
null
,
phone
:
null
,
sex
:
null
,
sex
:
"
男
"
,
birth
:
null
,
birth
:
null
,
email
:
null
,
email
:
null
,
nativePlace
:
null
,
nativePlace
:
null
,
...
@@ -924,29 +544,55 @@ export default {
...
@@ -924,29 +544,55 @@ export default {
handleAdd
()
{
handleAdd
()
{
this
.
reset
();
this
.
reset
();
this
.
open
=
true
;
this
.
open
=
true
;
this
.
title
=
"
添加人员信息
"
;
this
.
title
=
"
添加员工信息
"
;
this
.
dialogType
=
"
add
"
;
},
},
/** 修改按钮操作 */
/** 修改按钮操作 */
handleUpdate
(
row
)
{
handleUpdate
(
row
)
{
this
.
reset
();
this
.
reset
();
getInfo
(
row
).
then
((
response
)
=>
{
listInfo
({
this
.
form
=
response
.
data
;
pageNum
:
1
,
pageSize
:
1
,
personId
:
row
.
personId
,
}).
then
((
response
)
=>
{
this
.
form
=
response
.
data
[
0
];
this
.
open
=
true
;
this
.
open
=
true
;
this
.
title
=
"
修改人员信息
"
;
this
.
title
=
"
修改员工信息
"
;
this
.
dialogType
=
"
update
"
;
});
});
},
},
/** 提交按钮 */
/** 提交按钮 */
submitForm
()
{
submitForm
()
{
this
.
$refs
[
"
form
"
].
validate
((
valid
)
=>
{
this
.
$refs
[
"
form
"
].
validate
((
valid
)
=>
{
if
(
valid
)
{
if
(
valid
)
{
if
(
this
.
form
.
personId
!=
null
)
{
this
.
form
.
personType
=
"
staff
"
;
updateInfo
(
this
.
form
).
then
((
response
)
=>
{
// 创建一个表单数据的副本,避免直接修改原表单
const
formData
=
{
...
this
.
form
};
// 根据 deptId 查找对应的部门名称
if
(
formData
.
deptId
&&
this
.
deptOptions
&&
this
.
deptOptions
.
length
>
0
)
{
const
deptItem
=
this
.
deptOptions
.
find
(
(
item
)
=>
item
.
value
===
formData
.
deptId
);
if
(
deptItem
)
{
formData
.
deptName
=
deptItem
.
label
;
// 添加部门名称参数
}
}
if
(
formData
.
personId
!=
null
)
{
updateInfo
(
formData
).
then
((
response
)
=>
{
this
.
$modal
.
msgSuccess
(
"
修改成功
"
);
this
.
$modal
.
msgSuccess
(
"
修改成功
"
);
this
.
open
=
false
;
this
.
open
=
false
;
this
.
getList
();
this
.
getList
();
});
});
}
else
{
}
else
{
addInfo
(
this
.
form
).
then
((
response
)
=>
{
addInfo
(
formData
).
then
((
response
)
=>
{
this
.
$modal
.
msgSuccess
(
"
新增成功
"
);
this
.
$modal
.
msgSuccess
(
"
新增成功
"
);
this
.
open
=
false
;
this
.
open
=
false
;
this
.
getList
();
this
.
getList
();
...
@@ -955,28 +601,16 @@ export default {
...
@@ -955,28 +601,16 @@ export default {
}
}
});
});
},
},
/** 解绑卡按钮操作 */
handleUnbindCard
(
row
)
{
this
.
$modal
.
confirm
(
"
是否确认解绑该人员的卡?
"
)
.
then
(
function
()
{
return
unbindCard
({
personId
:
row
.
personId
,
personType
:
row
.
personType
,
}
);
}
)
.
then
(()
=>
{
this
.
getList
();
this
.
$modal
.
msgSuccess
(
"
解绑卡成功
"
);
}
)
.
catch
(()
=>
{
}
);
}
,
/** 删除按钮操作 */
/** 删除按钮操作 */
handleDelete
(
row
)
{
handleDelete
(
row
)
{
this
.
$modal
this
.
$modal
.
confirm
(
'
是否确认删除人员信息编号为"
'
+
personIds
+
'
"的数据项?
'
)
.
confirm
(
"
是否确认删除该数据项?
"
)
.
then
(
function
()
{
.
then
(
function
()
{
return
delInfo
(
row
);
return
delInfo
({
personIds
:
[
row
.
personId
],
personType
:
row
.
personType
,
});
})
})
.
then
(()
=>
{
.
then
(()
=>
{
this
.
getList
();
this
.
getList
();
...
@@ -984,16 +618,8 @@ export default {
...
@@ -984,16 +618,8 @@ export default {
})
})
.
catch
(()
=>
{});
.
catch
(()
=>
{});
},
},
/** 导出按钮操作 */
handleExport
()
{
this
.
download
(
"
system/info/export
"
,
{
...
this
.
queryParams
,
}
,
`info_${new Date().getTime()
}
.xlsx`
);
}
,
},
},
};
};
</
script
>
</
script
>
<
style
scoped
>
</
style
>
\ No newline at end of file
src/views/person/renyuan.vue
View file @
ee2ab82b
...
@@ -39,16 +39,6 @@
...
@@ -39,16 +39,6 @@
@
keyup.enter.native=
"handleQuery"
@
keyup.enter.native=
"handleQuery"
/>
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"在线状态"
prop=
"personType"
>
<el-select
v-model=
"queryParams.onlineStatus"
placeholder=
"请选择在线状态"
clearable
>
<el-option
label=
"在线"
:value=
"1"
></el-option>
<el-option
label=
"离线"
:value=
"0"
></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-form-item>
<el-button
<el-button
type=
"primary"
type=
"primary"
...
@@ -72,8 +62,8 @@
...
@@ -72,8 +62,8 @@
<el-table-column
label=
"人员类型"
align=
"center"
prop=
"personTypeName"
/>
<el-table-column
label=
"人员类型"
align=
"center"
prop=
"personTypeName"
/>
<el-table-column
label=
"姓名"
align=
"center"
prop=
"realName"
/>
<el-table-column
label=
"姓名"
align=
"center"
prop=
"realName"
/>
<el-table-column
label=
"性别"
align=
"center"
prop=
"sex"
/>
<el-table-column
label=
"性别"
align=
"center"
prop=
"sex"
/>
<el-table-column
label=
"所在部门
1"
align=
"center"
prop=
"jobNumber
"
/>
<el-table-column
label=
"所在部门
"
align=
"center"
prop=
"deptName
"
/>
<el-table-column
label=
"岗位名称
1"
align=
"center"
prop=
"jobNumber
"
/>
<el-table-column
label=
"岗位名称
"
align=
"center"
prop=
"positionName
"
/>
<el-table-column
label=
"联系方式"
align=
"center"
prop=
"phone"
/>
<el-table-column
label=
"联系方式"
align=
"center"
prop=
"phone"
/>
<el-table-column
label=
"身份证号"
align=
"center"
prop=
"idNumber"
/>
<el-table-column
label=
"身份证号"
align=
"center"
prop=
"idNumber"
/>
<el-table-column
label=
"定位卡号"
align=
"center"
prop=
"cardId"
/>
<el-table-column
label=
"定位卡号"
align=
"center"
prop=
"cardId"
/>
...
@@ -121,7 +111,7 @@ export default {
...
@@ -121,7 +111,7 @@ export default {
queryParams
:
{
queryParams
:
{
pageNum
:
1
,
pageNum
:
1
,
pageSize
:
10
,
pageSize
:
10
,
personType
:
"
staff
"
,
personType
:
""
,
personTypeName
:
null
,
personTypeName
:
null
,
staffType
:
null
,
staffType
:
null
,
staffTypeName
:
null
,
staffTypeName
:
null
,
...
@@ -196,7 +186,7 @@ export default {
...
@@ -196,7 +186,7 @@ export default {
},
},
// 表单参数
// 表单参数
form
:
{
form
:
{
personType
:
"
staff
"
,
personType
:
""
,
},
},
// 表单校验
// 表单校验
rules
:
{
rules
:
{
...
@@ -217,7 +207,7 @@ export default {
...
@@ -217,7 +207,7 @@ export default {
// 调用数据字典接口
// 调用数据字典接口
getDict
({
dictType
:
"
person_type
"
})
getDict
({
dictType
:
"
person_type
"
})
.
then
((
response
)
=>
{
.
then
((
response
)
=>
{
this
.
personTypeOptions
=
response
.
data
;
this
.
personTypeOptions
=
response
.
records
||
[]
;
})
})
.
catch
((
error
)
=>
{
.
catch
((
error
)
=>
{
this
.
$modal
.
msgError
(
"
获取人员类型数据失败
"
);
this
.
$modal
.
msgError
(
"
获取人员类型数据失败
"
);
...
...
src/views/person/yuangong.vue
View file @
ee2ab82b
...
@@ -410,6 +410,16 @@ export default {
...
@@ -410,6 +410,16 @@ export default {
};
};
this
.
bindOpen
=
true
;
this
.
bindOpen
=
true
;
},
},
/** 取消绑定卡对话框 */
cancelBind
()
{
this
.
bindOpen
=
false
;
this
.
bindForm
=
{
personId
:
null
,
realName
:
null
,
cardId
:
null
,
personType
:
"
staff
"
,
};
},
/** 提交绑定卡表单 */
/** 提交绑定卡表单 */
submitBindForm
()
{
submitBindForm
()
{
...
@@ -429,30 +439,6 @@ export default {
...
@@ -429,30 +439,6 @@ export default {
});
});
},
},
/** 取消绑定卡对话框 */
cancelBind
()
{
this
.
bindOpen
=
false
;
this
.
bindForm
=
{
personId
:
null
,
realName
:
null
,
cardId
:
null
,
personType
:
"
staff
"
,
};
},
/** 查看按钮操作 */
handleView
(
row
)
{
this
.
reset
();
listInfo
({
pageNum
:
1
,
pageSize
:
1
,
personId
:
row
.
personId
,
}).
then
((
response
)
=>
{
this
.
form
=
response
.
data
[
0
];
this
.
open
=
true
;
this
.
title
=
"
查看员工信息
"
;
this
.
dialogType
=
"
view
"
;
});
},
/** 获取人员类型下拉列表数据 */
/** 获取人员类型下拉列表数据 */
getPersonTypeOptions
()
{
getPersonTypeOptions
()
{
// 调用数据字典接口
// 调用数据字典接口
...
@@ -476,16 +462,7 @@ export default {
...
@@ -476,16 +462,7 @@ export default {
console
.
error
(
"
获取定位卡号列表失败:
"
,
error
);
console
.
error
(
"
获取定位卡号列表失败:
"
,
error
);
});
});
},
},
/** 处理照片上传 */
handlePhotoUpload
(
file
)
{
// 创建FileReader来读取图片内容
const
reader
=
new
FileReader
();
reader
.
onload
=
(
e
)
=>
{
// 将图片内容转为DataURL存储到form中
this
.
form
.
personPhoto
=
e
.
target
.
result
;
};
reader
.
readAsDataURL
(
file
.
raw
);
},
/** 查询员工信息列表 */
/** 查询员工信息列表 */
getList
()
{
getList
()
{
this
.
loading
=
true
;
this
.
loading
=
true
;
...
...
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