fix(对账): 修复删除已对账数据时索引变化导致的问题
This commit is contained in:
@@ -173,7 +173,9 @@ function onCompleteCheck() {
|
||||
});
|
||||
// 删除当前已对账的数据
|
||||
const currentIndex = multipleCurrentIndex.value[0] || 0;
|
||||
multipleCurrentIndex.value.forEach((index) => {
|
||||
// 先排序索引,从大到小删除,避免索引变化影响后续删除
|
||||
const sortedIndices = multipleCurrentIndex.value.toSorted((a, b) => b - a);
|
||||
sortedIndices.forEach((index) => {
|
||||
pendingData.value.splice(index, 1);
|
||||
});
|
||||
|
||||
@@ -188,6 +190,7 @@ function onCompleteCheck() {
|
||||
multipleCurrentData.value = [];
|
||||
// 如果当前索引超出了数据范围,重置到第一条,否则下一条(删除已处理索引后,currentIndex即是下一条)
|
||||
multipleCurrentIndex.value[0] = Math.min(currentIndex, pendingData.value.length - 1);
|
||||
changePendingData(multipleCurrentIndex.value[0]);
|
||||
}
|
||||
// 其他方式--确认对账 --------------
|
||||
// 已选列表
|
||||
@@ -321,18 +324,15 @@ async function onCompleteCheckCreated() {
|
||||
|
||||
const paymentIds = multipleCurrentData.value.map((item) => item.id);
|
||||
// 调用接口
|
||||
const hideLoading = message.loading('处理中...', 0);
|
||||
await (isBatchMode.value
|
||||
? reconciliateBillsApi.manualCheckCreatedBatch({
|
||||
paymentIds: paymentIds.join(','),
|
||||
orders: data,
|
||||
})
|
||||
: reconciliateBillsApi.manualCheckCreated(data));
|
||||
|
||||
// 刷新数据
|
||||
onCompleteCheck();
|
||||
hideLoading();
|
||||
// 清空已选列表
|
||||
selectedData.value = [];
|
||||
selectedRef.value?.clearData();
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user