From ed3700d8ef6114675e89ed2f052d4e2c3883d789 Mon Sep 17 00:00:00 2001 From: lym <1994302445@qq.com> Date: Fri, 5 Jul 2024 09:49:11 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E5=BA=8F=E7=BB=84=E7=9B=B8=E5=85=B3?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/order/OrderServiceImpl.java | 20 ++++++++--- .../admin/plate/RemainPlateController.java | 8 +++++ .../mysql/remainplaten/RemainPlateMapper.java | 35 +++++++++++++++---- .../remainplaten/RemainPlateService.java | 7 ++++ .../remainplaten/RemainPlateServiceImpl.java | 5 +++ .../mapper/remainPlaten/RemainPlateMapper.xml | 8 +++++ .../vo/group/ProcessGroupPageReqVO.java | 5 +++ .../vo/group/ProcessGroupSaveReqVO.java | 3 -- .../vo/group/ProcessListSaveReqVO.java | 4 --- .../dal/mysql/process/ProcessGroupMapper.java | 21 +++++++++-- .../process/ProcessGroupServiceImpl.java | 6 ++-- 11 files changed, 99 insertions(+), 23 deletions(-) create mode 100644 cf-module-prod-manage/cf-module-prod-manage-biz/src/main/resources/mapper/remainPlaten/RemainPlateMapper.xml 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 026b811aa..a6cd7a155 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 @@ -415,9 +415,15 @@ public class OrderServiceImpl implements OrderService { orderInputProcessor.batchInsert(rawGoodsDO, bodyDO, groupDO, partsDO, plateDO, null, itemDO, order.get(0), goodsDO, plateGoodDOS); List orderModelDOs = BeanUtils.toBean(plateDetail, OrderModelDO.class); - orderModelDOs.forEach(orderModelDO -> orderModelDO.setOrderId(order.get(0).getId())); - orderInputProcessor.batchSaveModel(orderModelDOs); - orderInputProcessor.batchSaveOrderPartsModel(partsRemark); + + if (orderModelDOs.size() > 0) { + orderModelDOs.forEach(orderModelDO -> orderModelDO.setOrderId(order.get(0).getId())); + orderInputProcessor.batchSaveModel(orderModelDOs); + } + if (partsRemark.size() > 0){ + orderInputProcessor.batchSaveOrderPartsModel(partsRemark); + } + return order.get(0).getId(); } @@ -600,8 +606,12 @@ public class OrderServiceImpl implements OrderService { // validateCustomOrderNoExists(orderDO.getCustomOrderNo()); orderInputProcessor.batchInsert(rawGoodsDO, bodyDO, groupDO, partsDO, plateDO, null, itemDO, orderDO, goodsDO, plateGoodDOS); - orderInputProcessor.batchSaveModel(orderModelDOS); - orderInputProcessor.batchSaveOrderPartsModel(orderPartsRemarks); + if (orderModelDOS.size() > 0){ + orderInputProcessor.batchSaveModel(orderModelDOS); + } + if (orderPartsRemarks.size() > 0){ + orderInputProcessor.batchSaveOrderPartsModel(orderPartsRemarks); + } } diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/plate/RemainPlateController.java b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/plate/RemainPlateController.java index 0fe4aa328..5e9bdea9a 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/plate/RemainPlateController.java +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/plate/RemainPlateController.java @@ -107,6 +107,14 @@ public class RemainPlateController { return success(BeanUtils.toBean(pageResult, RemainPlateRespVO.class)); } + @GetMapping("/pageAdd") + @Operation(summary = "获得生产单余料板可添加分页") + @PreAuthorize("@ss.hasPermission('placeorder:remain')") + public CommonResult> getRemainPlatePageToAdd(@Valid RemainPlatePageReqVO pageReqVO) { + PageResult pageResult = remainPlateService.getRemainPlatePageToAdd(pageReqVO); + return success(BeanUtils.toBean(pageResult, RemainPlateRespVO.class)); + } + @GetMapping("/export-excel") @Operation(summary = "导出生产单余料板表Excel") @PreAuthorize("@ss.hasPermission('placeorder:remain')") diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/dal/mysql/remainplaten/RemainPlateMapper.java b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/dal/mysql/remainplaten/RemainPlateMapper.java index ea17cb243..3b2dcc61b 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/dal/mysql/remainplaten/RemainPlateMapper.java +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/dal/mysql/remainplaten/RemainPlateMapper.java @@ -8,6 +8,7 @@ import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX; import com.cf.imes.module.manage.controller.admin.plate.vo.remain.RemainPlatePageReqVO; import com.cf.imes.module.manage.dal.dataobject.remainplaten.RemainPlateDO; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; import java.util.List; import java.util.Set; @@ -47,6 +48,27 @@ public interface RemainPlateMapper extends BaseMapperX { .orderByDesc(RemainPlateDO::getId)); } + default PageResult selectPageToAdd(RemainPlatePageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .neIfPresent(RemainPlateDO::getInitPlanId, reqVO.getInitPlanId()) + .eqIfPresent(RemainPlateDO::getStatus, reqVO.getStatus()) + .eqIfPresent(RemainPlateDO::getGoodsId, reqVO.getGoodsId()) + .likeIfPresent(RemainPlateDO::getName, reqVO.getName()) + .likeIfPresent(RemainPlateDO::getMaterial, reqVO.getMaterial()) + .likeIfPresent(RemainPlateDO::getColor, reqVO.getColor()) + .eqIfPresent(RemainPlateDO::getThickness, reqVO.getThickness()) + .eqIfPresent(RemainPlateDO::getBrand, reqVO.getBrand()) + .likeIfPresent(RemainPlateDO::getStore, reqVO.getStore()) + .eqIfPresent(RemainPlateDO::getCount, reqVO.getCount()) + .eqIfPresent(RemainPlateDO::getTexture, reqVO.getTexture()) + .likeIfPresent(RemainPlateDO::getRemark, reqVO.getRemark()) + .eqIfPresent(RemainPlateDO::getOrganId, reqVO.getOrganId()) + .eqIfPresent(RemainPlateDO::getOutLineJson, reqVO.getOutLineJson()) + .betweenIfPresent(RemainPlateDO::getWidth, reqVO.getWidth()) + .betweenIfPresent(RemainPlateDO::getLength, reqVO.getLength()) + .betweenIfPresent(RemainPlateDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(RemainPlateDO::getId)); + } // 批量修改状态 default void updateRemainPlateStatus(Set ids, Integer status, Integer useType,Long organId,Long planId) { update(new UpdateWrapper() @@ -75,12 +97,13 @@ public interface RemainPlateMapper extends BaseMapperX { } // 通过排单id批量余料板 - default void deleteRemainPlate(Long initPlanId, Long organId) { - update(new UpdateWrapper() - .set("deleted", 1) - .eq("init_plan_id", initPlanId) - .eq("organ_id", organId)); - } +// default void deleteRemainPlate(Long initPlanId, Long organId) { +// update(new UpdateWrapper() +// .set("deleted", 1) +// .eq("init_plan_id", initPlanId) +// .eq("organ_id", organId)); +// } + void deleteRemainPlate(@Param("initPlanId") Long initPlanId, @Param("organId") Long organId); // 根据使用排单id批量还原状态 default void updateRemainPlateStatusByPlanId(Integer status, Integer useType,Long organId,Long planId) { diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/remainplaten/RemainPlateService.java b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/remainplaten/RemainPlateService.java index 029fc6723..bbd0114af 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/remainplaten/RemainPlateService.java +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/remainplaten/RemainPlateService.java @@ -79,4 +79,11 @@ public interface RemainPlateService { */ PageResult getRemainPlatePage(RemainPlatePageReqVO pageReqVO); + /** + * 查询可添加余料板 + * + * @param pageReqVO 分页查询 + * @return 生产单余料板表 + */ + PageResult getRemainPlatePageToAdd(RemainPlatePageReqVO pageReqVO); } \ 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/service/remainplaten/RemainPlateServiceImpl.java b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/remainplaten/RemainPlateServiceImpl.java index d828960f6..bfd7c1fd3 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/remainplaten/RemainPlateServiceImpl.java +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/remainplaten/RemainPlateServiceImpl.java @@ -173,4 +173,9 @@ public class RemainPlateServiceImpl implements RemainPlateService { return remainPlateMapper.selectPage(pageReqVO); } + @Override + public PageResult getRemainPlatePageToAdd(RemainPlatePageReqVO pageReqVO) { + return remainPlateMapper.selectPageToAdd(pageReqVO.setStatus(RemainPlateStatusEnum.UNUSED.getStatus())); + } + } \ No newline at end of file diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/resources/mapper/remainPlaten/RemainPlateMapper.xml b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/resources/mapper/remainPlaten/RemainPlateMapper.xml new file mode 100644 index 000000000..d772d5914 --- /dev/null +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/resources/mapper/remainPlaten/RemainPlateMapper.xml @@ -0,0 +1,8 @@ + + + + + + delete from order_remain_plate where init_plan_id = #{initPlanId} and organ_id = #{organId} + + diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/process/vo/group/ProcessGroupPageReqVO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/process/vo/group/ProcessGroupPageReqVO.java index c7cc7cc6a..4a6bd6536 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/process/vo/group/ProcessGroupPageReqVO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/process/vo/group/ProcessGroupPageReqVO.java @@ -36,4 +36,9 @@ public class ProcessGroupPageReqVO extends PageParam { @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) private LocalDateTime[] createTime; + @Schema(description = "field", example = "field") + private String field; + + @Schema(description = "order", example = "order") + private String order; } \ No newline at end of file diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/process/vo/group/ProcessGroupSaveReqVO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/process/vo/group/ProcessGroupSaveReqVO.java index b1bf383dd..3e2526fd2 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/process/vo/group/ProcessGroupSaveReqVO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/process/vo/group/ProcessGroupSaveReqVO.java @@ -24,15 +24,12 @@ public class ProcessGroupSaveReqVO { private Boolean isDefault; @Schema(description = "排序优先级", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "排序优先级不能为空") private Short sort; @Schema(description = "明细,工序 ID 逗号分隔", requiredMode = Schema.RequiredMode.REQUIRED) - @NotEmpty(message = "明细,工序 ID 逗号分隔不能为空") private String items; @Schema(description = "描述", requiredMode = Schema.RequiredMode.REQUIRED, example = "随便") - @NotEmpty(message = "描述不能为空") private String description; @Schema(description = "工序集合", requiredMode = Schema.RequiredMode.REQUIRED, example = "{},{}") diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/process/vo/group/ProcessListSaveReqVO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/process/vo/group/ProcessListSaveReqVO.java index fafe845af..51dff4867 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/process/vo/group/ProcessListSaveReqVO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/process/vo/group/ProcessListSaveReqVO.java @@ -23,18 +23,14 @@ public class ProcessListSaveReqVO { private Boolean isDefault; @Schema(description = "排序优先级", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "排序优先级") private Short sort; @Schema(description = "明细,工序 ID 逗号分隔", requiredMode = Schema.RequiredMode.REQUIRED) - @NotEmpty(message = "明细,工序 ID 逗号分隔不能为空") private String items; @Schema(description = "描述", requiredMode = Schema.RequiredMode.REQUIRED, example = "随便") - @NotEmpty(message = "描述不能为空") private String description; @Schema(description = "工序列表", requiredMode = Schema.RequiredMode.REQUIRED) - @NotEmpty(message = "待添加的工序") private List lists; } diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/process/ProcessGroupMapper.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/process/ProcessGroupMapper.java index e51b0e5fe..ef6555ced 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/process/ProcessGroupMapper.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/process/ProcessGroupMapper.java @@ -20,7 +20,7 @@ import java.util.List; public interface ProcessGroupMapper extends BaseMapperX { default PageResult selectPage(ProcessGroupPageReqVO reqVO) { - return selectPage(reqVO, new LambdaQueryWrapperX() + LambdaQueryWrapperX queryWrapper = new LambdaQueryWrapperX() .likeIfPresent(ProcessGroupDO::getName, reqVO.getName()) .eqIfPresent(ProcessGroupDO::getIsDefault, reqVO.getIsDefault()) .eqIfPresent(ProcessGroupDO::getSort, reqVO.getSort()) @@ -28,7 +28,24 @@ public interface ProcessGroupMapper extends BaseMapperX { .eqIfPresent(ProcessGroupDO::getOrganId, reqVO.getOrganId()) .eqIfPresent(ProcessGroupDO::getDescription, reqVO.getDescription()) .betweenIfPresent(ProcessGroupDO::getCreateTime, reqVO.getCreateTime()) - .orderByDesc(ProcessGroupDO::getId)); + .orderByDesc(ProcessGroupDO::getSort); + + if (reqVO.getOrder() == null) { + queryWrapper.orderByDesc(ProcessGroupDO::getSort); + }else { + if (reqVO.getOrder().equals("ascend")) { + switch (reqVO.getField()) { + case "name" -> queryWrapper.orderByAsc(ProcessGroupDO::getName); + case "sort" -> queryWrapper.orderByAsc(ProcessGroupDO::getSort); + } + }else if (reqVO.getOrder().equals("descend")) { + switch (reqVO.getField()) { + case "name" -> queryWrapper.orderByDesc(ProcessGroupDO::getName); + case "sort" -> queryWrapper.orderByDesc(ProcessGroupDO::getSort); + } + } + } + return selectPage(reqVO, queryWrapper); } ProcessDO selectOneById(@Param("id") Long id, @Param("organId") Long organId); diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/process/ProcessGroupServiceImpl.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/process/ProcessGroupServiceImpl.java index a37552384..eaf157587 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/process/ProcessGroupServiceImpl.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/process/ProcessGroupServiceImpl.java @@ -184,7 +184,7 @@ public class ProcessGroupServiceImpl implements ProcessGroupService { private String checkProcessGroupExists(String userLists) { // 检查输入是否为空或仅包含空白字符 if (userLists == null || userLists.trim().isEmpty()) { - return "[]"; // 统一返回空列表格式化字符串 + return ""; // 统一返回空列表格式化字符串 } List itemsList = Arrays.stream(userLists.split(",")) @@ -194,7 +194,7 @@ public class ProcessGroupServiceImpl implements ProcessGroupService { // 如果列表为空,直接返回空字符串,表示没有有效的进程ID if (itemsList.isEmpty()) { - return "[]"; + return ""; } StringBuilder itemsBuilder = new StringBuilder(); @@ -229,7 +229,7 @@ public class ProcessGroupServiceImpl implements ProcessGroupService { } // 返回格式化的列表字符串 - return itemsBuilder.length() > 0 ? itemsBuilder.toString() : "[]"; + return itemsBuilder.length() > 0 ? itemsBuilder.toString() : ""; } // 批量更新工序组默认