From 3d6ef686fad6a5a0b8e834274a9fef79c7a88afd Mon Sep 17 00:00:00 2001
From: chenhaozhe <cgz@hz-kingdee.com>
Date: 星期五, 05 九月 2025 09:14:18 +0800
Subject: [PATCH] 解决 单据源单选择列表中 多次选中 HInterID 相同的表时,会造成单据返回时判断为未选中的问题
---
components/BillListPopup/BillListPopup.vue | 30 +++++++++++++++++++++---------
1 files changed, 21 insertions(+), 9 deletions(-)
diff --git a/components/BillListPopup/BillListPopup.vue b/components/BillListPopup/BillListPopup.vue
index 22716d1..eabd118 100644
--- a/components/BillListPopup/BillListPopup.vue
+++ b/components/BillListPopup/BillListPopup.vue
@@ -23,9 +23,9 @@
</view>
<scroll-view id="#BillListPanel" scroll-y="true" style="height: 55vh;">
<view class="options-wrapper" v-show="HBillList.length != 0">
- <uni-card :is-active="bill.isActive" :class="bill.isActive?'uni-card--is-active':''" v-for="(bill, index) in HBillList[curPage-1]" :key="index"
- :title="bill['鐗╂枡鍚嶇О']" :extra="`鏁伴噺: ${bill['鏁伴噺']}`"
- @tap="clickCard(bill['HSourceInterID'], bill['鍗曟嵁鍙�'], index)">
+ <uni-card :is-active="bill.isActive" :class="bill.isActive?'uni-card--is-active':''"
+ v-for="(bill, index) in HBillList[curPage-1]" :key="index" :title="bill['鐗╂枡鍚嶇О']"
+ :extra="`鏁伴噺: ${bill['鏁伴噺']}`" @tap="clickCard(bill['HSourceInterID'], bill['鍗曟嵁鍙�'], index)">
<view class="item">
<view class="left">鍗曟嵁鍙�: </view>
<view class="right">{{bill['鍗曟嵁鍙�']}}</view>
@@ -128,7 +128,7 @@
this.getBillList()
},
ret() {
- console.log('this.MultiSourceBill: ',this.MultiSourceBill);
+ console.log('this.MultiSourceBill: ', this.MultiSourceBill);
uni.$emit('BillSelectComplete', {
HInterID: 0,
HBillNo: 0,
@@ -154,7 +154,8 @@
// 璁剧疆浜嗗婧愬崟妯″紡
this.setMultiSourceBillList({
HInterID: interid,
- HBillNo: billno
+ HBillNo: billno,
+ HIsActive: this.HBillList[this.curPage - 1][index]['isActive']
})
}
@@ -163,11 +164,22 @@
setMultiSourceBillList(billInfo) {
let index = this.multiSouceBillList.findIndex(item => item.HInterID == billInfo.HInterID)
if (index == -1) {
+ billInfo['count'] = 1
this.multiSouceBillList.push(billInfo)
} else {
- this.multiSouceBillList.splice(index, 1)
+ if (billInfo.HIsActive) {
+ // 濡傛灉瀵瑰簲鍗曟嵁浼犲叆鐨勬槸鍚︽縺娲绘暟鏄痶rue锛屽垯璁℃暟鍣�+1
+ this.multiSouceBillList[index]['count']++;
+ } else {
+ // 濡傛灉瀵瑰簲鍗曟嵁浼犲叆鐨勬槸鍚︽縺娲绘暟鏄痜alse锛屽垯璁℃暟鍣�-1
+ this.multiSouceBillList[index]['count']--;
+ }
+ if(this.multiSouceBillList[index]['count'] == 0){
+ // 娌℃湁閫変腑鐨勫崟鎹紝鍒欑Щ闄ょ紦瀛樹腑鐨勬暟鎹�
+ this.multiSouceBillList.splice(index, 1)
+ }
}
- console.log('this.multiSouceBillList: ',this.multiSouceBillList);
+ console.log('this.multiSouceBillList: ', this.multiSouceBillList);
},
getBillList() {
this.HBillList = []
@@ -199,11 +211,11 @@
this.page = result.length
setTimeout(() => {
this.enablefocus = true
- },500)
+ }, 500)
} else {
setTimeout(() => {
this.enablefocus = true
- },500)
+ }, 500)
uni.showToast({
icon: 'none',
title: Message
--
Gitblit v1.9.1