From 755cd8a5a7f5be8e3e6d119fd68e24a1be590e0a Mon Sep 17 00:00:00 2001
From: luoyb <412940104@qq.com>
Date: 星期五, 05 二月 2021 15:29:24 +0800
Subject: [PATCH] feat(信息录入): 提交和翻页

---
 src/views/user/Informationinput.vue | 1902 +++++++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 1,260 insertions(+), 642 deletions(-)

diff --git a/src/views/user/Informationinput.vue b/src/views/user/Informationinput.vue
index 779597e..6217a20 100644
--- a/src/views/user/Informationinput.vue
+++ b/src/views/user/Informationinput.vue
@@ -4,46 +4,46 @@
       <el-aside width="200px">
         <el-timeline>
           <el-timeline-item @click.native="isShow(showArr[0].show, 0)">
-            <span :class="thisShowIndex==0?'selectedTimeline':''">基本信息</span>
+            <span :class="thisShowIndex===0?'selectedTimeline':''">基本信息</span>
           </el-timeline-item>
           <el-timeline-item @click.native="isShow(showArr[1].show, 1)">
-            <span :class="thisShowIndex==1?'selectedTimeline':''">工作经历</span>
+            <span :class="thisShowIndex===1?'selectedTimeline':''">工作经历</span>
           </el-timeline-item>
           <el-timeline-item @click.native="isShow(showArr[2].show, 2)">
-            <span :class="thisShowIndex==2?'selectedTimeline':''">体检信息</span>
+            <span :class="thisShowIndex===2?'selectedTimeline':''">体检信息</span>
           </el-timeline-item>
           <el-timeline-item @click.native="isShow(showArr[3].show, 3)">
-            <span :class="thisShowIndex==3?'selectedTimeline':''">合同信息</span>
+            <span :class="thisShowIndex===3?'selectedTimeline':''">合同信息</span>
           </el-timeline-item>
           <el-timeline-item @click.native="isShow(showArr[4].show, 4)">
-            <span :class="thisShowIndex==4?'selectedTimeline':''">考勤情况</span>
+            <span :class="thisShowIndex===4?'selectedTimeline':''">考勤情况</span>
           </el-timeline-item>
           <el-timeline-item @click.native="isShow(showArr[5].show, 5)">
-            <span :class="thisShowIndex==5?'selectedTimeline':''">请假记录</span>
+            <span :class="thisShowIndex===5?'selectedTimeline':''">请假记录</span>
           </el-timeline-item>
           <el-timeline-item @click.native="isShow(showArr[6].show, 6)">
-            <span :class="thisShowIndex==6?'selectedTimeline':''">辞职申请</span>
+            <span :class="thisShowIndex===6?'selectedTimeline':''">辞职申请</span>
           </el-timeline-item>
           <el-timeline-item @click.native="isShow(showArr[7].show, 7)">
-            <span :class="thisShowIndex==7?'selectedTimeline':''">失业金领取</span>
+            <span :class="thisShowIndex===7?'selectedTimeline':''">失业金领取</span>
           </el-timeline-item>
           <el-timeline-item @click.native="isShow(showArr[8].show, 8)">
-            <span :class="thisShowIndex==8?'selectedTimeline':''">社保申请</span>
+            <span :class="thisShowIndex===8?'selectedTimeline':''">社保申请</span>
           </el-timeline-item>
           <el-timeline-item @click.native="isShow(showArr[9].show, 9)">
-            <span :class="thisShowIndex==9?'selectedTimeline':''">意外险案件</span>
+            <span :class="thisShowIndex===9?'selectedTimeline':''">意外险案件</span>
           </el-timeline-item>
           <el-timeline-item @click.native="isShow(showArr[10].show, 10)">
-            <span :class="thisShowIndex==10?'selectedTimeline':''">工伤案件</span>
+            <span :class="thisShowIndex===10?'selectedTimeline':''">工伤案件</span>
           </el-timeline-item>
           <el-timeline-item @click.native="isShow(showArr[11].show, 11)">
-            <span :class="thisShowIndex==11?'selectedTimeline':''">劳资案件</span>
+            <span :class="thisShowIndex===11?'selectedTimeline':''">劳资案件</span>
           </el-timeline-item>
           <el-timeline-item @click.native="isShow(showArr[12].show, 12)">
-            <span :class="thisShowIndex==12?'selectedTimeline':''">不良记录</span>
+            <span :class="thisShowIndex===12?'selectedTimeline':''">不良记录</span>
           </el-timeline-item>
           <el-timeline-item @click.native="isShow(showArr[13].show, 13)">
-            <span :class="thisShowIndex==13?'selectedTimeline':''">备注信息</span>
+            <span :class="thisShowIndex===13?'selectedTimeline':''">备注信息</span>
           </el-timeline-item>
         </el-timeline>
       </el-aside>
@@ -72,23 +72,24 @@
               </el-button>
             </template>
           </el-table-column>
-          <el-table-column prop="empNumb" label="员工编号" width="180" />
-          <el-table-column prop="empName" label="姓名" width="180" />
-          <el-table-column prop="deptName" label="护卫点" />
-          <el-table-column prop="jobName" label="岗位" width="180" />
-          <el-table-column prop="empType" label="员工类别" width="180" />
-          <el-table-column prop="sex" label="性别" />
-          <el-table-column prop="nation" label="民族" />
+          <el-table-column prop="" label="照片" width="60" />
+          <el-table-column prop="empNumb" label="员工编号" width="100" />
+          <el-table-column prop="empName" label="姓名" width="100" />
+          <el-table-column prop="deptName" label="护卫点" width="100" />
+          <el-table-column prop="jobName" label="岗位" width="100" />
+          <el-table-column prop="empTypeName" label="员工类别" width="100" />
+          <el-table-column prop="sexName" label="性别" width="50" />
+          <el-table-column prop="nationName" label="民族" width="100" />
           <el-table-column prop="certificateNumb" label="身份证号码" width="180" />
-          <el-table-column prop="marriage" label="婚姻状况" />
-          <el-table-column prop="politics" label="政治面貌" width="180" />
-          <el-table-column prop="education" label="最高学历" width="180" />
-          <el-table-column prop="entryDate" label="入职日期" width="180" />
-          <el-table-column prop="insuranceType" label="保险类型" width="180" />
-          <el-table-column prop="socialNumb" label="社保电脑号" width="180" />
-          <el-table-column prop="guardNumb" label="保安员证号" width="180" />
-          <el-table-column prop="archivesNumber" label="档案编号" width="180" />
-          <el-table-column prop="archivesStatus" label="档案情况" width="180" />
+          <el-table-column prop="marriageName" label="婚姻状况" width="80" />
+          <el-table-column prop="politicsName" label="政治面貌" width="100" />
+          <el-table-column prop="educationName" label="最高学历" width="100" />
+          <el-table-column prop="entryDate" label="入职日期" width="100" />
+          <el-table-column prop="insuranceType" label="保险类型" width="100" />
+          <el-table-column prop="socialNumb" label="社保电脑号" width="150" />
+          <el-table-column prop="guardNumb" label="保安员证号" width="100" />
+          <el-table-column prop="archivesNumb" label="档案编号" width="100" />
+          <el-table-column prop="archivesStatusName" label="档案情况" width="100" />
         </el-table>
         <el-table
           v-show="showArr[1].show"
@@ -175,13 +176,20 @@
           <el-table-column prop="contractStatus" label="合同状态" width="180" />
           <el-table-column prop="transactor" label="合同办理人" width="180" />
         </el-table>
-        <el-table v-show="showArr[4].show" ref="dimissionAttendTable" :data="dimissionAttendData" style="width: 100%;height: 70%;">
+        <el-table
+          v-show="showArr[4].show"
+          ref="dimissionAttendTable"
+          :data="dimissionAttendData"
+          style="width: 100%;height: 70%;"
+        >
           <el-table-column type="selection" width="55" />
           <el-table-column fixed="left" label="操作" width="100">
-            <template slot-scope="scope"><el-button type="text" size="small" @click="editDimissionAttend(scope.row)">编辑</el-button></template>
+            <template slot-scope="scope">
+              <el-button type="text" size="small" @click="editDimissionAttend(scope.row)">编辑</el-button>
+            </template>
           </el-table-column>
           <el-table-column prop="empNumb" label="员工编号" width="180" />
-          <el-table-column prop="deptName" label="部门名称" width="180" />
+          <el-table-column prop="deptName" label="护卫点" width="180" />
           <el-table-column prop="jobName" label="岗位名称" width="180" />
           <el-table-column prop="empName" label="员工姓名" width="180" />
           <el-table-column prop="certificateNumb" label="证件号码" width="180" />
@@ -197,10 +205,12 @@
         <el-table v-show="showArr[5].show" ref="leaveInfoTable" :data="leaveInfoData" style="width: 100%;height: 70%;">
           <el-table-column type="selection" width="55" />
           <el-table-column fixed="left" label="操作" width="100">
-            <template slot-scope="scope"><el-button type="text" size="small" @click="editLeaveInfo(scope.row)">编辑</el-button></template>
+            <template slot-scope="scope">
+              <el-button type="text" size="small" @click="editLeaveInfo(scope.row)">编辑</el-button>
+            </template>
           </el-table-column>
           <el-table-column prop="empNumb" label="员工编号" width="180" />
-          <el-table-column prop="deptName" label="部门名称" width="180" />
+          <el-table-column prop="deptName" label="护卫点" width="180" />
           <el-table-column prop="jobName" label="岗位名称" width="180" />
           <el-table-column prop="empName" label="员工姓名" width="180" />
           <el-table-column prop="certificateNumb" label="证件号码" width="180" />
@@ -215,7 +225,9 @@
         <el-table v-show="showArr[6].show" ref="resignTable" :data="resignData" style="width: 100%;height: 70%;">
           <el-table-column type="selection" width="55" />
           <el-table-column fixed="left" label="操作" width="100">
-            <template slot-scope="scope"><el-button type="text" size="small" @click="editResign(scope.row)">编辑</el-button></template>
+            <template slot-scope="scope">
+              <el-button type="text" size="small" @click="editResign(scope.row)">编辑</el-button>
+            </template>
           </el-table-column>
           <el-table-column prop="deptName" label="护卫点" width="180" />
           <el-table-column prop="jobName" label="岗位名" width="180" />
@@ -227,10 +239,17 @@
           <el-table-column prop="reporter" label="汇报人" width="180" />
           <el-table-column prop="remark" label="备注" width="180" />
         </el-table>
-        <el-table v-show="showArr[7].show" ref="unemploymentTable" :data="unemploymentData" style="width: 100%;height: 70%;">
+        <el-table
+          v-show="showArr[7].show"
+          ref="unemploymentTable"
+          :data="unemploymentData"
+          style="width: 100%;height: 70%;"
+        >
           <el-table-column type="selection" width="55" />
           <el-table-column fixed="left" label="操作" width="100">
-            <template slot-scope="scope"><el-button type="text" size="small" @click="editUnemployment(scope.row)">编辑</el-button></template>
+            <template slot-scope="scope">
+              <el-button type="text" size="small" @click="editUnemployment(scope.row)">编辑</el-button>
+            </template>
           </el-table-column>
           <el-table-column prop="empNumb" label="员工编号" width="180" />
           <el-table-column prop="deptName" label="护卫点" width="180" />
@@ -246,7 +265,9 @@
         <el-table v-show="showArr[8].show" ref="insuranceTable" :data="insuranceData" style="width: 100%;height: 70%;">
           <el-table-column type="selection" width="55" />
           <el-table-column fixed="left" label="操作" width="100">
-            <template slot-scope="scope"><el-button type="text" size="small" @click="editInsurance(scope.row)">编辑</el-button></template>
+            <template slot-scope="scope">
+              <el-button type="text" size="small" @click="editInsurance(scope.row)">编辑</el-button>
+            </template>
           </el-table-column>
           <el-table-column prop="empNumb" label="员工编号" width="180" />
           <el-table-column prop="deptName" label="护卫点" width="180" />
@@ -261,10 +282,17 @@
           <el-table-column prop="auditor" label="审核人" width="180" />
           <el-table-column prop="remark" label="备注" width="280" />
         </el-table>
-        <el-table v-show="showArr[9].show" ref="accidentCasesTable" :data="accidentCasesData" style="width: 100%;height: 70%;">
+        <el-table
+          v-show="showArr[9].show"
+          ref="accidentCasesTable"
+          :data="accidentCasesData"
+          style="width: 100%;height: 70%;"
+        >
           <el-table-column type="selection" width="55" />
           <el-table-column fixed="left" label="操作" width="100">
-            <template slot-scope="scope"><el-button type="text" size="small" @click="editAccidentCases(scope.row)">编辑</el-button></template>
+            <template slot-scope="scope">
+              <el-button type="text" size="small" @click="editAccidentCases(scope.row)">编辑</el-button>
+            </template>
           </el-table-column>
           <el-table-column prop="empNumb" label="员工编号" width="180" />
           <el-table-column prop="deptName" label="护卫点" width="180" />
@@ -286,10 +314,17 @@
           <el-table-column prop="expensesFee" label="医疗总费用" width="180" />
           <el-table-column prop="innsureFee" label="保险赔付费用" width="180" />
         </el-table>
-        <el-table v-show="showArr[10].show" ref="occupationalTable" :data="occupationalData" style="width: 100%;height: 70%;">
+        <el-table
+          v-show="showArr[10].show"
+          ref="occupationalTable"
+          :data="occupationalData"
+          style="width: 100%;height: 70%;"
+        >
           <el-table-column type="selection" width="55" />
           <el-table-column fixed="left" label="操作" width="100">
-            <template slot-scope="scope"><el-button type="text" size="small" @click="editOccupational(scope.row)">编辑</el-button></template>
+            <template slot-scope="scope">
+              <el-button type="text" size="small" @click="editOccupational(scope.row)">编辑</el-button>
+            </template>
           </el-table-column>
           <el-table-column prop="empNumb" label="员工编号" width="180" />
           <el-table-column prop="deptName" label="护卫点" width="180" />
@@ -311,10 +346,17 @@
           <el-table-column prop="expensesFee" label="医疗总费用" width="180" />
           <el-table-column prop="compensated" label="已赔付医药费用" width="180" />
         </el-table>
-        <el-table v-show="showArr[11].show" ref="occupationalTable" :data="laborTroubleData" style="width: 100%;height: 70%;">
+        <el-table
+          v-show="showArr[11].show"
+          ref="laborTroubleTable"
+          :data="laborTroubleData"
+          style="width: 100%;height: 70%;"
+        >
           <el-table-column type="selection" width="55" />
           <el-table-column fixed="left" label="操作" width="100">
-            <template slot-scope="scope"><el-button type="text" size="small" @click="editLaborTrouble(scope.row)">编辑</el-button></template>
+            <template slot-scope="scope">
+              <el-button type="text" size="small" @click="editLaborTrouble(scope.row)">编辑</el-button>
+            </template>
           </el-table-column>
           <el-table-column prop="empNumb" label="员工编号" width="180" />
           <el-table-column prop="deptName" label="护卫点" width="180" />
@@ -358,10 +400,17 @@
           <el-table-column prop="reporter" label="汇报人" width="180" />
           <el-table-column prop="remark" label="备注" width="180" />
         </el-table>
-        <el-table v-show="showArr[13].show" ref="remarkInfoTable" :data="remarkInfoData" style="width: 100%;height: 70%;">
+        <el-table
+          v-show="showArr[13].show"
+          ref="remarkInfoTable"
+          :data="remarkInfoData"
+          style="width: 100%;height: 70%;"
+        >
           <el-table-column type="selection" width="55" />
           <el-table-column fixed="left" label="操作" width="100">
-            <template slot-scope="scope"><el-button type="text" size="small" @click="editRemarkInfo(scope.row)">编辑</el-button></template>
+            <template slot-scope="scope">
+              <el-button type="text" size="small" @click="editRemarkInfo(scope.row)">编辑</el-button>
+            </template>
           </el-table-column>
           <el-table-column prop="empNumb" label="员工编号" width="180" />
           <el-table-column prop="deptName" label="护卫点" width="180" />
@@ -371,38 +420,44 @@
           <el-table-column prop="remarkDate" label="备注日期" width="180" />
           <el-table-column prop="remarkContent" label="备注信息" width="400" />
         </el-table>
+        <pagination
+          v-show="total>0"
+          :total="total"
+          :page.sync="pagination.num"
+          :limit.sync="pagination.size"
+          @pagination="search"
+        />
         <el-col :span="24">
-          <div style="margin: 0px auto; width: 250px;margin-top: 20px;">
-            <el-button class="nomalBtn">取消</el-button>
-            <el-button class="nomalBtn">暂存</el-button>
-            <el-button class="commonBtn">提交</el-button>
+          <div style="width: 250px;margin: 20px auto 0;">
+            <el-button class="nomalBtn" @click="deleteFrom()">取消</el-button>
+            <el-button class="commonBtn" @click="submitTo()">提交</el-button>
           </div>
         </el-col>
       </el-main>
     </el-container>
     <el-dialog title="基本信息" :visible.sync="dialogshowArr[0].show" width="50%">
-      <el-form :model="empBaseInfoForm" label-position="right" label-width="120px">
+      <el-form ref="empBaseInfoForm" :model="empBaseInfoForm" :rules="rules" label-position="right" label-width="120px">
         <el-row>
           <el-col :span="12">
             <el-form-item label="档案号">
               <el-input v-model="empBaseInfoForm.archivesNumb" />
             </el-form-item>
-            <el-form-item label="员工编号">
+            <el-form-item label="员工编号" prop="empNumb">
               <el-input v-model="empBaseInfoForm.empNumb" />
             </el-form-item>
-            <el-form-item label="性别" prop="region">
-              <el-select v-model="empBaseInfoForm.sex" placeholder="请选择性别">
-                <el-option label="男" value="1" />
-                <el-option label="女" value="2" />
-              </el-select>
+            <el-form-item label="身份证号码">
+              <el-input
+                v-model="empBaseInfoForm.certificateNumb"
+                @input="generateUserInfo(0,empBaseInfoForm.certificateNumb)"
+              />
             </el-form-item>
-            <el-form-item label="员工类型" prop="region">
+            <el-form-item label="员工类别" prop="empType">
               <el-select v-model="empBaseInfoForm.empType" placeholder="请选择员工类型">
                 <el-option label="正式工" value="1" />
                 <el-option label="临时工" value="2" />
               </el-select>
             </el-form-item>
-            <el-form-item label="民族" prop="region">
+            <el-form-item label="民族">
               <el-select v-model="empBaseInfoForm.nation" placeholder="请选择民族">
                 <el-option label="汉族" value="01" />
                 <el-option label="蒙古族" value="02" />
@@ -464,7 +519,7 @@
                 <el-option label="外国民族" value="98" />
               </el-select>
             </el-form-item>
-            <el-form-item label="婚姻状态" prop="region">
+            <el-form-item label="婚姻状态">
               <el-select v-model="empBaseInfoForm.marriage" placeholder="请选择婚姻状态">
                 <el-option label="未婚" value="1" />
                 <el-option label="已婚" value="2" />
@@ -477,7 +532,7 @@
             <el-form-item label="身高(cm)">
               <el-input v-model="empBaseInfoForm.stature" />
             </el-form-item>
-            <el-form-item label="政治面貌" prop="region">
+            <el-form-item label="政治面貌">
               <el-select v-model="empBaseInfoForm.politics" placeholder="请选择政治面貌">
                 <el-option label="中共党员" value="01" />
                 <el-option label="预备党员" value="02" />
@@ -494,7 +549,7 @@
                 <el-option label="群众" value="13" />
               </el-select>
             </el-form-item>
-            <el-form-item label="最高学历" prop="region">
+            <el-form-item label="最高学历">
               <el-select v-model="empBaseInfoForm.education" placeholder="请选择最高学历">
                 <el-option label="博士" value="10" />
                 <el-option label="硕士" value="11" />
@@ -508,43 +563,14 @@
                 <el-option label="无学历" value="91" />
               </el-select>
             </el-form-item>
-            <el-form-item label="籍贯" prop="region">
-              <el-select v-model="empBaseInfoForm.nativePlace" placeholder="请选择籍贯">
-                <el-option label="北京市" value="110000" />
-                <el-option label="天津市" value="120000" />
-                <el-option label="河北省" value="130000" />
-                <el-option label="山西省" value="140000" />
-                <el-option label="内蒙古自治区" value="150000" />
-                <el-option label="辽宁省" value="210000" />
-                <el-option label="吉林省" value="220000" />
-                <el-option label="黑龙江省" value="230000" />
-                <el-option label="上海市" value="310000" />
-                <el-option label="江苏省" value="320000" />
-                <el-option label="浙江省" value="330000" />
-                <el-option label="安徽省" value="340000" />
-                <el-option label="福建省" value="350000" />
-                <el-option label="江西省" value="360000" />
-                <el-option label="山东省" value="370000" />
-                <el-option label="河南省" value="410000" />
-                <el-option label="湖北省" value="420000" />
-                <el-option label="湖南省" value="430000" />
-                <el-option label="广东省" value="440000" />
-                <el-option label="广西壮族自治区" value="450000" />
-                <el-option label="海南省" value="460000" />
-                <el-option label="重庆市" value="500000" />
-                <el-option label="四川省" value="510000" />
-                <el-option label="贵州省" value="520000" />
-                <el-option label="云南省" value="530000" />
-                <el-option label="西藏自治区" value="540000" />
-                <el-option label="陕西省" value="610000" />
-                <el-option label="甘肃省" value="620000" />
-                <el-option label="青海省" value="630000" />
-                <el-option label="宁夏回族自治区" value="640000" />
-                <el-option label="新疆维吾尔自治区" value="650000" />
-                <el-option label="台湾省" value="710000" />
-                <el-option label="香港特别行政区" value="810000" />
-                <el-option label="澳门特别行政区" value="820000" />
-              </el-select>
+            <el-form-item label="籍贯">
+              <el-autocomplete
+                v-model="empBaseInfoForm.nativePlaceName"
+                class="inline-input"
+                :fetch-suggestions="querySearch"
+                placeholder="请输入籍贯"
+                @select="placeNameSelect"
+              />
             </el-form-item>
             <el-form-item label="现住址">
               <el-input v-model="empBaseInfoForm.currentAddress" />
@@ -558,10 +584,13 @@
             <el-form-item label="银行名称">
               <el-input v-model="empBaseInfoForm.bankName" />
             </el-form-item>
-            <el-form-item label="保险类型" prop="region">
+            <el-form-item label="保险类型">
               <el-select v-model="empBaseInfoForm.insuranceType" placeholder="请选择保险类型">
                 <el-option label="(深户)五险一档" value="1" />
                 <el-option label="(非深户)五险一档" value="2" />
+                <el-option label="(非深户)五险二档" value="3" />
+                <el-option label="(非深户)五险三档" value="4" />
+                <el-option label="(非深户)四险一档" value="5" />
               </el-select>
             </el-form-item>
             <el-form-item label="家庭成员及关系">
@@ -572,27 +601,33 @@
             </el-form-item>
           </el-col>
           <el-col :span="12">
-<!--            <el-form-item label="护卫点">-->
-<!--              <el-input v-model="empBaseInfoForm.deptName" />-->
-<!--            </el-form-item>-->
-            <el-form-item label="护卫点" prop="deptId">
+            <el-form-item label="姓名" prop="empName">
+              <el-input v-model="empBaseInfoForm.empName" />
+            </el-form-item>
+            <el-form-item label="部门(护卫点)" required message="请选择护卫点" prop="deptId">
               <treeselect
                 v-model="empBaseInfoForm.deptId"
                 :multiple="false"
                 :options="depts"
                 :clear-value-text="$t('common.clear')"
-                placeholder=" "
+                placeholder="请选择部门(护卫点)"
                 style="width:100%"
               />
             </el-form-item>
-            <el-form-item label="姓名">
-              <el-input v-model="empBaseInfoForm.empName" />
+            <el-form-item label="岗位" prop="jobName">
+              <el-autocomplete
+                v-model="empBaseInfoForm.jobName"
+                class="inline-input"
+                :fetch-suggestions="querySearchJob"
+                placeholder="请输入岗位"
+                @select="jobNameSelect"
+              />
             </el-form-item>
-            <el-form-item label="所属岗位">
-              <el-input v-model="empBaseInfoForm.jobName" />
-            </el-form-item>
-            <el-form-item label="身份证号码">
-              <el-input v-model="empBaseInfoForm.certificateNumb" />
+            <el-form-item label="性别" prop="sex">
+              <el-select v-model="empBaseInfoForm.sex" placeholder="请选择性别">
+                <el-option label="男" value="1" />
+                <el-option label="女" value="2" />
+              </el-select>
             </el-form-item>
             <el-form-item label="身份证有效期">
               <el-input v-model="empBaseInfoForm.certificateValidity" />
@@ -628,7 +663,7 @@
             <el-form-item label="保安员回执">
               <el-input v-model="empBaseInfoForm.returnReceipt" />
             </el-form-item>
-            <el-form-item label="档案情况" prop="region">
+            <el-form-item label="档案情况">
               <el-select v-model="empBaseInfoForm.archivesStatus" placeholder="请选择档案情况">
                 <el-option label="未移交" value="0" />
                 <el-option label="已移交" value="1" />
@@ -640,23 +675,21 @@
             <el-form-item label="社保电脑号">
               <el-input v-model="empBaseInfoForm.socialNumb" />
             </el-form-item>
-            <el-form-item label="员工手册" prop="region">
+            <el-form-item label="员工手册">
               <el-select v-model="empBaseInfoForm.handbookStatus" placeholder="请选择员工手册">
                 <el-option label="未发" value="0" />
                 <el-option label="已发" value="1" />
               </el-select>
             </el-form-item>
-            <el-form-item label="工作证" prop="region">
+            <el-form-item label="工作证">
               <el-select v-model="empBaseInfoForm.empCardStatus" placeholder="请选择工作证">
                 <el-option label="未发" value="0" />
                 <el-option label="已发" value="1" />
               </el-select>
             </el-form-item>
           </el-col>
-        </el-row>
-        <el-row>
           <el-col :span="24">
-            <el-form-item label="相关证件" prop="region">
+            <el-form-item label="相关证件">
               <el-select v-model="empBaseInfoForm.certificateList" placeholder="请选择相关证件">
                 <el-option label="高中毕业证" value="1" />
                 <el-option label="专科毕业证" value="2" />
@@ -667,60 +700,65 @@
         </el-row>
       </el-form>
       <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="putEmpBase()">保 存</el-button>
-        <el-button type="primary" @click="putEmpBaseContinue()">保存并继续新增</el-button>
+        <el-button type="primary" @click="putEmpBase('empBaseInfoForm')">保 存</el-button>
+        <el-button type="primary" @click="putEmpBaseContinue('empBaseInfoForm')">保存并继续新增</el-button>
         <el-button @click="dialogIsShow()">取 消</el-button>
       </div>
     </el-dialog>
     <el-dialog title="工作经历" :visible.sync="dialogshowArr[1].show" width="50%">
-      <el-form :model="workExperienceForm" label-position="right" label-width="120px">
+      <el-form :model="workExperienceForm" :rules="rules" label-position="right" label-width="120px">
         <el-row>
           <el-col :span="12">
-            <el-form-item label="员工编号">
-              <el-input v-model="workExperienceForm.empNumb" />
+            <el-form-item label="姓名" prop="empName">
+              <el-input v-model="workExperienceForm.empName" suffix-icon="el-icon-search" @click.native="showXzyg()" />
             </el-form-item>
-            <el-form-item label="身份证号码">
-              <el-input v-model="workExperienceForm.certificateNumb" />
-            </el-form-item>
-            <el-form-item label="部门名称">
-              <el-input v-model="workExperienceForm.deptName" />
-            </el-form-item>
-            <el-form-item label="开始时间">
-              <el-date-picker
-                v-model="workExperienceForm.beginDate"
-                type="date"
-                value-format="yyyy-MM-dd"
-                placeholder="选择日期"
+            <el-form-item label="身份证号码" prop="certificateNumb">
+              <el-input
+                v-model="workExperienceForm.certificateNumb"
               />
+            </el-form-item>
+            <el-form-item label="性别" prop="sex">
+              <el-input v-model="workExperienceForm.sex" />
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="姓名">
-              <el-input v-model="workExperienceForm.empName" />
+            <el-form-item label="员工编号" prop="empNumb">
+              <el-input v-model="workExperienceForm.empNumb" />
             </el-form-item>
-            <el-form-item label="性别" prop="region">
-              <el-select v-model="workExperienceForm.sex" placeholder="请选择性别">
-                <el-option label="男" value="1" />
-                <el-option label="女" value="2" />
-              </el-select>
+            <el-form-item label="部门(护卫点)" prop="deptName">
+              <el-input v-model="workExperienceForm.deptName" />
             </el-form-item>
-            <el-form-item label="岗位名称">
+            <el-form-item label="岗位" prop="jobName">
               <el-input v-model="workExperienceForm.jobName" />
-            </el-form-item>
-            <el-form-item label="结束时间">
-              <el-date-picker
-                v-model="workExperienceForm.endDate"
-                type="date"
-                value-format="yyyy-MM-dd"
-                placeholder="选择日期"
-              />
             </el-form-item>
           </el-col>
         </el-row>
         <el-row>
           <el-col :span="24">
-            <el-form-item label="工作单位">
+            <el-form-item label="工作单位" prop="workUnit">
               <el-input v-model="workExperienceForm.workUnit" />
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="12">
+            <el-form-item label="开始日期">
+              <el-date-picker
+                v-model="workExperienceForm.beginDate"
+                type="date"
+                value-format="yyyy-MM-dd"
+                placeholder="年-月-日"
+              />
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="结束日期">
+              <el-date-picker
+                v-model="workExperienceForm.endDate"
+                type="date"
+                value-format="yyyy-MM-dd"
+                placeholder="年-月-日"
+              />
             </el-form-item>
           </el-col>
         </el-row>
@@ -743,22 +781,24 @@
       </div>
     </el-dialog>
     <el-dialog title="体检信息" :visible.sync="dialogshowArr[2].show" width="50%">
-      <el-form :model="physicalExamForm" label-position="right" label-width="120px">
+      <el-form :model="physicalExamForm" :rules="rules" label-position="right" label-width="120px">
         <el-row>
           <el-col :span="12">
-            <el-form-item label="员工编号">
-              <el-input v-model="physicalExamForm.empNumb" />
+            <el-form-item label="姓名" prop="empName">
+              <el-input v-model="physicalExamForm.empName" suffix-icon="el-icon-search" @click.native="showXzyg()" />
             </el-form-item>
-            <el-form-item label="身份证号码">
-              <el-input v-model="physicalExamForm.certificateNumb" />
+            <el-form-item label="身份证号码" prop="certificateNumb">
+              <el-input
+                v-model="physicalExamForm.certificateNumb"
+              />
             </el-form-item>
-            <el-form-item label="部门名称">
-              <el-input v-model="physicalExamForm.deptName" />
+            <el-form-item label="性别" prop="sex">
+              <el-input v-model="physicalExamForm.sex" />
             </el-form-item>
-            <el-form-item label="体检医院">
+            <el-form-item label="体检医院" prop="hospital">
               <el-input v-model="physicalExamForm.hospital" />
             </el-form-item>
-            <el-form-item label="体检类型" prop="region">
+            <el-form-item label="体检类型">
               <el-select
                 v-model="physicalExamForm.physicalExamType"
                 placeholder="请选择体检类型"
@@ -772,19 +812,16 @@
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="姓名">
-              <el-input v-model="physicalExamForm.empName" />
+            <el-form-item label="员工编号" prop="empNumb">
+              <el-input v-model="physicalExamForm.empNumb" />
             </el-form-item>
-            <el-form-item label="性别" prop="region">
-              <el-select v-model="physicalExamForm.sex" placeholder="请选择性别">
-                <el-option label="男" value="1" />
-                <el-option label="女" value="2" />
-              </el-select>
+            <el-form-item label="部门(护卫点)" prop="deptName">
+              <el-input v-model="physicalExamForm.deptName" />
             </el-form-item>
-            <el-form-item label="岗位名称">
+            <el-form-item label="岗位" prop="jobName">
               <el-input v-model="physicalExamForm.jobName" />
             </el-form-item>
-            <el-form-item label="体检日期">
+            <el-form-item label="体检日期" prop="physicalExamDate">
               <el-date-picker
                 v-model="physicalExamForm.physicalExamDate"
                 value-format="yyyy-MM-dd"
@@ -795,7 +832,7 @@
             <el-form-item label="血压">
               <el-input v-model="physicalExamForm.bloodPressure" />
             </el-form-item>
-            <el-form-item label="心电图" prop="region">
+            <el-form-item label="心电图">
               <el-select v-model="physicalExamForm.name" placeholder="ecg">
                 <el-option label="正常" value="1" />
                 <el-option label="异常" value="0" />
@@ -805,7 +842,7 @@
         </el-row>
         <el-row>
           <el-col :span="24">
-            <el-form-item label="体检结论">
+            <el-form-item label="体检结论" prop="conclusion">
               <el-input v-model="physicalExamForm.conclusion" />
             </el-form-item>
             <el-form-item label="复查记录">
@@ -832,27 +869,21 @@
       </div>
     </el-dialog>
     <el-dialog title="合同信息" :visible.sync="dialogshowArr[3].show" width="50%">
-      <el-form :model="contractInfoForm" label-position="right" label-width="120px">
+      <el-form :model="contractInfoForm" :rules="rules" label-position="right" label-width="120px">
         <el-row>
           <el-col :span="12">
-            <el-form-item label="员工编号">
-              <el-input v-model="contractInfoForm.empNumb" />
+            <el-form-item label="姓名" prop="empName">
+              <el-input v-model="contractInfoForm.empName" suffix-icon="el-icon-search" @click.native="showXzyg()" />
             </el-form-item>
-            <el-form-item label="证件号码">
-              <el-input v-model="contractInfoForm.certificateNumb" />
-            </el-form-item>
-            <el-form-item label="部门名称">
-              <el-input v-model="contractInfoForm.deptName" />
-            </el-form-item>
-            <el-form-item label="合同开始日期">
-              <el-date-picker
-                v-model="contractInfoForm.beginDate"
-                value-format="yyyy-MM-dd"
-                type="date"
-                placeholder="选择日期"
+            <el-form-item label="身份证号码" prop="certificateNumb">
+              <el-input
+                v-model="contractInfoForm.certificateNumb"
               />
             </el-form-item>
-            <el-form-item label="合同状态" prop="region">
+            <el-form-item label="性别" prop="sex">
+              <el-input v-model="contractInfoForm.sex" />
+            </el-form-item>
+            <el-form-item label="合同状态" prop="contractStatus">
               <el-select
                 v-model="contractInfoForm.contractStatus"
                 placeholder="请选择合同状态"
@@ -861,24 +892,29 @@
                 <el-option label="老签" value="2" />
               </el-select>
             </el-form-item>
+            <el-form-item label="合同签订日期" prop="signingDate">
+              <el-date-picker
+                v-model="contractInfoForm.signingDate"
+                value-format="yyyy-MM-dd"
+                type="date"
+                placeholder="选择日期"
+              />
+            </el-form-item>
             <el-form-item label="合同办理人">
               <el-input v-model="contractInfoForm.transactor" />
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="姓名">
-              <el-input v-model="contractInfoForm.empName" />
+            <el-form-item label="员工编号" prop="empNumb">
+              <el-input v-model="contractInfoForm.empNumb" />
             </el-form-item>
-            <el-form-item label="性别" prop="region">
-              <el-select v-model="contractInfoForm.sex" placeholder="请选择性别">
-                <el-option label="男" value="1" />
-                <el-option label="女" value="2" />
-              </el-select>
+            <el-form-item label="部门(护卫点)" prop="deptName">
+              <el-input v-model="contractInfoForm.deptName" />
             </el-form-item>
-            <el-form-item label="岗位名称">
+            <el-form-item label="岗位" prop="jobName">
               <el-input v-model="contractInfoForm.jobName" />
             </el-form-item>
-            <el-form-item label="合同结束日期">
+            <el-form-item label="合同结束日期" prop="endDate">
               <el-date-picker
                 v-model="contractInfoForm.endDate"
                 value-format="yyyy-MM-dd"
@@ -888,14 +924,6 @@
             </el-form-item>
             <el-form-item label="合同期限(年)">
               <el-input v-model="contractInfoForm.contractPeriod" />
-            </el-form-item>
-            <el-form-item label="合同签订日期">
-              <el-date-picker
-                v-model="contractInfoForm.signingDate"
-                value-format="yyyy-MM-dd"
-                type="date"
-                placeholder="选择日期"
-              />
             </el-form-item>
           </el-col>
         </el-row>
@@ -918,20 +946,21 @@
       </div>
     </el-dialog>
     <el-dialog title="离职当月考勤" :visible.sync="dialogshowArr[4].show" width="50%">
-      <el-form :model="dimissionAttendForm" label-position="right" label-width="120px">
+      <el-form :model="dimissionAttendForm" :rules="rules" label-position="right" label-width="120px">
         <el-row>
           <el-col :span="12">
-            <el-form-item label="员工编号">
-              <el-input v-model="dimissionAttendForm.empNumb" />
+            <el-form-item label="姓名" prop="empName">
+              <el-input v-model="dimissionAttendForm.empName" suffix-icon="el-icon-search" @click.native="showXzyg()" />
             </el-form-item>
-            <el-form-item label="性别" prop="region">
-              <el-select v-model="dimissionAttendForm.sex" placeholder="请选择性别">
-                <el-option label="男" value="1" />
-                <el-option label="女" value="2" />
-              </el-select>
+            <el-form-item label="身份证号码" prop="certificateNumb">
+              <el-input
+                v-model="dimissionAttendForm.certificateNumb"
+              />
             </el-form-item>
-            <el-form-item label="部门名称"><el-input v-model="dimissionAttendForm.deptName" /></el-form-item>
-            <el-form-item label="离职考勤月份">
+            <el-form-item label="性别" prop="sex">
+              <el-input v-model="dimissionAttendForm.sex" />
+            </el-form-item>
+            <el-form-item label="离职考勤月份" prop="attendMonth">
               <el-date-picker
                 v-model="dimissionAttendForm.attendMonth"
                 value-format="yyyy-MM"
@@ -942,16 +971,24 @@
             <el-form-item label="加班(天)">
               <el-input v-model="dimissionAttendForm.overtimeDay" />
             </el-form-item>
-
-            <el-form-item label="有无代扣款项">
+            <el-form-item label="有无代扣款项" prop="deduct">
               <el-input v-model="dimissionAttendForm.deduct" />
+            </el-form-item>
+            <el-form-item label="旷工(天)">
+              <el-input v-model="dimissionAttendForm.absenteeism" />
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="姓名"><el-input v-model="dimissionAttendForm.empName" /></el-form-item>
-            <el-form-item label="证件号码"><el-input v-model="dimissionAttendForm.certificateNumb" /></el-form-item>
-            <el-form-item label="岗位名称"><el-input v-model="dimissionAttendForm.jobName" /></el-form-item>
-            <el-form-item label="出勤天数">
+            <el-form-item label="员工编号" prop="empNumb">
+              <el-input v-model="dimissionAttendForm.empNumb" />
+            </el-form-item>
+            <el-form-item label="部门(护卫点)" prop="deptName">
+              <el-input v-model="dimissionAttendForm.deptName" />
+            </el-form-item>
+            <el-form-item label="岗位" prop="jobName">
+              <el-input v-model="dimissionAttendForm.jobName" />
+            </el-form-item>
+            <el-form-item label="出勤天数" prop="attendDays">
               <el-input v-model="dimissionAttendForm.attendDays" />
             </el-form-item>
 
@@ -961,10 +998,6 @@
 
             <el-form-item label="请假(天)">
               <el-input v-model="dimissionAttendForm.leaveDay" />
-            </el-form-item>
-
-            <el-form-item label="旷工(天)">
-              <el-input v-model="dimissionAttendForm.absenteeism" />
             </el-form-item>
           </el-col>
         </el-row>
@@ -983,20 +1016,21 @@
       </div>
     </el-dialog>
     <el-dialog title="请假记录" :visible.sync="dialogshowArr[5].show" width="50%">
-      <el-form :model="leaveInfoForm" label-position="right" label-width="120px">
+      <el-form :model="leaveInfoForm" :rules="rules" label-position="right" label-width="120px">
         <el-row>
           <el-col :span="12">
-            <el-form-item label="员工编号">
-              <el-input v-model="leaveInfoForm.empNumb" />
+            <el-form-item label="姓名" prop="empName">
+              <el-input v-model="leaveInfoForm.empName" suffix-icon="el-icon-search" @click.native="showXzyg()" />
             </el-form-item>
-            <el-form-item label="性别" prop="region">
-              <el-select v-model="leaveInfoForm.sex" placeholder="请选择性别">
-                <el-option label="男" value="1" />
-                <el-option label="女" value="2" />
-              </el-select>
+            <el-form-item label="身份证号码" prop="certificateNumb">
+              <el-input
+                v-model="leaveInfoForm.certificateNumb"
+              />
             </el-form-item>
-            <el-form-item label="部门名称"><el-input v-model="leaveInfoForm.deptName" /></el-form-item>
-            <el-form-item label="请假开始时间">
+            <el-form-item label="性别" prop="sex">
+              <el-input v-model="leaveInfoForm.sex" />
+            </el-form-item>
+            <el-form-item label="请假开始时间" prop="beginTime">
               <el-date-picker
                 v-model="leaveInfoForm.beginTime"
                 value-format="yyyy-MM-dd HH:mm:ss"
@@ -1006,24 +1040,28 @@
               />
             </el-form-item>
 
-            <el-form-item label="请假类型" prop="region">
+            <el-form-item label="请假类型" prop="leaveType">
               <el-select v-model="leaveInfoForm.leaveType" placeholder="请选择请假类型">
                 <el-option label="事假" value="1" />
                 <el-option label="病假" value="2" />
               </el-select>
             </el-form-item>
 
-            <el-form-item label="报备人">
+            <el-form-item label="报备人" prop="reporter">
               <el-input v-model="leaveInfoForm.reporter" />
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="姓名">
-              <el-input v-model="leaveInfoForm.empName" />
+            <el-form-item label="员工编号" prop="empNumb">
+              <el-input v-model="leaveInfoForm.empNumb" />
             </el-form-item>
-            <el-form-item label="证件号码"><el-input v-model="leaveInfoForm.certificateNumb" /></el-form-item>
-            <el-form-item label="岗位名称"><el-input v-model="leaveInfoForm.jobName" /></el-form-item>
-            <el-form-item label="请假结束时间">
+            <el-form-item label="部门(护卫点)" prop="deptName">
+              <el-input v-model="leaveInfoForm.deptName" />
+            </el-form-item>
+            <el-form-item label="岗位" prop="jobName">
+              <el-input v-model="leaveInfoForm.jobName" />
+            </el-form-item>
+            <el-form-item label="请假结束时间" prop="endTime">
               <el-date-picker
                 v-model="leaveInfoForm.endTime"
                 value-format="yyyy-MM-dd HH:mm:ss"
@@ -1063,20 +1101,21 @@
       </div>
     </el-dialog>
     <el-dialog title="辞职申请" :visible.sync="dialogshowArr[6].show" width="50%">
-      <el-form :model="resignForm" label-position="right" label-width="120px">
+      <el-form :model="resignForm" :rules="rules" label-position="right" label-width="120px">
         <el-row>
           <el-col :span="12">
-            <el-form-item label="员工编号">
-              <el-input v-model="resignForm.empNumb" />
+            <el-form-item label="姓名" prop="empName">
+              <el-input v-model="resignForm.empName" suffix-icon="el-icon-search" @click.native="showXzyg()" />
             </el-form-item>
-            <el-form-item label="性别" prop="region">
-              <el-select v-model="resignForm.sex" placeholder="请选择性别">
-                <el-option label="男" value="1" />
-                <el-option label="女" value="2" />
-              </el-select>
+            <el-form-item label="身份证号码" prop="certificateNumb">
+              <el-input
+                v-model="resignForm.certificateNumb"
+              />
             </el-form-item>
-            <el-form-item label="部门名称"><el-input v-model="resignForm.deptName" /></el-form-item>
-            <el-form-item label="辞职申请日期">
+            <el-form-item label="性别" prop="sex">
+              <el-input v-model="resignForm.sex" />
+            </el-form-item>
+            <el-form-item label="辞职申请日期" prop="applayDate">
               <el-date-picker
                 v-model="resignForm.applayDate"
                 value-format="yyyy-MM-dd"
@@ -1086,11 +1125,15 @@
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="姓名">
-              <el-input v-model="resignForm.empName" />
+            <el-form-item label="员工编号" prop="empNumb">
+              <el-input v-model="resignForm.empNumb" />
             </el-form-item>
-            <el-form-item label="证件号码"><el-input v-model="resignForm.certificateNumb" /></el-form-item>
-            <el-form-item label="岗位名称"><el-input v-model="resignForm.jobName" /></el-form-item>
+            <el-form-item label="部门(护卫点)" prop="deptName">
+              <el-input v-model="resignForm.deptName" />
+            </el-form-item>
+            <el-form-item label="岗位" prop="jobName">
+              <el-input v-model="resignForm.jobName" />
+            </el-form-item>
             <el-form-item label="报备人">
               <el-input v-model="resignForm.reporter" />
             </el-form-item>
@@ -1098,7 +1141,7 @@
         </el-row>
         <el-row>
           <el-col :span="24">
-            <el-form-item label="辞职事由">
+            <el-form-item label="辞职事由" prop="reason">
               <el-input v-model="resignForm.reason" />
             </el-form-item>
           </el-col>
@@ -1118,20 +1161,21 @@
       </div>
     </el-dialog>
     <el-dialog title="失业金领取" :visible.sync="dialogshowArr[7].show" width="50%">
-      <el-form :model="unemploymentForm" label-position="right" label-width="120px">
+      <el-form :model="unemploymentForm" :rules="rules" label-position="right" label-width="120px">
         <el-row>
           <el-col :span="12">
-            <el-form-item label="员工编号">
-              <el-input v-model="unemploymentForm.empNumb" />
+            <el-form-item label="姓名" prop="empName">
+              <el-input v-model="unemploymentForm.empName" suffix-icon="el-icon-search" @click.native="showXzyg()" />
             </el-form-item>
-            <el-form-item label="性别" prop="region">
-              <el-select v-model="unemploymentForm.sex" placeholder="请选择性别">
-                <el-option label="男" value="1" />
-                <el-option label="女" value="2" />
-              </el-select>
+            <el-form-item label="身份证号码" prop="certificateNumb">
+              <el-input
+                v-model="unemploymentForm.certificateNumb"
+              />
             </el-form-item>
-            <el-form-item label="部门名称"><el-input v-model="unemploymentForm.deptName" /></el-form-item>
-            <el-form-item label="失业金申请日期">
+            <el-form-item label="性别" prop="sex">
+              <el-input v-model="unemploymentForm.sex" />
+            </el-form-item>
+            <el-form-item label="失业金申请日期" prop="applayDate" label-width="130px">
               <el-date-picker
                 v-model="unemploymentForm.applayDate"
                 value-format="yyyy-MM-dd"
@@ -1139,16 +1183,20 @@
                 placeholder="选择失业金申请日期"
               />
             </el-form-item>
-            <el-form-item label="申报事由">
+            <el-form-item label="申报事由" prop="applayReason">
               <el-input v-model="unemploymentForm.applayReason" />
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="姓名">
-              <el-input v-model="unemploymentForm.empName" />
+            <el-form-item label="员工编号" prop="empNumb">
+              <el-input v-model="unemploymentForm.empNumb" />
             </el-form-item>
-            <el-form-item label="证件号码"><el-input v-model="unemploymentForm.certificateNumb" /></el-form-item>
-            <el-form-item label="岗位名称"><el-input v-model="unemploymentForm.jobName" /></el-form-item>
+            <el-form-item label="部门(护卫点)" prop="deptName">
+              <el-input v-model="unemploymentForm.deptName" />
+            </el-form-item>
+            <el-form-item label="岗位" prop="jobName">
+              <el-input v-model="unemploymentForm.jobName" />
+            </el-form-item>
             <el-form-item label="汇报人">
               <el-input v-model="unemploymentForm.reporter" />
             </el-form-item>
@@ -1173,20 +1221,21 @@
       </div>
     </el-dialog>
     <el-dialog title="社保申请" :visible.sync="dialogshowArr[8].show" width="50%">
-      <el-form :model="insuranceForm" label-position="right" label-width="120px">
+      <el-form :model="insuranceForm" :rules="rules" label-position="right" label-width="120px">
         <el-row>
           <el-col :span="12">
-            <el-form-item label="员工编号">
-              <el-input v-model="insuranceForm.empNumb" />
+            <el-form-item label="姓名" prop="empName">
+              <el-input v-model="insuranceForm.empName" suffix-icon="el-icon-search" @click.native="showXzyg()" />
             </el-form-item>
-            <el-form-item label="性别" prop="region">
-              <el-select v-model="insuranceForm.sex" placeholder="请选择性别">
-                <el-option label="男" value="1" />
-                <el-option label="女" value="2" />
-              </el-select>
+            <el-form-item label="身份证号码" prop="certificateNumb">
+              <el-input
+                v-model="insuranceForm.certificateNumb"
+              />
             </el-form-item>
-            <el-form-item label="部门名称"><el-input v-model="insuranceForm.deptName" /></el-form-item>
-            <el-form-item label="社保申请日期">
+            <el-form-item label="性别" prop="sex">
+              <el-input v-model="insuranceForm.sex" />
+            </el-form-item>
+            <el-form-item label="社保申请日期" prop="applayDate">
               <el-date-picker
                 v-model="insuranceForm.applayDate"
                 value-format="yyyy-MM-dd"
@@ -1194,10 +1243,16 @@
                 placeholder="选择社保申请日期"
               />
             </el-form-item>
-            <el-form-item label="社保档位">
-              <el-input v-model="insuranceForm.insuranceGaers" />
+            <el-form-item label="社保档位" prop="insuranceGaers">
+              <el-select v-model="insuranceForm.insuranceGaers" placeholder="请选择社保档位">
+                <el-option label="(深户)五险一档" value="1" />
+                <el-option label="(非深户)五险一档" value="2" />
+                <el-option label="(非深户)五险二档" value="3" />
+                <el-option label="(非深户)五险三档" value="4" />
+                <el-option label="(非深户)四险一档" value="5" />
+              </el-select>
             </el-form-item>
-            <el-form-item label="状态" prop="region">
+            <el-form-item label="状态" prop="applayStatus">
               <el-select v-model="insuranceForm.applayStatus" placeholder="请选择状态">
                 <el-option label="未申请" value="1" />
                 <el-option label="已申请" value="2" />
@@ -1205,15 +1260,19 @@
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="姓名">
-              <el-input v-model="insuranceForm.empName" />
+            <el-form-item label="员工编号" prop="empNumb">
+              <el-input v-model="insuranceForm.empNumb" />
             </el-form-item>
-            <el-form-item label="证件号码"><el-input v-model="insuranceForm.certificateNumb" /></el-form-item>
-            <el-form-item label="岗位名称"><el-input v-model="insuranceForm.jobName" /></el-form-item>
-            <el-form-item label="申请人">
+            <el-form-item label="部门(护卫点)" prop="deptName">
+              <el-input v-model="insuranceForm.deptName" />
+            </el-form-item>
+            <el-form-item label="岗位" prop="jobName">
+              <el-input v-model="insuranceForm.jobName" />
+            </el-form-item>
+            <el-form-item label="申请人" prop="proposer">
               <el-input v-model="insuranceForm.proposer" />
             </el-form-item>
-            <el-form-item label="是否已经报告" prop="region">
+            <el-form-item label="是否已经报告">
               <el-select v-model="insuranceForm.reportStatus" placeholder="是否已经报告">
                 <el-option label="未报告" value="1" />
                 <el-option label="已报告" value="2" />
@@ -1239,20 +1298,21 @@
       </div>
     </el-dialog>
     <el-dialog title="意外险案件" :visible.sync="dialogshowArr[9].show" width="50%">
-      <el-form :model="accidentCasesForm" label-position="right" label-width="120px">
+      <el-form :model="accidentCasesForm" :rules="rules" label-position="right" label-width="120px">
         <el-row>
           <el-col :span="12">
-            <el-form-item label="员工编号">
-              <el-input v-model="accidentCasesForm.empNumb" />
+            <el-form-item label="姓名" prop="empName">
+              <el-input v-model="accidentCasesForm.empName" suffix-icon="el-icon-search" @click.native="showXzyg()" />
             </el-form-item>
-            <el-form-item label="性别" prop="region">
-              <el-select v-model="accidentCasesForm.sex" placeholder="请选择性别">
-                <el-option label="男" value="1" />
-                <el-option label="女" value="2" />
-              </el-select>
+            <el-form-item label="身份证号码" prop="certificateNumb">
+              <el-input
+                v-model="accidentCasesForm.certificateNumb"
+              />
             </el-form-item>
-            <el-form-item label="部门名称"><el-input v-model="accidentCasesForm.deptName" /></el-form-item>
-            <el-form-item label="受伤时间">
+            <el-form-item label="性别" prop="sex">
+              <el-input v-model="accidentCasesForm.sex" />
+            </el-form-item>
+            <el-form-item label="受伤时间" prop="injuredTime">
               <el-date-picker
                 v-model="accidentCasesForm.injuredTime"
                 value-format="yyyy-MM-dd HH:mm:ss"
@@ -1260,16 +1320,20 @@
                 placeholder="选择受伤时间"
               />
             </el-form-item>
-            <el-form-item label="受伤部位">
+            <el-form-item label="受伤部位" prop="injuredPart">
               <el-input v-model="accidentCasesForm.injuredPart" />
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="姓名">
-              <el-input v-model="accidentCasesForm.empName" />
+            <el-form-item label="员工编号" prop="empNumb">
+              <el-input v-model="accidentCasesForm.empNumb" />
             </el-form-item>
-            <el-form-item label="证件号码"><el-input v-model="accidentCasesForm.certificateNumb" /></el-form-item>
-            <el-form-item label="岗位名称"><el-input v-model="accidentCasesForm.jobName" /></el-form-item>
+            <el-form-item label="部门(护卫点)" prop="deptName">
+              <el-input v-model="accidentCasesForm.deptName" />
+            </el-form-item>
+            <el-form-item label="岗位" prop="jobName">
+              <el-input v-model="accidentCasesForm.jobName" />
+            </el-form-item>
             <el-form-item label="受伤地点">
               <el-input v-model="accidentCasesForm.injuredAddress" />
             </el-form-item>
@@ -1281,17 +1345,17 @@
 
         <el-row>
           <el-col :span="24">
-            <el-form-item label="受伤经过描述">
+            <el-form-item label="受伤经过描述" prop="injuredDescribe">
               <el-input v-model="accidentCasesForm.injuredDescribe" type="textarea" />
             </el-form-item>
           </el-col>
         </el-row>
         <el-row>
           <el-col :span="12">
-            <el-form-item label="就诊医院">
+            <el-form-item label="就诊医院" prop="hospitalName">
               <el-input v-model="accidentCasesForm.hospitalName" />
             </el-form-item>
-            <el-form-item label="是否住院" prop="region">
+            <el-form-item label="是否住院" prop="hospitalizatioFlag">
               <el-select v-model="accidentCasesForm.hospitalizatioFlag" placeholder="是否住院">
                 <el-option label="未住院" value="0" />
                 <el-option label="已住院" value="1" />
@@ -1308,7 +1372,7 @@
             <el-form-item label="递交人">
               <el-input v-model="accidentCasesForm.sbumitBy" />
             </el-form-item>
-            <el-form-item label="保险赔付费用">
+            <el-form-item label="保险赔付费用" prop="innsureFee">
               <el-input v-model="accidentCasesForm.innsureFee" />
             </el-form-item>
             <el-form-item label="人事处理时间">
@@ -1320,7 +1384,7 @@
               />
             </el-form-item>
 
-            <el-form-item label="案结时间">
+            <el-form-item label="案结时间" prop="settleDate">
               <el-date-picker
                 v-model="accidentCasesForm.settleDate"
                 value-format="yyyy-MM-dd"
@@ -1344,13 +1408,13 @@
                 placeholder="选择递交资料时间"
               />
             </el-form-item>
-            <el-form-item label="医疗总费用">
+            <el-form-item label="医疗总费用" prop="expensesFee">
               <el-input v-model="accidentCasesForm.expensesFee" />
             </el-form-item>
             <el-form-item label="报单号">
               <el-input v-model="accidentCasesForm.expenseReport" />
             </el-form-item>
-            <el-form-item label="状态" prop="region">
+            <el-form-item label="状态" prop="settleStatus">
               <el-select v-model="accidentCasesForm.settleStatus" placeholder="">
                 <el-option label="已结案" value="1" />
                 <el-option label="未结案" value="0" />
@@ -1366,20 +1430,21 @@
       </div>
     </el-dialog>
     <el-dialog title="工伤案件" :visible.sync="dialogshowArr[10].show" width="50%">
-      <el-form :model="occupationalForm" label-position="right" label-width="140px">
+      <el-form :model="occupationalForm" :rules="rules" label-position="right" label-width="140px">
         <el-row>
           <el-col :span="12">
-            <el-form-item label="员工编号">
-              <el-input v-model="occupationalForm.empNumb" />
+            <el-form-item label="姓名" prop="empName">
+              <el-input v-model="occupationalForm.empName" suffix-icon="el-icon-search" @click.native="showXzyg()" />
             </el-form-item>
-            <el-form-item label="性别" prop="region">
-              <el-select v-model="occupationalForm.sex" placeholder="请选择性别">
-                <el-option label="男" value="1" />
-                <el-option label="女" value="2" />
-              </el-select>
+            <el-form-item label="身份证号码" prop="certificateNumb">
+              <el-input
+                v-model="occupationalForm.certificateNumb"
+              />
             </el-form-item>
-            <el-form-item label="部门名称"><el-input v-model="occupationalForm.deptName" /></el-form-item>
-            <el-form-item label="受伤时间">
+            <el-form-item label="性别" prop="sex">
+              <el-input v-model="occupationalForm.sex" />
+            </el-form-item>
+            <el-form-item label="受伤时间" prop="injuredTime">
               <el-date-picker
                 v-model="occupationalForm.injuredTime"
                 value-format="yyyy-MM-dd HH:mm:ss"
@@ -1387,17 +1452,21 @@
                 placeholder="选择受伤时间"
               />
             </el-form-item>
-            <el-form-item label="受伤部位">
+            <el-form-item label="受伤部位" prop="injuredPart">
               <el-input v-model="occupationalForm.injuredPart" />
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="姓名">
-              <el-input v-model="occupationalForm.empName" />
+            <el-form-item label="员工编号" prop="empNumb">
+              <el-input v-model="occupationalForm.empNumb" />
             </el-form-item>
-            <el-form-item label="证件号码"><el-input v-model="occupationalForm.certificateNumb" /></el-form-item>
-            <el-form-item label="岗位名称"><el-input v-model="occupationalForm.jobName" /></el-form-item>
-            <el-form-item label="受伤地点">
+            <el-form-item label="部门(护卫点)" prop="deptName">
+              <el-input v-model="occupationalForm.deptName" />
+            </el-form-item>
+            <el-form-item label="岗位" prop="jobName">
+              <el-input v-model="occupationalForm.jobName" />
+            </el-form-item>
+            <el-form-item label="受伤地点" prop="injuredAddress">
               <el-input v-model="occupationalForm.injuredAddress" />
             </el-form-item>
             <el-form-item label="工伤诊断">
@@ -1408,17 +1477,17 @@
 
         <el-row>
           <el-col :span="24">
-            <el-form-item label="受伤经过描述">
+            <el-form-item label="受伤经过描述" prop="injuredDescribe">
               <el-input v-model="occupationalForm.injuredDescribe" type="textarea" />
             </el-form-item>
           </el-col>
         </el-row>
         <el-row>
           <el-col :span="12">
-            <el-form-item label="就诊医院">
+            <el-form-item label="就诊医院" prop="hospitalName">
               <el-input v-model="occupationalForm.hospitalName" />
             </el-form-item>
-            <el-form-item label="是否住院" prop="region">
+            <el-form-item label="是否住院" prop="hospitalizatioFlag">
               <el-select v-model="occupationalForm.hospitalizatioFlag" placeholder="是否住院">
                 <el-option label="未住院" value="0" />
                 <el-option label="已住院" value="1" />
@@ -1465,7 +1534,7 @@
         <el-divider />
         <el-row>
           <el-col :span="12">
-            <el-form-item label="医疗总费用">
+            <el-form-item label="医疗总费用" prop="expensesFee">
               <el-input v-model="occupationalForm.expensesFee" />
             </el-form-item>
             <el-form-item label="一次性伤残补助金">
@@ -1491,7 +1560,7 @@
         <el-divider />
         <el-row>
           <el-col :span="12">
-            <el-form-item label="已赔付医药费用">
+            <el-form-item label="已赔付医药费用" prop="compensated">
               <el-input v-model="occupationalForm.compensated" />
             </el-form-item>
             <el-form-item label="一次性伤残补助金">
@@ -1511,10 +1580,10 @@
             <el-form-item label="工伤生活补贴">
               <el-input v-model="occupationalForm.companyAllowance" />
             </el-form-item>
-            <el-form-item label="公司赔偿总费用">
+            <el-form-item label="公司赔偿总费用" prop="companyCompensation">
               <el-input v-model="occupationalForm.companyCompensation" />
             </el-form-item>
-            <el-form-item label="是否结案" prop="region">
+            <el-form-item label="是否结案" prop="settleStatus">
               <el-select v-model="occupationalForm.settleStatus" placeholder="">
                 <el-option label="已结案" value="1" />
                 <el-option label="未结案" value="0" />
@@ -1538,20 +1607,21 @@
       </div>
     </el-dialog>
     <el-dialog title="劳资案件" :visible.sync="dialogshowArr[11].show" width="50%">
-      <el-form :model="laborTroubleForm" label-position="right" label-width="140px">
+      <el-form :model="laborTroubleForm" :rules="rules" label-position="right" label-width="140px">
         <el-row>
           <el-col :span="12">
-            <el-form-item label="员工编号">
-              <el-input v-model="laborTroubleForm.empNumb" />
+            <el-form-item label="姓名" prop="empName">
+              <el-input v-model="laborTroubleForm.empName" suffix-icon="el-icon-search" @click.native="showXzyg()" />
             </el-form-item>
-            <el-form-item label="性别" prop="region">
-              <el-select v-model="laborTroubleForm.sex" placeholder="请选择性别">
-                <el-option label="男" value="1" />
-                <el-option label="女" value="2" />
-              </el-select>
+            <el-form-item label="身份证号码" prop="certificateNumb">
+              <el-input
+                v-model="laborTroubleForm.certificateNumb"
+              />
             </el-form-item>
-            <el-form-item label="部门名称"><el-input v-model="laborTroubleForm.deptName" /></el-form-item>
-            <el-form-item label="仲裁日期">
+            <el-form-item label="性别" prop="sex">
+              <el-input v-model="laborTroubleForm.sex" />
+            </el-form-item>
+            <el-form-item label="仲裁日期" prop="arbitrationDate">
               <el-date-picker
                 v-model="laborTroubleForm.arbitrationDate"
                 value-format="yyyy-MM-dd"
@@ -1562,7 +1632,7 @@
             <el-form-item label="汇报人">
               <el-input v-model="laborTroubleForm.reporter" />
             </el-form-item>
-            <el-form-item label="状态" prop="region">
+            <el-form-item label="状态" prop="arbitrationStatus">
               <el-select v-model="laborTroubleForm.arbitrationStatus" placeholder="">
                 <el-option label="已结案" value="1" />
                 <el-option label="未结案" value="0" />
@@ -1570,11 +1640,15 @@
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="姓名">
-              <el-input v-model="laborTroubleForm.empName" />
+            <el-form-item label="员工编号" prop="empNumb">
+              <el-input v-model="laborTroubleForm.empNumb" />
             </el-form-item>
-            <el-form-item label="证件号码"><el-input v-model="laborTroubleForm.certificateNumb" /></el-form-item>
-            <el-form-item label="岗位名称"><el-input v-model="laborTroubleForm.jobName" /></el-form-item>
+            <el-form-item label="部门(护卫点)" prop="deptName">
+              <el-input v-model="laborTroubleForm.deptName" />
+            </el-form-item>
+            <el-form-item label="岗位" prop="jobName">
+              <el-input v-model="laborTroubleForm.jobName" />
+            </el-form-item>
             <el-form-item label="仲裁类型">
               <el-input v-model="laborTroubleForm.arbitrationType" />
             </el-form-item>
@@ -1593,7 +1667,7 @@
         </el-row>
         <el-row>
           <el-col :span="24">
-            <el-form-item label="仲裁事由">
+            <el-form-item label="仲裁事由" prop="arbitrationReason">
               <el-input v-model="laborTroubleForm.arbitrationReason" />
             </el-form-item>
           </el-col>
@@ -1613,20 +1687,21 @@
       </div>
     </el-dialog>
     <el-dialog title="不良记录" :visible.sync="dialogshowArr[12].show" width="50%">
-      <el-form :model="badRecordForm" label-position="right" label-width="140px">
+      <el-form :model="badRecordForm" :rules="rules" label-position="right" label-width="140px">
         <el-row>
           <el-col :span="12">
-            <el-form-item label="员工编号">
-              <el-input v-model="badRecordForm.empNumb" />
+            <el-form-item label="姓名" prop="empName">
+              <el-input v-model="badRecordForm.empName" suffix-icon="el-icon-search" @click.native="showXzyg()" />
             </el-form-item>
-            <el-form-item label="性别" prop="region">
-              <el-select v-model="badRecordForm.sex" placeholder="请选择性别">
-                <el-option label="男" value="1" />
-                <el-option label="女" value="2" />
-              </el-select>
+            <el-form-item label="身份证号码" prop="certificateNumb">
+              <el-input
+                v-model="badRecordForm.certificateNumb"
+              />
             </el-form-item>
-            <el-form-item label="部门名称"><el-input v-model="badRecordForm.deptName" /></el-form-item>
-            <el-form-item label="不良记录日期">
+            <el-form-item label="性别" prop="sex">
+              <el-input v-model="badRecordForm.sex" />
+            </el-form-item>
+            <el-form-item label="不良记录日期" prop="badDate">
               <el-date-picker
                 v-model="badRecordForm.badDate"
                 type="date"
@@ -1636,11 +1711,15 @@
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="姓名">
-              <el-input v-model="badRecordForm.empName" />
+            <el-form-item label="员工编号" prop="empNumb">
+              <el-input v-model="badRecordForm.empNumb" />
             </el-form-item>
-            <el-form-item label="证件号码"><el-input v-model="badRecordForm.certificateNumb" /></el-form-item>
-            <el-form-item label="岗位名称"><el-input v-model="badRecordForm.jobName" /></el-form-item>
+            <el-form-item label="部门(护卫点)" prop="deptName">
+              <el-input v-model="badRecordForm.deptName" />
+            </el-form-item>
+            <el-form-item label="岗位" prop="jobName">
+              <el-input v-model="badRecordForm.jobName" />
+            </el-form-item>
             <el-form-item label="汇报人">
               <el-input v-model="badRecordForm.reporter" />
             </el-form-item>
@@ -1648,7 +1727,7 @@
         </el-row>
         <el-row>
           <el-col :span="24">
-            <el-form-item label="不良记录描述">
+            <el-form-item label="不良记录描述" prop="badContent">
               <el-input v-model="badRecordForm.badContent" />
             </el-form-item>
           </el-col>
@@ -1668,21 +1747,21 @@
       </div>
     </el-dialog>
     <el-dialog title="备注信息" :visible.sync="dialogshowArr[13].show" width="50%">
-      <el-form :model="remarkInfoForm" label-position="right" label-width="140px">
+      <el-form ref="remarkInfoForm" :model="remarkInfoForm" :rules="rules" label-position="right" label-width="140px">
         <el-row>
           <el-col :span="12">
-            <el-form-item label="员工编号">
-              <el-input v-model="remarkInfoForm.empNumb" />
+            <el-form-item label="姓名" prop="empName">
+              <el-input v-model="remarkInfoForm.empName" suffix-icon="el-icon-search" @click.native="showXzyg()" />
             </el-form-item>
-            <el-form-item label="性别" prop="region">
-              <el-select v-model="remarkInfoForm.sex" placeholder="请选择性别">
-                <el-option label="男" value="1" />
-                <el-option label="女" value="2" />
-              </el-select>
+            <el-form-item label="身份证号码" prop="certificateNumb">
+              <el-input
+                v-model="remarkInfoForm.certificateNumb"
+              />
             </el-form-item>
-            <el-form-item label="部门名称"><el-input v-model="remarkInfoForm.deptName" /></el-form-item>
-
-            <el-form-item label="备注日期">
+            <el-form-item label="性别" prop="sex">
+              <el-input v-model="remarkInfoForm.sex" />
+            </el-form-item>
+            <el-form-item label="备注日期" prop="remarkDate">
               <el-date-picker
                 v-model="remarkInfoForm.remarkDate"
                 value-format="yyyy-MM-dd"
@@ -1692,38 +1771,180 @@
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="姓名">
-              <el-input v-model="remarkInfoForm.empName" />
+            <el-form-item label="员工编号" prop="empNumb">
+              <el-input v-model="remarkInfoForm.empNumb" />
             </el-form-item>
-            <el-form-item label="证件号码"><el-input v-model="remarkInfoForm.certificateNumb" /></el-form-item>
-            <el-form-item label="岗位名称"><el-input v-model="remarkInfoForm.jobName" /></el-form-item>
+            <el-form-item label="部门(护卫点)" prop="deptName">
+              <el-input v-model="remarkInfoForm.deptName" />
+            </el-form-item>
+            <el-form-item label="岗位" prop="jobName">
+              <el-input v-model="remarkInfoForm.jobName" />
+            </el-form-item>
           </el-col>
         </el-row>
         <el-row>
           <el-col :span="24">
-            <el-form-item label="备注">
+            <el-form-item label="备注" prop="remarkContent">
               <el-input v-model="remarkInfoForm.remarkContent" type="textarea" />
             </el-form-item>
           </el-col>
         </el-row>
       </el-form>
       <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="putRemarkInfo()">保 存</el-button>
-        <el-button type="primary" @click="putRemarkInfoContinue()">保存并继续新增</el-button>
+        <el-button type="primary" @click="putRemarkInfo('remarkInfoForm')">保 存</el-button>
+        <el-button type="primary" @click="putRemarkInfoContinue('remarkInfoForm')">保存并继续新增</el-button>
         <el-button @click="dialogIsShow()">取 消</el-button>
       </div>
+    </el-dialog>
+    <el-dialog title="选择员工" :visible.sync="dialogShowXzyg" width="90%">
+      <Selectuser @selectedUser="selectedUser" @cancleChooseUser="cancleChooseUser" />
     </el-dialog>
   </div>
 </template>
 <script>
+import { toCardGetUserInfo } from '@/utils/myUtil'
 import Treeselect from '@riophae/vue-treeselect'
 import '@riophae/vue-treeselect/dist/vue-treeselect.css'
+import Pagination from '@/components/Pagination'
+
 export default {
-  components: { Treeselect },
+  components: { Treeselect, Pagination },
   data() {
     return {
+      total: 0, // 总数量
+      queryParams: {}, // 查询参数
+      sort: {}, // 排序
+      pagination: { // 分页参数
+        size: 20,
+        num: 1
+      },
+      tableUrl: '',
+      tableDataName: '',
+      inputForName: '',
+      rules: {
+        archivesNumb: [{ required: true, message: '请输入档案号', trigger: 'blur' }],
+        empName: [{ required: true, message: '请输入员工姓名', trigger: 'blur' },
+          { min: 2, max: 50, message: '长度在 2 到 50 个字符', trigger: 'blur' }],
+        empNumb: [{ required: true, message: '请输入员工编号', trigger: 'blur' },
+          { min: 2, max: 50, message: '长度在 2 到 50 个字符', trigger: 'blur' }],
+        deptName: [
+          { required: true, message: '请选择护卫点', trigger: 'input' }
+        ],
+        certificateNumb: [{ required: true, message: '请输入身份证号', trigger: 'blur' }],
+        jobName: [{ required: true, message: '请选择岗位', trigger: 'change' }],
+        nativePlaceName: [{ required: true, message: '请选择籍贯', trigger: 'change' }],
+        bankName: [{ required: true, message: '请输入银行名称', trigger: 'blur' }],
+        insuranceType: [{ required: true, message: '请选择保险类型', trigger: 'change' }],
+        entryDate: [{ required: true, message: '请选择入职日期', trigger: 'change' }],
+        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' }]
+      },
+      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' },
+        { value: '经理', code: '2942725270000022' },
+        { value: '副经理', code: '2942725270000015' },
+        { value: '助理', code: '2942725270000030' },
+        { value: '项目经理', code: '2942725270000027' },
+        { value: '大队长', code: '2942725270000006' },
+        { value: '大队长兼内勤', code: '2942725270000007' },
+        { value: '中队长', code: '2942725270000029' },
+        { value: '队长', code: '2942725270000011' },
+        { value: '分队长', code: '2942725270000013' },
+        { value: '副队长', code: '2942725270000014' },
+        { value: '班长', code: '2942725270000002' },
+        { value: '保安员', code: '2942725270000003' },
+        { value: '内勤', code: '2942725270000024' },
+        { value: '保洁', code: '2942725270000004' },
+        { value: '电工', code: '2942725270000010' },
+        { value: '绿化工', code: '2942725270000023' },
+        { value: '出纳', code: '2942725270000005' },
+        { value: '人事专员', code: '2942725270000025' },
+        { value: '司机', code: '2942725270000026' },
+        { value: '购买保险', code: '2942725270000016' },
+        { value: '广州燃气中队长', code: '2942725270000018' },
+        { value: '管理员', code: '2942725270000017' },
+        { value: '监控员', code: '2942725270000021' },
+        { value: '员工', code: '2942725270000028' }],
       formLabelWidth: '120px',
       thisShowIndex: 0,
+      dialogShowXzyg: false,
       dialogshowArr: [
         {
           show: false
@@ -1830,6 +2051,7 @@
       occupationalData: [],
       badRecordData: [],
       accidentCasesData: [],
+      dimissionAttendData: [],
       remarkInfoForm: {
         remarkId: '',
         empId: '',
@@ -2162,38 +2384,39 @@
         deptName: '',
         empNumb: '',
         empName: '',
-        sex: '',
+        sex: '1',
         JobId: '',
         jobName: '',
-        empType: '',
+        empType: '1',
         certificateType: '',
         certificateNumb: '',
-        nation: '',
+        nation: '01',
         certificateValidity: '',
-        marriage: '',
+        marriage: '1',
         age: '',
         stature: '',
         birthdate: '',
-        politics: '',
+        politics: '13',
         entryDate: '',
-        education: '',
+        education: '61',
         seniority: '',
         nativePlace: '',
+        nativePlaceName: '',
         censusAddress: '',
         currentAddress: '',
         guardNumb: '',
         telePhone: '',
         returnReceipt: '',
         introducer: '',
-        archivesStatus: '',
+        archivesStatus: '0',
         bankName: '',
         bankNumb: '',
         InsuranceType: '',
         socialNumb: '',
         family: '',
-        handbookStatus: '',
+        handbookStatus: '0',
         urgencyPhone: '',
-        empCardStatus: '',
+        empCardStatus: '0',
         certificateList: '',
         createTime: '',
         creator: '',
@@ -2228,20 +2451,29 @@
   },
   mounted() {
     this.initDept()
-    this.selectBadRecord()
-    this.selectEmpBase()
-    this.selectWorkExperience()
-    this.selectPhysicalExam()
-    this.selectContractInfo()
-    this.selectDimissionAttend()
-    this.selectLeaveInfo()
-    this.selectResign()
-    this.selectUnemployment()
-    this.selectAccidentCases()
-    this.selectLaborTrouble()
-    this.selectRemarkInfo()
+    this.thisShowIndex = 1
+    this.isShow(false, 0)
   },
   methods: {
+    // 翻页插件翻页方法
+    search() {
+      this.fetch({
+        ...this.queryParams,
+        ...this.sort
+      })
+    },
+    // 公用查询
+    fetch(params = {}) {
+      params.pageSize = this.pagination.size
+      params.pageNum = this.pagination.num
+      this.$get(this.tableUrl, {
+        ...params
+      }).then((r) => {
+        const data = r.data.data
+        this.total = data.total
+        this[this.tableDataName] = data.rows
+      })
+    },
     dialogIsShow() {
       this.isAdd = true
       this.dialogshowArr[this.thisShowIndex].show = !this.dialogshowArr[this.thisShowIndex]
@@ -2258,6 +2490,92 @@
         this.showArr[this.thisShowIndex].show = false
       }
       this.thisShowIndex = index
+      switch (this.thisShowIndex) {
+        case 0:
+          this.tableUrl = 'hr/empBaseInfo/list'
+          this.tableDataName = 'basicInformationData'
+          this.queryParams.delFlag = 2
+          this.search()
+          break
+        case 1:
+          this.tableUrl = 'hr/empWorkExperience/list'
+          this.tableDataName = 'workExperienceData'
+          this.queryParams.delFlag = 2
+          this.search()
+          break
+        case 2:
+          this.tableUrl = 'hr/empPhysicalExam/list'
+          this.tableDataName = 'physicalExamData'
+          this.queryParams.delFlag = 2
+          this.search()
+          break
+        case 3:
+          this.tableUrl = 'hr/empContractInfo/list'
+          this.tableDataName = 'contractInfoData'
+          this.queryParams.delFlag = 2
+          this.search()
+          break
+        case 4:
+          this.tableUrl = 'hr/empDimissionAttend/list'
+          this.tableDataName = 'dimissionAttendData'
+          this.queryParams.delFlag = 2
+          this.search()
+          break
+        case 5:
+          this.tableUrl = 'hr/empLeaveInfo/list'
+          this.tableDataName = 'leaveInfoData'
+          this.queryParams.delFlag = 2
+          this.search()
+          break
+        case 6:
+          this.tableUrl = 'hr/empResign/list'
+          this.tableDataName = 'resignData'
+          this.queryParams.delFlag = 2
+          this.search()
+          break
+        case 7:
+          this.tableUrl = 'hr/empUnemployment/list'
+          this.tableDataName = 'unemploymentData'
+          this.queryParams.delFlag = 2
+          this.search()
+          break
+        case 8:
+          this.tableUrl = 'hr/empInsurance/list'
+          this.tableDataName = 'insuranceData'
+          this.queryParams.delFlag = 2
+          this.search()
+          break
+        case 9:
+          this.tableUrl = 'hr/empAccidentCases/list'
+          this.tableDataName = 'accidentCasesData'
+          this.queryParams.delFlag = 2
+          this.search()
+          break
+        case 10:
+          this.tableUrl = 'hr/empOccupational/list'
+          this.tableDataName = 'occupationalData'
+          this.queryParams.delFlag = 2
+          this.search()
+          break
+        case 11:
+          this.tableUrl = 'hr/empLaborTrouble/list'
+          this.tableDataName = 'laborTroubleData'
+          this.queryParams.delFlag = 2
+          this.search()
+          break
+        case 12:
+          this.tableUrl = 'hr/empBadRecord/list'
+          this.tableDataName = 'badRecordData'
+          this.queryParams.delFlag = 2
+          this.search()
+          break
+        case 13:
+          this.tableUrl = 'hr/empRemarkInfo/list'
+          this.tableDataName = 'remarkInfoData'
+          this.queryParams.delFlag = 2
+          this.search()
+          break
+      }
     },
     initDept() {
       this.$get('system/dept').then((r) => {
@@ -2275,9 +2593,10 @@
       this.$refs.deptTree.setCheckedKeys([])
     },
     butDelete() {
+      let selected
       switch (this.thisShowIndex) {
         case 0:
-          var selected = this.$refs.empBaseInfoTable.selection
+          selected = this.$refs.empBaseInfoTable.selection
           if (selected.length > 0) {
             const delIds = []
             selected.forEach((j) => {
@@ -2293,8 +2612,7 @@
           }
           break
         case 1:
-          // eslint-disable-next-line no-redeclare
-          var selected = this.$refs.workExperienceTable.selection
+          selected = this.$refs.workExperienceTable.selection
           if (selected.length > 0) {
             const delIds = []
             selected.forEach((j) => {
@@ -2310,8 +2628,7 @@
           }
           break
         case 2:
-          // eslint-disable-next-line no-redeclare
-          var selected = this.$refs.physicalExamTable.selection
+          selected = this.$refs.physicalExamTable.selection
           if (selected.length > 0) {
             const delIds = []
             selected.forEach((j) => {
@@ -2327,8 +2644,7 @@
           }
           break
         case 3:
-          // eslint-disable-next-line no-redeclare
-          var selected = this.$refs.contractInfoTable.selection
+          selected = this.$refs.contractInfoTable.selection
           if (selected.length > 0) {
             const delIds = []
             selected.forEach((j) => {
@@ -2344,8 +2660,7 @@
           }
           break
         case 4:
-          // eslint-disable-next-line no-redeclare
-          var selected = this.$refs.dimissionAttendTable.selection
+          selected = this.$refs.dimissionAttendTable.selection
           if (selected.length > 0) {
             const delIds = []
             selected.forEach((j) => {
@@ -2361,8 +2676,7 @@
           }
           break
         case 5:
-          // eslint-disable-next-line no-redeclare
-          var selected = this.$refs.leaveInfoTable.selection
+          selected = this.$refs.leaveInfoTable.selection
           if (selected.length > 0) {
             const delIds = []
             selected.forEach((j) => {
@@ -2378,8 +2692,7 @@
           }
           break
         case 6:
-          // eslint-disable-next-line no-redeclare
-          var selected = this.$refs.resignTable.selection
+          selected = this.$refs.resignTable.selection
           if (selected.length > 0) {
             const delIds = []
             selected.forEach((j) => {
@@ -2395,8 +2708,7 @@
           }
           break
         case 7:
-          // eslint-disable-next-line no-redeclare
-          var selected = this.$refs.unemploymentTable.selection
+          selected = this.$refs.unemploymentTable.selection
           if (selected.length > 0) {
             const delIds = []
             selected.forEach((j) => {
@@ -2412,8 +2724,7 @@
           }
           break
         case 8:
-          // eslint-disable-next-line no-redeclare
-          var selected = this.$refs.insuranceTable.selection
+          selected = this.$refs.insuranceTable.selection
           if (selected.length > 0) {
             const delIds = []
             selected.forEach((j) => {
@@ -2429,8 +2740,7 @@
           }
           break
         case 9:
-          // eslint-disable-next-line no-redeclare
-          var selected = this.$refs.accidentCasesTable.selection
+          selected = this.$refs.accidentCasesTable.selection
           if (selected.length > 0) {
             const delIds = []
             selected.forEach((j) => {
@@ -2446,8 +2756,7 @@
           }
           break
         case 10:
-          // eslint-disable-next-line no-redeclare
-          var selected = this.$refs.occupationalTable.selection
+          selected = this.$refs.occupationalTable.selection
           if (selected.length > 0) {
             const delIds = []
             selected.forEach((j) => {
@@ -2463,8 +2772,7 @@
           }
           break
         case 11:
-          // eslint-disable-next-line no-redeclare
-          var selected = this.$refs.occupationalTable.selection
+          selected = this.$refs.occupationalTable.selection
           if (selected.length > 0) {
             const delIds = []
             selected.forEach((j) => {
@@ -2480,8 +2788,7 @@
           }
           break
         case 12:
-          // eslint-disable-next-line no-redeclare
-          var selected = this.$refs.badRecordTable.selection
+          selected = this.$refs.badRecordTable.selection
           if (selected.length > 0) {
             const badIds = []
             selected.forEach((j) => {
@@ -2497,8 +2804,7 @@
           }
           break
         case 13:
-          // eslint-disable-next-line no-redeclare
-          var selected = this.$refs.remarkInfoTable.selection
+          selected = this.$refs.remarkInfoTable.selection
           if (selected.length > 0) {
             const badIds = []
             selected.forEach((j) => {
@@ -2515,18 +2821,285 @@
           break
       }
     },
+    deleteFrom() {
+      this.butDelete()
+    },
+    submitTo() {
+      let selected
+      switch (this.thisShowIndex) {
+        case 0:
+          selected = this.$refs.empBaseInfoTable.selection
+          if (selected.length > 0) {
+            const delIds = []
+            selected.forEach((j) => {
+              delIds.push(j.empId)
+            })
+            this.$delete(`hr/empBaseInfo/toNormal/` + delIds).then(() => {
+              this.$message({
+                message: this.$t('tips.submitSuccess'),
+                type: 'success'
+              })
+              this.tableUrl = 'hr/empBaseInfo/list'
+              this.tableDataName = 'basicInformationData'
+              this.queryParams.delFlag = 2
+              this.search()
+            })
+          }
+          break
+        case 1:
+          selected = this.$refs.workExperienceTable.selection
+          if (selected.length > 0) {
+            const delIds = []
+            selected.forEach((j) => {
+              delIds.push(j.workExperienceId)
+            })
+            this.$delete(`hr/empWorkExperience/toNormal/` + delIds).then(() => {
+              this.$message({
+                message: this.$t('tips.submitSuccess'),
+                type: 'success'
+              })
+              this.tableUrl = 'hr/empWorkExperience/list'
+              this.tableDataName = 'workExperienceData'
+              this.queryParams.delFlag = 2
+              this.search()
+            })
+          }
+          break
+        case 2:
+          selected = this.$refs.physicalExamTable.selection
+          if (selected.length > 0) {
+            const delIds = []
+            selected.forEach((j) => {
+              delIds.push(j.physicalExamId)
+            })
+            this.$delete(`hr/empPhysicalExam/toNormal/` + delIds).then(() => {
+              this.$message({
+                message: this.$t('tips.submitSuccess'),
+                type: 'success'
+              })
+              this.tableUrl = 'hr/empPhysicalExam/list'
+              this.tableDataName = 'physicalExamData'
+              this.queryParams.delFlag = 2
+              this.search()
+            })
+          }
+          break
+        case 3:
+          selected = this.$refs.contractInfoTable.selection
+          if (selected.length > 0) {
+            const delIds = []
+            selected.forEach((j) => {
+              delIds.push(j.contractId)
+            })
+            this.$delete(`hr/empContractInfo/toNormal/` + delIds).then(() => {
+              this.$message({
+                message: this.$t('tips.submitSuccess'),
+                type: 'success'
+              })
+              this.tableUrl = 'hr/empContractInfo/list'
+              this.tableDataName = 'contractInfoData'
+              this.queryParams.delFlag = 2
+              this.search()
+            })
+          }
+          break
+        case 4:
+          selected = this.$refs.dimissionAttendTable.selection
+          if (selected.length > 0) {
+            const delIds = []
+            selected.forEach((j) => {
+              delIds.push(j.dimissionAttendId)
+            })
+            this.$delete(`hr/empDimissionAttend/toNormal/` + delIds).then(() => {
+              this.$message({
+                message: this.$t('tips.submitSuccess'),
+                type: 'success'
+              })
+              this.tableUrl = 'hr/empDimissionAttend/list'
+              this.tableDataName = 'dimissionAttendData'
+              this.queryParams.delFlag = 2
+              this.search()
+            })
+          }
+          break
+        case 5:
+          selected = this.$refs.leaveInfoTable.selection
+          if (selected.length > 0) {
+            const delIds = []
+            selected.forEach((j) => {
+              delIds.push(j.leaveId)
+            })
+            this.$delete(`hr/empLeaveInfo/toNormal/` + delIds).then(() => {
+              this.$message({
+                message: this.$t('tips.submitSuccess'),
+                type: 'success'
+              })
+              this.tableUrl = 'hr/empLeaveInfo/list'
+              this.tableDataName = 'leaveInfoData'
+              this.queryParams.delFlag = 2
+              this.search()
+            })
+          }
+          break
+        case 6:
+          selected = this.$refs.resignTable.selection
+          if (selected.length > 0) {
+            const delIds = []
+            selected.forEach((j) => {
+              delIds.push(j.resignId)
+            })
+            this.$delete(`hr/empResign/toNormal/` + delIds).then(() => {
+              this.$message({
+                message: this.$t('tips.submitSuccess'),
+                type: 'success'
+              })
+              this.tableUrl = 'hr/empResign/list'
+              this.tableDataName = 'resignData'
+              this.queryParams.delFlag = 2
+              this.search()
+            })
+          }
+          break
+        case 7:
+          selected = this.$refs.unemploymentTable.selection
+          if (selected.length > 0) {
+            const delIds = []
+            selected.forEach((j) => {
+              delIds.push(j.unemploymentId)
+            })
+            this.$delete(`hr/empUnemployment/toNormal/` + delIds).then(() => {
+              this.$message({
+                message: this.$t('tips.submitSuccess'),
+                type: 'success'
+              })
+              this.tableUrl = 'hr/empUnemployment/list'
+              this.tableDataName = 'unemploymentData'
+              this.queryParams.delFlag = 2
+              this.search()
+            })
+          }
+          break
+        case 8:
+          selected = this.$refs.insuranceTable.selection
+          if (selected.length > 0) {
+            const delIds = []
+            selected.forEach((j) => {
+              delIds.push(j.insuranceId)
+            })
+            this.$delete(`hr/empInsurance/toNormal/` + delIds).then(() => {
+              this.$message({
+                message: this.$t('tips.submitSuccess'),
+                type: 'success'
+              })
+              this.tableUrl = 'hr/empInsurance/list'
+              this.tableDataName = 'insuranceData'
+              this.queryParams.delFlag = 2
+              this.search()
+            })
+          }
+          break
+        case 9:
+          selected = this.$refs.accidentCasesTable.selection
+          if (selected.length > 0) {
+            const delIds = []
+            selected.forEach((j) => {
+              delIds.push(j.accidentId)
+            })
+            this.$delete(`hr/empAccidentCases/toNormal/` + delIds).then(() => {
+              this.$message({
+                message: this.$t('tips.submitSuccess'),
+                type: 'success'
+              })
+              this.tableUrl = 'hr/empAccidentCases/list'
+              this.tableDataName = 'accidentCasesData'
+              this.queryParams.delFlag = 2
+              this.search()
+            })
+          }
+          break
+        case 10:
+          selected = this.$refs.occupationalTable.selection
+          if (selected.length > 0) {
+            const delIds = []
+            selected.forEach((j) => {
+              delIds.push(j.occupationalId)
+            })
+            this.$delete(`hr/empOccupational/toNormal/` + delIds).then(() => {
+              this.$message({
+                message: this.$t('tips.submitSuccess'),
+                type: 'success'
+              })
+              this.tableUrl = 'hr/empOccupational/list'
+              this.tableDataName = 'occupationalData'
+              this.queryParams.delFlag = 2
+              this.search()
+            })
+          }
+          break
+        case 11:
+          selected = this.$refs.laborTroubleTable.selection
+          if (selected.length > 0) {
+            const delIds = []
+            selected.forEach((j) => {
+              delIds.push(j.arbitrationId)
+            })
+            this.$delete(`hr/empLaborTrouble/toNormal/` + delIds).then(() => {
+              this.$message({
+                message: this.$t('tips.submitSuccess'),
+                type: 'success'
+              })
+              this.tableUrl = 'hr/empLaborTrouble/list'
+              this.tableDataName = 'laborTroubleData'
+              this.queryParams.delFlag = 2
+              this.search()
+            })
+          }
+          break
+        case 12:
+          selected = this.$refs.badRecordTable.selection
+          if (selected.length > 0) {
+            const badIds = []
+            selected.forEach((j) => {
+              badIds.push(j.badId)
+            })
+            this.$delete(`hr/empBadRecord/toNormal/` + badIds).then(() => {
+              this.$message({
+                message: this.$t('tips.submitSuccess'),
+                type: 'success'
+              })
+              this.tableUrl = 'hr/empBadRecord/list'
+              this.tableDataName = 'badRecordData'
+              this.queryParams.delFlag = 2
+              this.search()
+            })
+          }
+          break
+        case 13:
+          selected = this.$refs.remarkInfoTable.selection
+          if (selected.length > 0) {
+            const badIds = []
+            selected.forEach((j) => {
+              badIds.push(j.remarkId)
+            })
+            this.$delete(`hr/empRemarkInfo/toNormal/` + badIds).then(() => {
+              this.$message({
+                message: this.$t('tips.submitSuccess'),
+                type: 'success'
+              })
+              this.tableUrl = 'hr/empRemarkInfo/list'
+              this.tableDataName = 'remarkInfoData'
+              this.queryParams.delFlag = 2
+              this.search()
+            })
+          }
+          break
+      }
+    },
     selectEmpBase() {
-      this.$get('hr/empBaseInfo/list')
-        .then((r) => {
-          this.basicInformationData = r.data.data.rows
-        })
-        .catch((error) => {
-          console.error(error)
-          this.$message({
-            message: this.$t('tips.getDataFail'),
-            type: 'error'
-          })
-        })
+      this.tableUrl = 'hr/empBaseInfo/list'
+      this.tableDataName = 'basicInformationData'
+      this.queryParams.delFlag = 2
+      this.search()
     },
     cleanEmpBase() {
       this.empBaseInfoForm.empId = ''
@@ -2553,6 +3126,7 @@
       this.empBaseInfoForm.education = ''
       this.empBaseInfoForm.seniority = ''
       this.empBaseInfoForm.nativePlace = ''
+      this.empBaseInfoForm.nativePlaceName = ''
       this.empBaseInfoForm.censusAddress = ''
       this.empBaseInfoForm.currentAddress = ''
       this.empBaseInfoForm.guardNumb = ''
@@ -2626,55 +3200,56 @@
       this.empBaseInfoForm.version = row.version
       this.dialogshowArr[0].show = true
     },
-    putEmpBase() {
-      if (this.isAdd) {
-        this.$post('hr/empBaseInfo', { ...this.empBaseInfoForm }).then(() => {
-          this.buttonLoading = false
-          this.$message({
-            message: this.$t('tips.createSuccess'),
-            type: 'success'
-          })
-          this.cleanEmpBase()
-          this.selectEmpBase()
-        })
-      } else {
-        this.$put('hr/empBaseInfo', { ...this.empBaseInfoForm }).then(() => {
-          this.$message({
-            message: this.$t('tips.updateSuccess'),
-            type: 'success'
-          })
-          this.$emit('success')
-          this.cleanEmpBase()
-          this.selectEmpBase()
-        })
-      }
-      this.dialogIsShow()
+    putEmpBase(formName) {
+      this.$refs[formName].validate((valid) => {
+        if (valid) {
+          if (this.isAdd) {
+            this.$post('hr/empBaseInfo', { ...this.empBaseInfoForm }).then(() => {
+              this.buttonLoading = false
+              this.$message({
+                message: this.$t('tips.createSuccess'),
+                type: 'success'
+              })
+              this.cleanEmpBase()
+              this.selectEmpBase()
+            })
+          } else {
+            this.$put('hr/empBaseInfo', { ...this.empBaseInfoForm }).then(() => {
+              this.$message({
+                message: this.$t('tips.updateSuccess'),
+                type: 'success'
+              })
+              this.$emit('success')
+              this.cleanEmpBase()
+              this.selectEmpBase()
+            })
+          }
+          this.dialogIsShow()
+        }
+      })
     },
-    putEmpBaseContinue() {
-      if (this.isAdd) {
-        this.$post('hr/empBaseInfo', { ...this.empBaseInfoForm }).then(() => {
-          this.buttonLoading = false
-          this.$message({
-            message: this.$t('tips.createSuccess'),
-            type: 'success'
-          })
-          this.cleanEmpBase()
-          this.selectEmpBase()
-        })
-      }
+    putEmpBaseContinue(formName) {
+      this.$refs[formName].validate((valid) => {
+        if (valid) {
+          if (this.isAdd) {
+            this.$post('hr/empBaseInfo', { ...this.empBaseInfoForm }).then(() => {
+              this.buttonLoading = false
+              this.$message({
+                message: this.$t('tips.createSuccess'),
+                type: 'success'
+              })
+              this.cleanEmpBase()
+              this.selectEmpBase()
+            })
+          }
+        }
+      })
     },
     selectWorkExperience() {
-      this.$get('hr/empWorkExperience/list')
-        .then((r) => {
-          this.workExperienceData = r.data.data.rows
-        })
-        .catch((error) => {
-          console.error(error)
-          this.$message({
-            message: this.$t('tips.getDataFail'),
-            type: 'error'
-          })
-        })
+      this.tableUrl = 'hr/empWorkExperience/list'
+      this.tableDataName = 'workExperienceData'
+      this.queryParams.delFlag = 2
+      this.search()
     },
     putWorkExperience() {
       if (this.isAdd) {
@@ -2750,17 +3325,10 @@
       this.dialogshowArr[1].show = true
     },
     selectPhysicalExam() {
-      this.$get('hr/empPhysicalExam/list')
-        .then((r) => {
-          this.physicalExamData = r.data.data.rows
-        })
-        .catch((error) => {
-          console.error(error)
-          this.$message({
-            message: this.$t('tips.getDataFail'),
-            type: 'error'
-          })
-        })
+      this.tableUrl = 'hr/empPhysicalExam/list'
+      this.tableDataName = 'physicalExamData'
+      this.queryParams.delFlag = 2
+      this.search()
     },
     putPhysicalExam() {
       if (this.isAdd) {
@@ -2841,17 +3409,10 @@
       this.dialogshowArr[2].show = true
     },
     selectContractInfo() {
-      this.$get('hr/empContractInfo/list')
-        .then((r) => {
-          this.contractInfoData = r.data.data.rows
-        })
-        .catch((error) => {
-          console.error(error)
-          this.$message({
-            message: this.$t('tips.getDataFail'),
-            type: 'error'
-          })
-        })
+      this.tableUrl = 'hr/empContractInfo/list'
+      this.tableDataName = 'contractInfoData'
+      this.queryParams.delFlag = 2
+      this.search()
     },
     putContractInfo() {
       if (this.isAdd) {
@@ -2945,15 +3506,10 @@
       this.dialogshowArr[3].show = true
     },
     selectDimissionAttend() {
-      this.$get('hr/empDimissionAttend/list').then((r) => {
-        this.dimissionAttendData = r.data.data.rows
-      }).catch((error) => {
-        console.error(error)
-        this.$message({
-          message: this.$t('tips.getDataFail'),
-          type: 'error'
-        })
-      })
+      this.tableUrl = 'hr/empDimissionAttend/list'
+      this.tableDataName = 'dimissionAttendData'
+      this.queryParams.delFlag = 2
+      this.search()
     },
     putDimissionAttend() {
       if (this.isAdd) {
@@ -3045,15 +3601,10 @@
       this.dialogshowArr[4].show = true
     },
     selectLeaveInfo() {
-      this.$get('hr/empLeaveInfo/list').then((r) => {
-        this.leaveInfoData = r.data.data.rows
-      }).catch((error) => {
-        console.error(error)
-        this.$message({
-          message: this.$t('tips.getDataFail'),
-          type: 'error'
-        })
-      })
+      this.tableUrl = 'hr/empLeaveInfo/list'
+      this.tableDataName = 'leaveInfoData'
+      this.queryParams.delFlag = 2
+      this.search()
     },
     putLeaveInfo() {
       if (this.isAdd) {
@@ -3147,15 +3698,10 @@
       this.dialogshowArr[5].show = true
     },
     selectResign() {
-      this.$get('hr/empResign/list').then((r) => {
-        this.resignData = r.data.data.rows
-      }).catch((error) => {
-        console.error(error)
-        this.$message({
-          message: this.$t('tips.getDataFail'),
-          type: 'error'
-        })
-      })
+      this.tableUrl = 'hr/empResign/list'
+      this.tableDataName = 'resignData'
+      this.queryParams.delFlag = 2
+      this.search()
     },
     putResign() {
       if (this.isAdd) {
@@ -3243,15 +3789,10 @@
       this.dialogshowArr[6].show = true
     },
     selectUnemployment() {
-      this.$get('hr/empUnemployment/list').then((r) => {
-        this.unemploymentData = r.data.data.rows
-      }).catch((error) => {
-        console.error(error)
-        this.$message({
-          message: this.$t('tips.getDataFail'),
-          type: 'error'
-        })
-      })
+      this.tableUrl = 'hr/empUnemployment/list'
+      this.tableDataName = 'unemploymentData'
+      this.queryParams.delFlag = 2
+      this.search()
     },
     putUnemployment() {
       if (this.isAdd) {
@@ -3341,15 +3882,10 @@
       this.dialogshowArr[7].show = true
     },
     selectInsurance() {
-      this.$get('hr/empInsurance/list').then((r) => {
-        this.insuranceData = r.data.data.rows
-      }).catch((error) => {
-        console.error(error)
-        this.$message({
-          message: this.$t('tips.getDataFail'),
-          type: 'error'
-        })
-      })
+      this.tableUrl = 'hr/empInsurance/list'
+      this.tableDataName = 'insuranceData'
+      this.queryParams.delFlag = 2
+      this.search()
     },
     putInsurance() {
       if (this.isAdd) {
@@ -3443,15 +3979,10 @@
       this.dialogshowArr[8].show = true
     },
     selectAccidentCases() {
-      this.$get('hr/empAccidentCases/list').then((r) => {
-        this.accidentCasesData = r.data.data.rows
-      }).catch((error) => {
-        console.error(error)
-        this.$message({
-          message: this.$t('tips.getDataFail'),
-          type: 'error'
-        })
-      })
+      this.tableUrl = 'hr/empAccidentCases/list'
+      this.tableDataName = 'accidentCasesData'
+      this.queryParams.delFlag = 2
+      this.search()
     },
     putAccidentCases() {
       if (this.isAdd) {
@@ -3569,15 +4100,10 @@
       this.dialogshowArr[9].show = true
     },
     selectOccupational() {
-      this.$get('hr/empOccupational/list').then((r) => {
-        this.occupationalData = r.data.data.rows
-      }).catch((error) => {
-        console.error(error)
-        this.$message({
-          message: this.$t('tips.getDataFail'),
-          type: 'error'
-        })
-      })
+      this.tableUrl = 'hr/empOccupational/list'
+      this.tableDataName = 'occupationalData'
+      this.queryParams.delFlag = 2
+      this.search()
     },
     putOccupational() {
       if (this.isAdd) {
@@ -3713,15 +4239,10 @@
       this.dialogshowArr[10].show = true
     },
     selectLaborTrouble() {
-      this.$get('hr/empLaborTrouble/list').then((r) => {
-        this.laborTroubleData = r.data.data.rows
-      }).catch((error) => {
-        console.error(error)
-        this.$message({
-          message: this.$t('tips.getDataFail'),
-          type: 'error'
-        })
-      })
+      this.tableUrl = 'hr/empLaborTrouble/list'
+      this.tableDataName = 'laborTroubleData'
+      this.queryParams.delFlag = 2
+      this.search()
     },
     putLaborTrouble() {
       if (this.isAdd) {
@@ -3817,17 +4338,10 @@
       this.dialogshowArr[11].show = true
     },
     selectBadRecord() {
-      this.$get('hr/empBadRecord/list')
-        .then((r) => {
-          this.badRecordData = r.data.data.rows
-        })
-        .catch((error) => {
-          console.error(error)
-          this.$message({
-            message: this.$t('tips.getDataFail'),
-            type: 'error'
-          })
-        })
+      this.tableUrl = 'hr/empBadRecord/list'
+      this.tableDataName = 'badRecordData'
+      this.queryParams.delFlag = 2
+      this.search()
     },
     cleanBadRecord() {
       this.badRecordForm.badId = ''
@@ -3913,52 +4427,55 @@
       this.dialogshowArr[12].show = true
     },
     selectRemarkInfo() {
-      this.$get('hr/empRemarkInfo/list').then((r) => {
-        this.remarkInfoData = r.data.data.rows
-      }).catch((error) => {
-        console.error(error)
-        this.$message({
-          message: this.$t('tips.getDataFail'),
-          type: 'error'
-        })
+      this.tableUrl = 'hr/empRemarkInfo/list'
+      this.tableDataName = 'remarkInfoData'
+      this.queryParams.delFlag = 2
+      this.search()
+    },
+    putRemarkInfo(formName) {
+      this.$refs[formName].validate((valid) => {
+        if (valid) {
+          if (this.isAdd) {
+            this.$post('hr/empRemarkInfo', { ...this.remarkInfoForm }).then(() => {
+              this.buttonLoading = false
+              this.$message({
+                message: this.$t('tips.createSuccess'),
+                type: 'success'
+              })
+              this.cleanRemarkInfo()
+              this.selectRemarkInfo()
+            })
+          } else {
+            this.$put('hr/empRemarkInfo', { ...this.remarkInfoForm }).then(() => {
+              this.$message({
+                message: this.$t('tips.updateSuccess'),
+                type: 'success'
+              })
+              this.$emit('success')
+              this.cleanRemarkInfo()
+              this.selectRemarkInfo()
+            })
+          }
+          this.dialogIsShow()
+        }
       })
     },
-    putRemarkInfo() {
-      if (this.isAdd) {
-        this.$post('hr/empRemarkInfo', { ...this.remarkInfoForm }).then(() => {
-          this.buttonLoading = false
-          this.$message({
-            message: this.$t('tips.createSuccess'),
-            type: 'success'
-          })
-          this.cleanRemarkInfo()
-          this.selectRemarkInfo()
-        })
-      } else {
-        this.$put('hr/empRemarkInfo', { ...this.remarkInfoForm }).then(() => {
-          this.$message({
-            message: this.$t('tips.updateSuccess'),
-            type: 'success'
-          })
-          this.$emit('success')
-          this.cleanRemarkInfo()
-          this.selectRemarkInfo()
-        })
-      }
-      this.dialogIsShow()
-    },
-    putRemarkInfoContinue() {
-      if (this.isAdd) {
-        this.$post('hr/empRemarkInfo', { ...this.remarkInfoForm }).then(() => {
-          this.buttonLoading = false
-          this.$message({
-            message: this.$t('tips.createSuccess'),
-            type: 'success'
-          })
-          this.cleanRemarkInfo()
-          this.selectRemarkInfo()
-        })
-      }
+    putRemarkInfoContinue(formName) {
+      this.$refs[formName].validate((valid) => {
+        if (valid) {
+          if (this.isAdd) {
+            this.$post('hr/empRemarkInfo', { ...this.remarkInfoForm }).then(() => {
+              this.buttonLoading = false
+              this.$message({
+                message: this.$t('tips.createSuccess'),
+                type: 'success'
+              })
+              this.cleanRemarkInfo()
+              this.selectRemarkInfo()
+            })
+          }
+        }
+      })
     },
     cleanRemarkInfo() {
       this.remarkInfoForm.remarkId = ''
@@ -3982,7 +4499,6 @@
     },
     editRemarkInfo(row) {
       this.isAdd = false
-
       this.remarkInfoForm.remarkId = row.remarkId
       this.remarkInfoForm.empId = row.empId
       this.remarkInfoForm.empNumb = row.empNumb
@@ -4003,6 +4519,103 @@
       this.remarkInfoForm.version = row.version
 
       this.dialogshowArr[13].show = true
+    },
+    showXzyg() {
+      this.dialogShowXzyg = true
+    },
+    cancleChooseUser() {
+      this.dialogShowXzyg = false
+    },
+    selectedUser(users) {
+      for (var i = 0; i < users.length; i++) {
+        var data = users[i]
+        switch (this.thisShowIndex) {
+          case 1:
+            this.inputForName = 'workExperienceForm'
+            break
+          case 2:
+            this.inputForName = 'physicalExamForm'
+            break
+          case 3:
+            this.inputForName = 'contractInfoForm'
+            break
+          case 4:
+            this.inputForName = 'dimissionAttendForm'
+            break
+          case 5:
+            this.inputForName = 'leaveInfoForm'
+            break
+          case 6:
+            this.inputForName = 'resignForm'
+            break
+          case 7:
+            this.inputForName = 'unemploymentForm'
+            break
+          case 8:
+            this.inputForName = 'insuranceForm'
+            break
+          case 9:
+            this.inputForName = 'accidentCasesForm'
+            break
+          case 10:
+            this.inputForName = 'occupationalForm'
+            break
+          case 11:
+            this.inputForName = 'laborTroubleForm'
+            break
+          case 12:
+            this.inputForName = 'badRecordForm'
+            break
+          case 13:
+            this.inputForName = 'remarkInfoForm'
+            break
+        }
+        this[this.inputForName].empId = data.empId
+        this[this.inputForName].empName = data.empName
+        this[this.inputForName].empNumb = data.empNumb
+        this[this.inputForName].certificateNumb = data.certificateNumb
+        this[this.inputForName].deptId = data.deptId
+        this[this.inputForName].deptName = data.deptName
+        this[this.inputForName].JobId = data.jobId
+        this[this.inputForName].jobName = data.jobName
+        this[this.inputForName].sex = data.sex === '0' ? '男' : '女'
+      }
+      this.dialogShowXzyg = false
+    },
+    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
+      // 调用 callback 返回建议列表的数据
+      cb(results)
+    }, jobNameSelect(item) {
+      this.empBaseInfoForm.jobName = item.value
+      this.empBaseInfoForm.JobId = item.code
+    },
+    generateUserInfo(index, val) {
+      var userinfo = toCardGetUserInfo(val)
+      if (userinfo === null) {
+        return
+      }
+      switch (index) {
+        case 0:
+          this.empBaseInfoForm.age = userinfo.age
+          this.empBaseInfoForm.birthdate = userinfo.birth
+          this.empBaseInfoForm.sex = userinfo.sex
+          break
+      }
     }
   }
 }
@@ -4066,3 +4679,8 @@
   line-height: 60px;
 }
 </style>
+<style lang="scss" scoped>
+.el-autocomplete {
+  width: 100%;
+}
+</style>

--
Gitblit v1.8.0