feat(heli): 添加出入库单据生成功能
This commit is contained in:
parent
e11e36de58
commit
dc65ee2583
@ -352,7 +352,7 @@ const getMatCode = async () => {
|
|||||||
const selectedList = multipleSelection.value || [] // 安全获取数据
|
const selectedList = multipleSelection.value || [] // 安全获取数据
|
||||||
// 1. 检查空数据
|
// 1. 检查空数据
|
||||||
if (!selectedList || selectedList.length == null) {
|
if (!selectedList || selectedList.length == null) {
|
||||||
message.error('请先选择需要获取物料编码的数据')
|
message.error('提交明细不能为空,请确认')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
loading.value = true
|
loading.value = true
|
||||||
@ -361,21 +361,36 @@ const getMatCode = async () => {
|
|||||||
// 只获取选中行的物料编码数据,不刷新整个页面
|
// 只获取选中行的物料编码数据,不刷新整个页面
|
||||||
const data = await StorageLogApi.getStorageLogPage(queryParams)
|
const data = await StorageLogApi.getStorageLogPage(queryParams)
|
||||||
|
|
||||||
// 更新选中行的 materialDOList 数据
|
// 通过 list.value 更新,确保 Vue 响应式生效
|
||||||
selectedList.forEach((selectedRow) => {
|
data.list?.forEach((newRow) => {
|
||||||
const newRow = data.list?.find((r) => r.id === selectedRow.id)
|
const row = list.value.find((r) => r.id == newRow.id)
|
||||||
if (newRow && newRow.materialDOList) {
|
if (!row) return
|
||||||
// 检查当前选中的 matId 是否在新选项列表中
|
|
||||||
if (selectedRow.matId) {
|
if (newRow.materialDOList && newRow.materialDOList.length > 0) {
|
||||||
const existsInNewList = newRow.materialDOList.some((m) => m.id === selectedRow.matId)
|
// 更新 materialDOList
|
||||||
if (!existsInNewList) {
|
row.materialDOList = newRow.materialDOList
|
||||||
// 如果不在新列表中,清空编码相关字段
|
|
||||||
selectedRow.matId = undefined
|
// 检查当前 matId 是否在新选项列表中(用 == 避免类型不匹配)
|
||||||
selectedRow.matCode = ''
|
if (row.matId != null && row.matId !== '') {
|
||||||
selectedRow.matName = ''
|
const mat = newRow.materialDOList.find((m) => m.id == row.matId)
|
||||||
|
if (mat) {
|
||||||
|
// 编码仍存在,重新设置对应字段
|
||||||
|
row.matId = mat.id
|
||||||
|
row.matCode = mat.code
|
||||||
|
row.matName = mat.name
|
||||||
|
} else {
|
||||||
|
// 编码不存在了,清空
|
||||||
|
row.matId = undefined
|
||||||
|
row.matCode = ''
|
||||||
|
row.matName = ''
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
selectedRow.materialDOList = newRow.materialDOList
|
} else {
|
||||||
|
// 没有物料编码列表,清空
|
||||||
|
row.materialDOList = []
|
||||||
|
row.matId = undefined
|
||||||
|
row.matCode = ''
|
||||||
|
row.matName = ''
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user