✨ feat(mes): 更新库存管理逻辑,重命名字段并添加事务记录
重构库存管理相关的请求和响应对象,更新字段名称以提高语义清晰度。新增库存事务流水记录,支持库存增减事件的追踪。此变更旨在提升库存管理的可维护性和可读性。pull/871/MERGE
parent
4b08ee3d97
commit
20bdd0ad31
|
|
@ -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 })
|
||||
},
|
||||
|
||||
|
|
|
|||
|
|
@ -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()
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue