diff --git a/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ErrorCodeConstants.java b/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ErrorCodeConstants.java index 879d1ea72..b9ab72dc9 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ErrorCodeConstants.java +++ b/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ErrorCodeConstants.java @@ -32,6 +32,7 @@ public interface ErrorCodeConstants { ErrorCode ORDER_NOT_NEW_ORDER = new ErrorCode(1_001_109_000, "生产单不为新单,清空无效"); ErrorCode ORDER_NOT_CANCEL = new ErrorCode(1_001_109_000, "生产单已排单,小板操作无效"); ErrorCode ORDER_CANCEL = new ErrorCode(1_001_109_000, "生产单未作废,还原无效"); + ErrorCode ORDER_PLAN_ERROR = new ErrorCode(1_001_109_001, "选中删除对象有已开料板件,请联系管理员修改开料状态后再删除!"); // ========== 生产单 TODO 补充编号 ========== ErrorCode MODULE_NOT_EXISTS = new ErrorCode(1_001_110_000, "模块不存在"); diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/plate/PlateDO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/plate/PlateDO.java index e229980e2..127566088 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/plate/PlateDO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/plate/PlateDO.java @@ -165,6 +165,10 @@ public class PlateDO extends BaseDO { * 是否造型 */ private Boolean isRowHole; + /** + * 是否优化 + */ + private Boolean isOptimized; /** * 排单过滤类型,1 有挖穿造型 2 有挖穿孔 4 有二维刀路 8 可叠 */ diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plan/PlanMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plan/PlanMapper.java index 69d11fbf0..2f9cb36ab 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plan/PlanMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plan/PlanMapper.java @@ -48,8 +48,8 @@ public interface PlanMapper extends BaseMapperX { // .leftJoin(OrderItemDO.class, OrderItemDO::getId, PlanItemDO::getItemId) .leftJoin(OrderDO.class, OrderDO::getId, GoodsDO::getOrderId) .like(OrderDO::getCustomer, reqVO.getCustomer()) - .orderBy(true, true, PlanDO::getSort) - .orderByDesc(PlanDO::getUpdateTime) +// .orderBy(true, true, PlanDO::getSort) + .orderByDesc(PlanDO::getCreateTime) ); } @@ -68,8 +68,8 @@ public interface PlanMapper extends BaseMapperX { .betweenIfPresent(PlanDO::getCreateTime, reqVO.getCreateTime()) .eqIfPresent(PlanDO::getOperator, reqVO.getOperator()) .betweenIfPresent(PlanDO::getProduceTime, reqVO.getProduceTime()) - .orderBy(true, true, PlanDO::getSort) - .orderByDesc(PlanDO::getUpdateTime)); +// .orderBy(true, true, PlanDO::getSort) + .orderByDesc(PlanDO::getCreateTime)); } List selectPlateListByPlanId(@Param("planId") Long planId, @Param("organId") Long organId); @@ -107,11 +107,15 @@ public interface PlanMapper extends BaseMapperX { - List selectPlanIds(@Param("updateTime") String updateTime,@Param("sort") Long sort,@Param("organId") Long organId,@Param("planId") Long planId); + List selectPlanIds(@Param("createTime") String createTime,@Param("sort") Long sort,@Param("organId") Long organId,@Param("planId") Long planId); - List selectPlanIdsFalse(@Param("updateTime") String updateTime,@Param("sort") Long sort,@Param("organId") Long organId,@Param("planId") Long planId); + List selectPlanIdsFalse(@Param("createTime") String createTime,@Param("sort") Long sort,@Param("organId") Long organId,@Param("planId") Long planId); + + + List selectPlanStatus(@Param("planIds") List planIds,@Param("organId") Long organId); + // List seleTestSQL(@Param("sql") String sql); diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanServiceImpl.java index 3b99ceb95..b87f360f5 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanServiceImpl.java @@ -22,6 +22,7 @@ import com.cf.imes.module.executor.controller.admin.plan.bo.ProcessStepSalaryIds import com.cf.imes.module.executor.controller.admin.plan.saveOptimize.*; import com.cf.imes.module.executor.controller.admin.plan.vo.*; import com.cf.imes.module.executor.dal.dataobject.goods.CutedBoardInfo; +import com.cf.imes.module.executor.dal.dataobject.goods.GoodsDO; import com.cf.imes.module.executor.dal.dataobject.goods.OptimizeBoardModelDO; import com.cf.imes.module.executor.dal.dataobject.order.OrderDO; import com.cf.imes.module.executor.dal.dataobject.ordermodel.OrderModelDO; diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java index 97755aa99..59b4082f9 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java @@ -447,9 +447,9 @@ public class PlanServiceImpl implements PlanService { List plan = pageReqVO.getIsUp() ? - planMapper.selectPlanIds(planDO.getUpdateTime().toString(),planDO.getSort(), getUserOrganId(), planDO.getId()) : + planMapper.selectPlanIds(planDO.getCreateTime().toString(),planDO.getSort(), getUserOrganId(), planDO.getId()) : - planMapper.selectPlanIdsFalse(planDO.getUpdateTime().toString(),planDO.getSort(), getUserOrganId(), planDO.getId()); + planMapper.selectPlanIdsFalse(planDO.getCreateTime().toString(),planDO.getSort(), getUserOrganId(), planDO.getId()); if (plan.isEmpty()) { 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 706ad9d36..042bfde23 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 @@ -22,7 +22,6 @@ import com.cf.imes.module.executor.controller.admin.plate.vo.*; import com.cf.imes.module.executor.dal.dataobject.orderBody.OrderBodyDO; import com.cf.imes.module.executor.dal.dataobject.orderItem.OrderItemDO; import com.cf.imes.module.executor.dal.dataobject.ordermodel.OrderModelDO; -import com.cf.imes.module.executor.dal.dataobject.planitem.PlanItemDO; import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO; import com.cf.imes.module.executor.dal.mysql.goods.GoodsMapper; import com.cf.imes.module.executor.dal.mysql.orderBody.OrderBodyMapper; @@ -48,7 +47,8 @@ import static com.cf.imes.framework.common.exception.enums.GlobalErrorCodeConsta import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.exception; import static com.cf.imes.framework.security.core.util.SecurityFrameworkUtils.getUserOrganId; import static com.cf.imes.module.executor.service.optimizeplan.OptimizePlanService.ORDER_PLATE_MODEL; -import static com.cf.imes.module.system.enums.ErrorCodeConstants.*; +import static com.cf.imes.module.system.enums.ErrorCodeConstants.REMAIN_PLATE_NOT_EXISTS; +import static com.cf.imes.module.system.enums.ErrorCodeConstants.THE_CURRENT_BOARD_IS_NOT_SELECTED; /** * 生产单板件 Service 实现类 @@ -267,7 +267,7 @@ public class PlateServiceImpl implements PlateService { plateDO.setRemark(reqVO.getRemake1() +","+ reqVO.getRemake2()); plateDO.setHoleArrange(reqVO.getPlaceHole()); plateDO.setGoodsId(goodsId); - + plateDO.setIsOptimized(true); plateDO.setPlateNo((obtainingTime) + Long.toString(plateNo).substring(2)); plateDO.setArea(reqVO.getWidth().multiply(reqVO.getHeight()).movePointLeft(4).stripTrailingZeros()); @@ -303,19 +303,19 @@ public class PlateServiceImpl implements PlateService { orderItemMapper.insertBatch(orderItemDOS); - List planItemDOS = new ArrayList<>(); - - orderItemDOS.forEach(orderItemDO ->{ - - PlanItemDO planItemDO = PlanItemDO.builder() - .planId(reqVO.getPlanId()) - .itemId(orderItemDO.getId()) - .build(); - planItemDOS.add(planItemDO); - }); - - // 排单明细表新增数据 - planItemMapper.insertBatch(planItemDOS); +// List planItemDOS = new ArrayList<>(); +// +// orderItemDOS.forEach(orderItemDO ->{ +// +// PlanItemDO planItemDO = PlanItemDO.builder() +// .planId(reqVO.getPlanId()) +// .itemId(orderItemDO.getId()) +// .build(); +// planItemDOS.add(planItemDO); +// }); +// +// // 排单明细表新增数据 +// planItemMapper.insertBatch(planItemDOS); return plateDOS.stream().map(PlateDO::getId).toList(); } 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 f437a209e..b78cee4cf 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 @@ -45,7 +45,7 @@ from orders o join order_goods og on o.organ_id = og.organ_id and o.id = og.order_id and og.plan_id = 0 and o.deleted = og.deleted - join order_plate op on o.organ_id = op.organ_id and o.deleted = op.deleted and o.id = op.order_id and op.isOptimized = false + join order_plate op on o.organ_id = op.organ_id and o.deleted = op.deleted and o.id = op.order_id and op.is_optimized = false ${ew.customSqlSegment} @@ -257,7 +257,7 @@ join order_goods og on o.organ_id = og.organ_id and o.id = og.order_id and og.plan_id = 0 and o.deleted = og.deleted - join order_plate op on o.organ_id = op.organ_id and o.deleted = op.deleted and o.id = op.order_id and op.isOptimized = false + join order_plate op on o.organ_id = op.organ_id and o.deleted = op.deleted and o.id = op.order_id and op.is_optimized = false ${ew.customSqlSegment} @@ -278,7 +278,7 @@ join order_goods og on o.organ_id = og.organ_id and o.id = og.order_id and og.plan_id = 0 and o.deleted = og.deleted - join order_plate op on o.organ_id = op.organ_id and o.deleted = op.deleted and o.id = op.order_id and op.isOptimized = false + join order_plate op on o.organ_id = op.organ_id and o.deleted = op.deleted and o.id = op.order_id and op.is_optimized = false ${ew.customSqlSegment} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plan/PlanMapper.xml b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plan/PlanMapper.xml index 18d4a1146..3bd3e1de8 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plan/PlanMapper.xml +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plan/PlanMapper.xml @@ -183,11 +183,10 @@ select * from order_plan where organ_id = #{organId} and deleted = false - and update_time >= #{updateTime} - and sort <= #{sort} + and create_time >= #{createTime} and id != #{planId} - ORDER BY sort DESC, update_time + ORDER BY create_time limit 1; @@ -199,16 +198,30 @@ select * from order_plan where organ_id = #{organId} and deleted = false - and update_time <= #{updateTime} - and sort >= #{sort} + and create_time <= #{createTime} and id != #{planId} - ORDER BY sort , update_time desc + ORDER BY create_time desc limit 1; + + \ 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 b61067fa4..3c43384c9 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 @@ -400,7 +400,7 @@ UPDATE order_plate - SET deleted = #{deleted} + SET deleted = #{deleted},is_optimized = false WHERE id IN @@ -896,7 +896,7 @@ update order_plate - set isOptimized = true + set is_optimized = true where organ_id = #{organId} and deleted = false @@ -911,7 +911,7 @@ #{ids} - and isOptimized = false + and is_optimized = false @@ -919,7 +919,7 @@ update order_plate - set isOptimized = false + set is_optimized = false where organ_id = #{organId} and deleted = false @@ -932,7 +932,7 @@ #{ids} - and isOptimized = true + and is_optimized = true 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 91de41357..2b12dee39 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 @@ -52,7 +52,7 @@ public class PackController { @GetMapping("/getOrderPlate") - @Operation(summary = "查看生产订单对应的板材信息") + @Operation(summary = "查看生产订单对应的没有打包的板材信息") @Parameter(name = "orderId", description = "生产单Id", required = true) @PreAuthorize("@ss.hasPermission('manage:pack-palte:query')") public CommonResult> getOrderPlateList(@Valid @RequestParam("orderId") Long orderId) { diff --git a/cf-module-system/cf-module-system-api/src/main/java/com/cf/imes/module/system/enums/ErrorCodeConstants.java b/cf-module-system/cf-module-system-api/src/main/java/com/cf/imes/module/system/enums/ErrorCodeConstants.java index 8c762f9fe..0a94a4c62 100644 --- a/cf-module-system/cf-module-system-api/src/main/java/com/cf/imes/module/system/enums/ErrorCodeConstants.java +++ b/cf-module-system/cf-module-system-api/src/main/java/com/cf/imes/module/system/enums/ErrorCodeConstants.java @@ -286,7 +286,7 @@ public interface ErrorCodeConstants { //=========== 断言提示信息 1-002-041-000 ============ ErrorCode ORDER_DATE_ERROR = new ErrorCode(1_002_041_001, "生产单信息不存在,请重新进入或切换生产单"); - ErrorCode ORDER_PLATE_ERROR = new ErrorCode(1_002_041_002, "生产单对应的板材信息不存在"); + ErrorCode ORDER_PLATE_ERROR = new ErrorCode(1_002_041_002, "生产单对应的板材数据有异常,请查看板材信息或联系客服");