From 99563684fb0432f5d755b9b99aaf95fa32634b96 Mon Sep 17 00:00:00 2001
From: luoyb <412940104@qq.com>
Date: 星期日, 03 三月 2024 19:28:43 +0800
Subject: [PATCH] 入离职记录增加部门护卫点信息: - 信息录入:写入入职的部门信息 - 在职员工:关闭档案时写入离职时的部门信息 - 离职员工:打开档案时写入打开时的部门信息 - 档案导出:在职员工和离职员工模板导出档案时的入离职记录的部门信息导出 上传左边的标签面是动态生成,调整数据库中标签数据,使生成的标签和更改的要求一致

---
 src/views/user/outemployess.vue |  153 +++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 113 insertions(+), 40 deletions(-)

diff --git a/src/views/user/outemployess.vue b/src/views/user/outemployess.vue
index 89d9c0a..b08233c 100644
--- a/src/views/user/outemployess.vue
+++ b/src/views/user/outemployess.vue
@@ -7,7 +7,7 @@
             <h3 class="bu-tian-jia-title">离职员工</h3>
           </el-col>
           <el-col :span="9" style="margin-top: 15px;">
-            <el-input v-model="queryParams.vague" placeholder="请输入内容" style="width:300px" />
+            <el-input v-model="queryParams.baseKey" placeholder="请输入内容" style="width:300px" />
             <span class="search-btn" @click="vagueSearch">查询</span>
             <span class="sup-search-btn" @click="advancedQueryShowMethods">高级查询</span>
           </el-col>
@@ -143,7 +143,7 @@
                     </td>
                   </tr>
                   <tr>
-                    <td class="td">保险类型:</td>
+                    <td class="td">社保档位:</td>
                     <td class="td-group">
                       <el-checkbox-group v-model="queryParams.insuranceType" class="fj-checkbox">
                         <el-checkbox label="" @change="selectAllInsuranceType">全部</el-checkbox>
@@ -177,9 +177,12 @@
                     <td class="td-group">
                       <el-checkbox-group v-model="queryParams.dimissionType" class="fj-checkbox">
                         <el-checkbox label="" @change="selectAllDimissionType">全部</el-checkbox>
-                        <el-checkbox :label="1">正常离职</el-checkbox>
-                        <el-checkbox :label="2">自动离职</el-checkbox>
+                        <el-checkbox :label="6">正常离职</el-checkbox>
+                        <el-checkbox :label="4">自动离职</el-checkbox>
+                        <el-checkbox :label="2">公司劝退</el-checkbox>
+                        <el-checkbox :label="1">合同期满</el-checkbox>
                         <el-checkbox :label="3">公司辞退</el-checkbox>
+                        <el-checkbox :label="5">试用期内</el-checkbox>
                         <!--                        <el-checkbox-->
                         <!--                          v-for="data in dimissionTypeOptions"-->
                         <!--                          :key="data.dicItemName"-->
@@ -187,6 +190,21 @@
                         <!--                        >-->
                         <!--                          {{ data.dicItemName }}-->
                         <!--                        </el-checkbox>-->
+                      </el-checkbox-group>
+                    </td>
+                  </tr>
+                  <tr>
+                    <td class="td">相关证件:</td>
+                    <td class="td-group">
+                      <el-checkbox-group v-model="queryParams.certificateList" class="fj-checkbox">
+                        <el-checkbox label="" @change="selectAllCertificateList">全部</el-checkbox>
+                        <el-checkbox
+                          v-for="data in certificateListOptions"
+                          :key="data.dicItemName"
+                          :label="data.dicItemCode"
+                        >
+                          {{ data.dicItemName }}
+                        </el-checkbox>
                       </el-checkbox-group>
                     </td>
                   </tr>
@@ -226,6 +244,7 @@
           :header-cell-style="{'height':'5.3vh','background-color':'#e6e6e6','text-align':'center'}"
           :cell-style="{padding:'7px 0','text-align':'center'}"
           style="width: 100%;color: #000;"
+          @sort-change="changeSort"
         >
           <el-table-column type="selection" width="55" />
           <el-table-column label="操作" width="70">
@@ -249,37 +268,43 @@
               >编辑</span> -->
             </template>
           </el-table-column>
-          <el-table-column show-overflow-tooltip="true" prop="empNumb" label="编号" width="100" />
-          <el-table-column show-overflow-tooltip="true" prop="deptName" label="部门(护卫点)" />
-          <el-table-column show-overflow-tooltip="true" prop="jobName" label="岗位" width="100" />
-          <el-table-column show-overflow-tooltip="true" prop="empName" label="姓名" width="100" />
-          <el-table-column show-overflow-tooltip="true" prop="certificateNumb" label="身份证号码" />
-          <el-table-column show-overflow-tooltip="true" prop="sex" label="性别" width="60" :formatter="sexFormat" />
-          <el-table-column show-overflow-tooltip="true" prop="age" label="年龄" width="60" />
+          <el-table-column show-overflow-tooltip prop="empNumb" label="编号" width="80" sortable="custom" :sort-orders="['ascending', 'descending']" />
+          <el-table-column show-overflow-tooltip prop="allDeptName" label="部门(护卫点)" width="280" sortable="custom" :sort-orders="['ascending', 'descending']" />
+          <el-table-column show-overflow-tooltip prop="jobName" label="岗位" width="80" />
+          <el-table-column show-overflow-tooltip prop="empName" label="姓名" width="80" sortable="custom" :sort-orders="['ascending', 'descending']" />
+          <el-table-column show-overflow-tooltip prop="certificateNumb" label="身份证号码" width="160" sortable="custom" :sort-orders="['ascending', 'descending']" />
+          <el-table-column show-overflow-tooltip prop="sex" label="性别" width="50" :formatter="sexFormat" />
+          <el-table-column show-overflow-tooltip prop="age" label="年龄" width="80" sortable="custom" :sort-orders="['ascending', 'descending']" />
           <el-table-column
-            show-overflow-tooltip="true"
+            show-overflow-tooltip
             prop="education"
             label="学历"
             width="60"
             :formatter="educationFormat"
+            ortable="custom"
+            :sort-orders="['ascending', 'descending']"
           />
-          <el-table-column show-overflow-tooltip="true" prop="nativePlaceName" label="籍贯" width="70" />
+          <el-table-column show-overflow-tooltip prop="nativePlaceName" label="籍贯" width="70" />
+          <el-table-column show-overflow-tooltip prop="telePhone" label="联系电话" width="110" />
           <el-table-column
-            show-overflow-tooltip="true"
+            show-overflow-tooltip
             prop="empType"
             label="员工类型"
             width="80"
             :formatter="empTypeFormat"
           />
-          <el-table-column show-overflow-tooltip="true" prop="telePhone" label="联系电话" width="120" />
-          <el-table-column show-overflow-tooltip="true" prop="entryDate" label="入职日期" width="130" />
-          <el-table-column show-overflow-tooltip="true" prop="dimissionDate" label="离职日期" width="130" />
-          <el-table-column show-overflow-tooltip="true" prop="empStatus" label="员工状态" width="80">
+          <el-table-column show-overflow-tooltip prop="entryDate" label="入职日期" width="110" sortable="custom" :sort-orders="['ascending', 'descending']" />
+          <el-table-column show-overflow-tooltip prop="dimissionDate" label="离职日期" width="110" sortable="custom" :sort-orders="['ascending', 'descending']" />
+          <el-table-column show-overflow-tooltip prop="empStatus" label="员工状态" width="80">
             <template slot-scope="{row}">
               {{ transEmpStatus(row.empStatus) }}
             </template>
           </el-table-column>
-          <el-table-column prop="dimissionTypeName" label="离职类型" width="80" />
+          <el-table-column prop="dimissionType" label="离职类型" width="120" sortable="custom" :sort-orders="['ascending', 'descending']">
+            <template slot-scope="{row}">
+              {{ transEntryType(row.dimissionType) }}
+            </template>
+          </el-table-column>
         </el-table>
         <pagination
           v-show="total>0"
@@ -406,7 +431,7 @@
               <tr>
                 <td>入职日期</td>
                 <td>2020-01-02</td>
-                <td>保险类型</td>
+                <td>社保档位</td>
                 <td>深户(五险一档)</td>
                 <td>社保电脑号</td>
                 <td />
@@ -420,9 +445,9 @@
                 <td>已发</td>
               </tr>
               <tr>
-                <td>家庭成员及关系</td>
+                <td>家庭成员及关系1</td>
                 <td />
-                <td>紧急联系电话</td>
+                <td>家庭成员及关系2</td>
                 <td />
                 <td>员工手册</td>
                 <td>已发</td>
@@ -981,8 +1006,8 @@
           <el-col span="24">
             <el-form-item label="打开类型" prop="region">
               <el-radio-group v-model="baseicInformationForm.openType">
-                <el-radio :label="5">重新入职</el-radio>
-                <el-radio :label="6">返聘</el-radio>
+                <el-radio :label="21">重新入职</el-radio>
+                <el-radio :label="22">返聘</el-radio>
               </el-radio-group>
               (主要对已退休员工返聘)
             </el-form-item>
@@ -1038,7 +1063,7 @@
           <tr>
             <td>部门(护卫点)</td>
             <td>
-              <el-checkbox label="deptName"><span /></el-checkbox>
+              <el-checkbox label="allDeptName"><span /></el-checkbox>
             </td>
             <td>所属岗位</td>
             <td>
@@ -1134,7 +1159,7 @@
             </td>
           </tr>
           <tr>
-            <td>家庭成员及关系</td>
+            <td>家庭成员及关系1</td>
             <td>
               <el-checkbox label="family"><span /></el-checkbox>
             </td>
@@ -1152,7 +1177,7 @@
             <td>
               <el-checkbox label="entryDate"><span /></el-checkbox>
             </td>
-            <td>保险类型</td>
+            <td>社保档位</td>
             <td>
               <el-checkbox label="insuranceTypeName"><span /></el-checkbox>
             </td>
@@ -1178,15 +1203,29 @@
           <tr>
             <td>相关证件</td>
             <td>
-              <el-checkbox label="certificateList"><span /></el-checkbox>
+              <el-checkbox label="certificateListName"><span /></el-checkbox>
             </td>
-            <td>紧急联系电话</td>
+            <td>家庭成员及关系2</td>
             <td>
               <el-checkbox label="urgencyPhone"><span /></el-checkbox>
             </td>
             <td>员工手册</td>
             <td>
               <el-checkbox label="handbookStatusName"><span /></el-checkbox>
+            </td>
+          </tr>
+          <tr>
+            <td>入职类型</td>
+            <td>
+              <el-checkbox label="entryTypeName"><span /></el-checkbox>
+            </td>
+            <td>离职类型</td>
+            <td>
+              <el-checkbox label="dimissionTypeName"><span /></el-checkbox>
+            </td>
+            <td>编号</td>
+            <td>
+              <el-checkbox label="empNumb"><span /></el-checkbox>
             </td>
           </tr>
         </el-checkbox-group>
@@ -1234,7 +1273,8 @@
         insuranceType: [],
         empStatus: [],
         dimissionType: [],
-        empType: []
+        empType: [],
+        certificateList: []
       }, // 查询参数
       sort: {}, // 排序
       pagination: { // 分页参数
@@ -1264,7 +1304,7 @@
       archivesStatusOptions: [],
       sexOptions: [],
       empTypeOptions: [],
-      cityOptions: ['archivesNumb', 'deptName', 'jobName', 'empName', 'certificateNumb', 'certificateValidity', 'sexName', 'nationName', 'age', 'marriageName', 'stature', 'birthdate', 'politicsName', 'empTypeName', 'educationName', 'nativePlaceName', 'censusAddress', 'currentAddress', 'guardNumb', 'returnReceipt', 'archivesStatusName', 'bankName', 'bankNumb', 'telePhone', 'entryDate', 'insuranceTypeName', 'socialNumb', 'introducer', 'seniority', 'empCardStatus', 'certificateList', 'urgencyPhone', 'handbookStatusName', 'family', 'empStatusName', 'dimissionDate'],
+      cityOptions: ['archivesNumb', 'allDeptName', 'jobName', 'empName', 'certificateNumb', 'certificateValidity', 'sexName', 'nationName', 'age', 'marriageName', 'stature', 'birthdate', 'politicsName', 'empTypeName', 'educationName', 'nativePlaceName', 'censusAddress', 'currentAddress', 'guardNumb', 'returnReceipt', 'archivesStatusName', 'bankName', 'bankNumb', 'telePhone', 'entryDate', 'insuranceTypeName', 'socialNumb', 'introducer', 'seniority', 'empCardStatusName', 'certificateListName', 'urgencyPhone', 'handbookStatusName', 'family', 'empStatusName', 'dimissionDate', 'entryTypeName', 'dimissionTypeName', 'empNumb'],
       checkedCities: []
     }
   },
@@ -1290,6 +1330,9 @@
     })
     this.getDicts('EMPTYPE').then(response => {
       this.empTypeOptions = response.data
+    })
+    this.getDicts('certificateList').then(response => {
+      this.certificateListOptions = response.data
     })
   },
   methods: {
@@ -1357,7 +1400,7 @@
     },
     // 翻页方法
     search() {
-      this.queryParams.vague = ''
+      this.queryParams.baseKey = ''
       this.fetch({
         ...this.queryParams,
         ...this.sort
@@ -1379,7 +1422,7 @@
     },
     vagueSearch() {
       this.fetch({
-        baseKey: this.queryParams.vague
+        baseKey: this.queryParams.baseKey
       })
     },
     transEmpStatus(empStatus) {
@@ -1392,6 +1435,22 @@
           return '退休'
       }
     },
+    transEntryType(entryType) {
+      switch (entryType) {
+        case '1':
+          return '合同期满'
+        case '2':
+          return '公司劝退'
+        case '3':
+          return '公司辞退'
+        case '4':
+          return '自动离职'
+        case '5':
+          return '试用期内'
+        case '6':
+          return '正常离职'
+      }
+    },
     transDimissionType(dimissionType) {
       switch (dimissionType) {
         case '1':
@@ -1399,11 +1458,11 @@
         case '2':
           return '自动离职'
         case '3':
-          return '公司劝退'
-        case '4':
           return '公司辞退'
-        case '5':
-          return '试用期内'
+        // case '4':
+        //   return '公司辞退'
+        // case '5':
+        //   return '试用期内'
       }
     },
     advancedQueryShowMethods() {
@@ -1459,6 +1518,7 @@
             var id = selection[0].empId
             var name = selection[0].empName
             var number = selection[0].certificateNumb
+            var deptName = selection[0].allDeptName
             const nowDate = new Date()
             const year = nowDate.getFullYear()
             const month = nowDate.getMonth() + 1
@@ -1467,9 +1527,10 @@
               empId: id,
               empName: name,
               certificateNumb: number,
-              openType: 2,
+              openType: 21,
               openDate: year + '-' + month + '-' + day,
-              remark: ''
+              remark: '',
+              allDeptName: deptName
             }
             this.dialogShowDkda = true
           } else {
@@ -1591,7 +1652,7 @@
     },
     selectAllDimissionType(val) {
       if (val) {
-        this.queryParams.dimissionType = [1, 2, 3]
+        this.queryParams.dimissionType = [1, 2, 3, 4, 5, 6]
       } else {
         this.queryParams.dimissionType = []
       }
@@ -1604,6 +1665,13 @@
     handleCheckAllChange(val) {
       this.checkedCities = val ? this.cityOptions : []
       this.isIndeterminate = false
+    },
+    selectAllCertificateList(val) {
+      if (val) {
+        this.queryParams.certificateList = this.dicListToArr(this.certificateListOptions)
+      } else {
+        this.queryParams.certificateList = []
+      }
     },
     showDcyg(operate) {
       switch (operate) {
@@ -1625,6 +1693,11 @@
           })
           break
       }
+    },
+    changeSort(val) {
+      this.sort.field = val.prop
+      this.sort.order = val.order
+      this.search()
     }
   }
 }

--
Gitblit v1.8.0