| | |
| | | </el-container> |
| | | </el-container> |
| | | <el-dialog title="新增员工" :visible.sync="dialogShowXzyg" width="50%"> |
| | | <el-form ref="empBaseInfoForm" :model="empBaseInfoForm" :rules="rules" label-position="right" label-width="120px"> |
| | | <el-form ref="empBaseInfoForm" :model="empBaseInfoForm" :rules="empBaseInfoRules" label-position="right" label-width="120px"> |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="档案号"> |
| | | <el-form-item label="档案号" prop="archivesNumb"> |
| | | <el-input v-model="empBaseInfoForm.archivesNumb" /> |
| | | </el-form-item> |
| | | <el-form-item label="员工编号" prop="empNumb"> |
| | |
| | | <el-option label="临时工" value="2" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="民族"> |
| | | <el-form-item label="民族" prop="nation"> |
| | | <el-select v-model="empBaseInfoForm.nation" placeholder="请选择民族"> |
| | | <el-option label="汉族" value="01" /> |
| | | <el-option label="蒙古族" value="02" /> |
| | |
| | | <el-option label="外国民族" value="98" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="婚姻状态"> |
| | | <el-form-item label="婚姻状态" prop="marriage"> |
| | | <el-select v-model="empBaseInfoForm.marriage" placeholder="请选择婚姻状态"> |
| | | <el-option label="未婚" value="1" /> |
| | | <el-option label="已婚" value="2" /> |
| | |
| | | <el-option label="其它" value="9" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="身高(cm)"> |
| | | <el-form-item label="身高(cm)" prop="stature"> |
| | | <el-input v-model="empBaseInfoForm.stature" /> |
| | | </el-form-item> |
| | | <el-form-item label="政治面貌"> |
| | | <el-form-item label="政治面貌" prop="politics"> |
| | | <el-select v-model="empBaseInfoForm.politics" placeholder="请选择政治面貌"> |
| | | <el-option label="中共党员" value="01" /> |
| | | <el-option label="预备党员" value="02" /> |
| | |
| | | <el-option label="群众" value="13" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="最高学历"> |
| | | <el-form-item label="最高学历" prop="education"> |
| | | <el-select v-model="empBaseInfoForm.education" placeholder="请选择最高学历"> |
| | | <el-option label="博士" value="10" /> |
| | | <el-option label="硕士" value="11" /> |
| | |
| | | <el-option label="无学历" value="91" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="籍贯"> |
| | | <el-form-item label="籍贯" prop="nativePlaceName"> |
| | | <el-autocomplete |
| | | v-model="empBaseInfoForm.nativePlaceName" |
| | | class="inline-input" |
| | | :fetch-suggestions="querySearch" |
| | | placeholder="请输入籍贯" |
| | | placeholder="请选择籍贯" |
| | | @select="placeNameSelect" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="现住址"> |
| | | <el-form-item label="现住址" prop="currentAddress"> |
| | | <el-input v-model="empBaseInfoForm.currentAddress" /> |
| | | </el-form-item> |
| | | <el-form-item label="电话号码"> |
| | | <el-form-item label="电话号码" prop="telePhone"> |
| | | <el-input v-model="empBaseInfoForm.telePhone" /> |
| | | </el-form-item> |
| | | <el-form-item label="招聘介绍人"> |
| | | <el-form-item label="招聘介绍人" prop="introducer"> |
| | | <el-input v-model="empBaseInfoForm.introducer" /> |
| | | </el-form-item> |
| | | <el-form-item label="银行名称"> |
| | | <el-form-item label="银行名称" prop="bankName"> |
| | | <el-input v-model="empBaseInfoForm.bankName" /> |
| | | </el-form-item> |
| | | <el-form-item label="保险类型"> |
| | | <el-form-item label="保险类型" prop="insuranceType"> |
| | | <el-select v-model="empBaseInfoForm.insuranceType" placeholder="请选择保险类型"> |
| | | <el-option label="(深户)五险一档" value="1" /> |
| | | <el-option label="(非深户)五险一档" value="2" /> |
| | |
| | | <el-option label="(非深户)四险一档" value="5" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="家庭成员及关系"> |
| | | <el-form-item label="家庭成员及关系" prop="family"> |
| | | <el-input v-model="empBaseInfoForm.family" /> |
| | | </el-form-item> |
| | | <el-form-item label="紧急联系电话"> |
| | | <el-form-item label="紧急联系电话" prop="urgencyPhone"> |
| | | <el-input v-model="empBaseInfoForm.urgencyPhone" /> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | <el-option label="女" value="2" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="身份证有效期"> |
| | | <el-form-item label="身份证有效期" prop="certificateValidity"> |
| | | <el-input v-model="empBaseInfoForm.certificateValidity" /> |
| | | </el-form-item> |
| | | <el-form-item label="年龄"> |
| | | <el-form-item label="年龄" prop="age"> |
| | | <el-input v-model="empBaseInfoForm.age" /> |
| | | </el-form-item> |
| | | <el-form-item label="出生日期"> |
| | | <el-form-item label="出生日期" prop="birthdate"> |
| | | <el-date-picker |
| | | v-model="empBaseInfoForm.birthdate" |
| | | type="date" |
| | |
| | | placeholder="选择日期" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="入职日期"> |
| | | <el-form-item label="入职日期" prop="entryDate"> |
| | | <el-date-picker |
| | | v-model="empBaseInfoForm.entryDate" |
| | | type="date" |
| | |
| | | placeholder="选择日期" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="入司工龄"> |
| | | <el-form-item label="入司工龄" prop="seniority"> |
| | | <el-input v-model="empBaseInfoForm.seniority" /> |
| | | </el-form-item> |
| | | <el-form-item label="户籍地址"> |
| | | <el-form-item label="户籍地址" prop="censusAddress"> |
| | | <el-input v-model="empBaseInfoForm.censusAddress" /> |
| | | </el-form-item> |
| | | <el-form-item label="保安员证号"> |
| | | <el-form-item label="保安员证号" prop="guardNumb"> |
| | | <el-input v-model="empBaseInfoForm.guardNumb" /> |
| | | </el-form-item> |
| | | <el-form-item label="保安员回执"> |
| | | <el-form-item label="保安员回执" prop="returnReceipt"> |
| | | <el-input v-model="empBaseInfoForm.returnReceipt" /> |
| | | </el-form-item> |
| | | <el-form-item label="档案情况"> |
| | | <el-form-item label="档案情况" prop="archivesStatus"> |
| | | <el-select v-model="empBaseInfoForm.archivesStatus" placeholder="请选择档案情况"> |
| | | <el-option label="未移交" value="0" /> |
| | | <el-option label="已移交" value="1" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="银行账号"> |
| | | <el-form-item label="银行账号" prop="bankNumb"> |
| | | <el-input v-model="empBaseInfoForm.bankNumb" /> |
| | | </el-form-item> |
| | | <el-form-item label="社保电脑号"> |
| | | <el-form-item label="社保电脑号" prop="socialNumb"> |
| | | <el-input v-model="empBaseInfoForm.socialNumb" /> |
| | | </el-form-item> |
| | | <el-form-item label="员工手册"> |
| | |
| | | <el-option label="已发" value="1" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="工作证"> |
| | | <el-form-item label="工作证" prop="empCardStatus"> |
| | | <el-select v-model="empBaseInfoForm.empCardStatus" placeholder="请选择工作证"> |
| | | <el-option label="未发" value="0" /> |
| | | <el-option label="已发" value="1" /> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="24"> |
| | | <el-form-item label="相关证件"> |
| | | <el-form-item label="相关证件" prop="certificateList"> |
| | | <el-select v-model="empBaseInfoForm.certificateList" placeholder="请选择相关证件"> |
| | | <el-option label="高中毕业证" value="1" /> |
| | | <el-option label="专科毕业证" value="2" /> |
| | |
| | | </el-container> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <el-dialog title="员工调岗" :visible.sync="dialogShowYgdg" width="50%"> |
| | | <el-form :model="ygdgForm" label-position="right" label-width="120px"> |
| | | <el-row> |
| | |
| | | <el-button type="primary" @click="showGbda(2)">确 定</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <el-dialog title="导出员工 请勾选需要导出的字段" :visible.sync="dialogShowDcyg" width="40%"> |
| | | <table id="dcygTable" width="100%"> |
| | | <tr> |
| | |
| | | import Pagination from '@/components/Pagination' |
| | | import Treeselect from '@riophae/vue-treeselect' |
| | | import '@riophae/vue-treeselect/dist/vue-treeselect.css' |
| | | import { toCardGetUserInfo } from '@/utils/myUtil' |
| | | export default { |
| | | components: { |
| | | Pagination, Treeselect |
| | |
| | | gbdaForm: {}, |
| | | depts: [], |
| | | fileList: [], |
| | | rules: { |
| | | archivesNumb: [{ required: true, message: '请输入档案号', trigger: 'blur' }], |
| | | empBaseInfoRules: { |
| | | archivesNumb: [{ required: true, message: '请输入档案号', trigger: 'blur' }, { |
| | | max: 20, |
| | | message: this.$t('rules.noMoreThan20'), |
| | | trigger: 'blur' |
| | | }], |
| | | empName: [{ required: true, message: '请输入员工姓名', trigger: 'blur' }, |
| | | { min: 2, max: 50, message: '长度在 2 到 50 个字符', trigger: 'blur' }], |
| | | { min: 2, max: 50, message: this.$t('rules.noMoreThan50'), trigger: 'blur' }], |
| | | empNumb: [{ required: true, message: '请输入员工编号', trigger: 'blur' }, |
| | | { min: 2, max: 50, message: '长度在 2 到 50 个字符', trigger: 'blur' }], |
| | | { min: 2, max: 20, message: this.$t('rules.noMoreThan20'), trigger: 'blur' }], |
| | | deptName: [ |
| | | { required: true, message: '请选择护卫点', trigger: 'input' } |
| | | ], |
| | |
| | | seniority: [{ required: true, message: '请输入入司工龄', trigger: 'blur' }], |
| | | archivesStatus: [{ required: true, message: '请选择档案情况', trigger: 'change' }], |
| | | bankNumb: [{ required: true, message: '请输入银行账号', trigger: 'blur' }], |
| | | empType: [{ required: true, message: '请选择员工类型', trigger: 'change' }], |
| | | workUnit: [{ required: true, message: '请输入工作单位', trigger: 'blur' }], |
| | | beginDate: [{ required: true, message: '请选择开始日期', trigger: 'change' }], |
| | | endDate: [{ required: true, message: '请选择结束日期', trigger: 'change' }], |
| | | hospital: [{ required: true, message: '请输入体检医院', trigger: 'blur' }], |
| | | physicalExamDate: [{ required: true, message: '请选择体检日期', trigger: 'change' }], |
| | | conclusion: [{ required: true, message: '请输入体检结论', trigger: 'blur' }], |
| | | signingDate: [{ required: true, message: '请选择合同签订日期', trigger: 'change' }], |
| | | contractStatus: [{ required: true, message: '请选择合同状态', trigger: 'change' }], |
| | | attendMonth: [{ required: true, message: '请选择出勤月份', trigger: 'change' }], |
| | | deduct: [{ required: true, message: '请输入代扣填款项', trigger: 'blur' }], |
| | | attendDays: [{ required: true, message: '请输入出勤天数', trigger: 'blur' }], |
| | | beginTime: [{ required: true, message: '请选择请假开始时间', trigger: 'change' }], |
| | | leaveType: [{ required: true, message: '请选择请假类型', trigger: 'change' }], |
| | | reporter: [{ required: true, message: '请输入报备人', trigger: 'blur' }], |
| | | endTime: [{ required: true, message: '请选择请假结束时间', trigger: 'change' }], |
| | | applayDate: [{ required: true, message: '请选择申请日期', trigger: 'change' }], |
| | | reason: [{ required: true, message: '请输入辞职事由', trigger: 'blur' }], |
| | | applayReason: [{ required: true, message: '请输入申报事由', trigger: 'blur' }], |
| | | insuranceGaers: [{ required: true, message: '请选择社保档位', trigger: 'change' }], |
| | | applayStatus: [{ required: true, message: '请选择申请状态', trigger: 'change' }], |
| | | proposer: [{ required: true, message: '请输入申请人', trigger: 'blur' }], |
| | | injuredTime: [{ required: true, message: '请选择受伤时间', trigger: 'blur' }], |
| | | injuredPart: [{ required: true, message: '请输入受伤部位', trigger: 'blur' }], |
| | | injuredDescribe: [{ required: true, message: '请输入受伤经过描述', trigger: 'blur' }], |
| | | hospitalName: [{ required: true, message: '请输入就诊医院', trigger: 'blur' }], |
| | | hospitalizatioFlag: [{ required: true, message: '请选择是否住院', trigger: 'blur' }], |
| | | innsureFee: [{ required: true, message: '请输入保险赔付费用', trigger: 'blur' }], |
| | | settleDate: [{ required: true, message: '请选择案结时间', trigger: 'change' }], |
| | | expensesFee: [{ required: true, message: '请输入医疗总费用', trigger: 'blur' }], |
| | | settleStatus: [{ required: true, message: '请选择结案状态', trigger: 'change' }], |
| | | injuredAddress: [{ required: true, message: '请输入受伤地点', trigger: 'blur' }], |
| | | compensated: [{ required: true, message: '请输入已赔付医药费用', trigger: 'blur' }], |
| | | companyCompensation: [{ required: true, message: '请输入公司赔偿总费用', trigger: 'blur' }], |
| | | arbitrationDate: [{ required: true, message: '请选择仲裁日期', trigger: 'change' }], |
| | | arbitrationReason: [{ required: true, message: '请输入仲裁事由', trigger: 'blur' }], |
| | | arbitrationStatus: [{ required: true, message: '请选择结案状态', trigger: 'change' }], |
| | | badDate: [{ required: true, message: '请选择不良记录日期', trigger: 'change' }], |
| | | badContent: [{ required: true, message: '请输入不良记录描述', trigger: 'blur' }], |
| | | remarkDate: [{ required: true, message: '请选择备注日期', trigger: 'change' }], |
| | | remarkContent: [{ required: true, message: '请输入备注内容', trigger: 'blur' }] |
| | | empType: [{ required: true, message: '请选择员工类型', trigger: 'change' }] |
| | | }, |
| | | restaurants: [{ value: '北京市', code: '110000' }, |
| | | { value: '天津市', code: '120000' }, |
| | | { value: '河北省', code: '130000' }, |
| | | { value: '山西省', code: '140000' }, |
| | | { value: '内蒙古自治区', code: '150000' }, |
| | | { value: '辽宁省', code: '210000' }, |
| | | { value: '吉林省', code: '220000' }, |
| | | { value: '黑龙江省', code: '230000' }, |
| | | { value: '上海市', code: '310000' }, |
| | | { value: '江苏省', code: '320000' }, |
| | | { value: '浙江省', code: '330000' }, |
| | | { value: '安徽省', code: '340000' }, |
| | | { value: '福建省', code: '350000' }, |
| | | { value: '江西省', code: '360000' }, |
| | | { value: '山东省', code: '370000' }, |
| | | { value: '河南省', code: '410000' }, |
| | | { value: '湖北省', code: '420000' }, |
| | | { value: '湖南省', code: '430000' }, |
| | | { value: '广东省', code: '440000' }, |
| | | { value: '广西壮族自治区', code: '450000' }, |
| | | { value: '海南省', code: '460000' }, |
| | | { value: '重庆市', code: '500000' }, |
| | | { value: '四川省', code: '510000' }, |
| | | { value: '贵州省', code: '520000' }, |
| | | { value: '云南省', code: '530000' }, |
| | | { value: '西藏自治区', code: '540000' }, |
| | | { value: '陕西省', code: '610000' }, |
| | | { value: '甘肃省', code: '620000' }, |
| | | { value: '青海省', code: '630000' }, |
| | | { value: '宁夏回族自治区', code: '640000' }, |
| | | { value: '新疆维吾尔自治区', code: '650000' }, |
| | | { value: '台湾省', code: '710000' }, |
| | | { value: '香港特别行政区', code: '810000' }, |
| | | { value: '澳门特别行政区', code: '820000' }], |
| | | restaurJob: [{ value: '总经理', code: '2942725270000031' }, |
| | | { value: '总秘', code: '2942725270000032' }, |
| | | { value: '总助', code: '2942725270000033' }, |
| | |
| | | }, |
| | | showXzyg() { |
| | | if (!this.dialogShowXzyg) { |
| | | this.isAdd = true |
| | | this.dialogShowXzyg = true |
| | | } else { |
| | | this.isAdd = false |
| | | this.dialogShowXzyg = false |
| | | } |
| | | }, |
| | |
| | | break |
| | | } |
| | | }, |
| | | querySearch(queryString, cb) { |
| | | var restaurants = this.restaurants |
| | | var results = queryString ? restaurants.filter(this.createFilter(queryString)) : restaurants |
| | | // 调用 callback 返回建议列表的数据 |
| | | cb(results) |
| | | }, |
| | | createFilter(queryString) { |
| | | return (restaurant) => { |
| | | return (restaurant.value.toLowerCase().indexOf(queryString.toLowerCase()) === 0) |
| | | } |
| | | }, |
| | | placeNameSelect(item) { |
| | | this.empBaseInfoForm.nativePlaceName = item.value |
| | | this.empBaseInfoForm.nativePlace = item.code |
| | | }, |
| | | querySearchJob(queryString, cb) { |
| | | const restaurants = this.restaurJob |
| | | const results = queryString ? restaurants.filter(this.createFilter(queryString)) : restaurants |
| | |
| | | this.ygdgForm.jobName = item.value |
| | | this.ygdgForm.JobId = item.code |
| | | }, |
| | | generateUserInfo(index, val) { |
| | | var userinfo = toCardGetUserInfo(val) |
| | | if (userinfo === null) { |
| | | return |
| | | } |
| | | this.empBaseInfoForm.age = userinfo.age |
| | | this.empBaseInfoForm.birthdate = userinfo.birth |
| | | this.empBaseInfoForm.sex = userinfo.sex |
| | | }, |
| | | showDryg(operate) { |
| | | switch (operate) { |
| | | case 0: |