✨ feat(mes): 更新库存管理逻辑,重命名字段并添加事务记录
重构库存管理相关的请求和响应对象,更新字段名称以提高语义清晰度。新增库存事务流水记录,支持库存增减事件的追踪。此变更旨在提升库存管理的可维护性和可读性。pull/871/MERGE
parent
4b08ee3d97
commit
20bdd0ad31
|
|
@ -8,7 +8,6 @@ export interface WmMaterialStockVO {
|
||||||
itemCode: string
|
itemCode: string
|
||||||
itemName: string
|
itemName: string
|
||||||
specification: string
|
specification: string
|
||||||
unitMeasureId: number
|
|
||||||
unitMeasureName: string
|
unitMeasureName: string
|
||||||
batchId: number
|
batchId: number
|
||||||
batchCode: string
|
batchCode: string
|
||||||
|
|
@ -20,13 +19,9 @@ export interface WmMaterialStockVO {
|
||||||
areaName: string
|
areaName: string
|
||||||
vendorId: number
|
vendorId: number
|
||||||
vendorName: string
|
vendorName: string
|
||||||
workOrderId: number
|
quantity: number
|
||||||
workOrderCode: string
|
receiptTime: string
|
||||||
quantityOnhand: number
|
frozenFlag: boolean
|
||||||
recptDate: string
|
|
||||||
productionDate: string
|
|
||||||
expireDate: string
|
|
||||||
frozen: boolean
|
|
||||||
createTime: string
|
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 })
|
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="warehouseName" width="150" />
|
||||||
<el-table-column label="库区" prop="locationName" width="150" />
|
<el-table-column label="库区" prop="locationName" width="150" />
|
||||||
<el-table-column label="库位" prop="areaName" 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-column label="冻结数量" prop="quantityFrozen" width="120" />
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
|
|
@ -134,7 +134,7 @@ const handleConfirm = () => {
|
||||||
locationName: selectedRow.value.locationName,
|
locationName: selectedRow.value.locationName,
|
||||||
areaId: selectedRow.value.areaId,
|
areaId: selectedRow.value.areaId,
|
||||||
areaName: selectedRow.value.areaName,
|
areaName: selectedRow.value.areaName,
|
||||||
availableQuantity: selectedRow.value.quantityOnhand
|
availableQuantity: selectedRow.value.quantity
|
||||||
})
|
})
|
||||||
handleClose()
|
handleClose()
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -75,7 +75,7 @@
|
||||||
<el-table-column label="产品物料编码" align="center" prop="itemCode" min-width="120" />
|
<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="itemName" min-width="140" />
|
||||||
<el-table-column label="规格型号" align="center" prop="specification" min-width="120" />
|
<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" />
|
<el-table-column label="单位" align="center" prop="unitMeasureName" min-width="80" />
|
||||||
<!-- TODO @芋艿:批次号,待 mes_wm_batch 模块迁移后补充 -->
|
<!-- TODO @芋艿:批次号,待 mes_wm_batch 模块迁移后补充 -->
|
||||||
<el-table-column label="仓库" align="center" prop="warehouseName" min-width="100" />
|
<el-table-column label="仓库" align="center" prop="warehouseName" min-width="100" />
|
||||||
|
|
@ -93,18 +93,17 @@
|
||||||
<span v-else>-</span>
|
<span v-else>-</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="生产工单" align="center" prop="workOrderCode" min-width="120" />
|
|
||||||
<el-table-column
|
<el-table-column
|
||||||
label="入库日期"
|
label="入库日期"
|
||||||
align="center"
|
align="center"
|
||||||
prop="recptDate"
|
prop="receiptTime"
|
||||||
:formatter="dateFormatter2"
|
:formatter="dateFormatter2"
|
||||||
width="180px"
|
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">
|
<template #default="scope">
|
||||||
<el-switch
|
<el-switch
|
||||||
v-model="scope.row.frozen"
|
v-model="scope.row.frozenFlag"
|
||||||
:active-value="true"
|
:active-value="true"
|
||||||
:inactive-value="false"
|
:inactive-value="false"
|
||||||
v-hasPermi="['mes:wm-material-stock:update']"
|
v-hasPermi="['mes:wm-material-stock:update']"
|
||||||
|
|
@ -197,13 +196,13 @@ const handleTypeNodeClick = (row: any) => {
|
||||||
/** 处理冻结状态切换 */
|
/** 处理冻结状态切换 */
|
||||||
const handleFrozenChange = async (row: WmMaterialStockVO) => {
|
const handleFrozenChange = async (row: WmMaterialStockVO) => {
|
||||||
try {
|
try {
|
||||||
const text = row.frozen ? '冻结' : '解冻'
|
const text = row.frozenFlag ? '冻结' : '解冻'
|
||||||
await message.confirm('确认要"' + text + '"该库存记录吗?')
|
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 + '成功')
|
message.success(text + '成功')
|
||||||
} catch {
|
} catch {
|
||||||
// 取消或失败时回滚
|
// 取消或失败时回滚
|
||||||
row.frozen = !row.frozen
|
row.frozenFlag = !row.frozenFlag
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue