From e7d48e5d05e8575163e3508a1adda24f7c9141e4 Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期一, 23 十月 2023 16:08:54 +0800
Subject: [PATCH] 1.优化

---
 src/views/systemSetting/dataImport.vue |  950 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 924 insertions(+), 26 deletions(-)

diff --git a/src/views/systemSetting/dataImport.vue b/src/views/systemSetting/dataImport.vue
index fcb88e6..7ff29d6 100644
--- a/src/views/systemSetting/dataImport.vue
+++ b/src/views/systemSetting/dataImport.vue
@@ -70,7 +70,7 @@
       style="margin: 10px"
     >
 
-      <el-tabs v-model="activeName" type="border-card" @tab-click="handleTabClick">
+      <el-tabs v-model="activeName" type="border-card">
         <el-tab-pane
           v-for="(i,j) in sheetName"
           :key="i+j"
@@ -124,7 +124,22 @@
                     item.indexOf('绫诲瀷缂栫爜')!==-1||
                     item.indexOf('鑱旂郴浜�')!==-1||
                     item.indexOf('鑱旂郴鏂瑰紡')!==-1||
-                    item.indexOf('鍦板潃')!==-1
+                    item.indexOf('鍦板潃')!==-1||
+                    item.indexOf('鎵�灞炰粨搴撶紪鐮�')!==-1||
+                    item.indexOf('涓婄骇搴撲綅缂栫爜')!==-1||
+                    item.indexOf('瑙勬牸鍨嬪彿')!==-1||
+                    item.indexOf('瀛樿揣鍒嗙被')!==-1||
+                    item.indexOf('浠撳簱缂栫爜')!==-1||
+                    item.indexOf('棰勮瀵垮懡')!==-1||
+                    item.indexOf('鍓╀綑瀵垮懡')!==-1||
+                    item.indexOf('妯″叿缂栫爜')!==-1||
+                    item.indexOf('浜у搧缂栫爜')!==-1||
+
+                    item.indexOf('鏍囧噯缂栧彿')!==-1||
+                    item.indexOf('椤瑰簭鍙�')!==-1||
+                    item.indexOf('椤硅姹�')!==-1||
+
+                    item.indexOf('璁¢噺鍗曚綅/缁勫悕绉�')!==-1
                   "
                 >
                   <el-input v-model="row[item]" placeholder="璇疯緭鍏�" />
@@ -139,6 +154,63 @@
                   >
                     <el-option
                       v-for="item in statusArr"
+                      :key="item.code"
+                      :label="item.name"
+                      :value="item.code"
+                    />
+                  </el-select>
+                </div>
+                <div v-else-if="item.indexOf('璁¢噺鏂瑰紡')!==-1">
+                  <el-select
+                    v-model="row[item]"
+                    placeholder="璇烽�夋嫨"
+                    filterable
+                    style="width:100%"
+                    clearable
+                  >
+                    <el-option
+                      v-for="item in meterMethodArr"
+                      :key="item.code"
+                      :label="item.name"
+                      :value="item.code"
+                    />
+                  </el-select>
+                </div>
+                <div v-else-if="item.indexOf('宸ュ簭绫诲瀷')!==-1">
+                  <el-select
+                    v-model="row[item]"
+                    placeholder="璇烽�夋嫨"
+                    filterable
+                    style="width:100%"
+                    clearable
+                  >
+                    <el-option
+                      v-for="item in stepTypeArr"
+                      :key="item.code"
+                      :label="item.name"
+                      :value="item.code"
+                    />
+                  </el-select>
+                </div>
+                <div
+                  v-else-if="
+                    item.indexOf('搴撲綅绠$悊')!==-1||
+                      item.indexOf('鏄惁澶栬喘')!==-1||
+                      item.indexOf('鏄惁閿�鍞�')!==-1||
+                      item.indexOf('鏄惁鑷埗')!==-1||
+                      item.indexOf('鏄惁鐢熶骇娑堣��')!==-1||
+                      item.indexOf('鏄惁濮斿')!==-1
+                  "
+                >
+                  <el-select
+                    v-model="row[item]"
+                    placeholder="璇烽�夋嫨"
+                    filterable
+                    style="width:100%"
+                    clearable
+                  >
+                    <el-option
+                      v-for="item in isYesOrNo"
                       :key="item.code"
                       :label="item.name"
                       :value="item.code"
@@ -276,7 +348,7 @@
           <el-table-column
             prop="errorField"
             label="閿欒瀛楁"
-
+            width="160"
             show-overflow-tooltip
           />
           <el-table-column
@@ -322,6 +394,14 @@
       excelArr: [],
 
       statusArr: [],
+      isYesOrNo: [
+        { code: '1', name: '鏄�' },
+        { code: '0', name: '鍚�' }
+      ],
+      stepTypeArr: [
+        { code: 'Z', name: '鑷埗' },
+        { code: 'W', name: '澶栧崗' }
+      ],
       orgArr: [], // 缁勭粐
       orgOptions: [],
       defaultProps: {
@@ -342,6 +422,11 @@
 
       dialogVisible: false,
       dialogTableData: [],
+
+      meterMethodArr: [
+        { code: 'S', name: '鍗曡閲�' },
+        { code: 'M', name: '澶氳閲�' }
+      ],
 
       activeName: '0'// tab閫変腑鍊�
 
@@ -406,8 +491,8 @@
 
       if (this.sheetName.indexOf('寰�鏉ュ崟浣�') !== -1) {
         this.statusArr = [
-          { code: 'Y', name: '姝e父' },
-          { code: 'N', name: '鍋滅敤' }
+          { code: '0', name: '姝e父' },
+          { code: '1', name: '鍋滅敤' }
         ]
         this.tableData[0].forEach(j => {
           j.uuid = nanoid()
@@ -418,9 +503,95 @@
         })
       }
 
-      // console.log(this.sheetName)
-      // console.log(this.tableData)
-      // console.log(this.tableHeader)
+      if (this.sheetName.indexOf('浠撳簱璁剧疆') !== -1) {
+        this.statusArr = [
+          { code: '0', name: '姝e父' },
+          { code: '1', name: '鍋滅敤' }
+        ]
+        this.tableData[0].forEach(j => {
+          j['*鐘舵��'] = j['*鐘舵��'] ? this.statusArr.find(e => e.name === j['*鐘舵��']).code : ''
+          j['*搴撲綅绠$悊'] = j['*搴撲綅绠$悊'] ? this.isYesOrNo.find(e => e.name === j['*搴撲綅绠$悊']).code : ''
+          j.uuid = nanoid()
+        })
+      }
+
+      if (this.sheetName.indexOf('瀛樿揣鍒嗙被') !== -1) {
+        this.statusArr = [
+          { code: '0', name: '姝e父' },
+          { code: '1', name: '鍋滅敤' }
+        ]
+        this.tableData[0].forEach(j => {
+          j.uuid = nanoid()
+        })
+        this.tableData[1].forEach(j => {
+          j['*鐘舵��'] = j['*鐘舵��'] ? this.statusArr.find(e => e.name === j['*鐘舵��']).code : ''
+          j['*璁¢噺鏂瑰紡'] = j['*璁¢噺鏂瑰紡'] ? this.meterMethodArr.find(e => e.name === j['*璁¢噺鏂瑰紡']).code : '0'
+          j['鏄惁澶栬喘'] = j['鏄惁澶栬喘'] ? this.isYesOrNo.find(e => e.name === j['鏄惁澶栬喘']).code : '0'
+          j['鏄惁閿�鍞�'] = j['鏄惁閿�鍞�'] ? this.isYesOrNo.find(e => e.name === j['鏄惁閿�鍞�']).code : '0'
+          j['鏄惁鑷埗'] = j['鏄惁鑷埗'] ? this.isYesOrNo.find(e => e.name === j['鏄惁鑷埗']).code : '0'
+          j['鏄惁鐢熶骇娑堣��'] = j['鏄惁鐢熶骇娑堣��'] ? this.isYesOrNo.find(e => e.name === j['鏄惁鐢熶骇娑堣��']).code : '0'
+          j['鏄惁濮斿'] = j['鏄惁濮斿'] ? this.isYesOrNo.find(e => e.name === j['鏄惁濮斿']).code : '0'
+          j.uuid = nanoid()
+        })
+      }
+      if (this.sheetName.indexOf('璁惧绫诲瀷') !== -1) {
+        this.statusArr = [
+          { code: 'Y', name: '姝e父' },
+          { code: 'N', name: '鍋滅敤' }
+        ]
+        const orgArr = this.orgArr.map(i => i.torg_code)
+
+        this.tableData[0].forEach(j => {
+          j.uuid = nanoid()
+        })
+        this.tableData[1].forEach(j => {
+          j['*鐘舵��'] = j['*鐘舵��'] ? this.statusArr.find(e => e.name === j['*鐘舵��']).code : ''
+          j['*鎵�灞炵粍缁囩紪鐮�'] = j['*鎵�灞炵粍缁囩紪鐮�'] ? (orgArr.includes(j['*鎵�灞炵粍缁囩紪鐮�']) ? this.findParent([], j['*鎵�灞炵粍缁囩紪鐮�'], this.orgOptions).reverse() : '') : ''
+          j.uuid = nanoid()
+        })
+      }
+
+      if (this.sheetName.indexOf('宸ュ簭璁剧疆') !== -1) {
+        this.statusArr = [
+          { code: 'Y', name: '姝e父' },
+          { code: 'N', name: '鍋滅敤' }
+        ]
+        this.tableData[0].forEach(j => {
+          j['*鐘舵��'] = j['*鐘舵��'] ? this.statusArr.find(e => e.name === j['*鐘舵��']).code : ''
+          j['*宸ュ簭绫诲瀷'] = j['*宸ュ簭绫诲瀷'] ? this.stepTypeArr.find(e => e.name === j['*宸ュ簭绫诲瀷']).code : ''
+          j.uuid = nanoid()
+        })
+      }
+
+      if (this.sheetName.indexOf('妯″叿娓呭崟') !== -1) {
+        this.statusArr = [
+          { code: 'Y', name: '姝e父' },
+          { code: 'N', name: '鏁呴殰' }
+        ]
+
+        this.tableData[0].forEach(j => {
+          j.uuid = nanoid()
+          j['*鐘舵��'] = j['*鐘舵��'] ? this.statusArr.find(e => e.name === j['*鐘舵��']).code : ''
+        })
+        this.tableData[1].forEach(j => {
+          j.uuid = nanoid()
+        })
+      }
+
+      if (this.sheetName.indexOf('妯″叿鐐规鏍囧噯') !== -1) {
+        // this.statusArr = [
+        //   { code: 'Y', name: '姝e父' },
+        //   { code: 'N', name: '鏁呴殰' }
+        // ]
+
+        this.tableData[0].forEach(j => {
+          j.uuid = nanoid()
+          // j['*鐘舵��'] = j['*鐘舵��'] ? this.statusArr.find(e => e.name === j['*鐘舵��']).code : ''
+        })
+        this.tableData[1].forEach(j => {
+          j.uuid = nanoid()
+        })
+      }
     },
     // 鎻愪氦
     submit() {
@@ -457,6 +628,79 @@
           }
           if (this.sheetName.indexOf('寰�鏉ュ崟浣嶇被鍨�') !== -1 && this.sheetName.indexOf('寰�鏉ュ崟浣�') !== -1) {
             const res = this.handleContactUnitListSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+
+          if (this.sheetName.indexOf('浠撳簱璁剧疆') !== -1) {
+            const res = this.handleWarehouseListSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+
+          if (this.sheetName.indexOf('搴撲綅璁剧疆') !== -1) {
+            const res = this.handleStorageListSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+          if (this.sheetName.indexOf('瀛樿揣鍒嗙被') !== -1) {
+            const res = this.handleInventoryListSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+          if (this.sheetName.indexOf('璁惧绫诲瀷') !== -1) {
+            const res = this.handleDeviceListSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+          if (this.sheetName.indexOf('宸ュ簭璁剧疆') !== -1) {
+            const res = this.handleProcessListSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+          if (this.sheetName.indexOf('缂洪櫡瀹氫箟') !== -1) {
+            const res = this.handleDefectDefineSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+
+          if (this.sheetName.indexOf('妯″叿娓呭崟') !== -1 && this.sheetName.indexOf('妯″叿鍏宠仈浜у搧') !== -1) {
+            const res = this.handleMouldListSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+
+          if (this.sheetName.indexOf('妯″叿鐐规椤圭洰') !== -1) {
+            const res = this.handleMouldCheckPosSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+
+          if (this.sheetName.indexOf('妯″叿鐐规鏍囧噯') !== -1) {
+            const res = this.handleMouldCheckStandSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+
+          if (this.sheetName.indexOf('妯″叿淇濆吇椤圭洰') !== -1) {
+            const res = this.handleMouldMaintainSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+
+          if (this.sheetName.indexOf('妯″叿淇濆吇鏍囧噯') !== -1) {
+            const res = this.handleMouldMaintainStandSubmitData()
             if (res.code !== '200') {
               return this.$message.info(res.message)
             }
@@ -500,6 +744,15 @@
             if (this.sheetName.indexOf('浜哄憳绠$悊') !== -1) {
               this.handlePersonListUploadTemplate(false)
             }
+            if (this.sheetName.indexOf('璁惧绫诲瀷') !== -1) {
+              this.tableData[0].forEach(j => {
+                j.uuid = nanoid()
+              })
+              this.tableData[1].forEach(j => {
+                j['*鎵�灞炵粍缁囩紪鐮�'] = this.findParent([], j['*鎵�灞炵粍缁囩紪鐮�'], this.orgOptions).reverse()
+                j.uuid = nanoid()
+              })
+            }
           })
         })
         .catch(e => {
@@ -520,7 +773,7 @@
       const orgArr = this.orgArr.map(i => i.torg_code)
 
       // this.sheetName.indexOf('浜哄憳绠$悊')
-      // 绗竴娆℃彁浜�
+      // 绗竴娆℃覆鏌�
       if (isFirstUpload) {
         this.tableData[0].forEach(j => {
           j['鎵�灞炲矖浣嶇紪鐮�'] = j['鎵�灞炲矖浣嶇紪鐮�'] ? j['鎵�灞炲矖浣嶇紪鐮�'].split(',').filter(e => postArr.includes(e)) : []
@@ -532,7 +785,7 @@
         })
       }
 
-      // 闈炵涓�娆℃彁浜�
+      // 闈炵涓�娆℃覆鏌�
       if (!isFirstUpload) {
         this.tableData[0].forEach(j => {
           j.鎵�灞炲矖浣嶇紪鐮� = typeof j.鎵�灞炲矖浣嶇紪鐮� === 'string' ? j.鎵�灞炲矖浣嶇紪鐮�.split(',').filter(e => postArr.includes(e)) : []
@@ -718,7 +971,7 @@
         }
         if (!j['*寰�鏉ュ崟浣嶅悕绉�']) {
           flag = false
-          msg = '*寰�鏉ュ崟浣嶅悕绉�'
+          msg = '*寰�鏉ュ崟浣嶅悕绉颁笉鑳戒负绌猴紒'
         }
         if (!j['*鐘舵��']) {
           flag = false
@@ -743,24 +996,483 @@
 
       return { code: '200', message: '鎴愬姛锛�' }
     },
-    // 鑾峰彇妯℃澘
-    async getExcelModelData() {
-      const { data: res } = await ExcelModelData()
-      this.excelArr = res
-
-      if (window.location.hash.indexOf('?') !== -1) {
-        this.excelCode = window.location.hash.split('?')[1].split('=')[1]
+    // 澶勭悊浠撳簱璁剧疆鎻愪氦鏁版嵁
+    handleWarehouseListSubmitData() {
+      let flag = true
+      let msg = ''
+      if ([...new Set(this.tableData[0].map(i => i['*浠撳簱缂栧彿(鍞竴)']))].length !== this.tableData[0].length) {
+        return this.$message.info('缂栫爜涓嶈兘閲嶅锛�')
       }
+      this.tableData[0].forEach(j => {
+        if (!j['*浠撳簱缂栧彿(鍞竴)']) {
+          flag = false
+          msg = '*浠撳簱缂栧彿(鍞竴)'
+        }
+        if (!j['*浠撳簱鍚嶇О']) {
+          flag = false
+          msg = '*浠撳簱鍚嶇О'
+        }
+        if (!j['*鐘舵��']) {
+          flag = false
+          msg = '*鐘舵��'
+        }
+        if (!j['*搴撲綅绠$悊']) {
+          flag = false
+          msg = '*搴撲綅绠$悊'
+        }
+      })
+
+      if (!flag) {
+        return { code: '301', message: msg + '涓嶈兘涓虹┖锛�' }
+      }
+
+      this.tableData[0].map(item => {
+        delete (item.uuid)
+      })
+
+      return { code: '200', message: '鎴愬姛锛�' }
     },
-    // 妯℃澘涓嬭浇
-    async getExcel() {
-      const res = await DownLoadExcel({ FileCode: this.excelCode })
-      window.location.href = res.data
+    // 澶勭悊搴撲綅璁剧疆鎻愪氦鏁版嵁
+    handleStorageListSubmitData() {
+      let flag = true
+      let msg = ''
+      if ([...new Set(this.tableData[0].map(i => i['*搴撲綅缂栧彿(鍞竴)']))].length !== this.tableData[0].length) {
+        return this.$message.info('缂栫爜涓嶈兘閲嶅锛�')
+      }
+      this.tableData[0].forEach(j => {
+        if (!j['*搴撲綅缂栧彿(鍞竴)']) {
+          flag = false
+          msg = '*搴撲綅缂栧彿(鍞竴)涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*搴撲綅鍚嶇О']) {
+          flag = false
+          msg = '*搴撲綅鍚嶇О涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*鎵�灞炰粨搴撶紪鐮�']) {
+          flag = false
+          msg = '*鎵�灞炰粨搴撶紪鐮佷笉鑳戒负绌猴紒'
+        }
+        if (!j['*鐘舵��']) {
+          flag = false
+          msg = '*鐘舵�佷笉鑳戒负绌猴紒'
+        }
+        if (j['涓婄骇搴撲綅缂栫爜'] === j['*搴撲綅缂栧彿(鍞竴)']) {
+          flag = false
+          msg = '*搴撲綅缂栧彿(鍞竴)涓庝笂绾у簱浣嶇紪鐮佷笉鑳界浉鍚岋紒'
+        }
+      })
+
+      if (!flag) {
+        return { code: '301', message: msg }
+      }
+
+      this.tableData[0].map(item => {
+        delete (item.uuid)
+      })
+
+      return { code: '200', message: '鎴愬姛锛�' }
+    },
+    // 澶勭悊瀛樿揣妗f鎻愪氦鏁版嵁
+    handleInventoryListSubmitData() {
+      let flag = true
+      let msg = ''
+      if ([...new Set(this.tableData[0].map(i => i['*瀛樿揣鍒嗙被缂栧彿(鍞竴)']))].length !== this.tableData[0].length) {
+        return this.$message.info('瀛樿揣鍒嗙被缂栧彿涓嶈兘閲嶅锛�')
+      }
+      if ([...new Set(this.tableData[1].map(i => i['*瀛樿揣缂栧彿(鍞竴)']))].length !== this.tableData[1].length) {
+        return this.$message.info('瀛樿揣缂栧彿涓嶈兘閲嶅锛�')
+      }
+      this.tableData[0].forEach(j => {
+        if (!j['*瀛樿揣鍒嗙被缂栧彿(鍞竴)']) {
+          flag = false
+          msg = '*瀛樿揣鍒嗙被缂栧彿(鍞竴)涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*瀛樿揣鍒嗙被鍚嶇О']) {
+          flag = false
+          msg = '*瀛樿揣鍒嗙被涓嶈兘涓虹┖锛�'
+        }
+        if (j['*瀛樿揣鍒嗙被缂栧彿(鍞竴)'] === j['涓婄骇缂栫爜']) {
+          flag = false
+          msg = '*瀛樿揣鍒嗙被缂栧彿(鍞竴)涓庝笂绾х紪鐮佷笉鑳界浉鍚岋紒'
+        }
+      })
+      this.tableData[1].forEach(j => {
+        if (!j['*瀛樿揣缂栧彿(鍞竴)']) {
+          flag = false
+          msg = '*瀛樿揣缂栧彿(鍞竴)涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*瀛樿揣鍚嶇О']) {
+          flag = false
+          msg = '*瀛樿揣鍚嶇О涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*瀛樿揣鍒嗙被缂栫爜']) {
+          flag = false
+          msg = '*瀛樿揣鍒嗙被缂栫爜涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*鐘舵��']) {
+          flag = false
+          msg = '*鐘舵�佷笉鑳戒负绌猴紒'
+        }
+        if (!j['*璁¢噺鏂瑰紡']) {
+          flag = false
+          msg = '*璁¢噺鏂瑰紡涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*璁¢噺鍗曚綅/缁勫悕绉�']) {
+          flag = false
+          msg = '*璁¢噺鍗曚綅/缁勫悕绉颁笉鑳戒负绌猴紒'
+        }
+        if (!(j['鏄惁澶栬喘'] === '1' || j['鏄惁閿�鍞�'] === '1' || j['鏄惁鑷埗'] === '1' || j['鏄惁鐢熶骇娑堣��'] === '1' || j['鏄惁濮斿'] === '1')) {
+          flag = false
+          msg = '瀛樿揣灞炴�у繀椤昏閫夋嫨鍏朵竴锛�'
+        }
+      })
+
+      if (!flag) {
+        return { code: '301', message: msg }
+      }
+
+      this.tableData[0].map(item => {
+        delete (item.uuid)
+      })
+      this.tableData[1].map(item => {
+        delete (item.uuid)
+      })
+
+      return { code: '200', message: '鎴愬姛锛�' }
+    },
+    // 澶勭悊璁惧娓呭崟鎻愪氦鏁版嵁
+    handleDeviceListSubmitData() {
+      let flag = true
+      let msg = ''
+      if ([...new Set(this.tableData[0].map(i => i['*璁惧绫诲瀷缂栧彿(鍞竴)']))].length !== this.tableData[0].length) {
+        return this.$message.info('璁惧绫诲瀷缂栧彿涓嶈兘閲嶅锛�')
+      }
+      if ([...new Set(this.tableData[1].map(i => i['*璁惧缂栧彿(鍞竴)']))].length !== this.tableData[1].length) {
+        return this.$message.info('璁惧缂栧彿涓嶈兘閲嶅锛�')
+      }
+      this.tableData[0].forEach(j => {
+        if (!j['*璁惧绫诲瀷缂栧彿(鍞竴)']) {
+          flag = false
+          msg = '*璁惧绫诲瀷缂栧彿(鍞竴)涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*璁惧绫诲瀷鍚嶇О']) {
+          flag = false
+          msg = '*璁惧绫诲瀷鍚嶇О涓嶈兘涓虹┖锛�'
+        }
+      })
+      this.tableData[1].forEach(j => {
+        if (!j['*璁惧缂栧彿(鍞竴)']) {
+          flag = false
+          msg = '*璁惧缂栧彿(鍞竴)涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*璁惧鍚嶇О']) {
+          flag = false
+          msg = '*璁惧鍚嶇О涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*鎵�灞炵粍缁囩紪鐮�']) {
+          flag = false
+          msg = '*鎵�灞炵粍缁囩紪鐮佷笉鑳戒负绌猴紒'
+        }
+        if (!j['*璁惧绫诲瀷缂栫爜']) {
+          flag = false
+          msg = '*璁惧绫诲瀷缂栫爜涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*鐘舵��']) {
+          flag = false
+          msg = '*鐘舵�佷笉鑳戒负绌猴紒'
+        }
+      })
+
+      if (!flag) {
+        return { code: '301', message: msg }
+      }
+
+      this.tableData[1].forEach(j => {
+        j['*鎵�灞炵粍缁囩紪鐮�'] = j['*鎵�灞炵粍缁囩紪鐮�'][j['*鎵�灞炵粍缁囩紪鐮�'].length - 1]
+      })
+
+      this.tableData[0].map(item => {
+        delete (item.uuid)
+      })
+      this.tableData[1].map(item => {
+        delete (item.uuid)
+      })
+
+      return { code: '200', message: '鎴愬姛锛�' }
+    },
+    // 澶勭悊宸ュ簭璁剧疆鎻愪氦鏁版嵁
+    handleProcessListSubmitData() {
+      let flag = true
+      let msg = ''
+      if ([...new Set(this.tableData[0].map(i => i['*宸ュ簭缂栧彿(鍞竴)']))].length !== this.tableData[0].length) {
+        return this.$message.info('缂栫爜涓嶈兘閲嶅锛�')
+      }
+      this.tableData[0].forEach(j => {
+        if (!j['*宸ュ簭缂栧彿(鍞竴)']) {
+          flag = false
+          msg = '*宸ュ簭缂栧彿(鍞竴)'
+        }
+        if (!j['*宸ュ簭鍚嶇О']) {
+          flag = false
+          msg = '*宸ュ簭鍚嶇О'
+        }
+        if (!j['*宸ュ簭绫诲瀷']) {
+          flag = false
+          msg = '*宸ュ簭绫诲瀷'
+        }
+        if (!j['*鐘舵��']) {
+          flag = false
+          msg = '*鐘舵��'
+        }
+      })
+
+      if (!flag) {
+        return { code: '301', message: msg + '涓嶈兘涓虹┖锛�' }
+      }
+
+      this.tableData[0].map(item => {
+        delete (item.uuid)
+      })
+
+      return { code: '200', message: '鎴愬姛锛�' }
+    },
+    // 澶勭悊缂洪櫡瀹氫箟鎻愪氦鏁版嵁
+    handleDefectDefineSubmitData() {
+      let flag = true
+      let msg = ''
+      if ([...new Set(this.tableData[0].map(i => i['*缂洪櫡缂栧彿(鍞竴)']))].length !== this.tableData[0].length) {
+        return this.$message.info('缂栫爜涓嶈兘閲嶅锛�')
+      }
+      this.tableData[0].forEach(j => {
+        if (!j['*缂洪櫡缂栧彿(鍞竴)']) {
+          flag = false
+          msg = '*缂洪櫡缂栧彿(鍞竴)'
+        }
+        if (!j['*缂洪櫡鍚嶇О']) {
+          flag = false
+          msg = '*缂洪櫡鍚嶇О'
+        }
+      })
+
+      if (!flag) {
+        return { code: '301', message: msg + '涓嶈兘涓虹┖锛�' }
+      }
+
+      this.tableData[0].map(item => {
+        delete (item.uuid)
+      })
+
+      return { code: '200', message: '鎴愬姛锛�' }
+    },
+    // 澶勭悊妯″叿娓呭崟鎻愪氦鏁版嵁
+    handleMouldListSubmitData() {
+      let flag = true
+      let msg = ''
+      if ([...new Set(this.tableData[0].map(i => i['*妯″叿缂栧彿(鍞竴)']))].length !== this.tableData[0].length) {
+        return this.$message.info('妯″叿娓呭崟缂栧彿涓嶈兘閲嶅锛�')
+      }
+      // if ([...new Set(this.tableData[1].map(i => i['*寰�鏉ュ崟浣嶇紪鍙�(鍞竴)']))].length !== this.tableData[1].length) {
+      //   return this.$message.info('寰�鏉ュ崟浣嶇紪鍙蜂笉鑳介噸澶嶏紒')
+      // }
+      this.tableData[0].forEach(j => {
+        if (!j['*妯″叿缂栧彿(鍞竴)']) {
+          flag = false
+          msg = '*妯″叿缂栧彿(鍞竴)涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*妯″叿鍚嶇О']) {
+          flag = false
+          msg = '*妯″叿鍚嶇О涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*鐘舵��']) {
+          flag = false
+          msg = '*鐘舵�佷笉鑳戒负绌猴紒'
+        }
+      })
+      this.tableData[1].forEach(j => {
+        if (!j['妯″叿缂栫爜'] && j['浜у搧缂栫爜']) {
+          flag = false
+          msg = '妯″叿缂栫爜涓嶈兘涓虹┖锛�'
+        }
+        if (j['妯″叿缂栫爜'] && !j['浜у搧缂栫爜']) {
+          flag = false
+          msg = '浜у搧缂栫爜涓嶈兘涓虹┖锛�'
+        }
+      })
+
+      if (!flag) {
+        return { code: '301', message: msg }
+      }
+
+      this.tableData[0].map(item => {
+        delete (item.uuid)
+      })
+      this.tableData[1].map(item => {
+        delete (item.uuid)
+      })
+
+      return { code: '200', message: '鎴愬姛锛�' }
+    },
+    // 澶勭悊妯″叿鐐规椤圭洰鎻愪氦鏁版嵁
+    handleMouldCheckPosSubmitData() {
+      let flag = true
+      let msg = ''
+      if ([...new Set(this.tableData[0].map(i => i['*鐐规椤圭洰缂栧彿(鍞竴)']))].length !== this.tableData[0].length) {
+        return this.$message.info('缂栫爜涓嶈兘閲嶅锛�')
+      }
+      this.tableData[0].forEach(j => {
+        if (!j['*鐐规椤圭洰缂栧彿(鍞竴)']) {
+          flag = false
+          msg = '*鐐规椤圭洰缂栧彿(鍞竴)'
+        }
+        if (!j['*鐐规椤圭洰鍚嶇О']) {
+          flag = false
+          msg = '*鐐规椤圭洰鍚嶇О'
+        }
+      })
+
+      if (!flag) {
+        return { code: '301', message: msg + '涓嶈兘涓虹┖锛�' }
+      }
+
+      this.tableData[0].map(item => {
+        delete (item.uuid)
+      })
+
+      return { code: '200', message: '鎴愬姛锛�' }
+    },
+    // 澶勭悊妯″叿鐐规鏍囧噯鎻愪氦鏁版嵁
+    handleMouldCheckStandSubmitData() {
+      let flag = true
+      let msg = ''
+      if ([...new Set(this.tableData[0].map(i => i['*妯″叿鐐规鏍囧噯缂栧彿(鍞竴)']))].length !== this.tableData[0].length) {
+        return this.$message.info('鐐规鏍囧噯缂栧彿涓嶈兘閲嶅锛�')
+      }
+      if ([...new Set(this.tableData[1].map(i => i['*妯″叿鐐规鏍囧噯缂栧彿']))].length !== this.tableData[1].length) {
+        return this.$message.info('妯″叿鐐规鏍囧噯缂栧彿涓嶈兘閲嶅锛�')
+      }
+      this.tableData[0].forEach(j => {
+        if (!j['*妯″叿鐐规鏍囧噯缂栧彿(鍞竴)']) {
+          flag = false
+          msg = '*妯″叿鐐规鏍囧噯缂栧彿(鍞竴)涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*妯″叿鐐规鏍囧噯鍚嶇О']) {
+          flag = false
+          msg = '*妯″叿鐐规鏍囧噯涓嶈兘涓虹┖锛�'
+        }
+      })
+      this.tableData[1].forEach(j => {
+        if (!j['*妯″叿鐐规鏍囧噯缂栧彿']) {
+          flag = false
+          msg = '*妯″叿鐐规鏍囧噯缂栧彿涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*鐐规椤瑰簭鍙�']) {
+          flag = false
+          msg = '*鐐规椤瑰簭鍙蜂笉鑳戒负绌猴紒'
+        }
+        if (!j['*妯″叿鐐规椤圭紪鍙�(鍞竴)']) {
+          flag = false
+          msg = '*妯″叿鐐规椤圭紪鍙�(鍞竴)涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*妯″叿鐐规椤瑰悕绉�']) {
+          flag = false
+          msg = '*妯″叿鐐规椤瑰悕绉颁笉鑳戒负绌猴紒'
+        }
+      })
+
+      if (!flag) {
+        return { code: '301', message: msg }
+      }
+
+      this.tableData[0].map(item => {
+        delete (item.uuid)
+      })
+      this.tableData[1].map(item => {
+        delete (item.uuid)
+      })
+
+      return { code: '200', message: '鎴愬姛锛�' }
+    },
+    // 澶勭悊妯″叿淇濆吇椤圭洰鎻愪氦鏁版嵁
+    handleMouldMaintainSubmitData() {
+      let flag = true
+      let msg = ''
+      if ([...new Set(this.tableData[0].map(i => i['*淇濆吇椤圭洰缂栧彿(鍞竴)']))].length !== this.tableData[0].length) {
+        return this.$message.info('缂栫爜涓嶈兘閲嶅锛�')
+      }
+      this.tableData[0].forEach(j => {
+        if (!j['*淇濆吇椤圭洰缂栧彿(鍞竴)']) {
+          flag = false
+          msg = '*淇濆吇椤圭洰缂栧彿(鍞竴)'
+        }
+        if (!j['*淇濆吇椤圭洰鍚嶇О']) {
+          flag = false
+          msg = '*淇濆吇椤圭洰鍚嶇О'
+        }
+      })
+
+      if (!flag) {
+        return { code: '301', message: msg + '涓嶈兘涓虹┖锛�' }
+      }
+
+      this.tableData[0].map(item => {
+        delete (item.uuid)
+      })
+
+      return { code: '200', message: '鎴愬姛锛�' }
+    },
+    // 澶勭悊妯″叿淇濆吇鏍囧噯鎻愪氦鏁版嵁
+    handleMouldMaintainStandSubmitData() {
+      let flag = true
+      let msg = ''
+      if ([...new Set(this.tableData[0].map(i => i['*妯″叿淇濆吇鏍囧噯缂栧彿(鍞竴)']))].length !== this.tableData[0].length) {
+        return this.$message.info('淇濆吇鏍囧噯缂栧彿涓嶈兘閲嶅锛�')
+      }
+      if ([...new Set(this.tableData[1].map(i => i['*妯″叿淇濆吇鏍囧噯缂栧彿']))].length !== this.tableData[1].length) {
+        return this.$message.info('妯″叿淇濆吇鏍囧噯缂栧彿涓嶈兘閲嶅锛�')
+      }
+      this.tableData[0].forEach(j => {
+        if (!j['*妯″叿淇濆吇鏍囧噯缂栧彿(鍞竴)']) {
+          flag = false
+          msg = '*妯″叿淇濆吇鏍囧噯缂栧彿(鍞竴)涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*妯″叿淇濆吇鏍囧噯鍚嶇О']) {
+          flag = false
+          msg = '*妯″叿淇濆吇鏍囧噯涓嶈兘涓虹┖锛�'
+        }
+      })
+      this.tableData[1].forEach(j => {
+        if (!j['*妯″叿淇濆吇鏍囧噯缂栧彿']) {
+          flag = false
+          msg = '*妯″叿淇濆吇鏍囧噯缂栧彿涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*淇濆吇椤瑰簭鍙�']) {
+          flag = false
+          msg = '*淇濆吇椤瑰簭鍙蜂笉鑳戒负绌猴紒'
+        }
+        if (!j['*妯″叿淇濆吇椤圭紪鍙�(鍞竴)']) {
+          flag = false
+          msg = '*妯″叿淇濆吇椤圭紪鍙�(鍞竴)涓嶈兘涓虹┖锛�'
+        }
+        if (!j['*妯″叿淇濆吇椤瑰悕绉�']) {
+          flag = false
+          msg = '*妯″叿淇濆吇椤瑰悕绉颁笉鑳戒负绌猴紒'
+        }
+      })
+
+      if (!flag) {
+        return { code: '301', message: msg }
+      }
+
+      this.tableData[0].map(item => {
+        delete (item.uuid)
+      })
+      this.tableData[1].map(item => {
+        delete (item.uuid)
+      })
+
+      return { code: '200', message: '鎴愬姛锛�' }
     },
 
-    handleClose() {
-      this.dialogTableData = []
-    },
     // parents:鐢ㄤ簬杩斿洖鐨勬暟缁勶紝childNode:瑕佹煡璇㈢殑鑺傜偣锛宼reeData锛歫son鏍戝舰鏁版嵁
     findParent(parents, childNode, treeData) {
       // console.log(parents, childNode, treeData, 2)
@@ -829,6 +1541,7 @@
           '鎻忚堪': ''
         })
       }
+      // 寰�鏉ュ崟浣�
       if (this.sheetName.indexOf('寰�鏉ュ崟浣嶇被鍨�') !== -1 && this.activeName === '0') {
         this.tableData[0].unshift({
           uuid: nanoid(),
@@ -842,11 +1555,179 @@
           uuid: nanoid(),
           '*寰�鏉ュ崟浣嶇紪鍙�(鍞竴)': '',
           '*寰�鏉ュ崟浣嶅悕绉�': '',
-          '*鐘舵��': 'Y',
+          '*鐘舵��': '0',
           '*寰�鏉ュ崟浣嶇被鍨嬬紪鐮�': '',
           '鑱旂郴浜�': '',
           '鑱旂郴鏂瑰紡': '',
           '鍦板潃': ''
+        })
+      }
+      //  浠撳簱璁剧疆
+      if (this.sheetName.indexOf('浠撳簱璁剧疆') !== -1) {
+        this.tableData[0].unshift({
+          uuid: nanoid(),
+          '*浠撳簱缂栧彿(鍞竴)': '',
+          '*浠撳簱鍚嶇О': '',
+          '*鐘舵��': '0',
+          '*搴撲綅绠$悊': '0',
+          '鎻忚堪': ''
+        })
+      }
+      // 搴撲綅璁剧疆
+      if (this.sheetName.indexOf('搴撲綅璁剧疆') !== -1) {
+        this.tableData[0].unshift({
+          uuid: nanoid(),
+          '*搴撲綅缂栧彿(鍞竴)': '',
+          '*搴撲綅鍚嶇О': '',
+          '*鎵�灞炰粨搴撶紪鐮�': '',
+          '涓婄骇搴撲綅缂栫爜': '',
+          '*鐘舵��': '0',
+          '鎻忚堪': ''
+        })
+      }
+      // 瀛樿揣妗f
+      if (this.sheetName.indexOf('瀛樿揣鍒嗙被') !== -1 && this.activeName === '0') {
+        this.tableData[0].unshift({
+          uuid: nanoid(),
+          '*瀛樿揣鍒嗙被缂栧彿(鍞竴)': '',
+          '*瀛樿揣鍒嗙被鍚嶇О': '',
+          '涓婄骇缂栫爜': ''
+        })
+      }
+      if (this.sheetName.indexOf('瀛樿揣') !== -1 && this.activeName === '1') {
+        this.tableData[1].unshift({
+          uuid: nanoid(),
+          '*瀛樿揣缂栧彿(鍞竴)': '',
+          '*瀛樿揣鍚嶇О': '',
+          '瑙勬牸鍨嬪彿': '',
+          '*瀛樿揣鍒嗙被缂栫爜': '',
+          '*鐘舵��': '0',
+          '*璁¢噺鏂瑰紡': '',
+          '璁¢噺鍗曚綅/缁勫悕绉�': '',
+          '鎵�灞炰粨搴撶紪鐮�': '',
+          '鏄惁澶栬喘': '0',
+          '鏄惁閿�鍞�': '0',
+          '鏄惁鑷埗': '0',
+          '鏄惁鐢熶骇娑堣��': '0',
+          '鏄惁濮斿': '0'
+        })
+      }
+      // 璁惧娓呭崟
+      if (this.sheetName.indexOf('璁惧绫诲瀷') !== -1 && this.activeName === '0') {
+        this.tableData[0].unshift({
+          uuid: nanoid(),
+          '*璁惧绫诲瀷缂栧彿(鍞竴)': '',
+          '*璁惧绫诲瀷鍚嶇О': '',
+          '鎻忚堪': ''
+        })
+      }
+      if (this.sheetName.indexOf('璁惧娓呭崟') !== -1 && this.activeName === '1') {
+        this.tableData[1].unshift({
+          uuid: nanoid(),
+          '*璁惧缂栧彿(鍞竴)': '',
+          '*璁惧鍚嶇О': '',
+          '*鎵�灞炵粍缁囩紪鐮�': '',
+          '璁惧绫诲瀷缂栫爜': '',
+          '*鐘舵��': 'Y'
+        })
+      }
+      //  宸ュ簭璁剧疆
+      if (this.sheetName.indexOf('宸ュ簭璁剧疆') !== -1) {
+        this.tableData[0].unshift({
+          uuid: nanoid(),
+          '*宸ュ簭缂栧彿(鍞竴)': '',
+          '*宸ュ簭鍚嶇О': '',
+          '*宸ュ簭绫诲瀷': 'Z',
+          '*鐘舵��': 'Y',
+          '鎻忚堪': ''
+        })
+      }
+      //  缂洪櫡瀹氫箟
+      if (this.sheetName.indexOf('缂洪櫡瀹氫箟') !== -1) {
+        this.tableData[0].unshift({
+          uuid: nanoid(),
+          '*缂洪櫡缂栧彿(鍞竴)': '',
+          '*缂洪櫡鍚嶇О': '',
+          '缂洪櫡鎻忚堪': ''
+        })
+      }
+      //  妯″叿娓呭崟
+      if (this.sheetName.indexOf('妯″叿娓呭崟') !== -1 && this.activeName === '0') {
+        this.tableData[0].unshift({
+          uuid: nanoid(),
+          '*妯″叿缂栧彿(鍞竴)': '',
+          '*妯″叿鍚嶇О': '',
+          '瑙勬牸鍨嬪彿': '',
+          '*鐘舵��': 'Y',
+          '棰勮瀵垮懡(娆�)': '',
+          '鍓╀綑瀵垮懡(娆�)': ''
+        })
+      }
+      if (this.sheetName.indexOf('妯″叿鍏宠仈浜у搧') !== -1 && this.activeName === '1') {
+        this.tableData[1].unshift({
+          uuid: nanoid(),
+          '妯″叿缂栫爜': '',
+          '浜у搧缂栫爜': ''
+        })
+      }
+
+      //  妯″叿鐐规椤�
+      if (this.sheetName.indexOf('妯″叿鐐规椤圭洰') !== -1) {
+        this.tableData[0].unshift({
+          uuid: nanoid(),
+          '*鐐规椤圭洰缂栧彿(鍞竴)': '',
+          '*鐐规椤圭洰鍚嶇О': '',
+          '瑕佹眰鎻忚堪': ''
+        })
+      }
+
+      //  妯″叿鐐规鏍囧噯
+      if (this.sheetName.indexOf('妯″叿鐐规鏍囧噯') !== -1 && this.activeName === '0') {
+        this.tableData[0].unshift({
+          uuid: nanoid(),
+          '*妯″叿鐐规鏍囧噯缂栧彿(鍞竴)': '',
+          '*妯″叿鐐规鏍囧噯鍚嶇О': '',
+          '鏍囧噯鎻忚堪': ''
+        })
+      }
+      if (this.sheetName.indexOf('鍏宠仈妯″叿鐐规閮ㄤ綅') !== -1 && this.activeName === '1') {
+        this.tableData[1].unshift({
+          uuid: nanoid(),
+          '*妯″叿鐐规鏍囧噯缂栧彿': '',
+          '*鐐规椤瑰簭鍙�': '',
+          '*妯″叿鐐规椤圭紪鍙�(鍞竴)': '',
+          '*妯″叿鐐规椤瑰悕绉�': '',
+          '鐐规椤硅姹�': ''
+        })
+      }
+
+      //  妯″叿淇濆吇椤�
+      if (this.sheetName.indexOf('妯″叿淇濆吇椤圭洰') !== -1) {
+        this.tableData[0].unshift({
+          uuid: nanoid(),
+          '*淇濆吇椤圭洰缂栧彿(鍞竴)': '',
+          '*淇濆吇椤圭洰鍚嶇О': '',
+          '瑕佹眰鎻忚堪': ''
+        })
+      }
+
+      //  妯″叿淇濆吇鏍囧噯
+      if (this.sheetName.indexOf('妯″叿淇濆吇鏍囧噯') !== -1 && this.activeName === '0') {
+        this.tableData[0].unshift({
+          uuid: nanoid(),
+          '*妯″叿淇濆吇鏍囧噯缂栧彿(鍞竴)': '',
+          '*妯″叿淇濆吇鏍囧噯鍚嶇О': '',
+          '鏍囧噯鎻忚堪': ''
+        })
+      }
+      if (this.sheetName.indexOf('鍏宠仈妯″叿淇濆吇閮ㄤ綅') !== -1 && this.activeName === '1') {
+        this.tableData[1].unshift({
+          uuid: nanoid(),
+          '*妯″叿淇濆吇鏍囧噯缂栧彿': '',
+          '*淇濆吇椤瑰簭鍙�': '',
+          '*妯″叿淇濆吇椤圭紪鍙�(鍞竴)': '',
+          '*妯″叿淇濆吇椤瑰悕绉�': '',
+          '淇濆吇椤硅姹�': ''
         })
       }
     },
@@ -883,6 +1764,23 @@
       this.sheetName = []
       this.excelCode = ''
     },
+    handleClose() {
+      this.dialogTableData = []
+    },
+    // 鑾峰彇妯℃澘
+    async getExcelModelData() {
+      const { data: res } = await ExcelModelData()
+      this.excelArr = res
+
+      if (window.location.hash.indexOf('?') !== -1) {
+        this.excelCode = window.location.hash.split('?')[1].split('=')[1]
+      }
+    },
+    // 妯℃澘涓嬭浇
+    async getExcel() {
+      const res = await DownLoadExcel({ FileCode: this.excelCode })
+      window.location.href = res.data
+    },
     async getSelectArr() {
       await this.getPrentOrganization()
       await this.getPostPermissions()

--
Gitblit v1.9.3