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 @@
+