Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
frontend
/
qqxb-self-service
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
012856c6
authored
Jun 24, 2020
by
xws
Browse files
Options
_('Browse Files')
Download
Plain Diff
up
parents
47043396
6bd7a7d2
Hide whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
629 additions
and
309 deletions
src/assets/css/index.less
src/components/common/cityList.vue
src/services/employee/employeeService.ts
src/servicesImpl/employee/employeeImpl.ts
src/utils/public.ts
src/views/Archives.vue
src/views/FlexEmployee.vue
src/views/FlexEmployeeDetial.vue
src/views/Index.vue
src/views/PaySlips.vue
src/views/PaySlipsMonth.vue
src/views/SelectIdentity.vue
src/views/archives/addWorkExperience.vue
src/views/archives/contactInfo.vue
src/views/archives/eduAddExperience.vue
src/views/archives/eduUpdateExperience.vue
src/views/archives/personInfo.vue
src/views/archives/socialInfo.vue
src/views/archives/technologyExperience.vue
src/views/archives/updateWorkExperience.vue
src/views/archives/wageCardInfo.vue
src/views/archives/workInfo.vue
src/assets/css/index.less
View file @
012856c6
...
...
@@ -55,4 +55,9 @@ a,button{
outline: none;
text-decoration: none;
-webkit-tap-highlight-color:rgba(255,255,255,0);
}
.submit_btn{
position: absolute;
bottom: 0;
width: 100%;
}
\ No newline at end of file
src/components/common/cityList.vue
View file @
012856c6
...
...
@@ -100,7 +100,8 @@ export default class cityList extends Vue {
}
onConfirm
(
values
:
any
)
{
console
.
log
(
values
);
console
.
log
(
values
)
this
.
$emit
(
'childCityList'
,
values
)
}
}
</
script
>
...
...
src/services/employee/employeeService.ts
View file @
012856c6
...
...
@@ -2,6 +2,7 @@
* 员工相关接口
*/
export
interface
EmployeeInterface
{
<<<<<<<
HEAD
getUserInfo
(
params
:
any
):
Promise
<
any
>
;
getCityList
(
params
:
any
):
Promise
<
any
>
;
// 获取城市列表
getDispatchList
(
params
:
any
):
Promise
<
any
>
;
//根据身份证获取用户所属派遣公司列表
...
...
@@ -34,4 +35,38 @@ export interface EmployeeInterface {
tranFiles
(
params
:
any
):
Promise
<
any
>
;
//上传文件转短连接
getAgileWorker
(
params
:
any
):
Promise
<
any
>
;
//灵活用工
=======
getUserInfo
(
params
:
any
):
Promise
<
any
>
;
getCityList
(
params
:
any
):
Promise
<
any
>
;
// 获取城市列表
getDispatchList
(
params
:
any
):
Promise
<
any
>
;
//根据身份证获取用户所属派遣公司列表
getDispatchInfo
(
params
:
any
):
Promise
<
any
>
;
//通过身份证号和派遣公司ID拿到派遣员工的信息(劳务派遣首页数据)
getWorkInfoList
(
params
:
any
):
Promise
<
any
>
;
//获取工作信息列表
getWorkInfoDetail
(
params
:
any
):
Promise
<
any
>
;
//获取工作信息详情
updateWorkInfo
(
params
:
any
):
Promise
<
any
>
;
//修改工作信息
addWorkInfo
(
params
:
any
):
Promise
<
any
>
;
//新增工作信息
deleteWorkInfo
(
params
:
any
):
Promise
<
any
>
;
//新增工作信息
getPersonInfo
(
params
:
any
):
Promise
<
any
>
;
//获取个人信息
savePersonInfo
(
params
:
any
):
Promise
<
any
>
;
//保存个人信息
getContactInfo
(
params
:
any
):
Promise
<
any
>
;
//获取联系信息
saveContactInfo
(
params
:
any
):
Promise
<
any
>
;
//保存联系信息
getSocialInfo
(
params
:
any
):
Promise
<
any
>
;
//获取社保信息
saveSocialInfo
(
params
:
any
):
Promise
<
any
>
;
//保存社保信息
getWageCardInfo
(
params
:
any
):
Promise
<
any
>
;
//获取工资卡信息
saveWageCardInfo
(
params
:
any
):
Promise
<
any
>
;
//保存工资卡信息
getEduExperience
(
params
:
any
):
Promise
<
any
>
;
//获取教育经历
getEduExperienceDetial
(
params
:
any
):
Promise
<
any
>
;
//获取教育信息详情
addEduExperience
(
params
:
any
):
Promise
<
any
>
;
//新增教育信息
updateEduExperience
(
params
:
any
):
Promise
<
any
>
;
//修改教育信息
deleteEduExperience
(
params
:
any
):
Promise
<
any
>
;
//删除教育信息
getTechnologyExperience
(
params
:
any
):
Promise
<
any
>
;
//获取技术特长
updateTechnologyExperience
(
params
:
any
):
Promise
<
any
>
;
//修改技术特长
getSalaryInfo
(
params
:
any
):
Promise
<
any
>
;
//通过身份证号和派遣公司ID拿到派遣员工的工资条信息
getSalaryInfoDetail
(
params
:
any
):
Promise
<
any
>
;
//通过ID拿到派遣员工的工资条详细信息
getFiles
(
params
:
any
):
Promise
<
any
>
;
// 获取文件
setFiles
(
params
:
any
):
Promise
<
any
>
;
// 设置文件
delFiles
(
params
:
any
):
Promise
<
any
>
;
// 删除文件
putFiles
(
params
:
any
):
Promise
<
any
>
;
// 提交文件
getAgileWorker
(
params
:
any
):
Promise
<
any
>
;
//灵活用工
>>>>>>>
6
bd7a7d232d6d1b182fc7cff1cd6136fd5df5b70
}
src/servicesImpl/employee/employeeImpl.ts
View file @
012856c6
...
...
@@ -281,6 +281,16 @@ class EmployeeService implements EmployeeInterface {
/**
*
* 通过id获取工资条详细
* @param params
*/
public
getSalaryInfoDetail
(
params
:
any
):
Promise
<
any
>
{
let
url
=
`
${
urls
.
employeeUrl
}
/api/user/employee/salary/
${
params
.
id
}
/detail`
;
return
request
.
get
(
url
,
{},
this
.
header
,
false
);
}
/**
*
* 获取文件
* @param params
*/
...
...
src/utils/public.ts
View file @
012856c6
...
...
@@ -553,3 +553,4 @@ export function toMoney(num:any,isSymbol:boolean=true,isConvertPoint:any=false){
}
}
src/views/Archives.vue
View file @
012856c6
...
...
@@ -5,8 +5,8 @@
<i>
18821992017
</i>
</div>
<div
class=
"header"
>
<div
class=
"header_name"
>
哈撒剋
</div>
<div
class=
"header_info"
>
女|1888-01-01
</div>
<div
class=
"header_name"
>
{{
employee_name
}}
</div>
<div
class=
"header_info"
>
{{
employee_sex
}}
|
{{
employee_birthday
}}
</div>
</div>
<work-info
/>
<person-info
:isEdit=
"isEdit"
/>
...
...
@@ -53,7 +53,15 @@ import archiveQuestion from "./archives/archiveQuestion.vue";
}
})
export
default
class
archives
extends
Vue
{
private
isEdit
:
any
=
"123"
private
isEdit
:
any
=
"123"
;
private
employee_name
:
any
=
""
;
private
employee_birthday
:
any
=
""
;
private
employee_sex
:
any
=
""
;
created
(){
this
.
employee_name
=
localStorage
.
getItem
(
"name"
)
as
string
;
this
.
employee_birthday
=
localStorage
.
getItem
(
"birthday"
)
as
string
;
this
.
employee_sex
=
localStorage
.
getItem
(
"sex"
)
as
string
;
}
}
</
script
>
...
...
src/views/FlexEmployee.vue
View file @
012856c6
...
...
@@ -9,71 +9,85 @@
<p>
{{
birthday
}}
</p>
</div>
</div>
<div
class=
"person-information-bottom"
>
<div
class=
"person-information-bottom-child"
id=
"person-information-yjrw"
>
<h3>
{{
accept_work
}}
</h3>
<p>
已接任务
</p>
</div>
<div
class=
"person-information-bottom-child"
id=
"person-information-wcrw"
>
<h3>
{{
perform_work
}}
</h3>
<p>
完成任务
</p>
</div>
<div
class=
"person-information-bottom-child"
id=
"person-information-ysbc"
>
<h3>
{{
Payment_receivable
}}
</h3>
<p>
应收报酬
</p>
</div>
<div
class=
"person-information-bottom-child"
id=
"person-information-yysbc"
>
<h3>
{{
receive_receivable
}}
</h3>
<p>
已收报酬
</p>
</div>
<div
class=
"info-card-bottom"
>
<p>
<label>
已接任务
</label>
<span>
{{
accept_work
}}
</span>
</p>
<p>
<label>
完成任务
</label>
<span>
{{
perform_work
}}
</span>
</p>
<p>
<label>
应收报酬
</label>
<span
>
¥
{{
Payment_receivable
?
Number
(
Payment_receivable
).
toFixed
(
2
)
:
0.0
}}
</span
>
</p>
<p>
<label>
已收报酬
</label>
<span
>
¥
{{
receive_receivable
?
Number
(
receive_receivable
).
toFixed
(
2
)
:
0.0
}}
</span
>
</p>
</div>
</div>
<div
class=
"green-bg"
>
<div
class=
"fe-list-box"
>
<div
class=
"fe-list-title"
>
<h3>
任务记录
</h3>
</div>
<a
class=
"fe-list-child"
href=
"javascript:void(0)"
v-for=
"item in taskRecordList"
:key=
"item.id"
@
click=
"toDetail(item.id)"
>
<div
class=
"fe-list-child-left"
>
<h3>
{{
item
.
title
.
length
>
20
?
item
.
title
.
substring
(
0
,
19
)
+
"..."
:
item
.
title
}}
</h3>
<p>
{{
item
.
createTime
|
format
}}
</p>
<van-popup
v-model=
"showPopup"
:overlay=
"!showPopup"
:close-on-click-overlay=
"!showPopup"
round
position=
"bottom"
:style=
"popupStyle"
>
<div
class=
"close-box"
@
click=
"expand_click"
>
<img
src=
"../assets/images/ic_unfold@2x.png"
/>
</div>
<div
class=
"green-bg"
>
<div
class=
"fe-list-box"
>
<div
class=
"fe-list-title"
>
<h3>
任务记录
</h3>
</div>
<div
class=
"fe-list-child-right"
>
<div
class=
"fe-list-child-right-desc"
>
<h3>
¥
{{
Number
(
item
.
paidSalary
/
100
).
toFixed
(
2
)
}}
</h3>
<p
:style=
"matchColor(item.billStatus)"
>
{{
item
.
billStatus
}}
</p>
<a
class=
"fe-list-child"
href=
"javascript:void(0)"
v-for=
"item in taskRecordList"
:key=
"item.id"
@
click=
"toDetail(item.id)"
>
<div
class=
"fe-list-child-left"
>
<h3>
{{
item
.
title
.
length
>
20
?
item
.
title
.
substring
(
0
,
19
)
+
"..."
:
item
.
title
}}
</h3>
<p>
{{
item
.
createTime
|
format
}}
</p>
</div>
<img
src=
"../assets/images/agent/next_gray.png"
alt
/>
</div>
</a>
<div
class=
"fe-list-child-right"
>
<div
class=
"fe-list-child-right-desc"
>
<h3>
¥
{{
Number
(
item
.
paidSalary
)
?
Number
(
item
.
paidSalary
).
toFixed
(
2
)
:
0.0
}}
</h3>
<p
:style=
"matchColor(item.billStatus)"
>
{{
item
.
billStatus
}}
</p>
</div>
<img
src=
"../assets/images/agent/next_gray.png"
alt
/>
</div>
</a>
</div>
</div>
</
div
>
</
van-popup
>
</div>
<div
class=
"empty_data"
v-if=
"showList == 0"
>
<p>
...
...
@@ -81,22 +95,18 @@
<br
/>
暂无相关记录
</p>
</div>
<div
class=
"white_slide"
></div>
</div>
</
template
>
<
script
lang=
'ts'
>
import
{
Popup
}
from
"vant"
;
import
{
Component
,
Vue
}
from
"vue-property-decorator"
;
// import { toMoney, formatDate, isNull } from "../utils/public";
@
Component
({
// filters: {
// money: (value: String, isSymbol: boolean, isConvertPoint: boolean) =>
// toMoney(value, isSymbol, isConvertPoint),
// format: (value: String, pattern: String) => {
// return value.replace(/\d{2}:\d{2}:\d{2}/i, "");
// },
// isEmpty: (value: string) => isNull(value)
// }
components
:
{
[
Popup
.
name
]:
Popup
}
})
export
default
class
FlexEmployee
extends
Vue
{
private
name
:
string
=
""
;
//入参
...
...
@@ -109,7 +119,19 @@ export default class FlexEmployee extends Vue {
private
fullName
:
string
=
""
;
private
taskRecordList
:
any
=
null
;
private
showList
:
number
=
-
1
;
private
showPopup
:
boolean
=
true
;
private
expand
:
boolean
=
true
;
get
popupStyle
()
{
if
(
this
.
expand
)
{
return
{
height
:
"63%"
};
}
else
{
return
{
height
:
"86%"
};
}
}
private
expand_click
()
{
this
.
expand
=
!
this
.
expand
;
}
private
toDetail
(
id
:
any
):
void
{
this
.
$router
.
push
({
name
:
"FlexEmployeeDetial"
,
query
:
{
id
}
});
}
...
...
@@ -132,7 +154,6 @@ export default class FlexEmployee extends Vue {
this
.
name
=
localStorage
.
getItem
(
"name"
)
as
string
;
this
.
birthday
=
localStorage
.
getItem
(
"birthday"
)
as
string
;
const
idNo
=
window
.
atob
(
decodeURI
(
String
(
this
.
$route
.
query
.
id_no
)));
console
.
log
(
"idNo="
,
idNo
);
let
params
=
{
idNo
:
idNo
//371327198511175134
};
...
...
@@ -140,14 +161,22 @@ export default class FlexEmployee extends Vue {
console
.
log
(
"res="
,
res
);
this
.
accept_work
=
res
.
alCount
;
// 已接任务
this
.
perform_work
=
res
.
comCount
;
// 完成任务
this
.
Payment_receivable
=
res
.
receivableSalary
.
toFixed
(
2
);
// 应收报酬
this
.
receive_receivable
=
res
.
receivedSalary
.
toFixed
(
2
);
// 已收报酬
this
.
Payment_receivable
=
res
.
receivableSalary
?
res
.
receivableSalary
.
toFixed
(
2
)
:
0.0
;
// 应收报酬
this
.
receive_receivable
=
res
.
receivedSalary
?
res
.
receivedSalary
.
toFixed
(
2
)
:
0.0
;
// 已收报酬
this
.
taskRecordList
=
res
.
taskList
;
// 任务记录
this
.
taskRecordList
.
length
>
0
?
(
this
.
showList
=
1
)
:
(
this
.
showList
=
0
);
console
.
log
(
"taskRecordList="
,
this
.
taskRecordList
);
if
(
this
.
taskRecordList
.
length
>=
3
)
{
this
.
expand
=
false
;
}
else
{
this
.
expand
=
true
;
}
localStorage
.
setItem
(
"taskList"
,
JSON
.
stringify
(
res
.
taskList
));
});
}
...
...
@@ -155,6 +184,22 @@ export default class FlexEmployee extends Vue {
</
script
>
<
style
lang=
"less"
>
.fe-bigbox
{
min-height
:
667px
;
background
:
#19b370
;
}
.info-card-bottom
{
margin-top
:
40px
;
}
.info-card-bottom
p
{
color
:
#d3f1e4
;
font-size
:
13px
;
line-height
:
18px
;
margin-bottom
:
8px
;
display
:
flex
;
justify-content
:
space-between
;
}
.empty_data
{
position
:
absolute
;
top
:
0
;
...
...
@@ -170,19 +215,10 @@ export default class FlexEmployee extends Vue {
text-align
:
center
;
margin-top
:
256px
;
}
.green-bg
{
background-color
:
#19b370
;
position
:
absolute
;
top
:
180px
;
bottom
:
0px
;
left
:
0px
;
right
:
0px
;
overflow
:
auto
;
}
.person-information
{
background-color
:
#19b370
;
width
:
100%
;
height
:
180px
;
padding
:
20px
16px
0
16px
;
}
.person-information-top
{
...
...
@@ -300,4 +336,17 @@ export default class FlexEmployee extends Vue {
text-align
:
right
;
//
color
:
#077aec
;
}
.close-box
{
width
:
100%
;
height
:
24px
;
padding-top
:
10px
;
padding-bottom
:
10px
;
cursor
:
pointer
;
}
.close-box
img
{
display
:
block
;
width
:
32px
;
height
:
4px
;
margin
:
0
auto
;
}
</
style
>
\ No newline at end of file
src/views/FlexEmployeeDetial.vue
View file @
012856c6
...
...
@@ -2,7 +2,7 @@
<div
class=
"fe-detial-box"
>
<div
class=
"fe-detial-top"
>
<h4>
任务报酬
</h4>
<h3>
+
{{
(
item
.
paidSalary
/
100
)
.
toFixed
(
2
)
}}
</h3>
<h3>
+
{{
item
.
paidSalary
.
toFixed
(
2
)
}}
</h3>
<p
:style=
"matchColor(item.status)"
>
{{
item
.
status
}}
</p>
</div>
<div
class=
"fe-detial-bottom"
>
...
...
src/views/Index.vue
View file @
012856c6
...
...
@@ -3,71 +3,118 @@
<div
class=
"info-card-box"
>
<div
class=
"info-card-top"
>
<div
class=
"info-card-top-left"
>
<h4>
{{
name
}}
</h4>
<p>
{{
birthday
}}
</p>
<h4>
{{
name
}}
</h4>
<p>
{{
birthday
}}
</p>
</div>
</div>
<div
class=
"info-card-bottom"
>
<p>
<label>
用工单位
</label>
<span>
{{
ceFullName
}}
</span>
<span>
{{
ceFullName
}}
</span>
</p>
<p>
<label>
工作地点
</label>
<span>
{{
workAddress
}}
</span>
<span>
{{
workAddress
}}
</span>
</p>
<p>
<label>
工作职位
</label>
<span>
{{
position
}}
</span>
<span>
{{
position
}}
</span>
</p>
<p>
<label>
入职时间
</label>
<span>
{{
employeeEntryDate
}}
</span>
<span>
{{
employeeEntryDate
}}
</span>
</p>
</div>
</div>
<div
class=
"index-bottom-box"
>
<div
class=
"close-box"
>
<van-popup
v-model=
"showPopup"
:overlay=
"!showPopup"
:close-on-click-overlay=
"!showPopup"
round
position=
"bottom"
:style=
"popupStyle"
>
<div
class=
"close-box"
@
click=
"expand_click"
>
<img
src=
"../assets/images/ic_unfold@2x.png"
/>
</div>
<router-link
class=
"entrance"
:to=
"`/archives?ed_id=$
{ed_id}
&
sp_id=${sp_id}
&
id_no=${id_no}`">
<img
src=
"../assets/images/archives_icon.png"
alt=
"我的档案"
title=
"我的档案"
/>
<router-link
class=
"entrance"
:to=
"`/archives?ed_id=$
{ed_id}
&
sp_id=${sp_id}
&
id_no=${id_no}`"
>
<img
src=
"../assets/images/archives_icon.png"
alt=
"我的档案"
title=
"我的档案"
/>
<div>
<h4>
我的档案
</h4>
<p>
档案已确认,如果需要更改信息请联系客服
</p>
<p>
你的信息不完整,请先补充信息
</p>
</div>
<img
class=
"arrow"
src=
"../assets/images/right_arrow.png"
alt=
"arrow"
title=
"arrow"
/>
<img
class=
"arrow"
src=
"../assets/images/right_arrow.png"
alt=
"arrow"
title=
"arrow"
/>
</router-link>
<router-link
class=
"entrance entrance-border"
:to=
"`/Information?ed_id=$
{ed_id}`">
<img
src=
"../assets/images/information_icon.png"
alt=
"我的资料"
title=
"我的资料"
/>
<router-link
class=
"entrance entrance-border"
:to=
"`/Information?ed_id=$
{ed_id}`"
>
<img
src=
"../assets/images/information_icon.png"
alt=
"我的资料"
title=
"我的资料"
/>
<div>
<h4>
我提交的资料
</h4>
<p>
你可查询上传的附件信息
</p>
</div>
<img
class=
"arrow"
src=
"../assets/images/right_arrow.png"
alt=
"arrow"
title=
"arrow"
/>
<img
class=
"arrow"
src=
"../assets/images/right_arrow.png"
alt=
"arrow"
title=
"arrow"
/>
</router-link>
<router-link
class=
"entrance"
:to=
"`/PaySlips?sp_id=$
{sp_id}
&
id_no=371327198511175134`">
<img
src=
"../assets/images/slips_icon.png"
alt=
"我的工资条"
title=
"我的工资条"
/>
<router-link
class=
"entrance"
:to=
"`/PaySlips?sp_id=$
{sp_id}
&
id_no=371327198511175134`"
>
<img
src=
"../assets/images/slips_icon.png"
alt=
"我的工资条"
title=
"我的工资条"
/>
<div>
<h4>
我的工资条
</h4>
<p>
你可查询发放成功的工资记录
</p>
</div>
<img
class=
"arrow"
src=
"../assets/images/right_arrow.png"
alt=
"arrow"
title=
"arrow"
/>
<img
class=
"arrow"
src=
"../assets/images/right_arrow.png"
alt=
"arrow"
title=
"arrow"
/>
</router-link>
</
div
>
</
van-popup
>
</div>
</
template
>
<
script
lang=
'ts'
>
import
"../assets/css/labor.css"
;
import
{
Popup
}
from
"vant"
;
import
{
Component
,
Vue
}
from
"vue-property-decorator"
;
@
Component
({
components
:
{}
components
:
{
[
Popup
.
name
]:
Popup
}
})
export
default
class
Index
extends
Vue
{
private
name
:
string
=
""
;
...
...
@@ -79,18 +126,32 @@ export default class Index extends Vue {
private
id_no
:
string
=
""
;
private
sp_id
:
string
=
""
;
private
ed_id
:
string
=
""
;
private
showPopup
:
boolean
=
true
;
private
expand
:
boolean
=
true
;
get
popupStyle
()
{
if
(
this
.
expand
)
{
return
{
height
:
"63%"
};
}
else
{
return
{
height
:
"86%"
};
}
}
private
expand_click
()
{
this
.
expand
=
!
this
.
expand
;
}
created
()
{
//
const id_no = this.$route.query.id_no as string;
//
this.id_no = window.atob(encodeURI(id_no));
//
this.sp_id = this.$route.query.sp_id as string;
const
id_no
=
this
.
$route
.
query
.
id_no
as
string
;
this
.
id_no
=
window
.
atob
(
encodeURI
(
id_no
));
this
.
sp_id
=
this
.
$route
.
query
.
sp_id
as
string
;
let
params
=
{
spId
:
"85"
,
idNo
:
"51090219750505229X"
spId
:
this
.
sp_id
,
idNo
:
this
.
id_no
};
console
.
log
(
params
);
// 通过身份证号和派遣公司ID拿到派遣员工的信息(劳务派遣首页数据)
this
.
$server
.
EmployeeService
.
getDispatchInfo
(
params
)
.
then
(
res
=>
{
...
...
@@ -101,6 +162,7 @@ export default class Index extends Vue {
this
.
workAddress
=
res
.
workAddress
;
this
.
position
=
res
.
position
;
this
.
employeeEntryDate
=
res
.
employeeEntryDate
;
this
.
ed_id
=
res
.
id
;
})
.
catch
(
error
=>
{
console
.
log
(
error
);
...
...
@@ -118,7 +180,7 @@ body {
}
.info-card-box
{
width
:
100%
;
height
:
256
px
;
height
:
667
px
;
background
:
linear-gradient
(
180deg
,
rgba
(
51
,
205
,
139
,
1
)
0%
,
...
...
@@ -177,6 +239,7 @@ body {
width
:
100%
;
height
:
24px
;
padding-top
:
10px
;
padding-bottom
:
30px
;
cursor
:
pointer
;
}
.close-box
img
{
...
...
src/views/PaySlips.vue
View file @
012856c6
...
...
@@ -42,7 +42,11 @@
v-for=
"(itemD, indexD) in itemM.list"
:key=
"indexD"
>
<a
href
class=
"detail"
>
<a
href=
"javascript:void(0)"
class=
"detail"
@
click=
"toDetail_click(itemD.id)"
>
<span
class=
"font2"
>
工资 |
{{
itemD
.
abbrName
}}
</span>
<span></span>
<span
class=
"font2"
>
{{
...
...
@@ -85,14 +89,18 @@ export default class PaySlips extends Vue {
"2029"
];
private
toDetail_click
(
id
:
any
)
{
this
.
$router
.
push
({
name
:
"PaySlipsMonth"
,
query
:
{
id
:
id
}
});
}
private
getSalaryInfo
():
void
{
let
params
=
{
spId
:
this
.
$route
.
query
.
sp_id
,
idNo
:
"330881199511043934"
//
localStorage.getItem("id_no")
idNo
:
localStorage
.
getItem
(
"id_no"
)
};
this
.
$server
.
EmployeeService
.
getSalaryInfo
(
params
)
.
then
(
res
=>
{
console
.
log
(
"res="
+
JSON
.
stringify
(
res
)
+
"工资条信息"
);
//
console.log("res=" + JSON.stringify(res) + "工资条信息");
this
.
data
=
res
;
this
.
changeData
();
console
.
log
(
"obj="
,
JSON
.
stringify
(
this
.
obj
));
...
...
@@ -289,6 +297,9 @@ export default class PaySlips extends Vue {
</
script
>
<
style
lang=
"less"
>
#main-content
{
width
:
90%
;
}
.pay-item-box2
{
width
:
100%
;
}
...
...
src/views/PaySlipsMonth.vue
View file @
012856c6
...
...
@@ -4,22 +4,21 @@
<div
class=
"slips-mid-top"
>
<p>
实发工资(元)
</p>
<h3>
current_real_wage
<span>
.00
</span>
<span>
{{
Number
(
obj
[
0
].
currentRealWage
).
toFixed
(
2
)
}}
</span>
</h3>
</div>
<div
class=
"slips-mid-bottom"
>
<p>
<label>
收入来源
</label>
<span>
abbr_name
</span>
<span>
{{
obj
[
0
].
abbrName
}}
</span>
</p>
<p>
<label>
保存账户
</label>
<span>
bank_no
</span>
<span>
{{
obj
[
0
].
bankNo
}}
</span>
</p>
<p>
<label>
发放时间
</label>
<span>
pay_time
</span>
<span>
{{
obj
[
0
].
payTime
}}
</span>
</p>
</div>
</div>
...
...
@@ -29,44 +28,135 @@
<div
class=
"pay-detail-box"
>
<p>
<label>
本次收入
</label>
<!--
<span>
current_real_wage - current_base_old_insurance - current_base_health_insurance - current_unemployment_insurance - current_fund - current_tax_deduction
</span>
-->
<span>
1000.00
</span>
<span>
{{
Number
(
obj
[
0
].
currentRealWage
)
-
Number
(
obj
[
0
].
currentBaseOldInsurance
)
-
Number
(
obj
[
0
].
currentBaseHealthInsurance
)
-
Number
(
obj
[
0
].
currentUnemploymentInsurance
)
-
Number
(
obj
[
0
].
currentFund
)
-
Number
(
obj
[
0
].
currentTaxDeduction
)
}}
</span>
</p>
<p>
<label>
养老保险
</label>
<span>
current_base_old_insurance
</span>
<span
class=
"green"
>
-
{{
Number
(
obj
[
0
].
currentBaseOldInsurance
).
toFixed
(
2
)
}}
</span
>
</p>
<p>
<label>
医疗保险
</label>
<span>
current_base_health_insurance
</span>
<span
class=
"green"
>
-
{{
Number
(
obj
[
0
].
currentBaseHealthInsurance
).
toFixed
(
2
)
}}
</span
>
</p>
<p>
<label>
失业保险
</label>
<span>
current_unemployment_insurance
</span>
<span
class=
"green"
>
-
{{
Number
(
obj
[
0
].
currentUnemploymentInsurance
).
toFixed
(
2
)
}}
</span
>
</p>
<p>
<label>
住房公积金
</label>
<span>
current_fund
</span>
<span
class=
"green"
>
-
{{
Number
(
obj
[
0
].
currentFund
).
toFixed
(
2
)
}}
</span
>
</p>
<p>
<label>
代扣个税
</label>
<span>
current_tax_deduction
</span>
<span
class=
"green"
>
-
{{
Number
(
obj
[
0
].
currentTaxDeduction
).
toFixed
(
2
)
}}
</span
>
</p>
<p
class=
"wages"
>
<label>
实发工资
</label>
<span>
current_real_wage
</span>
<span>
-
{{
Number
(
obj
[
0
].
currentRealWage
).
toFixed
(
2
)
}}
</span>
</p>
</div>
</div>
</div>
</
template
>
<
script
>
<
script
lang=
"ts"
>
import
"../assets/css/labor.css"
;
export
default
{};
import
Vue
from
"vue"
;
import
{
Component
}
from
"vue-property-decorator"
;
@
Component
({})
export
default
class
PaySlipsMonth
extends
Vue
{
private
obj
:
any
=
[
{
no
:
""
,
abbrName
:
""
,
currentRealWage
:
0
,
currentBaseOldInsurance
:
0
,
cardType
:
""
,
bankNo
:
""
,
currentFund
:
0
,
payTime
:
""
,
currentIncome
:
0
,
currentUnemploymentInsurance
:
0
,
cardNo
:
""
,
currentBaseHealthInsurance
:
0
,
name
:
""
,
bankName
:
""
,
bankOpen
:
""
,
currentTaxDeduction
:
0
}
];
private
id
:
any
=
""
;
private
getSalaryInfo
():
void
{
let
params
=
{
id
:
this
.
id
};
this
.
$server
.
EmployeeService
.
getSalaryInfoDetail
(
params
)
.
then
(
res
=>
{
// console.log("res=" + JSON.stringify(res) + "工资条信息");
this
.
obj
=
res
;
console
.
log
(
"obj="
,
JSON
.
stringify
(
this
.
obj
));
})
.
catch
(
error
=>
{});
}
init
()
{
this
.
id
=
this
.
$route
.
query
.
id
;
this
.
getSalaryInfo
();
// this.obj = {
// rescode: 0,
// data: [
// {
// no: "GZ20200608160345451651972",
// abbrName: "1022服务商Q",
// currentRealWage: 500000,
// current_base_old_insurance: 10000,
// card_type: "居民身份证",
// bank_no: "6214833401590859",
// current_fund: 3000,
// pay_time: "2020-06-08",
// current_income: 650000,
// current_unemployment_insurance: 2000,
// card_no: "330881199511043934",
// current_base_health_insurance: 5000,
// name: "李鹏飞",
// bank_name: "招商银行",
// bank_open: "招商银行中华北大街支行",
// current_tax_deduction: 5000
// }
// ]
// };
}
created
()
{
console
.
log
(
"this.id="
,
this
.
id
);
this
.
init
();
}
}
</
script
>
<
style
lang=
"less"
>
.green
{
color
:
#70b603
!important
;
}
</
style
>
\ No newline at end of file
src/views/SelectIdentity.vue
View file @
012856c6
...
...
@@ -19,7 +19,7 @@
<p>
可查看编辑自己的劳务派遣员工档案信息
</p>
</div>
</a>
<a
class=
"si-child"
id=
"flex-employee"
@
click=
"toFlex"
>
<a
class=
"si-child"
id=
"flex-employee"
@
click=
"toFlex
_click
"
>
<img
src=
"../assets/images/agent/flex-employee.png"
alt
/>
<div
class=
"si-child-desc"
>
<h4>
我是灵活用工员工
</h4>
...
...
@@ -47,11 +47,13 @@ export default class SelectIdentity extends Vue {
return
this
.
dispatch_list
.
length
;
}
private
toFlex
():
void
{
this
.
$router
.
push
({
name
:
"FlexEmployee"
,
query
:
{
id_no
:
this
.
id_no_encrytion
}
});
private
toFlex_click
():
void
{
if
(
this
.
id_no_encrytion
)
{
this
.
$router
.
push
({
name
:
"FlexEmployee"
,
query
:
{
id_no
:
this
.
id_no_encrytion
}
});
}
}
private
toIndex
(
sp_id
:
string
):
void
{
...
...
@@ -83,9 +85,12 @@ export default class SelectIdentity extends Vue {
await
this
.
$server
.
EmployeeService
.
getUserInfo
({})
.
then
(
res
=>
{
if
(
res
.
data
&&
res
.
data
.
uthStatus
&&
res
.
data
.
uthStatus
>
0
)
{
console
.
log
(
res
);
this
.
id_no
=
res
.
data
.
personalIdCardNo
;
localStorage
.
setItem
(
"id_no"
,
res
.
data
.
personalIdCardNo
);
localStorage
.
setItem
(
"name"
,
res
.
data
.
personalName
);
localStorage
.
setItem
(
"sex"
,
res
.
data
.
sex
);
localStorage
.
setItem
(
"birthday"
,
res
.
data
.
birthday
);
}
else
{
//TODO: 跳转到实名认证
...
...
src/views/archives/addWorkExperience.vue
View file @
012856c6
...
...
@@ -11,8 +11,8 @@
@
childEndDate=
"childEndDate"
/>
<van-field
v-model=
"description"
label=
"工作内容"
placeholder=
"请填写工作内容(非必填)"
/>
<div
style=
"margin: 16px;
"
>
<van-button
round
block
type=
"info"
native-type=
"submit"
@
click=
"saveWorkInfo"
>
保存
</van-button>
<div
class=
"submit_btn
"
>
<van-button
type=
"primary"
block
@
click=
"saveWorkInfo"
>
保存
</van-button>
</div>
</van-form>
</div>
...
...
@@ -55,7 +55,6 @@ export default class eduExperience extends Vue {
private
showEdu
:
boolean
=
false
;
private
showStartDate
:
boolean
=
false
;
private
showEndDate
:
boolean
=
false
;
//获取日期组件中的值
childStartDate
(
item
:
any
)
{
...
...
src/views/archives/contactInfo.vue
View file @
012856c6
...
...
@@ -32,7 +32,7 @@
</div>
</div>
<van-popup
v-model=
"show"
position=
"right"
:style=
"
{ height: '100%',width: '
10
0%' }">
<van-popup
v-model=
"show"
position=
"right"
:style=
"
{ height: '100%',width: '
9
0%' }">
<van-form>
<van-field
v-model=
"obj.contactMobile"
label=
"手机号码"
placeholder=
"请填写手机号码"
/>
<van-field
v-model=
"obj.contactTelephone"
label=
"固定电话"
placeholder=
"请填写固定电话"
/>
...
...
@@ -40,8 +40,8 @@
<van-field
v-model=
"obj.contactPostcode"
label=
"邮政编码"
placeholder=
"请填写邮政编码"
/>
<van-field
v-model=
"obj.contactCurrentResidence"
label=
"户口所在地"
placeholder=
"请填写户口所在地"
/>
<van-field
v-model=
"obj.infoRegisteredResidenceCity"
label=
"现在居住地"
placeholder=
"请填写现在居住地"
/>
<div
style=
"margin: 16px;
"
>
<van-button
round
block
type=
"info"
native-type=
"submit"
@
click=
"updateContactInfo"
>
保存
</van-button>
<div
class=
"submit_btn
"
>
<van-button
type=
"primary"
block
@
click=
"updateContactInfo"
>
保存
</van-button>
</div>
</van-form>
</van-popup>
...
...
@@ -90,11 +90,14 @@ export default class contactInfo extends Vue {
contactTelephone
:
this
.
obj
.
contactTelephone
,
infoRegisteredResidenceCity
:
this
.
obj
.
infoRegisteredResidenceCity
};
if
(
!
this
.
obj
.
contactMobile
||
!
(
/^1
\d{10}
$/
.
test
(
this
.
obj
.
contactMobile
)
))
{
if
(
!
this
.
obj
.
contactMobile
||
!
/^1
\d{10}
$/
.
test
(
this
.
obj
.
contactMobile
))
{
Toast
(
"请填写正确的手机号码"
);
return
;
}
if
(
!
this
.
obj
.
contactTelephone
||
!
(
/^
(\(\d{3,4}\)
|
\d{3,4}
-|
\s)?\d{7,14}
$/
.
test
(
this
.
obj
.
contactTelephone
)))
{
if
(
!
this
.
obj
.
contactTelephone
||
!
/^
(\(\d{3,4}\)
|
\d{3,4}
-|
\s)?\d{7,14}
$/
.
test
(
this
.
obj
.
contactTelephone
)
)
{
Toast
(
"请填写正确的固定电话"
);
return
;
}
...
...
@@ -102,7 +105,10 @@ export default class contactInfo extends Vue {
Toast
(
"请填写紧急联系电话"
);
return
;
}
if
(
!
this
.
obj
.
contactPostcode
||
!
(
/^
[
0-9
]\d{5}(?!\d)
$/
.
test
(
this
.
obj
.
contactPostcode
)))
{
if
(
!
this
.
obj
.
contactPostcode
||
!
/^
[
0-9
]\d{5}(?!\d)
$/
.
test
(
this
.
obj
.
contactPostcode
)
)
{
Toast
(
"请填写正确的邮政编码"
);
return
;
}
...
...
@@ -119,7 +125,7 @@ export default class contactInfo extends Vue {
if
(
res
==
true
)
{
Toast
.
success
(
"保存成功"
);
this
.
show
=
false
;
}
else
{
}
else
{
Toast
.
success
(
res
.
message
);
}
})
...
...
src/views/archives/eduAddExperience.vue
View file @
012856c6
...
...
@@ -25,8 +25,8 @@
@
childStartDate=
"childStartDate"
@
childEndDate=
"childEndDate"
/>
<div
style=
"margin: 16px;
"
>
<van-button
round
block
type=
"info"
native-type=
"submit"
@
click=
"addEduInfo"
>
保存
</van-button>
<div
class=
"submit_btn
"
>
<van-button
type=
"primary"
block
@
click=
"addEduInfo"
>
保存
</van-button>
</div>
</van-form>
</div>
...
...
src/views/archives/eduUpdateExperience.vue
View file @
012856c6
...
...
@@ -25,11 +25,9 @@
@
childStartDate=
"childStartDate"
@
childEndDate=
"childEndDate"
/>
<div
style=
"margin: 16px;"
>
<van-button
round
block
type=
"info"
native-type=
"submit"
@
click=
"updateEduInfo"
>
修改
</van-button>
</div>
<div
style=
"margin: 16px;"
>
<van-button
round
block
type=
"info"
native-type=
"submit"
@
click=
"deleteEduInfo"
>
删除
</van-button>
<div
class=
"edu_button"
>
<div
@
click=
"updateEduInfo"
>
修改
</div>
<div
@
click=
"deleteEduInfo"
>
删除
</div>
</div>
</van-form>
</div>
...
...
@@ -101,11 +99,10 @@ export default class eduExperience extends Vue {
id
:
this
.
childItem
.
id
,
major
:
this
.
childItem
.
major
};
this
.
$server
.
EmployeeService
.
updateEduExperience
(
params
)
.
then
(
res
=>
{
Toast
.
success
(
"修改成功"
);
this
.
$emit
(
"popupShow"
);
})
this
.
$server
.
EmployeeService
.
updateEduExperience
(
params
).
then
(
res
=>
{
Toast
.
success
(
"修改成功"
);
this
.
$emit
(
"popupShow"
);
});
}
//删除
deleteEduInfo
()
{
...
...
@@ -133,4 +130,48 @@ export default class eduExperience extends Vue {
}
</
script
>
<
style
lang=
"less"
scoped
>
.edu_button
{
display
:
flex
;
position
:
absolute
;
bottom
:
0
;
width
:
100%
;
height
:
50px
;
align-items
:
center
;
&::before
{
position
:
absolute
;
box-sizing
:
border-box
;
content
:
" "
;
pointer-events
:
none
;
right
:
0
;
bottom
:
50px
;
left
:
0
;
border-bottom
:
0.02667rem
solid
#ebedf0
;
-webkit-transform
:
scaleY
(
0.5
);
-ms-transform
:
scaleY
(
0.5
);
transform
:
scaleY
(
0.5
);
}
div
{
background
:
white
;
width
:
50%
;
text-align
:
center
;
font-size
:
14px
;
color
:
#666
;
&:last-child
{
color
:
#fc3e30
;
&::before
{
position
:
absolute
;
box-sizing
:
border-box
;
content
:
" "
;
width
:
1px
;
height
:
50px
;
background
:
#ebedf0
;
left
:
50%
;
top
:
0
;
-webkit-transform
:
scaleY
(
0.5
);
-ms-transform
:
scaleY
(
0.5
);
transform
:
scaleY
(
0.5
);
}
}
}
}
</
style
>
\ No newline at end of file
src/views/archives/personInfo.vue
View file @
012856c6
...
...
@@ -52,11 +52,7 @@
@
click=
"showBirthplace = true"
/>
<van-popup
v-model=
"showBirthplace"
position=
"bottom"
>
<van-area
:area-list=
"areaList"
@
confirm=
"onConfirmBirthplace"
@
cancel=
"showArea = false"
/>
<city-list
@
childCityList=
"birthCity"
/>
</van-popup>
<!-- 民族 -->
<!--
<van-field
...
...
@@ -74,8 +70,8 @@
@
confirm=
"onConfirmNation"
@
cancel=
"showNation = false"
/>
</van-popup>
-->
<popup-picker
:label=
"label"
/>
</van-popup>
-->
<popup-picker
:label=
"label"
/>
<!-- 政治面貌 -->
<van-field
readonly
...
...
@@ -154,33 +150,29 @@
@
click=
"showFile = true"
/>
<van-popup
v-model=
"showFile"
position=
"bottom"
>
<van-picker
show-toolbar
:columns=
"columns.maternity"
@
confirm=
"onConfirmFile"
@
cancel=
"showFile = false"
/>
<city-list
@
childCityList=
"localCity"
/>
</van-popup>
<!-- 开始工作时间 -->
<
!--
<
van-field
<van-field
readonly
clickable
:value=
"obj.infoWorkStartDate"
label=
"开始工作时间"
placeholder=
"请选择"
@
click=
"show
Maternity
= true"
@
click=
"show
WorkStartDate
= true"
/>
<van-popup
v-model=
"showMaternity"
position=
"bottom"
>
<van-picker
show-toolbar
:columns=
"columns.maternity"
<van-popup
v-model=
"showWorkStartDate"
position=
"bottom"
>
<van-datetime-picker
v-model=
"currentDate"
type=
"date"
title=
"选择年月日"
@
confirm=
"onConfirmWorkDate"
@
cancel=
"show
Maternity
= false"
@
cancel=
"show
WorkStartDate
= false"
/>
</van-popup>
-->
</van-popup>
</van-form>
<div
style=
"margin: 16px;
"
>
<van-button
round
block
type=
"info"
native-type=
"submit"
@
click=
"updatePersonInfo"
>
保存
</van-button>
<div
class=
"submit_btn
"
>
<van-button
type=
"primary"
block
@
click=
"updatePersonInfo"
>
保存
</van-button>
</div>
</van-popup>
</div>
...
...
@@ -188,34 +180,46 @@
<
script
lang=
"ts"
>
import
Vue
from
"vue"
;
import
{
Icon
,
Button
,
Popup
,
Form
,
Picker
,
Field
,
Area
,
Toast
}
from
"vant"
;
import
{
Component
,
Prop
}
from
"vue-property-decorator"
;
import
popupPicker
from
"@/components/common/popupPicker.vue"
// import AreaList from "@/assets/js/area.js";
import
{
Icon
,
Button
,
Popup
,
Form
,
Picker
,
Field
,
DatetimePicker
,
Toast
}
from
"vant"
;
import
{
Component
,
Prop
}
from
"vue-property-decorator"
;
import
popupPicker
from
"@/components/common/popupPicker.vue"
;
import
cityList
from
"@/components/common/cityList.vue"
;
import
dateSelect
from
"@/components/common/dateSelect.vue"
;
import
{
formatDate
}
from
"../../utils/public"
;
@
Component
({
components
:
{
[
Button
.
name
]:
Button
,
[
Icon
.
name
]:
Icon
,
[
Popup
.
name
]:
Popup
,
[
Picker
.
name
]:
Picker
,
[
DatetimePicker
.
name
]:
DatetimePicker
,
[
Field
.
name
]:
Field
,
// [Area.name]: Area,
[
Form
.
name
]:
Form
,
popupPicker
popupPicker
,
cityList
}
})
export
default
class
personInfo
extends
Vue
{
//获取父组件中的isEdit
@
Prop
({
type
:
String
,
required
:
true
,
default
:
''
})
isEdit
!
:
string
type
:
String
,
required
:
true
,
default
:
""
})
isEdit
!
:
string
;
private
obj
:
any
=
{};
private
show
:
boolean
=
false
;
private
label
:
any
=
"民族"
;
// private areaList: object = AreaList;
private
showBirthplace
:
boolean
=
false
;
private
showNation
:
boolean
=
false
;
private
showPolitical
:
boolean
=
false
;
...
...
@@ -224,7 +228,7 @@ export default class personInfo extends Vue {
private
showMaternity
:
boolean
=
false
;
private
showFile
:
boolean
=
false
;
private
showWorkStartDate
:
boolean
=
false
;
private
areaList
:
object
=
{}
;
private
currentDate
:
Date
=
new
Date
()
;
private
columns
:
any
=
{
nation
:
[
"汉族"
,
"回族"
,
"蒙古族"
],
political
:
[
"群众"
,
"共青团员"
,
"预备党员"
,
"中共党员"
,
"其他"
],
...
...
@@ -249,19 +253,18 @@ export default class personInfo extends Vue {
let
params
=
{
edId
:
this
.
$route
.
query
.
ed_id
};
console
.
log
(
"props="
+
this
.
$props
.
isEdit
)
this
.
$server
.
EmployeeService
.
getPersonInfo
(
params
)
.
then
(
res
=>
{
this
.
obj
=
res
;
console
.
log
(
res
);
})
.
catch
(
error
=>
{});
}
editInfo
():
void
{
this
.
show
=
true
;
}
//出生地
onConfirmBirthplace
(
values
:
any
)
{
this
.
obj
.
infoBirthCity
=
values
.
map
((
item
:
any
)
=>
item
.
name
).
join
(
"/"
);
birthCity
(
values
:
any
)
{
this
.
obj
.
infoBirthCity
=
values
.
join
(
"/"
);
this
.
showBirthplace
=
false
;
}
//民族
...
...
@@ -290,13 +293,13 @@ export default class personInfo extends Vue {
this
.
showMaternity
=
false
;
}
//档案所在地
onConfirmFile
(
value
:
any
)
{
this
.
obj
.
infoFileLocation
=
value
;
localCity
(
values
:
any
)
{
this
.
obj
.
infoFileLocation
=
value
s
.
join
(
"/"
)
;
this
.
showFile
=
false
;
}
//开始工作时间
onConfirmWorkDate
(
value
:
any
)
{
this
.
obj
.
infoWorkStartDate
=
value
;
this
.
obj
.
infoWorkStartDate
=
formatDate
(
value
,
"yyyy-MM-dd"
)
;
this
.
showWorkStartDate
=
false
;
}
updatePersonInfo
()
{
...
...
@@ -313,7 +316,6 @@ export default class personInfo extends Vue {
};
this
.
$server
.
EmployeeService
.
savePersonInfo
(
params
)
.
then
(
res
=>
{
console
.
log
(
res
);
Toast
.
success
(
"保存成功"
);
this
.
show
=
false
;
})
...
...
@@ -321,6 +323,8 @@ export default class personInfo extends Vue {
console
.
log
(
error
);
});
}
}
</
script
>
...
...
src/views/archives/socialInfo.vue
View file @
012856c6
...
...
@@ -35,7 +35,7 @@
<label>
{{
obj
.
unitPreEmploymentStatus
}}
</label>
</div>
</div>
<van-popup
v-model=
"show"
position=
"right"
:style=
"
{ height: '100%',width: '
10
0%' }">
<van-popup
v-model=
"show"
position=
"right"
:style=
"
{ height: '100%',width: '
9
0%' }">
<van-form>
<!--
<van-field
v-model=
"obj.infoRegisteredResidence"
label=
"户口性质"
placeholder=
"请选择户口性质"
/>
-->
<van-field
...
...
@@ -93,15 +93,8 @@
placeholder=
"请选择"
@
click=
"showEmploymentStatus = true"
/>
<div
style=
"margin: 16px;"
>
<van-button
round
block
type=
"info"
native-type=
"submit"
@
click=
"updateContactInfo_click"
>
保存
</van-button>
<div
class=
"submit_btn"
>
<van-button
type=
"primary"
block
@
click=
"updateContactInfo_click"
>
保存
</van-button>
</div>
<!-- 户口性质 -->
...
...
@@ -133,12 +126,7 @@
</van-popup>
<!-- 原社保缴纳省市 -->
<van-popup
v-model=
"showSocialCity"
position=
"bottom"
>
<van-picker
show-toolbar
:columns=
"columns.socialCity"
@
confirm=
"onConfirmSocialCity"
@
cancel=
"showSocialCity = false"
/>
<city-list
@
childCityList=
"socialCity"
/>
</van-popup>
<!-- 与原单位关系 -->
<van-popup
v-model=
"showRelationUnit"
position=
"bottom"
>
...
...
@@ -167,6 +155,7 @@
import
Vue
from
"vue"
;
import
{
Button
,
Icon
,
Popup
,
Form
,
Picker
,
Field
,
Toast
}
from
"vant"
;
import
{
Component
}
from
"vue-property-decorator"
;
import
cityList
from
"@/components/common/cityList.vue"
;
@
Component
({
components
:
{
...
...
@@ -175,7 +164,8 @@ import { Component } from "vue-property-decorator";
[
Popup
.
name
]:
Popup
,
[
Form
.
name
]:
Form
,
[
Picker
.
name
]:
Picker
,
[
Field
.
name
]:
Field
[
Field
.
name
]:
Field
,
cityList
}
})
export
default
class
socialInfo
extends
Vue
{
...
...
@@ -249,72 +239,13 @@ export default class socialInfo extends Vue {
this
.
showEmploymentStatus
=
false
;
}
private
getCityList
():
void
{
this
.
$server
.
EmployeeService
.
getCityList
({})
.
then
(
res
=>
{
// console.log("citylist", res);
this
.
city
=
res
;
for
(
let
i
=
0
;
i
<
this
.
city
.
length
;
i
++
)
{
if
(
this
.
city
[
i
].
parentId
==
0
)
{
this
.
parents
.
push
(
this
.
city
[
i
]);
}
if
(
this
.
city
[
i
].
parentId
!=
0
)
{
this
.
childrens
.
push
(
this
.
city
[
i
]);
}
}
//没有父节点的数据
// console.log(this.parents);
//有父节点的数据
// console.log(this.childrens);
this
.
parents
.
forEach
((
parent
:
any
)
=>
{
this
.
childrens
.
forEach
((
children
:
any
)
=>
{
if
(
parent
.
id
==
children
.
parentId
){
// console.log(parent.name+parent.id+"++"+children.name+children.parentId)
}
})
});
// https://blog.csdn.net/MySunshine07/article/details/104960244?utm_medium=distribute.pc_relevant.none-task-blog-baidujs-1
// let fliterEvent = (parents:any, childrens:any) => {
// parents.forEach(parent => {
// childrens.forEach((current:any, index:any) => {
// if (current.parentId === parent.id) {
// let temp = JSON.parse(JSON.stringify(children));
// temp.splice(index, 1);
// fliterEvent([current], temp);
// typeof parent.children !== "undefined"
// ? parent.children.push(current)
// : (parent.children = [current]);
// }
// });
// });
// };
// function translator(parents, childrens) {
// fliterEvent(parents, childrens);
// return parents;
// }
})
.
catch
(
error
=>
{
console
.
log
(
error
);
});
}
private
getSocialInfo
():
void
{
let
params
=
{
edId
:
this
.
$route
.
query
.
ed_id
};
this
.
$server
.
EmployeeService
.
getSocialInfo
(
params
)
.
then
(
res
=>
{
// console.log("res=" + JSON.stringify(res)+'社保信息');
this
.
obj
=
res
;
})
.
catch
(
error
=>
{});
this
.
$server
.
EmployeeService
.
getSocialInfo
(
params
).
then
(
res
=>
{
this
.
obj
=
res
;
});
}
private
getSalaryInfo
():
void
{
...
...
@@ -326,14 +257,10 @@ export default class socialInfo extends Vue {
spId
:
sp_id
};
console
.
log
(
params
);
this
.
$server
.
EmployeeService
.
getSalaryInfo
(
params
)
.
then
(
res
=>
{
// console.log("res=" + JSON.stringify(res)+'工资条');
this
.
obj
=
res
;
})
.
catch
(
error
=>
{
});
this
.
$server
.
EmployeeService
.
getSalaryInfo
(
params
).
then
(
res
=>
{
this
.
obj
=
res
;
});
}
editInfo
():
void
{
...
...
@@ -391,17 +318,21 @@ export default class socialInfo extends Vue {
console
.
log
(
error
);
});
}
socialCity
(
values
:
any
)
{
this
.
obj
.
unitPreSocialCity
=
values
.
join
(
"/"
);
this
.
showSocialCity
=
false
;
}
created
()
{
this
.
getSalaryInfo
();
this
.
getSocialInfo
();
this
.
getCityList
();
}
}
</
script
>
<
style
lang=
"less"
scoped
>
.content
/
deep
/
.van-field__label
{
width
:
110px
;
}
.content
{
margin-top
:
10px
;
background
:
white
;
...
...
src/views/archives/technologyExperience.vue
View file @
012856c6
...
...
@@ -19,14 +19,13 @@
<label>
{{
obj
.
expertiseQualification
}}
</label>
</div>
</div>
<van-popup
v-model=
"show"
position=
"right"
:style=
"
{ height: '100%',width: '
10
0%' }">
<van-popup
v-model=
"show"
position=
"right"
:style=
"
{ height: '100%',width: '
9
0%' }">
<van-form>
<van-field
v-model=
"obj.expertiseTechnologySpecialty"
label=
"技术特长"
placeholder=
"请填写技术特长"
/>
<van-field
v-model=
"obj.expertiseTechnologyTitle"
label=
"技术职称"
placeholder=
"请填写技术职称"
/>
<van-field
v-model=
"obj.expertiseQualification"
label=
"资格证书"
placeholder=
"请填写资格证书"
/>
<div
style=
"margin: 16px;"
>
<van-button
round
block
type=
"info"
native-type=
"submit"
@
click=
"updateContactInfo"
>
保存
</van-button>
<div
class=
"submit_btn"
>
<van-button
type=
"primary"
block
@
click=
"updateContactInfo"
>
保存
</van-button>
</div>
</van-form>
</van-popup>
...
...
src/views/archives/updateWorkExperience.vue
View file @
012856c6
...
...
@@ -11,11 +11,9 @@
@
childEndDate=
"childEndDate"
/>
<van-field
v-model=
"childItem.description"
label=
"工作内容"
placeholder=
"请填写工作内容(非必填)"
/>
<div
style=
"margin: 16px;"
>
<van-button
round
block
type=
"info"
native-type=
"submit"
@
click=
"updateEduInfo"
>
修改
</van-button>
</div>
<div
style=
"margin: 16px;"
>
<van-button
round
block
type=
"info"
native-type=
"submit"
@
click=
"deleteEduInfo"
>
删除
</van-button>
<div
class=
"work_button"
>
<div
@
click=
"updateWorkInfo"
>
修改
</div>
<div
@
click=
"deleteWorkInfo"
>
删除
</div>
</div>
</van-form>
</div>
...
...
@@ -70,7 +68,7 @@ export default class eduExperience extends Vue {
this
.
childItem
.
workEndDate
=
item
;
}
//修改
update
Edu
Info
()
{
update
Work
Info
()
{
let
params
=
{
description
:
this
.
childItem
.
description
,
edId
:
this
.
childItem
.
id
,
...
...
@@ -85,7 +83,7 @@ export default class eduExperience extends Vue {
});
}
//删除
delete
Edu
Info
()
{
delete
Work
Info
()
{
let
params
=
{
edId
:
this
.
childItem
.
id
};
...
...
@@ -102,4 +100,48 @@ export default class eduExperience extends Vue {
}
</
script
>
<
style
lang=
"less"
scoped
>
.work_button
{
display
:
flex
;
position
:
absolute
;
bottom
:
0
;
width
:
100%
;
height
:
50px
;
align-items
:
center
;
&::before
{
position
:
absolute
;
box-sizing
:
border-box
;
content
:
" "
;
pointer-events
:
none
;
right
:
0
;
bottom
:
50px
;
left
:
0
;
border-bottom
:
0.02667rem
solid
#ebedf0
;
-webkit-transform
:
scaleY
(
0.5
);
-ms-transform
:
scaleY
(
0.5
);
transform
:
scaleY
(
0.5
);
}
div
{
background
:
white
;
width
:
50%
;
text-align
:
center
;
font-size
:
14px
;
color
:
#666
;
&:last-child
{
color
:
#fc3e30
;
&::before
{
position
:
absolute
;
box-sizing
:
border-box
;
content
:
" "
;
width
:
1px
;
height
:
50px
;
background
:
#ebedf0
;
left
:
50%
;
top
:
0
;
-webkit-transform
:
scaleY
(
0.5
);
-ms-transform
:
scaleY
(
0.5
);
transform
:
scaleY
(
0.5
);
}
}
}
}
</
style
>
\ No newline at end of file
src/views/archives/wageCardInfo.vue
View file @
012856c6
...
...
@@ -23,14 +23,14 @@
<label>
{{
obj
.
bankNo
}}
</label>
</div>
</div>
<van-popup
v-model=
"show"
position=
"right"
:style=
"
{ height: '100%',width: '
10
0%' }">
<van-popup
v-model=
"show"
position=
"right"
:style=
"
{ height: '100%',width: '
9
0%' }">
<van-form>
<van-field
v-model=
"obj.bankAccount"
label=
"账户名称"
placeholder=
"请填写账户名称"
/>
<van-field
v-model=
"obj.bankName"
label=
"银行名称"
placeholder=
"请填写银行名称"
/>
<van-field
v-model=
"obj.bankOpen"
label=
"开户行"
placeholder=
"请填写开户行"
/>
<van-field
v-model=
"obj.bankNo"
label=
"银行卡号"
placeholder=
"请填写银行卡号"
/>
<div
style=
"margin: 16px;
"
>
<van-button
round
block
type=
"info"
native-type=
"submit"
@
click=
"updateCardInfo"
>
保存
</van-button>
<div
class=
"submit_btn
"
>
<van-button
type=
"primary"
block
@
click=
"updateCardInfo"
>
保存
</van-button>
</div>
</van-form>
</van-popup>
...
...
src/views/archives/workInfo.vue
View file @
012856c6
...
...
@@ -40,9 +40,24 @@ import { Component } from "vue-property-decorator";
}
})
export
default
class
workInfo
extends
Vue
{
obj
:
object
=
{}
// @Emit('bindSend') send(msg: string){};
obj
:
object
=
{};
sortKey
(
array
:
any
,
key
:
any
)
{
return
array
.
sort
(
function
(
a
:
any
,
b
:
any
)
{
var
x
=
a
[
key
];
var
y
=
b
[
key
];
return
x
>
y
?
-
1
:
x
<
y
?
1
:
0
;
});
}
created
()
{
let
params
=
{
spId
:
this
.
$route
.
query
.
sp_id
,
idNo
:
this
.
$route
.
query
.
id_no
};
this
.
$server
.
EmployeeService
.
getDispatchInfo
(
params
).
then
(
res
=>
{
console
.
log
(
"res======="
+
JSON
.
stringify
(
res
.
workData
));
this
.
sortKey
(
res
.
workDat
,
""
);
});
}
}
</
script
>
...
...
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