diff --git a/klp-wms/src/main/java/com/klp/domain/WmsTransferOrderItem.java b/klp-wms/src/main/java/com/klp/domain/WmsTransferOrderItem.java index 8ab78dce..552fc786 100644 --- a/klp-wms/src/main/java/com/klp/domain/WmsTransferOrderItem.java +++ b/klp-wms/src/main/java/com/klp/domain/WmsTransferOrderItem.java @@ -60,6 +60,10 @@ public class WmsTransferOrderItem extends BaseEntity { * 备注 */ private String remark; + /** + * 是否已经调拨 0-未调拨 1-已调拨 + */ + private Integer isTransferred; /** * 删除标记(0正常 1删除) */ diff --git a/klp-wms/src/main/java/com/klp/domain/bo/WmsTransferOrderItemBo.java b/klp-wms/src/main/java/com/klp/domain/bo/WmsTransferOrderItemBo.java index fd4ed141..65da5305 100644 --- a/klp-wms/src/main/java/com/klp/domain/bo/WmsTransferOrderItemBo.java +++ b/klp-wms/src/main/java/com/klp/domain/bo/WmsTransferOrderItemBo.java @@ -74,4 +74,9 @@ public class WmsTransferOrderItemBo extends BaseEntity { */ private String remark; + /** + * 是否已经调拨 0-未调拨 1-已调拨 + */ + private Integer isTransferred; + } diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsTransferOrderItemVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsTransferOrderItemVo.java index fde333c1..cc4f2ae7 100644 --- a/klp-wms/src/main/java/com/klp/domain/vo/WmsTransferOrderItemVo.java +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsTransferOrderItemVo.java @@ -79,6 +79,11 @@ public class WmsTransferOrderItemVo { @ExcelProperty(value = "备注") private String remark; + /** + * 是否已经调拨 0-未调拨 1-已调拨 + */ + private Integer isTransferred; + // ========== 改之前物料信息 ========== /** * 改之前物料类型名称 diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsTransferOrderItemServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsTransferOrderItemServiceImpl.java index 749b95c3..06a25d3a 100644 --- a/klp-wms/src/main/java/com/klp/service/impl/WmsTransferOrderItemServiceImpl.java +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsTransferOrderItemServiceImpl.java @@ -327,6 +327,7 @@ public class WmsTransferOrderItemServiceImpl implements IWmsTransferOrderItemSer lqw.eq(bo.getMaterialTypeAfter() != null, WmsTransferOrderItem::getMaterialTypeAfter, bo.getMaterialTypeAfter()); lqw.eq(bo.getWarehouseIdBefore() != null, WmsTransferOrderItem::getWarehouseIdBefore, bo.getWarehouseIdBefore()); lqw.eq(bo.getWarehouseIdAfter() != null, WmsTransferOrderItem::getWarehouseIdAfter, bo.getWarehouseIdAfter()); + lqw.eq(bo.getIsTransferred() != null, WmsTransferOrderItem::getIsTransferred, bo.getIsTransferred()); return lqw; } @@ -533,6 +534,18 @@ public class WmsTransferOrderItemServiceImpl implements IWmsTransferOrderItemSer throw new IllegalArgumentException("调拨明细不存在"); } + // 校验调拨单审批状态 + if (item.getTransferId() != null) { + WmsTransferOrder wmsTransferOrder = wmsTransferOrderMapper.selectById(item.getTransferId()); + if (wmsTransferOrder == null) { + throw new IllegalArgumentException("调拨单不存在"); + } + // 审批状态: 0-待审批 1-已通过 2-已驳回 + if (wmsTransferOrder.getApproveStatus() == null || wmsTransferOrder.getApproveStatus() != 1) { + throw new IllegalArgumentException("审批未通过,不能调拨"); + } + } + // 确定最终值:如果没传则使用改之前的值 Long finalItemId = itemId != null ? itemId : item.getItemIdBefore(); Long finalMaterialType = bo.getMaterialTypeAfter() != null ? bo.getMaterialTypeAfter() : item.getMaterialTypeBefore(); @@ -558,6 +571,7 @@ public class WmsTransferOrderItemServiceImpl implements IWmsTransferOrderItemSer item.setItemIdAfter(finalItemId); item.setMaterialTypeAfter(finalMaterialType); item.setWarehouseIdAfter(finalWarehouseId); + item.setIsTransferred(1); // 标记为已调拨 baseMapper.updateById(item); // 更新钢卷信息 diff --git a/klp-wms/src/main/resources/mapper/klp/WmsTransferOrderItemMapper.xml b/klp-wms/src/main/resources/mapper/klp/WmsTransferOrderItemMapper.xml index a4389c2c..e6944a34 100644 --- a/klp-wms/src/main/resources/mapper/klp/WmsTransferOrderItemMapper.xml +++ b/klp-wms/src/main/resources/mapper/klp/WmsTransferOrderItemMapper.xml @@ -15,6 +15,7 @@ +