From 078e2b223b845d47481a421366ed2fdf5d7bdd4e Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期五, 15 九月 2023 15:52:58 +0800
Subject: [PATCH] 1.正在实现角色导入(测试)

---
 src/views/systemSetting/dataImport.vue |  510 ++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 314 insertions(+), 196 deletions(-)

diff --git a/src/views/systemSetting/dataImport.vue b/src/views/systemSetting/dataImport.vue
index b3f4709..070c0d2 100644
--- a/src/views/systemSetting/dataImport.vue
+++ b/src/views/systemSetting/dataImport.vue
@@ -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
@@ -81,7 +76,7 @@
           :key="i+j"
           :label="i"
         >
-          <!--          :key="tableKey"-->
+
           <el-table
             v-if="tableData[j].length>0"
             :ref="'tableDataRef'+i"
@@ -120,6 +115,7 @@
 
                 <div
                   v-if="item.indexOf('缂栧彿(鍞竴)')!==-1||
+                    item.indexOf('鐢ㄦ埛濮撳悕')!==-1||
                     item.indexOf('瀵嗙爜')!==-1||
                     item.indexOf('鎵嬫満鍙�')!==-1||
                     item.indexOf('閭')!==-1||
@@ -129,31 +125,12 @@
                 >
                   <el-input v-model="row[item]" placeholder="璇疯緭鍏�" />
                 </div>
-                <div
-                  v-else-if="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
@@ -229,18 +206,6 @@
                     :show-all-levels="false"
                   />
                 </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>
             </el-table-column>
@@ -275,6 +240,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="1000px"
+      :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="閿欒瀛楁"
+
+            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>
 
@@ -284,10 +299,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,
@@ -318,14 +336,8 @@
       roleArr: [], // 瑙掕壊
       groupArr: [], // 鐝粍
 
-      powerArr: [
-        { code: 'ALL', name: '鍏ㄩ儴' },
-        { code: 'LEVEL', name: '鏈骇' },
-        { code: 'PERSON', name: '鏈汉' },
-        { code: 'CUSTOM', name: '鑷畾涔�' }
-      ], // 鏁版嵁鑼冨洿
-
-      tableKey: new Date().getTime()
+      dialogVisible: false,
+      dialogTableData: []
 
     }
   },
@@ -352,11 +364,12 @@
       }
 
       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('琛ㄦ牸鏁版嵁涓嶈兘涓虹┖锛�')
@@ -368,57 +381,242 @@
       console.log(this.tableData)
       console.log(this.tableHeader)
 
-      // this.tableHeader
-
       // 浜哄憳绠$悊瀵煎叆鍒ゆ柇
       if (this.sheetName.indexOf('浜哄憳绠$悊') !== -1) {
+        this.handlePersonListUploadTemplate(true)
+      }
+
+      if (this.sheetName.indexOf('瑙掕壊绠$悊') !== -1 || this.sheetName.indexOf('鐝粍绠$悊') !== -1) {
         this.statusArr = [
-          { code: 'Y', name: '鍦ㄨ亴' },
-          { code: 'N', name: '绂昏亴' }
+          { code: 'Y', name: '姝e父' },
+          { 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('浜哄憳绠$悊')
         this.tableData[0].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['*鐘舵��'] ? this.statusArr.find(e => e.name === j['*鐘舵��']).code : ''
+          j.uuid = nanoid()
+        })
+      }
+    },
+    // 鎻愪氦
+    submit() {
+      this.$confirm('鏄惁纭鎻愪氦?', '鎻愮ず', {
+        confirmButtonText: '纭畾',
+        cancelButtonText: '鍙栨秷',
+        type: 'warning'
+      })
+        .then(() => {
+          if (this.sheetName.indexOf('浜哄憳绠$悊') !== -1) {
+            const res = this.handlePersonListSubmitData()
+            if (res.code !== '200') {
+              return this.$message.info(res.message)
+            }
+          }
 
+          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)
+            }
+          }
+
+          const data = {
+            fileCode: this.excelCode,
+            tableData: this.tableData
+          }
+          ExcelModelCheck(data).then(res => {
+            // 杩斿洖鐨刯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 === '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 = ''
+
+              return
+            }
+
+            if (this.sheetName.indexOf('浜哄憳绠$悊') !== -1) {
+              this.handlePersonListUploadTemplate(false)
+            }
+          })
+        })
+        .catch(e => {
+          console.log(e)
+          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['*鎵�灞炵粍缁囩紪鐮�']) ? j['*鎵�灞炵粍缁囩紪鐮�'] : '') : ''
+          j['*鎵�灞炵粍缁囩紪鐮�'] = j['*鎵�灞炵粍缁囩紪鐮�'] ? (orgArr.includes(j['*鎵�灞炵粍缁囩紪鐮�']) ? this.findParent([], j['*鎵�灞炵粍缁囩紪鐮�'], this.orgOptions).reverse() : '') : ''
           j['*鍦ㄨ亴鐘舵��'] = j['*鍦ㄨ亴鐘舵��'] ? this.statusArr.find(e => e.name === j['*鍦ㄨ亴鐘舵��']).code : 'Y'
-
-          // j['鎵嬫満鍙�'] = j['鎵嬫満鍙�'] ? j['鎵嬫満鍙�'] : ''
-          // j['閭'] = j['閭'] ? j['閭'] : ''
-          // j['*瀵嗙爜'] = j['*瀵嗙爜'] ? j['*瀵嗙爜'] : ''
-          // j['*鐢ㄦ埛濮撳悕'] = j['*鐢ㄦ埛濮撳悕'] ? j['*鐢ㄦ埛濮撳悕'] : ''
-          // j['*鐢ㄦ埛缂栧彿(鍞竴)'] = j['*鐢ㄦ埛缂栧彿(鍞竴)'] ? j['*鐢ㄦ埛缂栧彿(鍞竴)'] : ''
           j.uuid = nanoid()
         })
-
-        // this.tableKey = 'asd'
-        // this.$forceUpdate()
       }
 
-      if (this.sheetName.indexOf('瑙掕壊绠$悊') !== -1) {
-        this.statusArr = [
-          { code: 'Y', name: '鍋滅敤' },
-          { code: 'N', name: '鍚敤' }
-        ]
-
+      // 闈炵涓�娆℃彁浜�
+      if (!isFirstUpload) {
         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.鎵�灞炲矖浣嶇紪鐮� = 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: '鎴愬姛锛�' }
     },
 
     // 鑾峰彇妯℃澘
@@ -435,116 +633,9 @@
       const res = await DownLoadExcel({ FileCode: this.excelCode })
       window.location.href = res.data
     },
-    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('缂栫爜涓嶈兘閲嶅锛�')
-            }
-            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['鎵�灞炲矖浣嶇紪鐮�'] = typeof j['鎵�灞炲矖浣嶇紪鐮�'] === 'string' ? j['鎵�灞炲矖浣嶇紪鐮�'] : j['鎵�灞炲矖浣嶇紪鐮�'].join(',')
-              // j['鎵�灞炵彮缁勭紪鐮�'] = typeof j['鎵�灞炵彮缁勭紪鐮�'] === 'string' ? j['鎵�灞炵彮缁勭紪鐮�'] : j['鎵�灞炵彮缁勭紪鐮�'].join(',')
-              // j['鎵�灞炶鑹茬紪鐮�'] = typeof j['鎵�灞炶鑹茬紪鐮�'] === 'string' ? j['鎵�灞炶鑹茬紪鐮�'] : j['鎵�灞炶鑹茬紪鐮�'].join(',')
-              j['鎵�灞炲矖浣嶇紪鐮�'] = j['鎵�灞炲矖浣嶇紪鐮�'].join(',')
-              j['鎵�灞炵彮缁勭紪鐮�'] = j['鎵�灞炵彮缁勭紪鐮�'].join(',')
-              j['鎵�灞炶鑹茬紪鐮�'] = j['鎵�灞炶鑹茬紪鐮�'].join(',')
-              j['*鎵�灞炵粍缁囩紪鐮�'] = j['*鎵�灞炵粍缁囩紪鐮�'][j['*鎵�灞炵粍缁囩紪鐮�'].length - 1]
-            })
-
-            this.tableData[0].map(item => {
-              delete (item.uuid)
-            })
-          }
-
-          const data = {
-            fileCode: this.excelCode,
-            tableData: this.tableData
-          }
-
-          ExcelModelCheck(data).then(res => {
-            // 杩斿洖鐨刯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.json2.code !== '200') {
-            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 + ',' + res.json2.message)
-            // }
-
-            if (res.json1.code === '200' && res.json2 === '200' && res.json3 === '200') {
-              this.$notify.success('鏁版嵁鎻愪氦鎴愬姛!')
-              this.tableData = []
-              this.tableHeader = []
-              this.sheetName = []
-              this.excelCode = ''
-            } else {
-              this.$notify.error('鏁版嵁鎻愪氦澶辫触!')
-            }
-          })
-        })
-        .catch(e => {
-          console.log(e)
-          this.$notify.info('宸插彇娑堟彁浜わ紒')
-        })
+    handleClose() {
+      this.dialogTableData = []
     },
     // parents:鐢ㄤ簬杩斿洖鐨勬暟缁勶紝childNode:瑕佹煡璇㈢殑鑺傜偣锛宼reeData锛歫son鏍戝舰鏁版嵁
     findParent(parents, childNode, treeData) {
@@ -584,16 +675,37 @@
           '鎵�灞炵彮缁勭紪鐮�': []
         })
       }
+      //  瑙掕壊绠$悊鏂板琛�
+      if (this.sheetName.indexOf('瑙掕壊绠$悊') !== -1) {
+        this.tableData[0].unshift({
+          uuid: nanoid(),
+          '*瑙掕壊缂栧彿(鍞竴)': '',
+          '*瑙掕壊鍚嶇О': '',
+          '*鐘舵��': 'Y',
+          '鎻忚堪': ''
+        })
+      }
+      //  鐝粍绠$悊鏂板琛�
+      if (this.sheetName.indexOf('鐝粍绠$悊') !== -1) {
+        this.tableData[0].unshift({
+          uuid: nanoid(),
+          '*鐝粍缂栧彿(鍞竴)': '',
+          '*鐝粍鍚嶇О': '',
+          '*鐘舵��': 'Y',
+          '鎻忚堪': ''
+        })
+      }
     },
     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('蹇呴』瑕佹湁涓�鏉℃暟鎹紒')
         }
       }
+      // 閽堝澶歴heet
     },
 
     reset() {
@@ -679,3 +791,9 @@
 }
 </script>
 
+<style lang="scss">
+::v-deep .el-dialog__body {
+  padding: 20px 20px !important;
+}
+
+</style>

--
Gitblit v1.9.3