|
@@ -15,10 +15,10 @@
|
|
<p>
|
|
<p>
|
|
<a-tooltip placement="right">
|
|
<a-tooltip placement="right">
|
|
<template slot="title">
|
|
<template slot="title">
|
|
- <span v-for="(con,i) in countData" :key="i"><strong>业务单号</strong>({{ con.bizCode }}){{ con.productCode }} (<span class="red">{{ con.productNum }}</span>/{{ con.bizProductNum }});
|
|
|
|
- </span></template>
|
|
|
|
|
|
+ <div v-for="(con,i) in countData" :key="i"><strong>业务单号</strong>({{ con.bizCode }})<span v-for="(item,j) in con.info" :key="j">{{ item.productCode }}(<span class="red">{{ item.productNum }}</span>/{{ item.bizProductNum }});</span></div>
|
|
|
|
+ </template>
|
|
<div class="text-overflows2" v-if="countData && countData.length>0">
|
|
<div class="text-overflows2" v-if="countData && countData.length>0">
|
|
- 可导入产品数量与实际销售数量有差异:<span v-for="(con,i) in countData" :key="i"><strong>业务单号</strong>({{ con.bizCode }}){{ con.productCode }} (<span class="red">{{ con.productNum }}</span>/{{ con.bizProductNum }});</span>
|
|
|
|
|
|
+ 可导入产品数量与实际销售数量有差异:<span v-for="(con,i) in countData" :key="i"><strong>业务单号</strong>({{ con.bizCode }})<span v-for="(item,j) in con.info" :key="j">{{ item.productCode }}(<span class="red">{{ item.productNum }}</span>/{{ item.bizProductNum }});</span></span>
|
|
</div>
|
|
</div>
|
|
</a-tooltip>
|
|
</a-tooltip>
|
|
</p>
|
|
</p>
|
|
@@ -27,7 +27,8 @@
|
|
class="sTable"
|
|
class="sTable"
|
|
ref="table"
|
|
ref="table"
|
|
size="small"
|
|
size="small"
|
|
- :rowKey="(record) => record.allocateSn"
|
|
|
|
|
|
+ :rowKey="(record) => record.no"
|
|
|
|
+ rowKeyName="no"
|
|
:columns="nowColumns"
|
|
:columns="nowColumns"
|
|
:dataSource="loadData"
|
|
:dataSource="loadData"
|
|
:loading="loading"
|
|
:loading="loading"
|
|
@@ -42,7 +43,8 @@
|
|
class="unTable"
|
|
class="unTable"
|
|
ref="unTable"
|
|
ref="unTable"
|
|
size="small"
|
|
size="small"
|
|
- :rowKey="(record) => record.errorDesc"
|
|
|
|
|
|
+ :rowKey="(record) => record.no"
|
|
|
|
+ rowKeyName="no"
|
|
:columns="nowUnColumns"
|
|
:columns="nowUnColumns"
|
|
:dataSource="unLoadData"
|
|
:dataSource="unLoadData"
|
|
:loading="loading"
|
|
:loading="loading"
|
|
@@ -127,13 +129,35 @@ export default {
|
|
const paramsData = JSON.parse(JSON.stringify(_this.paramsData))
|
|
const paramsData = JSON.parse(JSON.stringify(_this.paramsData))
|
|
this.loadData = paramsData.rightList || []
|
|
this.loadData = paramsData.rightList || []
|
|
this.unLoadData = paramsData.errorList || []
|
|
this.unLoadData = paramsData.errorList || []
|
|
- this.countData = paramsData.billList || []
|
|
|
|
this.loadData.map((item, index) => {
|
|
this.loadData.map((item, index) => {
|
|
item.no = index + 1
|
|
item.no = index + 1
|
|
})
|
|
})
|
|
this.unLoadData.map((item, index) => {
|
|
this.unLoadData.map((item, index) => {
|
|
item.no = index + 1
|
|
item.no = index + 1
|
|
})
|
|
})
|
|
|
|
+ if (paramsData.billList && paramsData.billList.length > 0) {
|
|
|
|
+ const newCountData = paramsData.billList || []
|
|
|
|
+ newCountData.map(item => {
|
|
|
|
+ item.info = [{ productCode: item.productCode,
|
|
|
|
+ productNum: item.productNum,
|
|
|
|
+ bizProductNum: item.bizProductNum }]
|
|
|
|
+ })
|
|
|
|
+ const mergedObjects = newCountData.reduce((acc, obj) => {
|
|
|
|
+ const index = acc.findIndex(o => { return o.bizCode == obj.bizCode })
|
|
|
|
+ if (index != -1) {
|
|
|
|
+ acc[index].info.push({ productCode: obj.productCode,
|
|
|
|
+ productNum: obj.productNum,
|
|
|
|
+ bizProductNum: obj.bizProductNum })
|
|
|
|
+ } else {
|
|
|
|
+ acc.push(obj)
|
|
|
|
+ }
|
|
|
|
+ return acc
|
|
|
|
+ }, [])
|
|
|
|
+ this.countData = mergedObjects
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ compareObjects (obj1, obj2) {
|
|
|
|
+ return Object.keys(obj1).every(key => obj1[key] === obj2[key])
|
|
},
|
|
},
|
|
// 确认导入
|
|
// 确认导入
|
|
handleSubmit () {
|
|
handleSubmit () {
|