| | |
| | | <el-container> |
| | | <el-aside width="175px"> |
| | | <el-timeline style="padding-left: 15px"> |
| | | <el-timeline-item @click.native="isShow(showArr[0].show, 0)"> |
| | | <el-timeline-item v-show="timelineShow('empBaseinfo:list')" @click.native="isShow(showArr[0].show, 0)"> |
| | | <span :class="thisShowIndex===0?'selectedTimeline':''">基本信息</span> |
| | | </el-timeline-item> |
| | | <el-timeline-item @click.native="isShow(showArr[1].show, 1)"> |
| | | <el-timeline-item v-show="timelineShow('empWorkexperience:list')" @click.native="isShow(showArr[1].show, 1)"> |
| | | <span :class="thisShowIndex===1?'selectedTimeline':''">工作经历</span> |
| | | </el-timeline-item> |
| | | <el-timeline-item @click.native="isShow(showArr[2].show, 2)"> |
| | | <el-timeline-item v-show="timelineShow('empPhysicalexam:list')" @click.native="isShow(showArr[2].show, 2)"> |
| | | <span :class="thisShowIndex===2?'selectedTimeline':''">体检信息</span> |
| | | </el-timeline-item> |
| | | <el-timeline-item @click.native="isShow(showArr[3].show, 3)"> |
| | | <el-timeline-item v-show="timelineShow('empContractinfo:list')" @click.native="isShow(showArr[3].show, 3)"> |
| | | <span :class="thisShowIndex===3?'selectedTimeline':''">合同信息</span> |
| | | </el-timeline-item> |
| | | <el-timeline-item @click.native="isShow(showArr[4].show, 4)"> |
| | | <el-timeline-item v-show="timelineShow('empDimissionattend:list')" @click.native="isShow(showArr[4].show, 4)"> |
| | | <span :class="thisShowIndex===4?'selectedTimeline':''">离职当月考勤</span> |
| | | </el-timeline-item> |
| | | <el-timeline-item @click.native="isShow(showArr[5].show, 5)"> |
| | | <el-timeline-item v-show="timelineShow('empLeaveinfo:list')" @click.native="isShow(showArr[5].show, 5)"> |
| | | <span :class="thisShowIndex===5?'selectedTimeline':''">请假记录</span> |
| | | </el-timeline-item> |
| | | <el-timeline-item @click.native="isShow(showArr[6].show, 6)"> |
| | | <el-timeline-item v-show="timelineShow('empResign:list')" @click.native="isShow(showArr[6].show, 6)"> |
| | | <span :class="thisShowIndex===6?'selectedTimeline':''">辞职申请</span> |
| | | </el-timeline-item> |
| | | <el-timeline-item @click.native="isShow(showArr[7].show, 7)"> |
| | | <el-timeline-item v-show="timelineShow('empUnemployment:list')" @click.native="isShow(showArr[7].show, 7)"> |
| | | <span :class="thisShowIndex===7?'selectedTimeline':''">失业金领取</span> |
| | | </el-timeline-item> |
| | | <el-timeline-item @click.native="isShow(showArr[8].show, 8)"> |
| | | <el-timeline-item v-show="timelineShow('empInsurance:list')" @click.native="isShow(showArr[8].show, 8)"> |
| | | <span :class="thisShowIndex===8?'selectedTimeline':''">社保申请</span> |
| | | </el-timeline-item> |
| | | <el-timeline-item @click.native="isShow(showArr[9].show, 9)"> |
| | | <el-timeline-item v-show="timelineShow('empAccidentcases:list')" @click.native="isShow(showArr[9].show, 9)"> |
| | | <span :class="thisShowIndex===9?'selectedTimeline':''">意外险案件</span> |
| | | </el-timeline-item> |
| | | <el-timeline-item @click.native="isShow(showArr[10].show, 10)"> |
| | | <el-timeline-item v-show="timelineShow('empOccupational:list')" @click.native="isShow(showArr[10].show, 10)"> |
| | | <span :class="thisShowIndex===10?'selectedTimeline':''">工伤案件</span> |
| | | </el-timeline-item> |
| | | <el-timeline-item @click.native="isShow(showArr[11].show, 11)"> |
| | | <el-timeline-item v-show="timelineShow('empLabortrouble:list')" @click.native="isShow(showArr[11].show, 11)"> |
| | | <span :class="thisShowIndex===11?'selectedTimeline':''">劳资案件</span> |
| | | </el-timeline-item> |
| | | <el-timeline-item @click.native="isShow(showArr[12].show, 12)"> |
| | | <el-timeline-item v-show="timelineShow('empBadrecord:list')" @click.native="isShow(showArr[12].show, 12)"> |
| | | <span :class="thisShowIndex===12?'selectedTimeline':''">不良记录</span> |
| | | </el-timeline-item> |
| | | <el-timeline-item @click.native="isShow(showArr[13].show, 13)"> |
| | | <el-timeline-item v-show="timelineShow('empRemarkinfo:list')" @click.native="isShow(showArr[13].show, 13)"> |
| | | <span :class="thisShowIndex===13?'selectedTimeline':''">备注信息</span> |
| | | </el-timeline-item> |
| | | </el-timeline> |
| | | </el-aside> |
| | | <el-main> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-button class="commonBtn" @click.native="dialogIsShow('0')">新增</el-button> |
| | | <el-button class="commonBtn" style="background-color: #409EFF" @click.native="butDelete()">删除</el-button> |
| | | <el-button class="commonBtn" style="float: right" @click.native="showDryg(0)">导入员工信息</el-button> |
| | |
| | | <el-table-column |
| | | prop="insuranceType" |
| | | show-overflow-tooltip |
| | | label="保险类型" |
| | | label="社保档位" |
| | | width="80" |
| | | :formatter="insuranceTypeFormat" |
| | | /> |
| | |
| | | <el-table-column prop="reportStatus " label="是否已报告" width="100" :formatter="reportStatusFormat" /> |
| | | <el-table-column prop="applayStatus" label="状态" width="80" :formatter="applayStatusFormat" /> |
| | | <el-table-column prop="auditor" label="审核人" width="80" /> |
| | | <el-table-column prop="remark" label="备注" /> |
| | | <el-table-column prop="remark" label="备注" width="300" /> |
| | | </el-table> |
| | | <el-table |
| | | v-show="showArr[9].show" |
| | |
| | | :limit.sync="pagination.size" |
| | | @pagination="search" |
| | | /> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <div style="width: 250px;margin: 20px auto 0;"> |
| | | <el-button class="nomalBtn" @click="deleteFrom()">取消</el-button> |
| | | <el-button class="commonBtn" @click="submitTo()">提交</el-button> |
| | |
| | | :headers="headers()" |
| | | :on-success="importHandleAvatarSuccess" |
| | | :on-error="importHandleAvatarError" |
| | | :file-list="fileList" |
| | | :auto-upload="false" |
| | | > |
| | | <el-button slot="trigger" size="small" type="primary">选取文件</el-button> |
| | |
| | | <el-form-item label="招聘介绍人" prop="introducer"> |
| | | <el-input v-model="empBaseInfoForm.introducer" /> |
| | | </el-form-item> |
| | | <el-form-item label="银行名称" prop="bankName"> |
| | | <el-form-item label="银行名称"> |
| | | <el-input v-model="empBaseInfoForm.bankName" /> |
| | | </el-form-item> |
| | | <el-form-item label="保险类型" prop="insuranceType"> |
| | | <el-select v-model="empBaseInfoForm.insuranceType" placeholder="请选择保险类型"> |
| | | <el-form-item label="社保档位" prop="insuranceType"> |
| | | <el-select v-model="empBaseInfoForm.insuranceType" placeholder="请选择社保档位"> |
| | | <el-option |
| | | v-for="dict in insuranceTypeOptions" |
| | | :key="dict.dicItemCode" |
| | |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="银行账号" prop="bankNumb"> |
| | | <el-form-item label="银行账号"> |
| | | <el-input v-model="empBaseInfoForm.bankNumb" /> |
| | | </el-form-item> |
| | | <el-form-item label="社保电脑号" prop="socialNumb"> |
| | |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="相关证件" prop="certificateList"> |
| | | <el-select v-model="empBaseInfoForm.certificateList" placeholder="请选择相关证件"> |
| | | <el-select v-model="empBaseInfoForm.certificateList" multiple placeholder="请选择相关证件"> |
| | | <el-option |
| | | v-for="dict in certificateListOptions" |
| | | :key="dict.dicItemCode" |
| | |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="工作单位" prop="workUnit"> |
| | | <el-input v-model="workExperienceForm.workUnit" /> |
| | | </el-form-item> |
| | |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="主要工作内容" prop="jobContent"> |
| | | <el-input v-model="workExperienceForm.jobContent" type="textarea" /> |
| | | </el-form-item> |
| | |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="体检结论" prop="conclusion"> |
| | | <el-input v-model="physicalExamForm.conclusion" /> |
| | | </el-form-item> |
| | |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="备注" prop="remark"> |
| | | <el-input v-model="physicalExamForm.remark" type="textarea" /> |
| | | </el-form-item> |
| | |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="备注" prop="remark"> |
| | | <el-input v-model="contractInfoForm.remark" type="textarea" /> |
| | | </el-form-item> |
| | |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="备注" prop="remark"> |
| | | <el-input v-model="dimissionAttendForm.remark" type="textarea" /> |
| | | </el-form-item> |
| | |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="备注"> |
| | | <el-input v-model="leaveInfoForm.remark" type="textarea" /> |
| | | </el-form-item> |
| | |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="辞职事由" prop="reason"> |
| | | <el-input v-model="resignForm.reason" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="备注"> |
| | | <el-input v-model="resignForm.remark" type="textarea" /> |
| | | </el-form-item> |
| | |
| | | </el-row> |
| | | |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="备注"> |
| | | <el-input v-model="unemploymentForm.remark" type="textarea" /> |
| | | </el-form-item> |
| | |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="备注"> |
| | | <el-input v-model="insuranceForm.remark" type="textarea" /> |
| | | </el-form-item> |
| | |
| | | </el-row> |
| | | |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="受伤经过描述" prop="injuredDescribe"> |
| | | <el-input v-model="accidentCasesForm.injuredDescribe" type="textarea" /> |
| | | </el-form-item> |
| | |
| | | </el-row> |
| | | |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="受伤经过描述" prop="injuredDescribe"> |
| | | <el-input v-model="occupationalForm.injuredDescribe" type="textarea" /> |
| | | </el-form-item> |
| | |
| | | </el-row> |
| | | |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="备注"> |
| | | <el-input v-model="occupationalForm.remark" type="textarea" /> |
| | | </el-form-item> |
| | |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="仲裁事由" prop="arbitrationReason"> |
| | | <el-input v-model="laborTroubleForm.arbitrationReason" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="备注" prop="remark"> |
| | | <el-input v-model="laborTroubleForm.remark" type="textarea" /> |
| | | </el-form-item> |
| | |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="不良记录描述" prop="badContent"> |
| | | <el-input v-model="badRecordForm.badContent" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="备注"> |
| | | <el-input v-model="badRecordForm.remark" type="textarea" /> |
| | | </el-form-item> |
| | |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-col> |
| | | <el-form-item label="备注" prop="remarkContent"> |
| | | <el-input v-model="remarkInfoForm.remarkContent" type="textarea" /> |
| | | </el-form-item> |
| | |
| | | message: '长度不超过36个字符', |
| | | trigger: 'blur' |
| | | }], |
| | | insuranceType: [{ required: true, message: '请选择保险类型', trigger: 'change' }], |
| | | insuranceType: [{ required: true, message: '请选择社保档位', trigger: 'change' }], |
| | | entryDate: [{ required: true, message: '请选择入职日期', trigger: 'change' }], |
| | | seniority: [{ required: true, message: '请输入入司工龄', trigger: 'blur' }], |
| | | archivesStatus: [{ required: true, message: '请选择档案情况', trigger: 'change' }], |
| | |
| | | arbitrationTypeOptions: [], |
| | | changeTypeOptions: [], |
| | | dimissionTypeOptions: [], |
| | | sexOptions: [] |
| | | sexOptions: [], |
| | | permissions: {} |
| | | } |
| | | }, |
| | | mounted() { |
| | | this.permissions = JSON.parse(localStorage.getItem('PERMISSIONS')) |
| | | this.getDicts('PLITICAL').then(response => { |
| | | this.statusOptions = response.data |
| | | }) |
| | |
| | | this.getDicts('LEAVETYPE').then(response => { |
| | | this.leaveTypeOptions = response.data |
| | | }) |
| | | this.getDicts('insuranceGaers').then(response => { |
| | | this.getDicts('INSURANCETYPE').then(response => { |
| | | this.insuranceGaersOptions = response.data |
| | | }) |
| | | this.getDicts('applayStatus').then(response => { |
| | |
| | | this.initJob() |
| | | }, |
| | | methods: { |
| | | timelineShow(name) { |
| | | for (const v of this.permissions) { |
| | | if (v === name) { |
| | | return true |
| | | } |
| | | } |
| | | return false |
| | | }, |
| | | importHandleAvatarError() { |
| | | this.$notify.error({ |
| | | title: '错误', |
| | |
| | | }, |
| | | editEmpBase(row) { |
| | | this.isAdd = false |
| | | let certificateList = [] |
| | | if (row.certificateList && typeof row.certificateList === 'string') { |
| | | certificateList = row.certificateList.split(',') |
| | | row.certificateList = certificateList |
| | | } |
| | | this.empBaseInfoForm.empId = row.empId |
| | | this.empBaseInfoForm.customerId = row.customerId |
| | | this.empBaseInfoForm.archivesNumb = row.archivesNumb |
| | |
| | | this.empBaseInfoForm.version = row.version |
| | | this.dialogshowArr[0].show = true |
| | | this.empBaseInfoImageUrl = pages.getEmpBaseInfoImage + row.empId |
| | | this.empBaseInfoForm.insuranceType = row.insuranceType |
| | | }, |
| | | putEmpBase(formName) { |
| | | this.$refs[formName].validate((valid) => { |
| | |
| | | } |
| | | } |
| | | }) |
| | | setTimeout(() => { |
| | | this.$refs[formName].clearValidate() |
| | | }, 1500) |
| | | }, |
| | | selectWorkExperience() { |
| | | this.tableUrl = 'hr/empWorkExperience/list' |
| | |
| | | } |
| | | } |
| | | }) |
| | | setTimeout(() => { |
| | | this.$refs[formName].clearValidate() |
| | | }, 1500) |
| | | }, |
| | | cleanWorkExperience() { |
| | | this.workExperienceForm.empId = '' |
| | |
| | | } |
| | | } |
| | | }) |
| | | setTimeout(() => { |
| | | this.$refs[formName].clearValidate() |
| | | }, 1500) |
| | | }, |
| | | cleanPhysicalExam() { |
| | | this.physicalExamForm.empId = '' |
| | |
| | | } |
| | | } |
| | | }) |
| | | setTimeout(() => { |
| | | this.$refs[formName].clearValidate() |
| | | }, 1500) |
| | | }, |
| | | cleanContractInfo() { |
| | | this.contractInfoForm.empId = '' |
| | |
| | | } |
| | | } |
| | | }) |
| | | setTimeout(() => { |
| | | this.$refs[formName].clearValidate() |
| | | }, 1500) |
| | | }, |
| | | cleanDimissionAttend() { |
| | | this.dimissionAttendForm.empId = '' |
| | |
| | | } |
| | | } |
| | | }) |
| | | setTimeout(() => { |
| | | this.$refs[formName].clearValidate() |
| | | }, 1500) |
| | | }, |
| | | cleanLeaveInfo() { |
| | | this.leaveInfoForm.empId = '' |
| | |
| | | } |
| | | } |
| | | }) |
| | | setTimeout(() => { |
| | | this.$refs[formName].clearValidate() |
| | | }, 1500) |
| | | }, |
| | | cleanResign() { |
| | | this.resignForm.empId = '' |
| | |
| | | } |
| | | } |
| | | }) |
| | | setTimeout(() => { |
| | | this.$refs[formName].clearValidate() |
| | | }, 1500) |
| | | }, |
| | | cleanUnemployment() { |
| | | this.unemploymentForm.empId = '' |
| | |
| | | } |
| | | } |
| | | }) |
| | | setTimeout(() => { |
| | | this.$refs[formName].clearValidate() |
| | | }, 1500) |
| | | }, |
| | | cleanInsurance() { |
| | | this.insuranceForm.empId = '' |
| | |
| | | } |
| | | } |
| | | }) |
| | | setTimeout(() => { |
| | | this.$refs[formName].clearValidate() |
| | | }, 1500) |
| | | }, |
| | | cleanAccidentCases() { |
| | | this.accidentCasesForm.empId = '' |
| | |
| | | } |
| | | } |
| | | }) |
| | | setTimeout(() => { |
| | | this.$refs[formName].clearValidate() |
| | | }, 1500) |
| | | }, |
| | | cleanOccupational() { |
| | | this.occupationalForm.empId = '' |
| | |
| | | } |
| | | } |
| | | }) |
| | | setTimeout(() => { |
| | | this.$refs[formName].clearValidate() |
| | | }, 1500) |
| | | }, |
| | | cleanLaborTrouble() { |
| | | this.laborTroubleForm.empId = '' |
| | |
| | | } |
| | | } |
| | | }) |
| | | setTimeout(() => { |
| | | this.$refs[formName].clearValidate() |
| | | }, 1500) |
| | | }, |
| | | editBadRecord(row) { |
| | | this.isAdd = false |
| | |
| | | } |
| | | } |
| | | }) |
| | | setTimeout(() => { |
| | | this.$refs[formName].clearValidate() |
| | | }, 1500) |
| | | }, |
| | | cleanRemarkInfo() { |
| | | this.remarkInfoForm.empId = '' |
| | |
| | | this[this.inputForName].certificateNumb = data.certificateNumb |
| | | this[this.inputForName].deptId = data.deptId |
| | | this[this.inputForName].deptName = data.deptName |
| | | this[this.inputForName].allDeptName = data.allDeptName |
| | | this[this.inputForName].JobId = data.jobId |
| | | this[this.inputForName].jobName = data.jobName |
| | | this[this.inputForName].sex = data.sex === '1' ? '男' : '女' |