Commit e94d4945 by e

updata

parents aebe3bc9 5503f041
......@@ -46,7 +46,6 @@ address, caption, cite, code, dfn, th, var, b, em, i,table,td,tr,th,strong{
font-style: normal;
font-weight: normal;
font-family:'微软雅黑','宋体';
color:#333;
box-sizing: border-box;
}
ul, ol, li,dl {
......
......@@ -9,7 +9,7 @@
<div class="editItem">
<van-cell title="北京大学" is-link value="2019-2019" />
<van-cell title="北京大学" is-link value="2019-2019" />
<div class="addEdu">添加教育经历</div>
<div class="addEdu"><i><img src="@/assets/images/add.png" alt=""></i> 添加教育经历</div>
</div>
</div>
<div class="box" v-show="false">
......@@ -109,6 +109,15 @@ export default class eduExperience extends Vue {
line-height: 15px;
text-align: center;
margin: 25px auto 12px;
display: flex;
justify-content: center;
i{
margin-right: 10px;
img{
width: 16px;
height: 17px;
}
}
}
}
.unEiteItem {
......
......@@ -40,32 +40,214 @@
</div>
</div>
<van-popup v-model="show" position="right" :style="{ height: '100%',width: '90%' }">
<select-info />
<!-- <select-info /> -->
<van-form>
<!-- 出生地 -->
<van-field
readonly
clickable
:value="obj.infoBirthCity"
label="出生地"
placeholder="请选择出生地"
@click="showBirthplace = true"
/>
<van-popup v-model="showBirthplace" position="bottom">
<van-area
:area-list="areaList"
@confirm="onConfirmBirthplace"
@cancel="showArea = false"
/>
</van-popup>
<!-- 民族 -->
<van-field
readonly
clickable
:value="obj.infoNation"
label="民族"
placeholder="请选择"
@click="showNation = true"
/>
<van-popup v-model="showNation" position="bottom">
<van-picker
show-toolbar
:columns="columns.nation"
@confirm="onConfirmNation"
@cancel="showNation = false"
/>
</van-popup>
<!-- 政治面貌 -->
<van-field
readonly
clickable
:value="obj.infoPoliticalStatus"
label="政治面貌"
placeholder="请选择"
@click="showPolitical = true"
/>
<van-popup v-model="showPolitical" position="bottom">
<van-picker
show-toolbar
:columns="columns.political"
@confirm="onConfirmPolitical"
@cancel="showPolitical = false"
/>
</van-popup>
<!-- 最高学历 -->
<van-field
readonly
clickable
:value="obj.infoHighestEducation"
label="最高学历"
placeholder="请选择"
@click="showEdu = true"
/>
<van-popup v-model="showEdu" position="bottom">
<van-picker
show-toolbar
:columns="columns.edu"
@confirm="onConfirmEdu"
@cancel="showEdu = false"
/>
</van-popup>
<!-- 婚姻状况 -->
<van-field
readonly
clickable
:value="obj.infoMaritalStatus"
label="婚姻状况"
placeholder="请选择"
@click="showMarry = true"
/>
<van-popup v-model="showMarry" position="bottom">
<van-picker
show-toolbar
:columns="columns.marry"
@confirm="onConfirmMarry"
@cancel="showMarry = false"
/>
</van-popup>
<!-- 生育状况 -->
<van-field
readonly
clickable
:value="obj.infoMaternityStatus"
label="生育情况"
placeholder="请选择"
@click="showMaternity = true"
/>
<van-popup v-model="showMaternity" position="bottom">
<van-picker
show-toolbar
:columns="columns.maternity"
@confirm="onConfirmMaternity"
@cancel="showMaternity = false"
/>
</van-popup>
<!-- 档案所在地 -->
<van-field
readonly
clickable
:value="obj.infoFileLocation"
label="档案所在地"
placeholder="请选择"
@click="showFile = true"
/>
<van-popup v-model="showFile" position="bottom">
<van-picker
show-toolbar
:columns="columns.maternity"
@confirm="onConfirmFile"
@cancel="showFile = false"
/>
</van-popup>
<!-- 开始工作时间 -->
<van-field
readonly
clickable
:value="obj.infoWorkStartDate"
label="开始工作时间"
placeholder="请选择"
@click="showMaternity = true"
/>
<van-popup v-model="showMaternity" position="bottom">
<van-picker
show-toolbar
:columns="columns.maternity"
@confirm="onConfirmWorkDate"
@cancel="showMaternity = false"
/>
</van-popup>
</van-form>
<div style="margin: 16px;">
<van-button round block type="info" native-type="submit" @click="updatePersonInfo">保存</van-button>
</div>
</van-popup>
</div>
</template>
<script lang="ts">
import Vue from "vue";
import { Icon, Popup } from "vant";
import { Component } from "vue-property-decorator";
import selectInfo from "@/components/archives/selectInfo.vue";
import { Icon, Button, Popup, Form, Picker, Field, Area, Toast } from "vant";
import { Component,Prop } from "vue-property-decorator";
// import selectInfo from "@/components/archives/selectInfo.vue";
// import AreaList from "@/assets/js/area.js";
@Component({
components: {
[Button.name]: Button,
[Icon.name]: Icon,
[Popup.name]: Popup,
selectInfo
[Picker.name]: Picker,
[Field.name]: Field,
// [Area.name]: Area,
[Form.name]: Form
// selectInfo
}
})
export default class personInfo extends Vue {
private obj: object = {};
//获取父组件中的isEdit
@Prop({
type:String,
required:true,
default:''
}) isEdit !:string
private obj: any = {};
private show: boolean = false;
// private areaList: object = AreaList;
private showBirthplace: boolean = false;
private showNation: boolean = false;
private showPolitical: boolean = false;
private showEdu: boolean = false;
private showMarry: boolean = false;
private showMaternity: boolean = false;
private showFile: boolean = false;
private showWorkStartDate: boolean = false;
private areaList: object = {};
private columns: any = {
nation: ["汉族", "回族", "蒙古族"],
political: ["群众", "共青团员", "预备党员", "中共党员", "其他"],
edu: [
"小学",
"初中",
"高中",
"大专",
"本科",
"硕士研究生",
"博士研究生",
"职高",
"中专",
"技校",
"其他"
],
marry: ["已婚", "未婚"],
maternity: ["未育", "已育一孩", "已育多孩"]
};
created() {
let params = {
edId: this.$route.query.ed_id
};
console.log("props="+this.$props.isEdit)
this.$server.EmployeeService.getPersonInfo(params)
.then(res => {
this.obj = res;
......@@ -75,7 +257,68 @@ export default class personInfo extends Vue {
editInfo(): void {
this.show = true;
}
//出生地
onConfirmBirthplace(values: any) {
this.obj.infoBirthCity = values.map((item: any) => item.name).join("/");
this.showBirthplace = false;
}
//民族
onConfirmNation(value: any) {
this.obj.infoNation = value;
this.showNation = false;
}
//政治面貌
onConfirmPolitical(value: any) {
this.obj.infoPoliticalStatus = value;
this.showPolitical = false;
}
//最高学历
onConfirmEdu(value: any) {
this.obj.infoHighestEducation = value;
this.showEdu = false;
}
//婚姻状况
onConfirmMarry(value: any) {
this.obj.infoMaritalStatus = value;
this.showMarry = false;
}
//生育状况
onConfirmMaternity(value: any) {
this.obj.infoMaternityStatus = value;
this.showMaternity = false;
}
//档案所在地
onConfirmFile(value: any) {
this.obj.infoFileLocation = value;
this.showFile = false;
}
//开始工作时间
onConfirmWorkDate(value: any) {
this.obj.infoWorkStartDate = value;
this.showWorkStartDate = false;
}
updatePersonInfo() {
let params = {
id: this.$route.query.ed_id,
infoBirthCity: this.obj.infoBirthCity,
infoFileLocation: this.obj.infoFileLocation,
infoHighestEducation: this.obj.infoHighestEducation,
infoMaritalStatus: this.obj.infoMaritalStatus,
infoMaternityStatus: this.obj.infoMaternityStatus,
infoNation: this.obj.infoNation,
infoPoliticalStatus: this.obj.infoPoliticalStatus,
infoWorkStartDate: this.obj.infoWorkStartDate
};
this.$server.EmployeeService.savePersonInfo(params)
.then(res => {
console.log(res);
Toast.success("保存成功");
this.show = false;
})
.catch(error => {
console.log(error);
});
}
}
</script>
......
<!--个人信息选择组件-->
<template>
<div>
<van-form>
<!-- 出生地 -->
<van-field
readonly
clickable
:value="birthplaceValue"
label="出生地"
placeholder="请选择出生地"
@click="showBirthplace = true"
/>
<van-popup v-model="showBirthplace" position="bottom">
<van-area :area-list="areaList" @confirm="onConfirm" @cancel="showArea = false" />
</van-popup>
<!-- 民族 -->
<van-field
readonly
clickable
:value="nationValue"
label="民族"
placeholder="请选择"
@click="showNation = true"
/>
<van-popup v-model="showNation" position="bottom">
<van-picker
show-toolbar
:columns="columns.nation"
@confirm="onConfirm"
@cancel="showNation = false"
/>
</van-popup>
<!-- 政治面貌 -->
<van-field
readonly
clickable
:value="politicalValue"
label="政治面貌"
placeholder="请选择"
@click="showPolitical = true"
/>
<van-popup v-model="showPolitical" position="bottom">
<van-picker
show-toolbar
:columns="columns.political"
@confirm="onConfirm"
@cancel="showPolitical = false"
/>
</van-popup>
<!-- 最高学历 -->
<van-field
readonly
clickable
:value="eduValue"
label="最高学历"
placeholder="请选择"
@click="showEdu = true"
/>
<van-popup v-model="showEdu" position="bottom">
<van-picker
show-toolbar
:columns="columns.edu"
@confirm="onConfirm"
@cancel="showEdu = false"
/>
</van-popup>
<!-- 婚姻状况 -->
<van-field
readonly
clickable
:value="marryValue"
label="婚姻状况"
placeholder="请选择"
@click="showMarry = true"
/>
<van-popup v-model="showMarry" position="bottom">
<van-picker
show-toolbar
:columns="columns.marry"
@confirm="onConfirm"
@cancel="showMarry = false"
/>
</van-popup>
<!-- 生育状况 -->
<van-field
readonly
clickable
:value="maternityValue"
label="生育情况"
placeholder="请选择"
@click="showMaternity = true"
/>
<van-popup v-model="showMaternity" position="bottom">
<van-picker
show-toolbar
:columns="columns.maternity"
@confirm="onConfirm"
@cancel="showMaternity = false"
/>
</van-popup>
<!-- 档案所在地 -->
<!-- <van-field
readonly
clickable
:value="maternityValue"
label="档案所在地"
placeholder="请选择"
@click="showMaternity = true"
/>
<van-popup v-model="showMaternity" position="bottom">
<van-picker
show-toolbar
:columns="columns.maternity"
@confirm="onConfirm"
@cancel="showMaternity = false"
/>
</van-popup> -->
</van-form>
</div>
</template>
<script lang="ts">
import Vue from "vue";
import AreaList from "@/assets/js/area.js";
import { Popup, Form, Picker, Field, Area } from "vant";
import { Component } from "vue-property-decorator";
@Component({
components: {
[Popup.name]: Popup,
[Form.name]: Form,
[Picker.name]: Picker,
[Field.name]: Field,
[Area.name]: Area
}
})
export default class personInfo extends Vue {
private obj: object = {};
private show: boolean = false;
private birthplaceValue: string = "";
private nationValue:string=""
private politicalValue:string=""
private eduValue:string=""
private marryValue:string=""
private maternityValue:string=""
private areaList: object = AreaList;
private showBirthplace: boolean = false;
private showNation: boolean = false;
private showPolitical: boolean = false;
private showEdu: boolean = false;
private showMarry: boolean = false;
private showMaternity: boolean = false;
private columns: any = {
nation: ["汉族", "回族", "蒙古族"],
political: ["群众", "共青团员", "预备党员", "中共党员", "其他"],
edu: [
"小学",
"初中",
"高中",
"大专",
"本科",
"硕士研究生",
"博士研究生",
"职高",
"中专",
"技校",
"其他"
],
marry: ["已婚", "未婚"],
maternity: ["未育", "已育一孩", "已育多孩"]
};
onConfirm(value:any) {
this.maternityValue=value
// this.birthplaceValue = values.map((item: any) => item.name).join("/");
// this.showBirthplace = false;
// if(item==="a"){
// // console.log(value,item)
// // this.maternityValue=value
// this.showMaternity=false
// }
}
}
</script>
<style lang="less" scoped>
</style>
\ No newline at end of file
......@@ -42,6 +42,7 @@
readonly
clickable
v-model="obj.infoRegisteredResidence"
label="户口性质"
placeholder="请选择"
@click="showCategory = true"
......@@ -51,6 +52,7 @@
readonly
clickable
v-model="obj.unitPreSocialStatus"
label="前期社保状态"
placeholder="请选择"
@click="showSocialStatus = true"
......@@ -60,6 +62,7 @@
readonly
clickable
v-model="obj.unitPrePaymentType"
label="前期缴费种类"
placeholder="请选择"
@click="showPaymentType = true"
......@@ -69,6 +72,7 @@
readonly
clickable
v-model="obj.unitPreSocialCity"
label="原社保缴纳省市"
placeholder="请选择"
@click="showSocialCity = true"
......@@ -80,6 +84,7 @@
readonly
clickable
v-model="obj.unitRelationUnit"
label="与原单位关系"
placeholder="请选择"
@click="showRelationUnit = true"
......@@ -89,6 +94,7 @@
readonly
clickable
v-model="obj.unitPreEmploymentStatus"
label="前期就业状态"
placeholder="请选择"
@click="showEmploymentStatus = true"
......
......@@ -57,8 +57,6 @@ export default class technologyExperience extends Vue {
};
this.$server.EmployeeService.getTechnologyExperience(params)
.then(res => {
console.log("res=" + JSON.stringify(res) + "技术特长");
this.obj = res;
})
.catch(error => {});
......
......@@ -9,7 +9,7 @@
<div class="editItem">
<van-cell title="亲亲小保" is-link value="2019-2019" />
<van-cell title="亲亲小保" is-link value="2019-2019" />
<div class="addEdu">添加工作经历</div>
<div class="addEdu"><i><img src="@/assets/images/add.png" alt=""></i>添加工作经历</div>
</div>
</div>
<div class="box" v-show="true">
......@@ -100,6 +100,15 @@ export default class workExperience extends Vue {
line-height: 15px;
text-align: center;
margin: 25px auto 12px;
display: flex;
justify-content: center;
i{
margin-right: 10px;
img{
width: 16px;
height: 17px;
}
}
}
}
.unEiteItem {
......
......@@ -8,6 +8,8 @@ export interface EmployeeInterface {
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>; //新增工作信息
getPersonInfo(params: any): Promise<any>; //获取个人信息
savePersonInfo(params: any): Promise<any>; //保存个人信息
getContactInfo(params: any): Promise<any>; //获取联系信息
......
......@@ -44,7 +44,7 @@ class EmployeeService implements EmployeeInterface {
*/
public async getUserInfo(params: any): Promise<any> {
const url = urls.userInfoUrl + `/userAuthDetails`;
return request.post(url, params, this.header)
return request.post(url, params, this.header, true)
}
/**
......@@ -85,6 +85,26 @@ class EmployeeService implements EmployeeInterface {
}
/**
* 修改工作信息
* @param params 请求参数
*/
public updateWorkInfo(params: any): Promise<any> {
let url = urls.employeeUrl + `/api/user/employee/work/info`;
return request.put(url, params, this.header)
}
/**
* 新增工作信息
* @param params 请求参数
*/
public addWorkInfo(params: any): Promise<any> {
let url = urls.employeeUrl + `/api/user/employee/work/info`;
return request.post(url, params, this.header)
}
/**
* 获取个人信息
* @param params 请求参数
*/
......
......@@ -26,9 +26,9 @@ class Request {
* @param params 请求参数
* @param headers 请求头信息
*/
public post(url: string, params: any = {}, headers: any = {}) {
public post(url: string, params: any = {}, headers: any = {}, special: boolean = false) {
return new Promise((resolve, reject) => {
resolve(http.post(`${url}?${GetCommonPms()}`, params, { headers: headers }));
resolve(http.post(`${url}?${GetCommonPms(special)}`, params, { headers: headers }));
})
}
......@@ -42,7 +42,7 @@ class Request {
*/
public put(url: string, params: any = {}, headers: any = {}) {
return new Promise((resolve, reject) => {
resolve(http.put(`${url}?${GetCommonPms()}`, params, {headers: headers}));
resolve(http.put(`${url}?${GetCommonPms()}`, params, { headers: headers }));
})
}
......
<template>
<div class="main">
<div class="top">
如档案有问题请联系HR小白
<i>18821992017</i>
</div>
<div class="header">
<div class="header_name">哈撒剋</div>
<div class="header_info">女|1888-01-01</div>
</div>
<work-info />
<person-info />
<person-info :isEdit="isEdit" />
<contact-info />
<social-info />
<wage-card-info />
......@@ -17,7 +25,7 @@
<script lang="ts">
import Vue from "vue";
import { Button} from "vant";
import { Button } from "vant";
import { Component } from "vue-property-decorator";
import workInfo from "@/components/archives/workInfo.vue";
import personInfo from "@/components/archives/personInfo.vue";
......@@ -44,13 +52,43 @@ import archiveQuestion from "@/components/archives/archiveQuestion.vue";
[Button.name]: Button
}
})
export default class archives extends Vue {}
export default class archives extends Vue {
private isEdit:any="123"
}
</script>
<style lang="less" scoped>
.main {
background: #f5f7fa;
.saveBtn{
.top {
font-size: 15px;
color: rgba(149, 152, 158, 1);
line-height: 15px;
padding: 20px 20px 10px;
i {
color: #077aec;
}
}
.header {
margin-top: 10px;
background: white;
padding: 24px 20px;
.header_name {
height: 24px;
font-size: 24px;
font-weight: 500;
color: rgba(61, 64, 71, 1);
line-height: 24px;
}
.header_info {
height: 14px;
font-size: 14px;
color: rgba(149, 152, 158, 1);
line-height: 14px;
margin-top: 16px;
}
}
.saveBtn {
margin-top: 10px;
color: white !important;
font-size: 18px;
......
......@@ -80,21 +80,26 @@ export default class Index extends Vue {
private position: string = "";
private entry_date: string = "";
private id_no: string = "";
private ed_id: string = "8";
private sp_id: string = "";
private ed_id: string = "";
created() {
const id_no = this.$route.query.id_no as string;
this.id_no = window.atob(encodeURI(id_no));
let params={
spId:1,
idNo:this.$route.query.id_no
}
this.$server.EmployeeService.getDispatchInfo(params).then(res=>{
console.log(res)
}).catch(error=>{
console.log(error)
})
this.sp_id = this.$route.query.sp_id as string;
let params = {
spId: this.sp_id,
idNo: this.id_no
};
this.$server.EmployeeService.getDispatchInfo(params)
.then(res => {
console.log(res);
})
.catch(error => {
console.log(error);
});
}
}
</script>
......
......@@ -7,7 +7,7 @@
<p>可查看专项订单服务,使用职场小工具</p>
</div>
</a>-->
<a class="si-child" id="dispatch-employee" @click="toIndex">
<a class="si-child" id="dispatch-employee" @click="toIndex_click">
<img src="../assets/images/agent/company-employee.png" alt />
<div class="si-child-desc">
<h4>我是派遣员工</h4>
......@@ -37,21 +37,38 @@ export default class SelectIdentity extends Vue {
this.$router.push({ name: "FlexEmployee", query: { id_no: this.id_no } });
}
private toIndex(): void {
this.$router.push({ name: "Index", query: { id_no: this.id_no } });
private toIndex(sp_id: string): void {
this.$router.push({
name: "Index",
query: { id_no: this.id_no, sp_id: sp_id }
});
// this.$router.push({ name: "ChooseCompany", query: { id_no: this.id_no } });
}
private toIndex_click(): void {
const sp_id: string = "";
this.toIndex(sp_id);
}
async created() {
await this.$server.EmployeeService.getUserInfo({}).then(res => {
if (res.data && res.data.uthStatus && res.data.uthStatus > 0) {
this.id_no = res.data.personalIdCardNo;
} else {
//TODO: 跳转到实名认证
}
}).catch(err=>{
console.log('err=',err);
});
await this.$server.EmployeeService.getUserInfo({})
.then(res => {
if (res.data && res.data.uthStatus && res.data.uthStatus > 0) {
this.id_no = res.data.personalIdCardNo;
} else {
//TODO: 跳转到实名认证
}
})
.catch(err => {
console.log("err=", err);
});
this.$server.EmployeeService.getDispatchList({ idNo: this.id_no })
.then(res => {
console.log("getDispatchList res=", res);
})
.catch(err => {
console.log("err=", err);
});
}
}
</script>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment