From 3d3a3fb85935a102f30c752957a0a473341e21b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E4=B9=BE=E7=BF=94?= Date: Mon, 25 May 2026 14:22:33 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E5=B7=A5=E8=89=BA?= =?UTF-8?q?=E8=83=BD=E5=8A=9BID=E6=9F=A5=E8=AF=A2=E8=AE=A1=E5=88=92?= =?UTF-8?q?=E5=88=86=E6=B4=BE=E6=8E=A7=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PlanAssignSteerModifyServiceImpl.java | 78 ++++++++++++------- 1 file changed, 52 insertions(+), 26 deletions(-) diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/service/impl/PlanAssignSteerModifyServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/service/impl/PlanAssignSteerModifyServiceImpl.java index ff46b46c9..4ba62fd1c 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/service/impl/PlanAssignSteerModifyServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/service/impl/PlanAssignSteerModifyServiceImpl.java @@ -367,38 +367,64 @@ public class PlanAssignSteerModifyServiceImpl extends BaseServiceImpl modifyLst = null; + PlanAssignSteerModifyVO modifyVO = null; + + Boolean initSteer = false; + if (pasmId != null) { + List entity = baseMapper.findByPasmId(pasmId); + List list = baseMapper.findByPasmId(pasmId); + if (list.isEmpty()) { + return null; + } - // 查询主表信息 - List list = baseMapper.findByPasmId(pasmId); - if (list.isEmpty()) { - return null; + modifyVO = list.get(0); + + if (caId == null || caId.equals(modifyVO.getPlatingId())) { + List detailList = planAssignSteerModifyDService.findByPasmId(pasmId); + if (!detailList.isEmpty()) { + modifyLst = detailList.stream() + .map(d -> { + PlanAssignSteerModifyDVO vo = new PlanAssignSteerModifyDVO(); + BeanUtil.copyProperties(d, vo); + return vo; + }) + .collect(Collectors.toList()); + } + } else { + initSteer = true; + } + } else { + if (caId == null) { + modifyVO = new PlanAssignSteerModifyVO(); + modifyVO.setPlatingId(null); + modifyVO.setCreateMan(AuthUtil.getUserId()); + modifyVO.setCreateTime(new Date()); + } else { + initSteer = true; + } } - PlanAssignSteerModifyVO modifyVO = list.get(0); - - // 判断是否需要查询明细:caId为空 或 caId与主表的platingId匹配 - // // TODO: 2026/5/22 caId根据工艺能力查询计划分派控制 - boolean shouldQueryDetail = caId == null || caId.equals(modifyVO.getPlatingId()); - - List modifyLst = null; - if (shouldQueryDetail) { - List detailList = planAssignSteerModifyDService.findByPasmId(pasmId); - if (!detailList.isEmpty()) { - modifyLst = detailList.stream() - .map(d -> { - PlanAssignSteerModifyDVO vo = new PlanAssignSteerModifyDVO(); - BeanUtil.copyProperties(d, vo); - return vo; - }) - .collect(Collectors.toList()); - } + if (initSteer) { + modifyVO = null; + // 根据工艺能力和外协厂商查找现有分派规则 + List assignSteers = planAssignSteerService.list(Wrappers.lambdaQuery(PlanAssignSteer.class) + .eq(PlanAssignSteer::getPlatingId, caId)); + + modifyLst = assignSteers.stream() + .map(assign -> { + PlanAssignSteerModifyDVO modifyDVO = new PlanAssignSteerModifyDVO(); + modifyDVO.setPlatingId(assign.getPlatingId()); + modifyDVO.setOemId(assign.getOemId()); + modifyDVO.setAssignScale(assign.getAssignScale()); + modifyDVO.setPasId(assign.getId()); + return modifyDVO; + }) + .collect(Collectors.toList()); } modifyVO.setModifyLst(modifyLst); + return modifyVO; } From dc453d3e4a3eb9ced389d5ba6ac5942331ada8fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E6=B6=9B?= Date: Mon, 25 May 2026 14:47:50 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=B7=A5=E5=BA=8F=E6=8E=A5=E6=94=B6?= =?UTF-8?q?=E8=80=90=E8=9A=80=E6=80=A7=E6=A3=80=E6=B5=8B=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E7=94=9F=E6=88=90=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../desk/produce/service/impl/WorkOrderServiceImpl.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java index 9347e3634..14c084140 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java @@ -1741,6 +1741,13 @@ public class WorkOrderServiceImpl extends BaseServiceImpl inspectionItems = inspectionService.list(); for (DsProcessProjectVO project : projects) { + // 如果是耐蚀性检测,需要满足三个条件才允许生产对应的检测项目:1-工作订单备注包含HTBY,2-生产标识包含JHT,3-镀种含金或者Au + if ("耐蚀性检测".equals(project.getProjectName())) { + if (!yieldOrder.getYpMemo().contains("HTBY") || !yieldOrder.getProductIdent().contains("JHT") || + !(yieldOrder.getPlate().contains("金") || yieldOrder.getPlate().contains("Au") || yieldOrder.getPlate().contains("au"))) { + continue; + } + } workPlanItem = new WorkPlanItem(); workPlanItem.setWpId(workPlan.getId()); workPlanItem.setItemCode(project.getTrialNo());