Quellcode durchsuchen

人员档案修改

shenqilong vor 3 Monaten
Ursprung
Commit
14e8d1dc07

+ 34 - 1
src/views/component/personnelFile/components/jbqkTag.vue

@@ -484,6 +484,7 @@ export default {
     return {
       activeName: 'first',
       nowData: {},
+      isWatch: false,
       rules: {
         jianDangRiQi: [{ validator: option.checkTime, trigger: 'blur' }],
         chuShengRiQi: [{ validator: option.checkTimeNull, trigger: 'blur' }],
@@ -530,10 +531,42 @@ export default {
       // },
       // immediate: true
     // },
+    //监听身份证变化
+    'nowData.shenFenZhengHao': {
+      handler(newVal) {
+        if (newVal && this.isWatch) {
+          if (newVal.length === 18) {
+            this.nowData.chuShengRiQi =
+              newVal.substring(6, 10) +
+              '-' +
+              newVal.substring(10, 12) +
+              '-' +
+              newVal.substring(12, 14)
+          }
+        }
+      },
+      immediate: false
+    },
+    // 监听出生日期变化
+    'nowData.chuShengRiQi': {
+      handler(newVal) {
+        if (newVal && this.isWatch) {
+          const ageDifMs = Date.now() - new Date(newVal).getTime()
+          const ageDate = new Date(ageDifMs)
+          this.nowData.nianLing = Math.abs(ageDate.getUTCFullYear() - 1970)
+        }
+      }
+      // immediate: true
+    },
     planeData: {
       handler: function (val, oldVal) {
         // eslint-disable-next-line no-undef
-        this.nowData = structuredClone(val)
+        if (this.$utils.isNotEmpty(val)) {
+          this.nowData = structuredClone(val)
+          setTimeout(() => {
+            this.isWatch = true
+          }, 0)
+        }
         // if(this.nowData.ruZhiShiJian){
           // this.calculateWorkYears(this.nowData.ruZhiShiJian, 'benZhuanYeGong')
         // }

+ 26 - 24
src/views/component/personnelFile/components/modulesTag.vue

@@ -81,7 +81,7 @@
             </el-tab-pane> -->
       <el-tab-pane
         v-if="judgeTag('bmsm')"
-        label="公正性、保密性"
+        :label="judgeTagName('bmsm')"
         name="bmsm"
         class="tabPane"
       >
@@ -112,7 +112,7 @@
           >
             <el-tab-pane
               v-if="judgeTag('kyxmglb')"
-              label="科研项目"
+              :label="judgeTagName('kyxmglb')"
               name="kyxmglb"
               class="tabPane shadowNone paddingInner"
             >
@@ -129,7 +129,7 @@
             </el-tab-pane>
             <el-tab-pane
               v-if="judgeTag('kjhjcgglb')"
-              label="获奖成果"
+              :label="judgeTagName('kjhjcgglb')"
               name="kjhjcgglb"
               class="tabPane shadowNone paddingInner"
             >
@@ -146,7 +146,7 @@
             </el-tab-pane>
             <el-tab-pane
               v-if="judgeTag('SCIwzglb')"
-              label="SCI文章"
+              :label="judgeTagName('SCIwzglb')"
               name="SCIwzglb"
               class="tabPane shadowNone paddingInner"
             >
@@ -163,7 +163,7 @@
             </el-tab-pane>
             <el-tab-pane
               v-if="judgeTag('zwlwglb')"
-              label="中文论文"
+              :label="judgeTagName('zwlwglb')"
               name="zwlwglb"
               class="tabPane shadowNone paddingInner"
             >
@@ -180,7 +180,7 @@
             </el-tab-pane>
             <el-tab-pane
               v-if="judgeTag('kyzzglb')"
-              label="专著"
+              :label="judgeTagName('kyzzglb')"
               name="kyzzglb"
               class="tabPane shadowNone paddingInner"
             >
@@ -197,7 +197,7 @@
             </el-tab-pane>
             <el-tab-pane
               v-if="judgeTag('kyzlglb')"
-              label="专利"
+              :label="judgeTagName('kyzlglb')"
               name="kyzlglb"
               class="tabPane shadowNone paddingInner"
             >
@@ -214,7 +214,7 @@
             </el-tab-pane>
             <el-tab-pane
               v-if="judgeTag('jxjyxmxshdglb')"
-              label="继续教育学术活动"
+              :label="judgeTagName('jxjyxmxshdglb')"
               name="jxjyxmxshdglb"
               class="tabPane shadowNone paddingInner"
             >
@@ -231,7 +231,7 @@
             </el-tab-pane>
             <el-tab-pane
               v-if="judgeTag('kphdglb')"
-              label="科普活动"
+              :label="judgeTagName('kphdglb')"
               name="kphdglb"
               class="tabPane shadowNone paddingInner"
             >
@@ -264,7 +264,7 @@
           >
             <el-tab-pane
               v-if="judgeTag('jyrykhjlbsz')"
-              label="考核记录"
+              :label="judgeTagName('jyrykhjlbsz')"
               name="jyrykhjlbsz"
               class="tabPane shadowNone paddingInner"
             >
@@ -282,7 +282,7 @@
             </el-tab-pane>
             <el-tab-pane
               v-if="judgeTag('jyrykhjlb')"
-              label="人员能力评估"
+              :label="judgeTagName('jyrykhjlb')"
               name="jyrykhjlb"
               class="tabPane shadowNone paddingInner"
             >
@@ -318,7 +318,7 @@
             </el-tab-pane>
             <el-tab-pane
               v-if="judgeTag('lhryjdjlb')"
-              label="人员监督记录"
+              :label="judgeTagName('lhryjdjlb')"
               name="lhryjdjlb"
               class="tabPane shadowNone paddingInner"
             >
@@ -352,7 +352,7 @@
           >
             <el-tab-pane
               v-if="judgeTag('lhrypxjlb')"
-              label="内部培训"
+              :label="judgeTagName('lhrypxjlb')"
               name="lhrypxjlb"
               class="tabPane shadowNone paddingInner"
             >
@@ -370,7 +370,7 @@
             </el-tab-pane>
             <el-tab-pane
               v-if="judgeTag('lhpxsqb')"
-              label="外部培训"
+              :label="judgeTagName('lhpxsqb')"
               name="lhpxsqb"
               class="tabPane shadowNone paddingInner"
             >
@@ -391,7 +391,7 @@
       </el-tab-pane>
       <el-tab-pane
         v-if="judgeTag('kaoshijilu')"
-        label="考试记录"
+        :label="judgeTagName('kaoshijilu')"
         name="kaoshijilu"
         class="tabPane"
       >
@@ -409,7 +409,7 @@
       </el-tab-pane>
       <el-tab-pane
         v-if="judgeTag('tjbgb')"
-        label="体检报告"
+        :label="judgeTagName('tjbgb')"
         name="tjbgb"
         class="tabPane"
       >
@@ -566,7 +566,7 @@ export default {
       switch (val.name) {
         case 'kygl':
           this.handleClick({ name: this.activeNameTabInner })
-          break;
+          break
         case 'rykhysq':
           this.handleClickRY({ name: this.activeNameTabInnerRY })
           break
@@ -635,7 +635,11 @@ export default {
         this.buttonType !== 4
       )
     },
-    judgeTagStair(val,name) {
+
+    judgeTagName(val) {
+      return this.tagData[val]?.title
+    },
+    judgeTagStair(val, name) {
       let disTF = false
       val.forEach((element) => {
         if (
@@ -665,8 +669,8 @@ export default {
       return Object.keys(this.baseData).length > 0
         ? this.baseData[val].data
         : type === 'obj'
-          ? {}
-          : []
+        ? {}
+        : []
     },
     changeBaseData(val, name) {
       this.$emit('getChangeBaseData', val, name)
@@ -702,10 +706,8 @@ export default {
     background-color: #fff;
     // padding-bottom: 1%;
 
-    box-shadow:
-      0px 6px 8px -6px rgba(255, 0255, 255, 1),
-      -6px 6px 8px -6px rgba(0, 0, 0, 0.1),
-      6px 6px 8px -6px rgba(0, 0, 0, 0.1);
+    box-shadow: 0px 6px 8px -6px rgba(255, 0255, 255, 1),
+      -6px 6px 8px -6px rgba(0, 0, 0, 0.1), 6px 6px 8px -6px rgba(0, 0, 0, 0.1);
     border-radius: 0 0 4px 4px;
   }
   ::v-deep .el-tabs__item.is-active {