From f6379a640d6c580582ecf01b6293a5ed334f428d Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期四, 14 九月 2023 17:37:12 +0800
Subject: [PATCH] 1.导入数据 正在修改bug
---
src/views/systemSetting/dataImport.vue | 133 +++++++++++++++++++++++++------------------
1 files changed, 77 insertions(+), 56 deletions(-)
diff --git a/src/views/systemSetting/dataImport.vue b/src/views/systemSetting/dataImport.vue
index 1d27b90..b3f4709 100644
--- a/src/views/systemSetting/dataImport.vue
+++ b/src/views/systemSetting/dataImport.vue
@@ -81,9 +81,10 @@
:key="i+j"
:label="i"
>
+ <!-- :key="tableKey"-->
<el-table
v-if="tableData[j].length>0"
- :ref="'tableDataRef'+j"
+ :ref="'tableDataRef'+i"
:data="tableData[j]"
border
:height="(mainHeight-180)+'px'"
@@ -119,13 +120,17 @@
<div
v-if="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-input v-model="row[item]" placeholder="璇疯緭鍏�" />
</div>
@@ -223,21 +228,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
@@ -333,7 +323,9 @@
{ code: 'LEVEL', name: '鏈骇' },
{ code: 'PERSON', name: '鏈汉' },
{ code: 'CUSTOM', name: '鑷畾涔�' }
- ]// 鏁版嵁鑼冨洿
+ ], // 鏁版嵁鑼冨洿
+
+ tableKey: new Date().getTime()
}
},
@@ -366,9 +358,17 @@
return false
},
async handleSuccess({ results, header, sheetName }) {
+ if (results[0].length === 0) {
+ return this.$message.info('琛ㄦ牸鏁版嵁涓嶈兘涓虹┖锛�')
+ }
this.tableData = results
this.tableHeader = header
this.sheetName = sheetName
+
+ console.log(this.tableData)
+ console.log(this.tableHeader)
+
+ // this.tableHeader
// 浜哄憳绠$悊瀵煎叆鍒ゆ柇
if (this.sheetName.indexOf('浜哄憳绠$悊') !== -1) {
@@ -380,20 +380,29 @@
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 => {
+
+ // 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.鎵�灞炲矖浣嶇紪鐮�.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['鎵�灞炲矖浣嶇紪鐮�'] = 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['*鍦ㄨ亴鐘舵��'] ? 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()
})
- console.log(this.tableData[0])
- // console.log(JSON.stringify(this.tableData[0]))
+
+ // this.tableKey = 'asd'
+ // this.$forceUpdate()
}
if (this.sheetName.indexOf('瑙掕壊绠$悊') !== -1) {
@@ -404,13 +413,14 @@
this.tableData[0].forEach(j => {
// j.鎵�灞炲矖浣嶇紪鐮� = j.鎵�灞炲矖浣嶇紪鐮�.split(',').filter(e => postArr.includes(e))
- console.log(j['鏁版嵁鏉冮檺'], 1) // 绾ц仈澶氶�夊洖鏄� 寰呯爺绌� 涓嬫鍐�
+ // 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()
})
}
},
+
// 鑾峰彇妯℃澘
async getExcelModelData() {
const { data: res } = await ExcelModelData()
@@ -426,11 +436,6 @@
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))
-
this.$confirm('鏄惁纭鎻愪氦?', '鎻愮ず', {
confirmButtonText: '纭畾',
cancelButtonText: '鍙栨秷',
@@ -472,9 +477,12 @@
}
this.tableData[0].forEach(j => {
- j.鎵�灞炲矖浣嶇紪鐮� = j.鎵�灞炲矖浣嶇紪鐮�.join(',')
- j.鎵�灞炵彮缁勭紪鐮� = j.鎵�灞炵彮缁勭紪鐮�.join(',')
- j.鎵�灞炶鑹茬紪鐮� = j.鎵�灞炶鑹茬紪鐮�.join(',')
+ // 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]
})
@@ -487,36 +495,49 @@
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)
+ 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.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.success('鏁版嵁鎻愪氦澶辫触!')
+ this.$notify.error('鏁版嵁鎻愪氦澶辫触!')
}
})
})
--
Gitblit v1.9.3