From ac83abeeafb189a84e9f3ea52b57acee979a353c Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期一, 18 九月 2023 13:31:32 +0800
Subject: [PATCH] 1.往来单位导入测试中
---
src/views/systemSetting/dataImport.vue | 187 ++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 178 insertions(+), 9 deletions(-)
diff --git a/src/views/systemSetting/dataImport.vue b/src/views/systemSetting/dataImport.vue
index 070c0d2..fcb88e6 100644
--- a/src/views/systemSetting/dataImport.vue
+++ b/src/views/systemSetting/dataImport.vue
@@ -70,13 +70,12 @@
style="margin: 10px"
>
- <el-tabs type="border-card">
+ <el-tabs v-model="activeName" type="border-card" @tab-click="handleTabClick">
<el-tab-pane
v-for="(i,j) in sheetName"
:key="i+j"
:label="i"
>
-
<el-table
v-if="tableData[j].length>0"
:ref="'tableDataRef'+i"
@@ -120,7 +119,12 @@
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="璇疯緭鍏�" />
@@ -337,7 +341,9 @@
groupArr: [], // 鐝粍
dialogVisible: false,
- dialogTableData: []
+ dialogTableData: [],
+
+ activeName: '0'// tab閫変腑鍊�
}
},
@@ -378,15 +384,16 @@
this.tableHeader = header
this.sheetName = sheetName
- console.log(this.tableData)
- console.log(this.tableHeader)
+ this.activeName = '0'
// 浜哄憳绠$悊瀵煎叆鍒ゆ柇
if (this.sheetName.indexOf('浜哄憳绠$悊') !== -1) {
this.handlePersonListUploadTemplate(true)
}
- if (this.sheetName.indexOf('瑙掕壊绠$悊') !== -1 || this.sheetName.indexOf('鐝粍绠$悊') !== -1) {
+ if (this.sheetName.indexOf('瑙掕壊绠$悊') !== -1 || this.sheetName.indexOf('鐝粍绠$悊') !== -1 ||
+ this.sheetName.indexOf('宀椾綅绠$悊') !== -1
+ ) {
this.statusArr = [
{ code: 'Y', name: '姝e父' },
{ code: 'N', name: '鍋滅敤' }
@@ -396,6 +403,24 @@
j.uuid = nanoid()
})
}
+
+ if (this.sheetName.indexOf('寰�鏉ュ崟浣�') !== -1) {
+ this.statusArr = [
+ { code: 'Y', name: '姝e父' },
+ { code: 'N', name: '鍋滅敤' }
+ ]
+ this.tableData[0].forEach(j => {
+ j.uuid = nanoid()
+ })
+ this.tableData[1].forEach(j => {
+ j['*鐘舵��'] = j['*鐘舵��'] ? this.statusArr.find(e => e.name === j['*鐘舵��']).code : ''
+ j.uuid = nanoid()
+ })
+ }
+
+ // console.log(this.sheetName)
+ // console.log(this.tableData)
+ // console.log(this.tableHeader)
},
// 鎻愪氦
submit() {
@@ -420,6 +445,18 @@
}
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)
}
@@ -618,7 +655,94 @@
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: '鎴愬姛锛�' }
+ },
// 鑾峰彇妯℃澘
async getExcelModelData() {
const { data: res } = await ExcelModelData()
@@ -695,6 +819,36 @@
'鎻忚堪': ''
})
}
+ // 宀椾綅绠$悊鏂板琛�
+ 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(),
+ '*寰�鏉ュ崟浣嶇紪鍙�(鍞竴)': '',
+ '*寰�鏉ュ崟浣嶅悕绉�': '',
+ '*鐘舵��': 'Y',
+ '*寰�鏉ュ崟浣嶇被鍨嬬紪鐮�': '',
+ '鑱旂郴浜�': '',
+ '鑱旂郴鏂瑰紡': '',
+ '鍦板潃': ''
+ })
+ }
},
delRow(row) {
// 閽堝鍗晄heet
@@ -705,9 +859,24 @@
return this.$message.info('蹇呴』瑕佹湁涓�鏉℃暟鎹紒')
}
}
- // 閽堝澶歴heet
+ // 閽堝涓や釜 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 = []
--
Gitblit v1.9.3