diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/OrderViewPartPageRespVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/OrderViewPartPageRespVO.java index eafa9dcfb..cc3452e1a 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/OrderViewPartPageRespVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/OrderViewPartPageRespVO.java @@ -75,4 +75,13 @@ public class OrderViewPartPageRespVO { @Schema(description = "CAD图纸文件ID") private Long cadViewFileId; + + @Schema(description = "房间名称") + private String roomName; + + @Schema(description = "柜体名称") + private String bodyName; + + @Schema(description = "柜体id") + private Long bodyId; } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/OrderViewPlatePageRespVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/OrderViewPlatePageRespVO.java index 149bf06f7..ffae9cf52 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/OrderViewPlatePageRespVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/OrderViewPlatePageRespVO.java @@ -87,4 +87,13 @@ public class OrderViewPlatePageRespVO { @Schema(description = "备注") private String remark; + + @Schema(description = "房间名称") + private String roomName; + + @Schema(description = "柜体名称") + private String bodyName; + + @Schema(description = "柜体id") + private Long bodyId; } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/orderItem/OrdersViewPartsPageDO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/orderItem/OrdersViewPartsPageDO.java index 8bfbc3e94..c6f1faa80 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/orderItem/OrdersViewPartsPageDO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/orderItem/OrdersViewPartsPageDO.java @@ -106,4 +106,14 @@ public class OrdersViewPartsPageDO { * cad视图文件id */ private Long cadViewFileId; + + /** + * 房间名称 + */ + private String roomName; + + /** + * 柜体名称 + */ + private String bodyName; } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/orderItem/OrdersViewPlatesPageDO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/orderItem/OrdersViewPlatesPageDO.java index 5b91f9acb..46d6c19a9 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/orderItem/OrdersViewPlatesPageDO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/orderItem/OrdersViewPlatesPageDO.java @@ -131,4 +131,14 @@ public class OrdersViewPlatesPageDO { * 自定义板编号 */ private String customPlateNo; + + /** + * 房间名称 + */ + private String roomName; + + /** + * 柜体名称 + */ + private String bodyName; } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderItem/OrderItemMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderItem/OrderItemMapper.java index eb8ad7a18..96070ebf0 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderItem/OrderItemMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderItem/OrderItemMapper.java @@ -277,4 +277,29 @@ public interface OrderItemMapper extends BaseMapperX { * @return */ List selectComponentCorrelationPartsIds(@Param("orderIds") List orderIds, @Param("componentIds") List componentIds, @Param("groupIds") List groupIds); + + + /** + * 查询订单下板件视图信息列表 + * + * @param orderId + * @param bodyIds + * @param componentIds + * @return + */ + List selectOrderViewPlates(@Param("orderId") Long orderId, + @Param("bodyIds") Set bodyIds, + @Param("componentIds") Set componentIds); + + /** + * 查询订单下板件视图信息列表 + * + * @param orderId + * @param bodyIds + * @param componentIds + * @return + */ + List selectOrderViewParts(@Param("orderId") Long orderId, + @Param("bodyIds") Set bodyIds, + @Param("componentIds") Set componentIds); } \ No newline at end of file diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/ordercomponent/OrderComponentServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/ordercomponent/OrderComponentServiceImpl.java index 3164c1095..3843e0937 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/ordercomponent/OrderComponentServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/ordercomponent/OrderComponentServiceImpl.java @@ -778,10 +778,7 @@ public class OrderComponentServiceImpl implements OrderComponentService { } // 查询所有板件的视图所需信息 - PageDTO page1 = new PageDTO<>(1, PageParam.PAGE_SIZE_NONE); - IPage viewPlatesPage = orderItemMapper.selectOrdersViewPlatesPage(page1, List.of(orderId), bodyIds, - null, queryComponentIds, true); - List plateRecords = viewPlatesPage.getRecords(); + List plateRecords = orderItemMapper.selectOrderViewPlates(orderId, bodyIds, queryComponentIds); List plateResult = new ArrayList<>(); if (CollUtil.isNotEmpty(plateRecords)) { @@ -794,10 +791,7 @@ public class OrderComponentServiceImpl implements OrderComponentService { } // 查询所有配件的视图所需信息 - PageDTO page2 = new PageDTO<>(1, PageParam.PAGE_SIZE_NONE); - IPage viewPartsPage = orderItemMapper.selectOrdersViewPartsPage(page2, List.of(orderId), bodyIds, - null, queryComponentIds, null, true); - List partRecords = viewPartsPage.getRecords(); + List partRecords = orderItemMapper.selectOrderViewParts(orderId, bodyIds, queryComponentIds); List partResult = new ArrayList<>(); if (CollUtil.isNotEmpty(partRecords)) { diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/orderitem/OrderItemServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/orderitem/OrderItemServiceImpl.java index dc11a702b..74bcf2555 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/orderitem/OrderItemServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/orderitem/OrderItemServiceImpl.java @@ -25,7 +25,7 @@ public class OrderItemServiceImpl implements OrderItemService { public List getPlateItemCompId(Long id) { List plateItemDOS = orderItemMapper.selectList(new LambdaQueryWrapper() .eq(OrderItemDO::getPlateId, id) - .select(OrderItemDO::getCompId, OrderItemDO::getGroupId)); + .select(OrderItemDO::getCompId, OrderItemDO::getGroupId, OrderItemDO::getBodyId)); if (CollUtil.isNotEmpty(plateItemDOS)) { return plateItemDOS; } @@ -36,7 +36,7 @@ public class OrderItemServiceImpl implements OrderItemService { public List getPartItemCompId(Long partId) { List partItemDOS = orderItemMapper.selectList(new LambdaQueryWrapper() .eq(OrderItemDO::getPartsId, partId) - .select(OrderItemDO::getCompId, OrderItemDO::getGroupId)); + .select(OrderItemDO::getCompId, OrderItemDO::getGroupId, OrderItemDO::getBodyId)); if (CollUtil.isNotEmpty(partItemDOS)) { return partItemDOS; } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plate/PlateServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plate/PlateServiceImpl.java index b4b23e8ef..ead9d0453 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plate/PlateServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plate/PlateServiceImpl.java @@ -56,6 +56,7 @@ import com.cf.imes.module.executor.service.order.OrderInputProcessor; import com.cf.imes.module.executor.service.order.OrderService; import com.cf.imes.module.executor.service.orderbody.OrderBodyService; import com.cf.imes.module.executor.service.ordercomponent.OrderComponentService; +import com.cf.imes.module.executor.service.orderitem.OrderItemService; import com.cf.imes.module.system.api.organ.OrganApi; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; @@ -131,6 +132,9 @@ public class PlateServiceImpl implements PlateService { @Resource private OrderComponentService orderComponentService; + @Resource + private OrderItemService orderItemService; + private static final String FIELD_PLATE_ID = "plateId"; private static final String FIELD_OG_MATERIAL = "og.material"; private static final String FIELD_OG_BRAND = "og.brand"; @@ -1105,7 +1109,19 @@ public class PlateServiceImpl implements PlateService { OrderDetailComponentPageReqVO detailReqVO = new OrderDetailComponentPageReqVO(); detailReqVO.setOrderId(plateDO.getOrderId()); detailReqVO.setComponentIds(reqVO.getComponentIds()); - detailReqVO.setBodyIds(reqVO.getBodyIds()); + + // 入参的柜体缺省用板件本身的柜体id + Set bodyIds = reqVO.getBodyIds(); + if (CollUtil.isNotEmpty(bodyIds)) { + detailReqVO.setBodyIds(bodyIds); + } else { + List plateItems = orderItemService.getPlateItemCompId(plateDO.getId()); + if (CollUtil.isEmpty(plateItems)) { + throw new ServiceException(PLATE_NOT_EXISTS); + } + detailReqVO.setBodyIds(Set.of(plateItems.get(0).getBodyId())); + } + return orderComponentService.getOrderViewCadInfo(detailReqVO); } } \ No newline at end of file diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml index 3d09ccf04..c6676b06c 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml @@ -769,4 +769,99 @@ ) GROUP BY oi.parts_id + + + + \ No newline at end of file