diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/ordercomponent/vo/AssemblyComponentChildPrintRespVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/ordercomponent/vo/AssemblyComponentChildPrintRespVO.java index fed3e218c..ec100d611 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/ordercomponent/vo/AssemblyComponentChildPrintRespVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/ordercomponent/vo/AssemblyComponentChildPrintRespVO.java @@ -41,6 +41,9 @@ public class AssemblyComponentChildPrintRespVO { @Schema(description = "柜名") private String bodyName; + @Schema(description = "加工状态") + private Integer processStatus; + @Schema(description = "子元素") private List children; } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/assemblylist/AssemblyListServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/assemblylist/AssemblyListServiceImpl.java index 71eebbf29..9643c3241 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/assemblylist/AssemblyListServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/assemblylist/AssemblyListServiceImpl.java @@ -238,11 +238,14 @@ public class AssemblyListServiceImpl implements AssemblyListService { .eq(OrderComponentDO::getDeleted, DeletedCodeEnum.NOT_DELETED.getStatus()) .select( OrderComponentDO::getId, + OrderComponentDO::getPid, OrderComponentDO::getOrderId, OrderComponentDO::getName, OrderComponentDO::getWidth, OrderComponentDO::getHeight, - OrderComponentDO::getDepth + OrderComponentDO::getDepth, + OrderComponentDO::getProcessStatus, + OrderComponentDO::getExtraProcessStatus ) ); @@ -256,6 +259,14 @@ public class AssemblyListServiceImpl implements AssemblyListService { throw new ServiceException(ORDER_COMPONENT_NOT_EXIST); } + // 只有顶级节点才允许使用 extraProcessStatus;非顶级节点始终返回自身 processStatus。 + for (OrderComponentDO parentComponent : parentComponents) { + if (Objects.equals(parentComponent.getPid(), OrderComponentDO.PARENT_ID_ROOT) + && ObjectUtil.isNotEmpty(parentComponent.getExtraProcessStatus())) { + parentComponent.setProcessStatus(parentComponent.getExtraProcessStatus()); + } + } + Map componentDOMap = parentComponents.stream() .collect(Collectors.toMap(OrderComponentDO::getId, Function.identity())); List orderIds = parentComponents.stream() @@ -381,6 +392,7 @@ public class AssemblyListServiceImpl implements AssemblyListService { target.setThickness(toBigDecimal(source.getDepth())); target.setRoomName(source.getRoomName()); target.setBodyName(source.getBodyName()); + target.setProcessStatus(source.getProcessStatus()); // 仅父节点存在 children;叶子子部件明确设置为 null。 target.setChildren(hasChildren ? new ArrayList<>() : null);