From 41e252403ab9ebaf6777a52b053e6df323a31489 Mon Sep 17 00:00:00 2001
From: luoyb <412940104@qq.com>
Date: 星期六, 20 二月 2021 23:13:47 +0800
Subject: [PATCH] fix(信息录入): bug修复

---
 src/utils/myUtil.js                 |    3 +
 src/views/user/Informationinput.vue |   77 ++++++++++++++++++++++++++------------
 2 files changed, 56 insertions(+), 24 deletions(-)

diff --git a/src/utils/myUtil.js b/src/utils/myUtil.js
index 6a3d908..029e96f 100644
--- a/src/utils/myUtil.js
+++ b/src/utils/myUtil.js
@@ -64,6 +64,9 @@
     case 'd':
       iReturn = Math.floor(dateSpan / (24 * 3600 * 1000))
       break
+    case 'y':
+      iReturn = Math.floor(dateSpan / (365 * 24 * 3600 * 1000))
+      break
   }
   return iReturn
 }
diff --git a/src/views/user/Informationinput.vue b/src/views/user/Informationinput.vue
index 25a7d6d..c4c9976 100644
--- a/src/views/user/Informationinput.vue
+++ b/src/views/user/Informationinput.vue
@@ -165,16 +165,16 @@
               </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="jobName" label="岗位" width="180" />
-          <el-table-column prop="empName" label="员工姓名" width="180" />
-          <el-table-column prop="certificateNumb" label="证件号码" width="180" />
-          <el-table-column prop="signingDate" label="合同签订日期" width="180" />
-          <el-table-column prop="endDate" label="合同结束日期" width="180" />
-          <el-table-column prop="contractPeriod" label="合同期限(年)" width="180" />
-          <el-table-column prop="contractStatus" label="合同状态" width="180" />
-          <el-table-column prop="transactor" label="合同办理人" width="180" />
+          <el-table-column prop="empNumb" label="员工编号" width="100" />
+          <el-table-column prop="deptName" label="护卫点" width="150" />
+          <el-table-column prop="empName" label="员工姓名" width="100" />
+          <el-table-column prop="certificateNumb" label="身份证号码" width="180" />
+          <el-table-column prop="jobName" label="岗位" width="120" />
+          <el-table-column prop="signingDate" label="合同签订日期" width="120" />
+          <el-table-column prop="endDate" label="合同结束日期" width="120" />
+          <el-table-column prop="contractPeriod" label="合同期限(年)" width="120" />
+          <el-table-column prop="contractStatusName" label="合同状态" width="100" />
+          <el-table-column prop="transactor" label="合同办理人" width="100" />
         </el-table>
         <el-table
           v-show="showArr[4].show"
@@ -889,15 +889,6 @@
             <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="请选择合同状态"
-              >
-                <el-option label="新签" value="1" />
-                <el-option label="老签" value="2" />
-              </el-select>
-            </el-form-item>
             <el-form-item label="合同签订日期" prop="signingDate">
               <el-date-picker
                 v-model="contractInfoForm.signingDate"
@@ -906,7 +897,16 @@
                 placeholder="选择日期"
               />
             </el-form-item>
-            <el-form-item label="合同办理人">
+            <el-form-item label="合同状态" prop="contractStatus">
+              <el-select
+                v-model="contractInfoForm.contractStatus"
+                placeholder="请选择合同状态"
+              >
+                <el-option label="新签" value="1" />
+                <el-option label="续签" value="2" />
+              </el-select>
+            </el-form-item>
+            <el-form-item label="合同办理人" prop="transactor">
               <el-input v-model="contractInfoForm.transactor" />
             </el-form-item>
           </el-col>
@@ -928,14 +928,14 @@
                 placeholder="选择日期"
               />
             </el-form-item>
-            <el-form-item label="合同期限(年)">
+            <el-form-item label="合同期限(年)" prop="contractPeriod">
               <el-input v-model="contractInfoForm.contractPeriod" />
             </el-form-item>
           </el-col>
         </el-row>
         <el-row>
           <el-col :span="24">
-            <el-form-item label="备注">
+            <el-form-item label="备注" prop="remark">
               <el-input v-model="contractInfoForm.remark" type="textarea" />
             </el-form-item>
           </el-col>
@@ -1892,11 +1892,11 @@
       },
       contractInfoRules: {
         empName: [{ required: true, message: '请选择员工', trigger: 'change' }],
-        signingDate: [{ required: true, message: '请选择合同签订日期', trigger: 'change' }],
+        signingDate: [{ required: true, validator: this.startDate }],
         contractStatus: [{ required: true, message: '请选择合同状态', trigger: 'change' }],
         transactor: [{ max: 40, message: '长度不超过40个字符', trigger: 'blur' }],
         beginDate: [{ required: true, message: '请选择合同开始日期', trigger: 'change' }],
-        endDate: [{ required: true, message: '请选择合同结束日期', trigger: 'change' }],
+        endDate: [{ required: true, validator: this.endDate }],
         remark: [{ max: 512, message: '长度不超过512个字符', trigger: 'blur' }]
       },
       dimissionAttendRules: {
@@ -2972,6 +2972,20 @@
               }
             }
             break
+          case 3:
+            // 如果结束日期没选,cb
+            if (!this.contractInfoForm.endDate) {
+              callback()
+            } else {
+              // 结束日期有,进行判断
+              if (this.compareDate(value, this.contractInfoForm.endDate)) {
+                // 如果起始在结束之前
+                callback()
+              } else {
+                callback(new Error('开始日期不能在结束日期之后,请重新选择'))
+              }
+            }
+            break
           case 5:
             // 如果结束日期没选,cb
             if (!this.leaveInfoForm.endTime) {
@@ -3009,6 +3023,21 @@
               }
             }
             break
+          case 3:
+            // 如果起始日期没选,cb
+            if (!this.contractInfoForm.signingDate) {
+              callback()
+            } else {
+              // 起始日期有,进行判断
+              if (this.compareDate(this.contractInfoForm.signingDate, value)) {
+                // 如果起始在结束之前
+                this.contractInfoForm.contractPeriod = dateDifference(this.contractInfoForm.signingDate, this.contractInfoForm.endDate, 'y')
+                callback()
+              } else {
+                callback(new Error('结束日期不能在开始始日期之前,请重新选择'))
+              }
+            }
+            break
           case 5:
             // 如果起始日期没选,cb
             if (!this.leaveInfoForm.beginTime) {

--
Gitblit v1.8.0