Browse Source

fix(inspection): 修复检查请求列表中删除PO项的处理逻辑

- 记录被删除的PO的key和itemNo,用于保存时判断
- 使用poItemNo或itemNo作为删除标识(对应后端item_no)
- 存储对象而非字符串,保留完整的itemNo信息
- 修复删除项解析逻辑,添加错误处理机制
master
qiankanghui 2 days ago
parent
commit
dc8812a359
  1. 24
      src/views/modules/inspection/inspectionRequestList.vue

24
src/views/modules/inspection/inspectionRequestList.vue

@ -2279,8 +2279,10 @@ export default {
}).then(() => {
const deletedRow = this.editPoDetailList[index]
// POkey
// POkeyitemNo
const key = `${deletedRow.orderRef1 || ''}_${deletedRow.orderRef2 || ''}`
// 使 poItemNo itemNo item_no
const itemNo = deletedRow.poItemNo || deletedRow.po_item_no || deletedRow.itemNo || deletedRow.item_no || deletedRow.orderRef2 || ''
// POoriginalEditPoDetailListdeletedPoKeys
const isOriginalPo = this.originalEditPoDetailList.some(item => {
@ -2288,8 +2290,9 @@ export default {
return originalKey === key
})
if (isOriginalPo) {
this.deletedPoKeys.add(key)
if (isOriginalPo && itemNo) {
// itemNo
this.deletedPoKeys.add(JSON.stringify({ key, itemNo }))
}
//
@ -3474,10 +3477,17 @@ export default {
// 0. PO deleteInspectionDetails
if (this.deletedPoKeys.size > 0) {
const deletedItemNos = Array.from(this.deletedPoKeys).map(key => {
const parts = key.split('_')
return parts[1] || '' // orderRef2itemNo
}).filter(itemNo => itemNo)
const deletedItemNos = []
this.deletedPoKeys.forEach(itemStr => {
try {
const item = JSON.parse(itemStr)
if (item.itemNo) {
deletedItemNos.push(item.itemNo)
}
} catch (e) {
console.error('解析删除项失败:', itemStr, e)
}
})
if (deletedItemNos.length > 0) {
promiseChain = promiseChain.then(() => {

Loading…
Cancel
Save