feat(mes): 更新库存管理逻辑,重命名字段并添加事务记录

重构库存管理相关的请求和响应对象,更新字段名称以提高语义清晰度。新增库存事务流水记录,支持库存增减事件的追踪。此变更旨在提升库存管理的可维护性和可读性。
pull/871/MERGE
YunaiV 2026-03-22 16:31:59 +08:00
parent 4b08ee3d97
commit 20bdd0ad31
3 changed files with 13 additions and 19 deletions

View File

@ -8,7 +8,6 @@ export interface WmMaterialStockVO {
itemCode: string
itemName: string
specification: string
unitMeasureId: number
unitMeasureName: string
batchId: number
batchCode: string
@ -20,13 +19,9 @@ export interface WmMaterialStockVO {
areaName: string
vendorId: number
vendorName: string
workOrderId: number
workOrderCode: string
quantityOnhand: number
recptDate: string
productionDate: string
expireDate: string
frozen: boolean
quantity: number
receiptTime: string
frozenFlag: boolean
createTime: string
}
@ -43,7 +38,7 @@ export const WmMaterialStockApi = {
},
// 更新库存冻结状态
updateMaterialStockFrozen: async (data: { id: number; frozen: boolean }) => {
updateMaterialStockFrozen: async (data: { id: number; frozenFlag: boolean }) => {
return await request.put({ url: '/mes/wm/material-stock/update-frozen', data })
},

View File

@ -38,7 +38,7 @@
<el-table-column label="仓库" prop="warehouseName" width="150" />
<el-table-column label="库区" prop="locationName" width="150" />
<el-table-column label="库位" prop="areaName" width="150" />
<el-table-column label="可用数量" prop="quantityOnhand" width="120" />
<el-table-column label="可用数量" prop="quantity" width="120" />
<el-table-column label="冻结数量" prop="quantityFrozen" width="120" />
</el-table>
@ -134,7 +134,7 @@ const handleConfirm = () => {
locationName: selectedRow.value.locationName,
areaId: selectedRow.value.areaId,
areaName: selectedRow.value.areaName,
availableQuantity: selectedRow.value.quantityOnhand
availableQuantity: selectedRow.value.quantity
})
handleClose()
}

View File

@ -75,7 +75,7 @@
<el-table-column label="产品物料编码" align="center" prop="itemCode" min-width="120" />
<el-table-column label="产品物料名称" align="center" prop="itemName" min-width="140" />
<el-table-column label="规格型号" align="center" prop="specification" min-width="120" />
<el-table-column label="在库数量" align="center" prop="quantityOnhand" min-width="100" />
<el-table-column label="在库数量" align="center" prop="quantity" min-width="100" />
<el-table-column label="单位" align="center" prop="unitMeasureName" min-width="80" />
<!-- TODO @芋艿批次号 mes_wm_batch 模块迁移后补充 -->
<el-table-column label="仓库" align="center" prop="warehouseName" min-width="100" />
@ -93,18 +93,17 @@
<span v-else>-</span>
</template>
</el-table-column>
<el-table-column label="生产工单" align="center" prop="workOrderCode" min-width="120" />
<el-table-column
label="入库日期"
align="center"
prop="recptDate"
prop="receiptTime"
:formatter="dateFormatter2"
width="180px"
/>
<el-table-column label="冻结" align="center" prop="frozen" min-width="80">
<el-table-column label="冻结" align="center" prop="frozenFlag" min-width="80">
<template #default="scope">
<el-switch
v-model="scope.row.frozen"
v-model="scope.row.frozenFlag"
:active-value="true"
:inactive-value="false"
v-hasPermi="['mes:wm-material-stock:update']"
@ -197,13 +196,13 @@ const handleTypeNodeClick = (row: any) => {
/** 处理冻结状态切换 */
const handleFrozenChange = async (row: WmMaterialStockVO) => {
try {
const text = row.frozen ? '冻结' : '解冻'
const text = row.frozenFlag ? '冻结' : '解冻'
await message.confirm('确认要"' + text + '"该库存记录吗?')
await WmMaterialStockApi.updateMaterialStockFrozen({ id: row.id, frozen: row.frozen })
await WmMaterialStockApi.updateMaterialStockFrozen({ id: row.id, frozenFlag: row.frozenFlag })
message.success(text + '成功')
} catch {
//
row.frozen = !row.frozen
row.frozenFlag = !row.frozenFlag
}
}