diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/OrderController.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/OrderController.java index c42bce48a..a886272fe 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/OrderController.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/OrderController.java @@ -26,7 +26,6 @@ import io.swagger.v3.oas.annotations.Operation; import javax.validation.*; import javax.servlet.http.*; import java.io.File; -import java.time.LocalDateTime; import java.util.*; import com.cf.imes.framework.common.pojo.PageResult; @@ -365,4 +364,29 @@ public class OrderController { JSONObject orderList = apiDataAchieve.getApiOrderList(token,shopId,startTime,endTime,orderNo,customOrderNo).get(); return success(orderService.getApiOrderList(orderList)); } + +// 生产单状态分组统计返回 + @GetMapping("/getOrderStatusCount") + @Operation(summary = "生产单状态分组统计返回") + @Parameter(name = "startTerm", description = "按周,按月,按年", required = false, example = "1,2,3") + @PreAuthorize("@ss.hasPermission('productManager:List')") + public CommonResult> getOrderStatusCount(@RequestParam(value = "startTerm", required = false) Integer startTerm) { + return success(orderService.getOrderStatusCount(startTerm)); + } + +// 小板数据分析 + @GetMapping("/getOrderPlateAnalysisCount") + @Operation(summary = "小板数据分析统计(小板数量、小班面积)") + @PreAuthorize("@ss.hasPermission('productManager:List')") + public CommonResult> getOrderPlateAnalysisCount() { + return success(orderService.getOrderPlateAnalysisCount()); + } + +// 生产单超期告警 +// @GetMapping("/getOrderOverdue") +// @Operation(summary = "生产单超期告警") +// @PreAuthorize("@ss.hasPermission('productManager:List')") +// public CommonResult> getOrderOverdue() { +// return success(orderService.getOrderOverdue()); +// } } \ 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/controller/admin/order/vo/order/OrderGoodsPlateRespVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/vo/order/OrderGoodsPlateRespVO.java new file mode 100644 index 000000000..50c7120f3 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/vo/order/OrderGoodsPlateRespVO.java @@ -0,0 +1,65 @@ +package com.cf.imes.module.executor.controller.admin.order.vo.order; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; + +import java.math.BigDecimal; + +@Schema(description = "管理后台 - 按材料统计小板数量") +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +@ToString(callSuper = true) +public class OrderGoodsPlateRespVO { + @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "4109") + private Long id; + + @Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED, example = "12114") + private Long orderId; + + @Schema(description = "设计端商品ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "832") + private Long rawGoodsId; + + @Schema(description = "商品 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "243") + private Long goodsId; + + @Schema(description = "商品名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "晨丰") + private String goodsName; + + @Schema(description = "材质:颗粒板、欧松板、多层板、生态板、禾香板、密度板、实木、铝蜂窝板、铝塑板", requiredMode = Schema.RequiredMode.REQUIRED) + private String material; + + @Schema(description = "颜色", requiredMode = Schema.RequiredMode.REQUIRED) + private String color; + + @Schema(description = "纹路") + private Integer texture; + + @Schema(description = "宽度", requiredMode = Schema.RequiredMode.REQUIRED) + private BigDecimal width; + + @Schema(description = "高度", requiredMode = Schema.RequiredMode.REQUIRED) + private BigDecimal height; + + @Schema(description = "厚度", requiredMode = Schema.RequiredMode.REQUIRED) + private BigDecimal thickness; + + @Schema(description = "价格", requiredMode = Schema.RequiredMode.REQUIRED, example = "7305") + private BigDecimal price; + + @Schema(description = "品牌", requiredMode = Schema.RequiredMode.REQUIRED) + private String brand; + + @Schema(description = "规格", requiredMode = Schema.RequiredMode.REQUIRED) + private String spec; + + @Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED, example = "你猜") + private String remark; + + @Schema(description = "数量") + private Integer orderCount; + + @Schema(description = "面积") + private BigDecimal orderArea; +} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/vo/order/OrderStatusRespVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/vo/order/OrderStatusRespVO.java new file mode 100644 index 000000000..5ba521ca6 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/vo/order/OrderStatusRespVO.java @@ -0,0 +1,18 @@ +package com.cf.imes.module.executor.controller.admin.order.vo.order; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; + +@Schema(description = "管理后台 - 生产单状态统计") +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +@ToString(callSuper = true) +public class OrderStatusRespVO { + @Schema(description = "订单状态") + private Integer orderState; + + @Schema(description = "订单数量") + private Integer orderCount; +} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/order/OrderMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/order/OrderMapper.java index 66f5649ee..eaef30a72 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/order/OrderMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/order/OrderMapper.java @@ -10,12 +10,15 @@ import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX; import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX; import com.cf.imes.framework.mybatis.core.query.QueryWrapperX; import com.cf.imes.module.executor.controller.admin.order.vo.order.OrderPageReqVO; +import com.cf.imes.module.executor.controller.admin.order.vo.order.OrderStatusRespVO; import com.cf.imes.module.executor.controller.admin.plan.bo.OrderIds; import com.cf.imes.module.executor.controller.admin.plan.vo.OrderRespVOCopy; import com.cf.imes.module.executor.dal.dataobject.order.OrderDO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import java.time.LocalDate; +import java.time.LocalDateTime; import java.util.Collection; import java.util.List; import java.util.Map; @@ -132,4 +135,7 @@ public interface OrderMapper extends BaseMapperX { List selectOrderListByIds(@Param("orderIds") List orderIds, @Param("organId")Long organId); List selectOrderIds(@Param(Constants.WRAPPER) Wrapper wrapper); + +// 生产单状态统计 + List selectOrderStatusCount(@Param("organId")Long organId, @Param("orderDate") LocalDateTime orderDate); } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plate/PlateMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plate/PlateMapper.java index 7492ddadf..ce3d5f5f9 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plate/PlateMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plate/PlateMapper.java @@ -1,23 +1,21 @@ package com.cf.imes.module.executor.dal.mysql.plate; import java.math.BigDecimal; +import java.time.LocalDate; +import java.time.LocalDateTime; import java.util.*; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Constants; -import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO; -import com.cf.imes.framework.common.exception.ServiceException; import com.cf.imes.framework.common.pojo.PageResult; -import com.cf.imes.framework.common.util.object.BeanUtils; import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX; import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX; +import com.cf.imes.module.executor.controller.admin.order.vo.order.OrderGoodsPlateRespVO; import com.cf.imes.module.executor.controller.admin.plan.bo.GoodsNum; import com.cf.imes.module.executor.controller.admin.plan.bo.OrderIds; import com.cf.imes.module.executor.controller.admin.plan.vo.*; -import com.cf.imes.module.executor.dal.dataobject.orderGroup.OrderGroupDO; -import com.cf.imes.module.executor.dal.dataobject.orderParts.OrderPartsDO; import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO; import org.apache.ibatis.annotations.Mapper; import com.cf.imes.module.executor.controller.admin.plate.vo.*; @@ -138,4 +136,6 @@ public interface PlateMapper extends BaseMapperX { List selectGoodsNum(@Param("orderIds") List orderIds,@Param("organId") Long organId); +// 小板数据分析 + List selectPlateAnalysisList(@Param("organId") Long organId, @Param("orderDate") LocalDateTime orderDate); } \ 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/order/OrderService.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderService.java index 327cf34ca..a322e0537 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderService.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderService.java @@ -16,7 +16,6 @@ import org.springframework.boot.system.ApplicationHome; import org.springframework.web.multipart.MultipartFile; import java.io.File; -import java.time.LocalDateTime; import java.util.Collection; import java.util.List; import java.util.Map; @@ -172,4 +171,14 @@ public interface OrderService { /**查找api单号列表 */ List getApiOrderList(JSONObject orderList); + + /** + * 生产单状态统计 + */ + List getOrderStatusCount(Integer startTerm); + + /** + * 小板数据分析统计 + */ + List getOrderPlateAnalysisCount(); } \ 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/order/OrderServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderServiceImpl.java index f9d4c8207..f8fcb7939 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderServiceImpl.java @@ -62,10 +62,9 @@ import java.net.URLEncoder; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; -import java.time.LocalDateTime; -import java.time.ZoneId; -import java.time.ZonedDateTime; +import java.time.*; import java.time.format.DateTimeParseException; +import java.time.temporal.TemporalAdjusters; import java.util.*; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -417,7 +416,9 @@ public class OrderServiceImpl implements OrderService { List plateGoodDOS = (List) map.get("plateGoodDOLists"); validateCustomOrderNoExists(order.get(0).getCustomOrderNo()); - orderInputProcessor.batchInsert(rawGoodsDO, bodyDO, groupDO, partsDO, plateDO, null, itemDO, order.get(0), goodsDO, plateGoodDOS); + String nickName = SecurityFrameworkUtils.getLoginUser().getNickname(); + OrderDO orderDO = order.get(0).setSalesman(nickName).setSplitter(nickName); + orderInputProcessor.batchInsert(rawGoodsDO, bodyDO, groupDO, partsDO, plateDO, null, itemDO, orderDO, goodsDO, plateGoodDOS); List orderModelDOs = BeanUtils.toBean(plateDetail, OrderModelDO.class); if (orderModelDOs.size() > 0) { @@ -570,7 +571,35 @@ public class OrderServiceImpl implements OrderService { return apiOrderRespVOS; } -// 判断是否已经导入 + @Override + public List getOrderStatusCount(Integer startTerm) { +// 根据开始条件选择 + LocalDateTime orderDate = null; + LocalTime endOfDay = LocalTime.of(00, 00, 00); + switch (startTerm) { + case 1: + orderDate = LocalDate.now().with(TemporalAdjusters.previousOrSame(DayOfWeek.MONDAY)).atStartOfDay(); + break; + case 2: + orderDate = LocalDate.now().withDayOfMonth(1).atStartOfDay(); + break; + case 3: + orderDate = LocalDate.now().withMonth(1).withDayOfMonth(1).atStartOfDay(); + break; + } + List orderStatusRespVOS = orderMapper.selectOrderStatusCount(OrganContextHolder.getOrganId(), orderDate); + orderStatusRespVOS.removeIf(obj -> obj.getOrderState() == OrderStatusEnum.EMPTY.getStatus()); + return orderStatusRespVOS; + } + + @Override + public List getOrderPlateAnalysisCount() { + LocalDateTime orderDate = LocalDate.now().withDayOfMonth(1).atStartOfDay(); + List orderGoodsPlateRespVOS = plateMapper.selectPlateAnalysisList(OrganContextHolder.getOrganId(), orderDate); + return orderGoodsPlateRespVOS; + } + + // 判断是否已经导入 private Boolean validateOrderNoExists(String orderNo, Long organId) { if (orderMapper.selectCount(new LambdaQueryWrapper() .eq(OrderDO::getApiOrderId, orderNo) diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiDataAchieve.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiDataAchieve.java index 0ad27ab88..4aac80593 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiDataAchieve.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiDataAchieve.java @@ -171,10 +171,10 @@ public class ApiDataAchieve { public Future getApiOrderList(String token,String shopId,String createDateMin, String createDateMax, String orderNo, String customOrderNo) { JSONObject jsonOrders = new JSONObject(); if (createDateMin != null){ - jsonOrders.put("create_date_min", createDateMin); + jsonOrders.put("create_date_min", createDateMin + " 00:00:00"); } if (createDateMax != null) { - jsonOrders.put("create_date_max", createDateMax); + jsonOrders.put("create_date_max", createDateMax + " 23:59:59"); } jsonOrders.put("curr_page", 1); diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiTypeRealize.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiTypeRealize.java index d3daf2825..913f78e45 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiTypeRealize.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiTypeRealize.java @@ -278,6 +278,7 @@ public class ApiTypeRealize { OrderDO orderDO = OrderDO.builder() .id(orderId) + .apiOrderId(orderNo) .parentNo(0L) .orderDate(orderDate.atStartOfDay()) .deliveryDate(deliveryDate.atStartOfDay()) diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/order/OrderMapper.xml b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/order/OrderMapper.xml index c8cc23a30..1ee264a40 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/order/OrderMapper.xml +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/order/OrderMapper.xml @@ -81,6 +81,16 @@ + \ No newline at end of file diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plate/PlateMapper.xml b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plate/PlateMapper.xml index 407f77b9a..79833293f 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plate/PlateMapper.xml +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plate/PlateMapper.xml @@ -481,5 +481,33 @@ + + + \ No newline at end of file diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/pack/PackController.java b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/pack/PackController.java index 308068d6a..824d6f807 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/pack/PackController.java +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/pack/PackController.java @@ -124,7 +124,7 @@ public class PackController { @GetMapping("/getParts") @Operation(summary = "查看配件列表") @PreAuthorize("@ss.hasPermission('manage:pack-parts:query')") - public CommonResult> getParts(@Valid OrderPartsReqVO reqVO) { + public CommonResult> getParts(@Valid OrderPartsReqVO reqVO) { return success(packService.getPartsList(reqVO)); diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/pack/vo/GroupNameList.java b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/pack/vo/GroupNameList.java new file mode 100644 index 000000000..5e8bcb57f --- /dev/null +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/pack/vo/GroupNameList.java @@ -0,0 +1,16 @@ +package com.cf.imes.module.manage.controller.admin.pack.vo; + + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + + + +@Schema(description = "工序组名称") +@Data +public class GroupNameList { + + @Schema(description = "工序组名称") + private String name; + +} diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/pack/vo/PlateDetailsRespVO.java b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/pack/vo/PlateDetailsRespVO.java index 9f9c244bb..5aaa1bf49 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/pack/vo/PlateDetailsRespVO.java +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/pack/vo/PlateDetailsRespVO.java @@ -6,6 +6,10 @@ import com.alibaba.excel.annotation.ExcelProperty; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; +import javax.validation.Valid; +import javax.validation.constraints.NotNull; +import java.util.List; + @Schema(description = "管理后台 - 板材详情(导出板材表) Response VO") @Data @@ -89,4 +93,7 @@ public class PlateDetailsRespVO { private String remark; + @Schema(description = "加工组名称集合") + private List processGroupNameList; + } diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/query/vo/pack/PackageDetailsRespVO.java b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/query/vo/pack/PackageDetailsRespVO.java index d9837650d..c8efeac34 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/query/vo/pack/PackageDetailsRespVO.java +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/query/vo/pack/PackageDetailsRespVO.java @@ -1,9 +1,12 @@ package com.cf.imes.module.manage.controller.admin.query.vo.pack; +import com.cf.imes.module.manage.controller.admin.pack.vo.GroupNameList; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; +import java.util.List; + @Schema(description = "管理后台 - 包裹详情 Response VO") @Data public class PackageDetailsRespVO { @@ -66,6 +69,9 @@ public class PackageDetailsRespVO { private String remark; + @Schema(description = "加工组名称集合") + private List processGroupNameList; + @Schema(description = "配件名称-配件类型显示", requiredMode = Schema.RequiredMode.REQUIRED) diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/dal/mysql/query/OrderItemMapper.java b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/dal/mysql/query/OrderItemMapper.java index 68e36213d..c1008cae2 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/dal/mysql/query/OrderItemMapper.java +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/dal/mysql/query/OrderItemMapper.java @@ -26,7 +26,7 @@ import java.util.stream.Collectors; public interface OrderItemMapper extends BaseMapperX { - IPage selectByPackageId( @Param("page") IPage page, @Param("packageId") Long packageId, @Param("organId") Long organId); + List selectByPackageId( @Param("packageId") Long packageId, @Param("organId") Long organId); List selectCombinationName(Long orderNo); diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/dal/mysql/query/OrderPartsMapper.java b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/dal/mysql/query/OrderPartsMapper.java index 6475c5e13..b60fcd85a 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/dal/mysql/query/OrderPartsMapper.java +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/dal/mysql/query/OrderPartsMapper.java @@ -22,7 +22,7 @@ public interface OrderPartsMapper extends BaseMapperX { IPage selectParts(@Param("page") IPage page, @Param("packageId") Long packageId, @Param("organId") Long organId); - List selectPartsList( @Param("orderId") Long orderId , @Param("organId") Long organId); + IPage selectPartsList(@Param("page") IPage page, @Param("orderId") Long orderId , @Param("organId") Long organId); diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/pack/PackService.java b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/pack/PackService.java index ecff41dc6..75b3b1fb4 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/pack/PackService.java +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/pack/PackService.java @@ -35,7 +35,7 @@ public interface PackService { // 查看配件列表分页 - List getPartsList(OrderPartsReqVO reqVO); + PageResult getPartsList(OrderPartsReqVO reqVO); OrderPackRespVO updateParts(OrderPartsReqVO reqVO); diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/pack/PackServiceImpl.java b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/pack/PackServiceImpl.java index fee5e1868..ff42aeb95 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/pack/PackServiceImpl.java +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/pack/PackServiceImpl.java @@ -127,6 +127,18 @@ public class PackServiceImpl implements PackService { // 查询订单对应的板件信息 List plateDetailsRespVOS = orderItemMapper.selectOrderPlateList(orderId,getUserOrganId()); + for (PlateDetailsRespVO plateDetailsRespVO : plateDetailsRespVOS) { + String name = ""; + for (GroupNameList groupNameList : plateDetailsRespVO.getProcessGroupNameList()) { + // 去除最后的逗号 + name += groupNameList.getName()+","; + + } + name = name.substring(0, name.length() - 1); + + plateDetailsRespVO.setProcessGroup(name); + } + return plateDetailsRespVOS; @@ -137,7 +149,23 @@ public class PackServiceImpl implements PackService { @Override public List getOrdersPlateList(List orderIds) { - return orderItemMapper.selectOrdersPlateList(orderIds,getUserOrganId()); + + List plateDetailsRespVOS = orderItemMapper.selectOrdersPlateList(orderIds, getUserOrganId()); + + for (PlateDetailsRespVO plateDetailsRespVO : plateDetailsRespVOS) { + String name = ""; + for (GroupNameList groupNameList : plateDetailsRespVO.getProcessGroupNameList()) { + // 去除最后的逗号 + name += groupNameList.getName()+","; + + } + name = name.substring(0, name.length() - 1); + + plateDetailsRespVO.setProcessGroup(name); + } + + return plateDetailsRespVOS; + } @@ -170,15 +198,17 @@ public class PackServiceImpl implements PackService { // 查看配件列表分页 @Override - public List getPartsList(OrderPartsReqVO reqVO) { + public PageResult getPartsList(OrderPartsReqVO reqVO) { -// PageDTO page = new PageDTO<>(reqVO.getPageNo(), reqVO.getPageSize()); + PageDTO page = new PageDTO<>(reqVO.getPageNo(), reqVO.getPageSize()); - List orderPartsRespVOS = orderPartsMapper.selectPartsList(reqVO.getOrderId(),getUserOrganId()); + IPage orderPartsRespVOS = orderPartsMapper.selectPartsList(page,reqVO.getOrderId(),getUserOrganId()); + if (CollectionUtil.isEmpty(orderPartsRespVOS.getRecords())) { + return new PageResult<>(); + } - return orderPartsRespVOS; - + return new PageResult<>(orderPartsRespVOS.getRecords(), orderPartsRespVOS.getTotal()); } diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/query/ProductionStatusServiceImpl.java b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/query/ProductionStatusServiceImpl.java index 7047dec27..187dc69d7 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/query/ProductionStatusServiceImpl.java +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/query/ProductionStatusServiceImpl.java @@ -3,10 +3,12 @@ package com.cf.imes.module.manage.service.query; import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO; import com.cf.imes.framework.common.enums.OrderPackageTypeEnum; import com.cf.imes.framework.common.pojo.PageResult; import com.cf.imes.framework.common.util.object.BeanUtils; +import com.cf.imes.module.manage.controller.admin.pack.vo.GroupNameList; import com.cf.imes.module.manage.controller.admin.pack.vo.OrderPartsReqVO; import com.cf.imes.module.manage.controller.admin.pack.vo.PackDetailsReqVO; import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO; @@ -196,17 +198,31 @@ public class ProductionStatusServiceImpl implements ProductionStatusService { } - // 查看板材包裹 - IPage packageDetailsRespVOS = orderItemMapper.selectByPackageId(page,reqVO.getPackageId(),getUserOrganId()); + List packageDetailsRespVOS = orderItemMapper.selectByPackageId(reqVO.getPackageId(),getUserOrganId()); - if (CollectionUtil.isEmpty(packageDetailsRespVOS.getRecords())) { + for (PackageDetailsRespVO plateDetailsRespVO : packageDetailsRespVOS) { + String name = ""; + for (GroupNameList groupNameList : plateDetailsRespVO.getProcessGroupNameList()) { + // 去除最后的逗号 + name += groupNameList.getName()+","; + + } + name = name.substring(0, name.length() - 1); + + plateDetailsRespVO.setProcessGroup(name); + } + + Page packageDetailsRespVOPage = page.setRecords(packageDetailsRespVOS); + + + if (CollectionUtil.isEmpty(packageDetailsRespVOPage.getRecords())) { return new PageResult<>(); } - return new PageResult<>(packageDetailsRespVOS.getRecords(), packageDetailsRespVOS.getTotal()); + return new PageResult<>(packageDetailsRespVOPage.getRecords(), packageDetailsRespVOPage.getTotal()); } diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/resources/com/cf/imes/module/manage/dal/mysql/pack/OrderPackageMapper.xml b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/resources/com/cf/imes/module/manage/dal/mysql/pack/OrderPackageMapper.xml index 385405504..225973df3 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/resources/com/cf/imes/module/manage/dal/mysql/pack/OrderPackageMapper.xml +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/resources/com/cf/imes/module/manage/dal/mysql/pack/OrderPackageMapper.xml @@ -100,8 +100,7 @@ op.remark as remark, op.is_special_shaped as specialShaped, op.is_sculpt as profiling, - - CASE WHEN op.front_hole_count = 0 or op.back_model_count = 0 or op.side_hole_count = 0 THEN false ELSE true END AS rowHole + op.is_row_hole AS rowHole from order_plate op join order_goods ogs on op.goods_id = ogs.id and op.organ_id = ogs.organ_id diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/resources/com/cf/imes/module/manage/dal/mysql/query/OrderItemMapper.xml b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/resources/com/cf/imes/module/manage/dal/mysql/query/OrderItemMapper.xml index 4b2253fc5..d2bc94b42 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/resources/com/cf/imes/module/manage/dal/mysql/query/OrderItemMapper.xml +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/resources/com/cf/imes/module/manage/dal/mysql/query/OrderItemMapper.xml @@ -21,7 +21,10 @@ - + + + + @@ -132,7 +135,11 @@ - + + + + +