Compare commits
2 Commits
35b3451a53
...
dc65ee2583
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dc65ee2583 | ||
|
|
e11e36de58 |
@ -16,79 +16,10 @@ export interface StorageLogVO {
|
||||
price:number
|
||||
}
|
||||
|
||||
|
||||
// 查询入/出库实时分页
|
||||
export const getStorageNowList = async (params) => {
|
||||
return await request.get({ url: `/heli/xzd-storage-log/all`, params })
|
||||
}
|
||||
|
||||
// 查询物料信息结合库存信息
|
||||
export const getStorageNowMaterialGroupPage = async (params) => {
|
||||
return await request.get({ url: `/heli/xzd-storage-log/page-material-group`, params })
|
||||
}
|
||||
|
||||
|
||||
// 查询物料信息结合库存信息
|
||||
export const getStorageNowMaterialPage = async (params) => {
|
||||
return await request.get({ url: `/heli/xzd-storage-log/page-material`, params })
|
||||
}
|
||||
|
||||
// 查询入/出库实时分页
|
||||
export const getStorageNowAllPage = async (params) => {
|
||||
return await request.get({ url: `/heli/xzd-storage-log/page-now-all`, params })
|
||||
}
|
||||
|
||||
// 查询入/出库实时分页
|
||||
export const getStorageNowPage = async (params) => {
|
||||
return await request.get({ url: `/heli/xzd-storage-log/now`, params })
|
||||
}
|
||||
// 查询库存单价分页
|
||||
export const getStorageNowPricePage = async (params) => {
|
||||
return await request.get({ url: `/heli/xzd-storage-log/price`, params })
|
||||
}
|
||||
|
||||
// 查询入/出库实时分页
|
||||
export const getStorageNowPagesmall = async (params) => {
|
||||
return await request.get({ url: `/heli/xzd-storage-log/nowsmall`, params })
|
||||
}
|
||||
|
||||
|
||||
// 查询入/出库日志分页
|
||||
export const getStorageLogPage = async (params) => {
|
||||
return await request.get({ url: `/heli/xzd-storage-log/page`, params })
|
||||
}
|
||||
|
||||
// 查询入/出库日志详情
|
||||
export const getStorageLog = async (id: number) => {
|
||||
return await request.get({ url: `/heli/xzd-storage-log/get?id=` + id })
|
||||
}
|
||||
|
||||
// 新增入/出库日志
|
||||
export const createStorageLog = async (data: StorageLogVO) => {
|
||||
return await request.post({ url: `/heli/xzd-storage-log/create`, data })
|
||||
}
|
||||
//修改物料单价
|
||||
export const updatePrice = async (data: StorageLogVO) => {
|
||||
return await request.post({ url: `/heli/xzd-storage-log/updatePrice`, data })
|
||||
}
|
||||
// 修改入/出库日志
|
||||
export const updateStorageLog = async (data: StorageLogVO) => {
|
||||
return await request.put({ url: `/heli/xzd-storage-log/update`, data })
|
||||
}
|
||||
|
||||
// 删除入/出库日志
|
||||
export const deleteStorageLog = async (id: number) => {
|
||||
return await request.delete({ url: `/heli/xzd-storage-log/delete?id=` + id })
|
||||
}
|
||||
|
||||
// 导出入/出库日志 Excel
|
||||
export const exportStorageLog = async (params) => {
|
||||
return await request.download({ url: `/heli/xzd-storage-log/export-excel`, params })
|
||||
}
|
||||
// 查询入/出库实时分页
|
||||
export const getSupplementPage = async (params) => {
|
||||
return await request.get({ url: `/heli/xzd-storage-log/getSupplementPage`, params })
|
||||
}
|
||||
export const submitForm = async (data) => {
|
||||
return await request.post({ url: `/heli/xzd-storage-log/submitForm`, data })
|
||||
}
|
||||
|
||||
@ -355,35 +355,49 @@ const getMatCode = async () => {
|
||||
message.error('提交明细不能为空,请确认')
|
||||
return
|
||||
}
|
||||
loading.value = true
|
||||
queryParams.ids = selectedList.map((item) => item.id)
|
||||
// 保存当前的下拉框选择值和 supplierName
|
||||
const currentSelections = selectedList.map((row) => ({
|
||||
id: row.id,
|
||||
matId: row.matId,
|
||||
priceType: row.priceType,
|
||||
incoiceCode: row.incoiceCode,
|
||||
supplierName: row.supplierName
|
||||
}))
|
||||
|
||||
await getList()
|
||||
// 只获取选中行的物料编码数据,不刷新整个页面
|
||||
const data = await StorageLogApi.getStorageLogPage(queryParams)
|
||||
|
||||
// 恢复下拉框的值和 supplierName
|
||||
currentSelections.forEach((selection) => {
|
||||
const row = list.value.find((r) => r.id === selection.id)
|
||||
if (row) {
|
||||
row.matId = selection.matId
|
||||
row.priceType = selection.priceType
|
||||
row.incoiceCode = selection.incoiceCode
|
||||
row.supplierName = selection.supplierName
|
||||
// 通过 list.value 更新,确保 Vue 响应式生效
|
||||
data.list?.forEach((newRow) => {
|
||||
const row = list.value.find((r) => r.id == newRow.id)
|
||||
if (!row) return
|
||||
|
||||
if (newRow.materialDOList && newRow.materialDOList.length > 0) {
|
||||
// 更新 materialDOList
|
||||
row.materialDOList = newRow.materialDOList
|
||||
|
||||
// 检查当前 matId 是否在新选项列表中(用 == 避免类型不匹配)
|
||||
if (row.matId != null && row.matId !== '') {
|
||||
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 = ''
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// 没有物料编码列表,清空
|
||||
row.materialDOList = []
|
||||
row.matId = undefined
|
||||
row.matCode = ''
|
||||
row.matName = ''
|
||||
}
|
||||
})
|
||||
|
||||
queryParams.ids = []
|
||||
message.success('获取成功')
|
||||
emit('success')
|
||||
} catch (error) {
|
||||
console.error('获取失败:', error)
|
||||
// message.error(`操作失败: ${error.message || "未知错误"}`);
|
||||
} finally {
|
||||
loading.value = false
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user