From 46528c3843ce67038ddb2e00dd3d3998c206a69e Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期一, 06 五月 2024 17:26:10 +0800
Subject: [PATCH] 1.递交

---
 src/views/systemSetting/dataImport.vue | 2006 +++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 1,827 insertions(+), 179 deletions(-)

diff --git a/src/views/systemSetting/dataImport.vue b/src/views/systemSetting/dataImport.vue
index 1d27b90..c4c8aa5 100644
--- a/src/views/systemSetting/dataImport.vue
+++ b/src/views/systemSetting/dataImport.vue
@@ -12,9 +12,9 @@
       >
         <el-option
           v-for="item in excelArr"
-          :key="item.fileCode"
-          :label="item.fileName"
-          :value="item.fileCode"
+          :key="item.FileCode"
+          :label="item.FileName"
+          :value="item.FileCode"
         />
       </el-select>
 
@@ -23,6 +23,7 @@
         style="margin-left: 20px"
         :disabled="excelCode===''"
         icon="el-icon-download"
+        waves
         @click="getExcel"
       >涓嬭浇妯℃澘
       </el-button>
@@ -38,6 +39,7 @@
         style="margin-left: 20px"
         :disabled="excelCode===''"
         icon="el-icon-refresh"
+        waves
         @click="reset"
       >閲嶇疆
       </el-button>
@@ -47,6 +49,7 @@
         style="margin-left: 20px"
         icon="el-icon-circle-plus-outline"
         :disabled="excelCode===''||tableData.length===0"
+        waves
         @click="addRow"
       >鏂板琛�
       </el-button>
@@ -56,18 +59,10 @@
         style="margin-left: 20px"
         :disabled="excelCode===''||tableData.length===0"
         icon="el-icon-thumb"
+        waves
         @click="submit"
       >鎻愪氦鏁版嵁
       </el-button>
-
-      <!--      <el-button-->
-      <!--        type="danger"-->
-      <!--        style="margin-left: 20px"-->
-      <!--        :disabled="excelCode===''||tableData.length===0"-->
-      <!--        @click="batchDel"-->
-      <!--      >鎵归噺鍒犻櫎-->
-      <!--      </el-button>-->
-
     </div>
 
     <div
@@ -75,7 +70,7 @@
       style="margin: 10px"
     >
 
-      <el-tabs type="border-card">
+      <el-tabs v-model="activeName" type="border-card">
         <el-tab-pane
           v-for="(i,j) in sheetName"
           :key="i+j"
@@ -83,7 +78,7 @@
         >
           <el-table
             v-if="tableData[j].length>0"
-            :ref="'tableDataRef'+j"
+            :ref="'tableDataRef'+i"
             :data="tableData[j]"
             border
             :height="(mainHeight-180)+'px'"
@@ -124,35 +119,127 @@
                     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||
+                    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="璇疯緭鍏�" />
-                </div>
-                <div v-else-if="item.indexOf('鏁版嵁鑼冨洿')!==-1">
-                  <el-select
-                    v-model="row[item]"
-                    placeholder="璇烽�夋嫨"
-                    filterable
-                    clearable
-                  >
-                    <el-option
-                      v-for="item in powerArr"
-                      :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 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||
+                      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"
+                    />
+                  </el-select>
+                </div>
+                <div
+                  v-else-if="item.indexOf('鐐规鍛ㄦ湡')!==-1||
+                    item.indexOf('淇濆吇鍛ㄦ湡')!==-1"
+                >
+                  <el-select
+                    v-model="row[item]"
+                    style="width: 100%;"
+                    placeholder="璇烽�夋嫨"
+                  >
+
+                    <el-option
+                      v-for="item in cycleArr"
                       :key="item.code"
                       :label="item.name"
                       :value="item.code"
@@ -223,33 +310,6 @@
                     :props="defaultProps"
                     :show-all-levels="false"
                   />
-
-                  <!--                  <el-select-->
-                  <!--                    v-model="row[item]"-->
-                  <!--                    style="width: 100%;"-->
-                  <!--                    placeholder="璇烽�夋嫨"-->
-                  <!--                    filterable-->
-                  <!--                    clearable-->
-                  <!--                  >-->
-                  <!--                    <el-option-->
-                  <!--                      v-for="item in orgArr"-->
-                  <!--                      :key="item.torg_code"-->
-                  <!--                      :label="item.torg_name"-->
-                  <!--                      :value="item.torg_code"-->
-                  <!--                    />-->
-                  <!--                  </el-select>-->
-                </div>
-                <div v-else-if="item.indexOf('鏁版嵁鏉冮檺')!==-1">
-                  <el-cascader
-                    ref="cascader"
-                    v-model="row[item]"
-                    :options="orgOptions"
-                    filterable
-                    collapse-tags
-                    :disabled="row['鏁版嵁鑼冨洿']!=='CUSTOM'"
-                    :props="orgDefaultProps"
-                    :show-all-levels="false"
-                  />
                 </div>
                 <div v-else> {{ row[item] }}</div>
               </template>
@@ -285,6 +345,56 @@
       <el-button type="text" style="margin-left: 0;">3.璇蜂笂浼犳枃浠舵彁浜�</el-button>
     </el-empty>
 
+    <el-dialog
+      v-el-drag-dialog
+      title="澶辫触鍘熷洜"
+      :visible.sync="dialogVisible"
+      width="1300px"
+      :close-on-click-modal="false"
+      top="15vh"
+      @closed="handleClose"
+      @close="handleClose"
+    >
+      <div class="">
+        <el-table
+          ref="tableDataRef"
+          class="tableFixed"
+          :data="dialogTableData"
+          :height="400"
+          border
+          row-class-name="custom-row"
+          :style="{width: 100+'%',height: '400px',}"
+          highlight-current-row
+          :header-cell-style="this.$headerCellStyle"
+          :cell-style="this.$cellStyle"
+        >
+          <el-table-column
+            type="index"
+            width="50"
+            fixed
+            label="搴忓彿"
+          />
+          <el-table-column
+            prop="ErrorField"
+            label="閿欒瀛楁"
+            width="200"
+            show-overflow-tooltip
+          />
+          <el-table-column
+            prop="ErrorCont"
+            show-overflow-tooltip
+            label="閿欒鍘熷洜"
+          />
+        </el-table>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <div class="footerButton">
+          <el-button v-waves @click="dialogVisible=false">杩� 鍥�</el-button>
+          <!--          <el-button v-waves type="primary" @click="dialogVisibleConfirm">纭� 瀹�</el-button>-->
+        </div>
+      </span>
+    </el-dialog>
+
   </div>
 </template>
 
@@ -294,10 +404,13 @@
 import { GroupsPermissions, PostPermissions, PrentOrganization, RolePermissions } from '@/api/GeneralBasicData'
 import { nanoid } from 'nanoid'
 import arrayToTree from 'array-to-tree'
+import elDragDialog from '@/directive/el-drag-dialog'
+import waves from '@/directive/waves'
 
 export default {
-  name: 'UploadExcel',
+  name: 'DataImport',
   components: { UploadExcelComponent },
+  directives: { elDragDialog, waves },
   data() {
     return {
       mainHeight: window.innerHeight - 85,
@@ -310,6 +423,14 @@
       excelArr: [],
 
       statusArr: [],
+      isYesOrNo: [
+        { code: '1', name: '鏄�' },
+        { code: '0', name: '鍚�' }
+      ],
+      stepTypeArr: [
+        { code: 'Z', name: '鑷埗' },
+        { code: 'W', name: '澶栧崗' }
+      ],
       orgArr: [], // 缁勭粐
       orgOptions: [],
       defaultProps: {
@@ -328,12 +449,23 @@
       roleArr: [], // 瑙掕壊
       groupArr: [], // 鐝粍
 
-      powerArr: [
-        { code: 'ALL', name: '鍏ㄩ儴' },
-        { code: 'LEVEL', name: '鏈骇' },
-        { code: 'PERSON', name: '鏈汉' },
-        { code: 'CUSTOM', name: '鑷畾涔�' }
-      ]// 鏁版嵁鑼冨洿
+      dialogVisible: false,
+      dialogTableData: [],
+
+      meterMethodArr: [
+        { code: 'S', name: '鍗曡閲�' },
+        { code: 'M', name: '澶氳閲�' }
+      ],
+
+      cycleArr: [
+        { code: '骞�', name: '骞�' },
+        { code: '瀛�', name: '瀛�' },
+        { code: '鏈�', name: '鏈�' },
+        { code: '鍛�', name: '鍛�' },
+        { code: '鏃�', name: '鏃�' }
+      ],
+
+      activeName: '0'// tab閫変腑鍊�
 
     }
   },
@@ -360,163 +492,406 @@
       }
 
       this.$message({
-        message: 'Please do not upload files larger than 1m in size.',
+        message: '璇蜂笉瑕佷笂浼犲ぇ浜�1鍏嗙殑鏂囦欢銆�',
         type: 'warning'
       })
       return false
     },
+    // excel鎴愬姛鍚庣殑鍥炶皟
     async handleSuccess({ results, header, sheetName }) {
+      if (results[0].length === 0) {
+        return this.$message.info('琛ㄦ牸鏁版嵁涓嶈兘涓虹┖锛�')
+      }
       this.tableData = results
       this.tableHeader = header
       this.sheetName = sheetName
 
+      this.activeName = '0'
+
       // 浜哄憳绠$悊瀵煎叆鍒ゆ柇
       if (this.sheetName.indexOf('浜哄憳绠$悊') !== -1) {
-        this.statusArr = [
-          { code: 'Y', name: '鍦ㄨ亴' },
-          { code: 'N', name: '绂昏亴' }
-        ]
-        const postArr = this.postArr.map(i => i.postcode)
-        const roleArr = this.roleArr.map(i => i.rolecode)
-        const groupArr = this.groupArr.map(i => i.usergroupcode)
-        const orgArr = this.orgArr.map(i => i.torg_code)
-        this.tableData[this.sheetName.indexOf('浜哄憳绠$悊')].forEach(j => {
-          // j.鎵�灞炲矖浣嶇紪鐮� = typeof j.鎵�灞炲矖浣嶇紪鐮� === 'undefined' ? new Set() : j.鎵�灞炲矖浣嶇紪鐮�.split(',').filter(e => postArr.includes(e))
-          // j.鎵�灞炶鑹茬紪鐮� = typeof j.鎵�灞炶鑹茬紪鐮� === 'undefined' ? ''.split(',') : j.鎵�灞炶鑹茬紪鐮�.split(',').filter(e => roleArr.includes(e))
-          // j.鎵�灞炵彮缁勭紪鐮� = typeof j.鎵�灞炵彮缁勭紪鐮� === 'undefined' ? ''.split(',') : j.鎵�灞炵彮缁勭紪鐮�.split(',').filter(e => groupArr.includes(e))
-
-          j.鎵�灞炲矖浣嶇紪鐮� = j.鎵�灞炲矖浣嶇紪鐮�.split(',').filter(e => postArr.includes(e))
-          j.鎵�灞炶鑹茬紪鐮� = j.鎵�灞炶鑹茬紪鐮�.split(',').filter(e => roleArr.includes(e))
-          j.鎵�灞炵彮缁勭紪鐮� = j.鎵�灞炵彮缁勭紪鐮�.split(',').filter(e => groupArr.includes(e))
-          j['*鎵�灞炵粍缁囩紪鐮�'] = orgArr.includes(j['*鎵�灞炵粍缁囩紪鐮�']) ? j['*鎵�灞炵粍缁囩紪鐮�'] : ''
-          j['*鍦ㄨ亴鐘舵��'] = this.statusArr.find(e => e.name === j['*鍦ㄨ亴鐘舵��']).code
-          j.uuid = nanoid()
-        })
-        console.log(this.tableData[0])
-        // console.log(JSON.stringify(this.tableData[0]))
+        this.handlePersonListUploadTemplate(true)
       }
 
-      if (this.sheetName.indexOf('瑙掕壊绠$悊') !== -1) {
+      if (this.sheetName.indexOf('瑙掕壊绠$悊') !== -1 || this.sheetName.indexOf('鐝粍绠$悊') !== -1 ||
+        this.sheetName.indexOf('宀椾綅绠$悊') !== -1
+      ) {
         this.statusArr = [
-          { code: 'Y', name: '鍋滅敤' },
-          { code: 'N', name: '鍚敤' }
+          { code: 'Y', name: '姝e父' },
+          { code: 'N', name: '鍋滅敤' }
+        ]
+        this.tableData[0].forEach(j => {
+          j['*鐘舵��'] = j['*鐘舵��'] ? this.statusArr.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.uuid = nanoid()
+        })
+      }
+
+      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['*鐘舵��'] = j['*鐘舵��'] ? this.statusArr.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.鎵�灞炲矖浣嶇紪鐮� = j.鎵�灞炲矖浣嶇紪鐮�.split(',').filter(e => postArr.includes(e))
-          console.log(j['鏁版嵁鏉冮檺'], 1) // 绾ц仈澶氶�夊洖鏄�  寰呯爺绌�  涓嬫鍐�
-          j['鏁版嵁鑼冨洿'] = this.powerArr.find(e => e.name === j['鏁版嵁鑼冨洿']).code
-          j['*鐘舵��'] = this.statusArr.find(e => e.name === j['*鐘舵��']).code
+          j.uuid = nanoid()
+          j['*鐘舵��'] = j['*鐘舵��'] ? this.statusArr.find(e => e.name === j['*鐘舵��']).code : ''
+        })
+        this.tableData[1].forEach(j => {
           j.uuid = nanoid()
         })
       }
-    },
-    // 鑾峰彇妯℃澘
-    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]
+      if (this.sheetName.indexOf('妯″叿鐐规鏍囧噯') !== -1) {
+        this.tableData[0].forEach(j => {
+          j.uuid = nanoid()
+        })
+        this.tableData[1].forEach(j => {
+          j.uuid = nanoid()
+        })
       }
-    },
-    // 妯℃澘涓嬭浇
-    async getExcel() {
-      const res = await DownLoadExcel({ FileCode: this.excelCode })
-      window.location.href = res.data
-    },
-    submit() {
-      // console.log(this.excelCode)
-      // console.log(JSON.stringify(this.sheetName))
-      // console.log(JSON.stringify(this.tableHeader))
-      // console.log(JSON.stringify(this.tableData))
 
+      if (this.sheetName.indexOf('璁惧鐐规椤圭洰') !== -1) {
+        this.isYesOrNo = [
+          { code: '鏄�', name: '鏄�' },
+          { code: '鍚�', name: '鍚�' }
+        ]
+        this.tableData[0].forEach(j => {
+          j.uuid = nanoid()
+          j['*鐐规鍛ㄦ湡'] = j['*鐐规鍛ㄦ湡'] ? this.cycleArr.find(e => e.name === j['*鐐规鍛ㄦ湡']).code : ''
+          j['*鏄惁鎵爜'] = j['*鏄惁鎵爜'] ? this.isYesOrNo.find(e => e.name === j['*鏄惁鎵爜']).code : ''
+        })
+      }
+
+      if (this.sheetName.indexOf('璁惧鐐规鏍囧噯') !== -1) {
+        this.isYesOrNo = [
+          { code: 'Y', name: 'Y' },
+          { code: 'N', name: 'N' }
+        ]
+        this.cycleArr = [
+          { code: '鏃�', name: '鏃�' }
+        ]
+
+        this.tableData[0].forEach(j => {
+          j.uuid = nanoid()
+        })
+        this.tableData[1].forEach(j => {
+          j.uuid = nanoid()
+        })
+      }
+
+      if (this.sheetName.indexOf('璁惧淇濆吇椤圭洰') !== -1) {
+        this.isYesOrNo = [
+          { code: 'Y', name: 'Y' },
+          { code: 'N', name: 'N' }
+        ]
+        this.cycleArr = [
+          { code: '骞�', name: '骞�' },
+          { code: '瀛�', name: '瀛�' },
+          { code: '鏈�', name: '鏈�' },
+          { code: '鍛�', name: '鍛�' }
+        ]
+        this.tableData[0].forEach(j => {
+          j.uuid = nanoid()
+          j['*鏄惁鎵爜'] = j['*鏄惁鎵爜'] ? this.isYesOrNo.find(e => e.name === j['*鏄惁鎵爜']).code : ''
+        })
+      }
+
+      if (this.sheetName.indexOf('璁惧淇濆吇鏍囧噯') !== -1) {
+        this.isYesOrNo = [
+          { code: 'Y', name: 'Y' },
+          { code: 'N', name: 'N' }
+        ]
+        this.cycleArr = [
+          { code: '骞�', name: '骞�' },
+          { code: '瀛�', name: '瀛�' },
+          { code: '鏈�', name: '鏈�' },
+          { code: '鍛�', name: '鍛�' }
+        ]
+        this.tableData[0].forEach(j => {
+          j.uuid = nanoid()
+        })
+        this.tableData[1].forEach(j => {
+          j.uuid = nanoid()
+        })
+      }
+
+      //
+    },
+    // 鎻愪氦
+    submit() {
       this.$confirm('鏄惁纭鎻愪氦?', '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
         type: 'warning'
       })
         .then(() => {
-          let flag = true
-          let msg = ''
           if (this.sheetName.indexOf('浜哄憳绠$悊') !== -1) {
-            if ([...new Set(this.tableData[0].map(i => i['*鐢ㄦ埛缂栧彿(鍞竴)']))].length !== this.tableData[0].length) {
-              return this.$message.info('缂栫爜涓嶈兘閲嶅锛�')
+            const res = this.handlePersonListSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
             }
-            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['*鎵�灞炵粍缁囩紪鐮�']) {
-                flag = false
-                msg = '*鎵�灞炵粍缁囩紪鐮�'
-              }
-            })
-
-            if (!flag) {
-              return this.$message.info(msg + '涓嶈兘涓虹┖锛�')
-            }
-
-            this.tableData[0].forEach(j => {
-              j.鎵�灞炲矖浣嶇紪鐮� = j.鎵�灞炲矖浣嶇紪鐮�.join(',')
-              j.鎵�灞炵彮缁勭紪鐮� = j.鎵�灞炵彮缁勭紪鐮�.join(',')
-              j.鎵�灞炶鑹茬紪鐮� = j.鎵�灞炶鑹茬紪鐮�.join(',')
-              j['*鎵�灞炵粍缁囩紪鐮�'] = j['*鎵�灞炵粍缁囩紪鐮�'][j['*鎵�灞炵粍缁囩紪鐮�'].length - 1]
-            })
-
-            this.tableData[0].map(item => {
-              delete (item.uuid)
-            })
           }
+
+          if (this.sheetName.indexOf('瑙掕壊绠$悊') !== -1) {
+            const res = this.handleRoleListSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+          if (this.sheetName.indexOf('鐝粍绠$悊') !== -1) {
+            const res = this.handleGroupListSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+          if (this.sheetName.indexOf('宀椾綅绠$悊') !== -1) {
+            const res = this.handlePostListSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+          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)
+            }
+          }
+
+          if (this.sheetName.indexOf('璁惧鐐规椤圭洰') !== -1) {
+            const res = this.handleCheckPositionSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+
+          if (this.sheetName.indexOf('璁惧鐐规鏍囧噯') !== -1) {
+            const res = this.handleCheckStandardSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+
+          if (this.sheetName.indexOf('璁惧淇濆吇椤圭洰') !== -1) {
+            const res = this.handleMaintainPositionSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+
+          if (this.sheetName.indexOf('璁惧淇濆吇鏍囧噯') !== -1) {
+            const res = this.handleMaintainStandardSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
+
+          // 鏁版嵁鎻愪氦鍓嶅幓闄ょ┖鏍兼柟娉�
+          // this.tableDataTrim()
 
           const data = {
             fileCode: this.excelCode,
             tableData: this.tableData
           }
-          // console.log(JSON.stringify(this.tableData))
           ExcelModelCheck(data).then(res => {
-            if (res.json1.code === '301' || res.json1.code === '300') {
-              if (this.sheetName.indexOf('浜哄憳绠$悊') !== -1) {
-                const postArr = this.postArr.map(i => i.postcode)
-                const roleArr = this.roleArr.map(i => i.rolecode)
-                const groupArr = this.groupArr.map(i => i.usergroupcode)
-                const orgArr = this.orgArr.map(i => i.torg_code)
-                this.tableData[0].forEach(j => {
-                  j.鎵�灞炲矖浣嶇紪鐮� = j.鎵�灞炲矖浣嶇紪鐮�.split(',').filter(e => postArr.includes(e))
-                  j.鎵�灞炶鑹茬紪鐮� = j.鎵�灞炶鑹茬紪鐮�.split(',').filter(e => roleArr.includes(e))
-                  j.鎵�灞炵彮缁勭紪鐮� = j.鎵�灞炵彮缁勭紪鐮�.split(',').filter(e => groupArr.includes(e))
-                  // j['*鍦ㄨ亴鐘舵��'] = this.statusArr.find(e => e.name === j['*鍦ㄨ亴鐘舵��']).code
-                  // j['*鎵�灞炵粍缁囩紪鐮�'] = j['*鎵�灞炵粍缁囩紪鐮�'][j['*鎵�灞炵粍缁囩紪鐮�'].length - 1]
-                  j['*鎵�灞炵粍缁囩紪鐮�'] = this.findParent([], j['*鎵�灞炵粍缁囩紪鐮�'], this.orgOptions).reverse()
-
-                  j.uuid = nanoid()
-                })
-              }
-              return this.$message.error(res.json1.message)
+            // 杩斿洖鐨刯son1銆乯son2銆乯son3   json1涓烘ā鏉挎牎楠屻�乯son2涓烘暟鎹牎楠屻�乯son3涓哄鍏ユ暟鎹簱鏍¢獙(鍙兘浼氭湁绯荤粺鎶ラ敊浜х敓)
+            if (res.json1.code !== '200' && res.json2 === null && res.json3 === null) {
+              this.$message.error(res.json1.message)
+            }
+            if (res.json1.code === '200' && res.json2 !== '200' && res.json3 === null) {
+              this.$message.error(res.json2.message)
+            }
+            if (res.json1.code === '200' && res.json2 === '200' && res.json3 !== '200') {
+              this.$message.error(res.json3.message)
             }
 
-            if (res.json1.code === '200' && res.json2.code === '200') {
+            if (res.json1.code === '300' && res.json2.code === '200' && res.json3.code === '300') { // 绯荤粺鎶ラ敊
+              return this.$message.error(res.json3.message)
+            }
+
+            if (res.json1.code === '200' && res.json2.code === '301' && res.json3 === null) {
+              this.dialogVisible = true
+              this.dialogTableData = res.json2.data
+            }
+
+            if (res.json1.code === '200' && res.json2.code === '200' && res.json3.code === '200') {
               this.$notify.success('鏁版嵁鎻愪氦鎴愬姛!')
               this.tableData = []
               this.tableHeader = []
               this.sheetName = []
               this.excelCode = ''
-            } else {
-              this.$notify.success('鏁版嵁鎻愪氦澶辫触!')
+
+              return
+            }
+
+            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()
+              })
             }
           })
         })
@@ -525,6 +900,923 @@
           this.$notify.info('宸插彇娑堟彁浜わ紒')
         })
     },
+
+    // 澶勭悊浜哄憳绠$悊瀵煎叆妯℃澘
+    handlePersonListUploadTemplate(isFirstUpload) {
+      this.statusArr = [
+        { code: 'Y', name: '鍦ㄨ亴' },
+        { code: 'N', name: '绂昏亴' }
+      ]
+      const postArr = this.postArr.map(i => i.postcode)
+      const roleArr = this.roleArr.map(i => i.rolecode)
+      const groupArr = this.groupArr.map(i => i.usergroupcode)
+      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)) : []
+          j['鎵�灞炶鑹茬紪鐮�'] = j['鎵�灞炶鑹茬紪鐮�'] ? j['鎵�灞炶鑹茬紪鐮�'].split(',').filter(e => roleArr.includes(e)) : []
+          j['鎵�灞炵彮缁勭紪鐮�'] = j['鎵�灞炵彮缁勭紪鐮�'] ? j['鎵�灞炵彮缁勭紪鐮�'].split(',').filter(e => groupArr.includes(e)) : []
+          j['*鎵�灞炵粍缁囩紪鐮�'] = j['*鎵�灞炵粍缁囩紪鐮�'] ? (orgArr.includes(j['*鎵�灞炵粍缁囩紪鐮�']) ? this.findParent([], j['*鎵�灞炵粍缁囩紪鐮�'], this.orgOptions).reverse() : '') : ''
+          j['*鍦ㄨ亴鐘舵��'] = j['*鍦ㄨ亴鐘舵��'] ? this.statusArr.find(e => e.name === j['*鍦ㄨ亴鐘舵��']).code : 'Y'
+          j.uuid = nanoid()
+        })
+      }
+
+      // 闈炵涓�娆℃覆鏌�
+      if (!isFirstUpload) {
+        this.tableData[0].forEach(j => {
+          j.鎵�灞炲矖浣嶇紪鐮� = typeof j.鎵�灞炲矖浣嶇紪鐮� === 'string' ? j.鎵�灞炲矖浣嶇紪鐮�.split(',').filter(e => postArr.includes(e)) : []
+          j.鎵�灞炶鑹茬紪鐮� = typeof j.鎵�灞炶鑹茬紪鐮� === 'string' ? j.鎵�灞炶鑹茬紪鐮�.split(',').filter(e => roleArr.includes(e)) : []
+          j.鎵�灞炵彮缁勭紪鐮� = typeof j.鎵�灞炵彮缁勭紪鐮� === 'string' ? j.鎵�灞炵彮缁勭紪鐮�.split(',').filter(e => groupArr.includes(e)) : []
+          j['*鎵�灞炵粍缁囩紪鐮�'] = this.findParent([], j['*鎵�灞炵粍缁囩紪鐮�'], this.orgOptions).reverse()
+
+          j.uuid = nanoid()
+        })
+      }
+    },
+    // 澶勭悊浜哄憳绠$悊鎻愪氦鏁版嵁
+    handlePersonListSubmitData() {
+      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['*鎵�灞炵粍缁囩紪鐮�']) {
+          flag = false
+          msg = '*鎵�灞炵粍缁囩紪鐮�'
+        }
+      })
+
+      if (!flag) {
+        return { code: '301', message: msg + '涓嶈兘涓虹┖锛�' }
+      }
+      this.tableData[0].forEach(j => {
+        j['鎵�灞炲矖浣嶇紪鐮�'] = j['鎵�灞炲矖浣嶇紪鐮�'].join(',')
+        j['鎵�灞炵彮缁勭紪鐮�'] = j['鎵�灞炵彮缁勭紪鐮�'].join(',')
+        j['鎵�灞炶鑹茬紪鐮�'] = j['鎵�灞炶鑹茬紪鐮�'].join(',')
+        j['*鎵�灞炵粍缁囩紪鐮�'] = j['*鎵�灞炵粍缁囩紪鐮�'][j['*鎵�灞炵粍缁囩紪鐮�'].length - 1]
+      })
+
+      this.tableData[0].map(item => {
+        delete (item.uuid)
+      })
+
+      return { code: '200', message: '鎴愬姛锛�' }
+    },
+    // 澶勭悊瑙掕壊绠$悊鎻愪氦鏁版嵁
+    handleRoleListSubmitData() {
+      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 (!flag) {
+        return { code: '301', message: msg + '涓嶈兘涓虹┖锛�' }
+      }
+
+      this.tableData[0].map(item => {
+        delete (item.uuid)
+      })
+
+      return { code: '200', message: '鎴愬姛锛�' }
+    },
+    // 澶勭悊鐝粍绠$悊鎻愪氦鏁版嵁
+    handleGroupListSubmitData() {
+      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 (!flag) {
+        return { code: '301', message: msg + '涓嶈兘涓虹┖锛�' }
+      }
+
+      this.tableData[0].map(item => {
+        delete (item.uuid)
+      })
+
+      return { code: '200', message: '鎴愬姛锛�' }
+    },
+    // 澶勭悊宀椾綅绠$悊鎻愪氦鏁版嵁
+    handlePostListSubmitData() {
+      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 (!flag) {
+        return { code: '301', message: msg + '涓嶈兘涓虹┖锛�' }
+      }
+
+      this.tableData[0].map(item => {
+        delete (item.uuid)
+      })
+
+      return { code: '200', message: '鎴愬姛锛�' }
+    },
+    // 澶勭悊寰�鏉ュ崟浣嶆彁浜ゆ暟鎹�
+    handleContactUnitListSubmitData() {
+      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 (!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: '鎴愬姛锛�' }
+    },
+    // 澶勭悊浠撳簱璁剧疆鎻愪氦鏁版嵁
+    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: '鎴愬姛锛�' }
+    },
+    // 澶勭悊搴撲綅璁剧疆鎻愪氦鏁版嵁
+    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 = '*鐘舵�佷笉鑳戒负绌猴紒'
+        }
+        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: '鎴愬姛锛�' }
+    },
+    // 澶勭悊璁惧鐐规椤圭洰鎻愪氦鏁版嵁
+    handleCheckPositionSubmitData() {
+      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: '鎴愬姛锛�' }
+    },
+    // 澶勭悊璁惧鐐规鏍囧噯鎻愪氦鏁版嵁
+    handleCheckStandardSubmitData() {
+      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['*鐐规椤瑰簭鍙�']) {
+          flag = false
+          msg = '*鐐规椤瑰簭鍙蜂笉鑳戒负绌猴紒'
+        }
+
+        if (!j['*璁惧鐐规鏍囧噯缂栧彿(M)']) {
+          flag = false
+          msg = '*璁惧鐐规鏍囧噯缂栧彿(M)涓嶈兘涓虹┖锛�'
+        }
+
+        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: '鎴愬姛锛�' }
+    },
+    // 澶勭悊璁惧淇濆吇椤圭洰鎻愪氦鏁版嵁
+    handleMaintainPositionSubmitData() {
+      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 (!flag) {
+        return { code: '301', message: msg + '涓嶈兘涓虹┖锛�' }
+      }
+
+      this.tableData[0].map(item => {
+        delete (item.uuid)
+      })
+
+      return { code: '200', message: '鎴愬姛锛�' }
+    },
+    // 澶勭悊璁惧淇濆吇鏍囧噯鎻愪氦鏁版嵁
+    handleMaintainStandardSubmitData() {
+      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['*淇濆吇椤瑰簭鍙�']) {
+          flag = false
+          msg = '*鐐规椤瑰簭鍙蜂笉鑳戒负绌猴紒'
+        }
+
+        if (!j['*璁惧淇濆吇鏍囧噯缂栧彿(M)']) {
+          flag = false
+          msg = '*璁惧淇濆吇鏍囧噯缂栧彿(M)涓嶈兘涓虹┖锛�'
+        }
+
+        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: '鎴愬姛锛�' }
+    },
+
     // parents:鐢ㄤ簬杩斿洖鐨勬暟缁勶紝childNode:瑕佹煡璇㈢殑鑺傜偣锛宼reeData锛歫son鏍戝舰鏁版嵁
     findParent(parents, childNode, treeData) {
       // console.log(parents, childNode, treeData, 2)
@@ -563,23 +1855,350 @@
           '鎵�灞炵彮缁勭紪鐮�': []
         })
       }
+      //  瑙掕壊绠$悊鏂板琛�
+      if (this.sheetName.indexOf('瑙掕壊绠$悊') !== -1) {
+        this.tableData[0].unshift({
+          uuid: nanoid(),
+          '*瑙掕壊缂栧彿(鍞竴)': '',
+          '*瑙掕壊鍚嶇О': '',
+          '*鐘舵��': 'Y',
+          '鎻忚堪': ''
+        })
+      }
+      //  鐝粍绠$悊鏂板琛�
+      if (this.sheetName.indexOf('鐝粍绠$悊') !== -1) {
+        this.tableData[0].unshift({
+          uuid: nanoid(),
+          '*鐝粍缂栧彿(鍞竴)': '',
+          '*鐝粍鍚嶇О': '',
+          '*鐘舵��': 'Y',
+          '鎻忚堪': ''
+        })
+      }
+      //  宀椾綅绠$悊鏂板琛�
+      if (this.sheetName.indexOf('宀椾綅绠$悊') !== -1) {
+        this.tableData[0].unshift({
+          uuid: nanoid(),
+          '*宀椾綅缂栧彿(鍞竴)': '',
+          '*宀椾綅鍚嶇О': '',
+          '*鐘舵��': 'Y',
+          '鎻忚堪': ''
+        })
+      }
+      // 寰�鏉ュ崟浣�
+      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',
+          '*寰�鏉ュ崟浣嶇被鍨嬬紪鐮�': '',
+          '鑱旂郴浜�': '',
+          '鑱旂郴鏂瑰紡': '',
+          '鍦板潃': ''
+        })
+      }
+      //  浠撳簱璁剧疆
+      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(),
+          '*妯″叿淇濆吇鏍囧噯缂栧彿': '',
+          '*淇濆吇椤瑰簭鍙�': '',
+          '*妯″叿淇濆吇椤圭紪鍙�(鍞竴)': '',
+          '*妯″叿淇濆吇椤瑰悕绉�': '',
+          '淇濆吇椤硅姹�': ''
+        })
+      }
+
+      //  璁惧鐐规椤圭洰
+      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(),
+          '*璁惧鐐规鏍囧噯缂栧彿(M)': '',
+          '*鐐规椤瑰簭鍙�': '',
+          '*璁惧鐐规閮ㄤ綅缂栧彿(鍞竴)': '',
+          '*璁惧鐐规閮ㄤ綅鍚嶇О': '',
+          '鐐规閮ㄤ綅瑕佹眰': '',
+          '*閫夋嫨鎵爜': '',
+          '*鐐规鍛ㄦ湡': ''
+        })
+      }
+
+      //  璁惧鐐规椤圭洰
+      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(),
+          '*淇濆吇椤瑰簭鍙�': '',
+          '*璁惧淇濆吇鏍囧噯缂栧彿(M)': '',
+          '*璁惧淇濆吇閮ㄤ綅缂栧彿(鍞竴)': '',
+          '*璁惧淇濆吇閮ㄤ綅鍚嶇О': '',
+          '淇濆吇閮ㄤ綅瑕佹眰': '',
+          '*閫夋嫨鎵爜': ''
+        })
+      }
+
+      //
     },
     delRow(row) {
-      // 浜哄憳绠$悊鍒犻櫎琛�
-      if (this.sheetName.indexOf('浜哄憳绠$悊') !== -1) {
+      // 閽堝鍗晄heet
+      if (this.sheetName.length === 1) {
         if (this.tableData[0].length > 1) {
           return this.tableData[0].splice(this.tableData[0].findIndex(i => i.uuid === row.uuid), 1)
         } else {
           return this.$message.info('蹇呴』瑕佹湁涓�鏉℃暟鎹紒')
         }
       }
+      // 閽堝涓や釜 sheet
+      if (this.sheetName.length === 2) {
+        if (this.activeName === '0') {
+          if (this.tableData[0].length > 1) {
+            return this.tableData[0].splice(this.tableData[0].findIndex(i => i.uuid === row.uuid), 1)
+          } else {
+            return this.$message.info('蹇呴』瑕佹湁涓�鏉℃暟鎹紒')
+          }
+        }
+        if (this.activeName === '1') {
+          if (this.tableData[1].length > 1) {
+            return this.tableData[1].splice(this.tableData[1].findIndex(i => i.uuid === row.uuid), 1)
+          } else {
+            return this.$message.info('蹇呴』瑕佹湁涓�鏉℃暟鎹紒')
+          }
+        }
+      }
     },
-
     reset() {
       this.tableData = []
       this.tableHeader = []
       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 })
+      if (res.code === '200') {
+        window.location.href = res.data
+      }
     },
     async getSelectArr() {
       await this.getPrentOrganization()
@@ -652,9 +2271,38 @@
           h('span', { style: 'color:#FFF' }, column.label)
         ]
       }
+    },
+    // 鏁版嵁鎻愪氦鍓嶅幓闄ょ┖鏍兼柟娉�
+    tableDataTrim() {
+      if (this.tableData.length === 1) { // 涓�涓猻heet
+        this.tableData[0].forEach(i => {
+          for (const j in i) {
+            i[j] = i[j].trim()
+          }
+        })
+      }
+
+      if (this.tableData.length === 2) { // 涓や釜sheet
+        this.tableData[0].forEach(i => {
+          for (const j in i) {
+            i[j] = i[j].trim()
+          }
+        })
+        this.tableData[1].forEach(i => {
+          for (const j in i) {
+            i[j] = i[j].trim()
+          }
+        })
+      }
     }
 
   }
 }
 </script>
 
+<style lang="scss">
+::v-deep .el-dialog__body {
+  padding: 10px 10px !important;
+}
+
+</style>

--
Gitblit v1.9.3