Merge remote-tracking branch 'origin/master'

liweidong
wusiyu 5 days ago
commit 4c0a5dac87
  1. 50
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/service/impl/PlanAssignSteerModifyServiceImpl.java
  2. 7
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java

@ -367,25 +367,20 @@ public class PlanAssignSteerModifyServiceImpl extends BaseServiceImpl<PlanAssign
@Override
public PlanAssignSteerModifyVO getDetail(Long pasmId, Long caId) {
// 参数校验:pasmId为空直接返回null
if (pasmId == null) {
return null;
}
List<PlanAssignSteerModifyDVO> modifyLst = null;
PlanAssignSteerModifyVO modifyVO = null;
// 查询主表信息
Boolean initSteer = false;
if (pasmId != null) {
List<PlanAssignSteerModifyVO> entity = baseMapper.findByPasmId(pasmId);
List<PlanAssignSteerModifyVO> list = baseMapper.findByPasmId(pasmId);
if (list.isEmpty()) {
return null;
}
PlanAssignSteerModifyVO modifyVO = list.get(0);
// 判断是否需要查询明细:caId为空 或 caId与主表的platingId匹配
// // TODO: 2026/5/22 caId根据工艺能力查询计划分派控制
boolean shouldQueryDetail = caId == null || caId.equals(modifyVO.getPlatingId());
modifyVO = list.get(0);
List<PlanAssignSteerModifyDVO> modifyLst = null;
if (shouldQueryDetail) {
if (caId == null || caId.equals(modifyVO.getPlatingId())) {
List<PlanAssignSteerModifyD> detailList = planAssignSteerModifyDService.findByPasmId(pasmId);
if (!detailList.isEmpty()) {
modifyLst = detailList.stream()
@ -396,9 +391,40 @@ public class PlanAssignSteerModifyServiceImpl extends BaseServiceImpl<PlanAssign
})
.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;
}
}
if (initSteer) {
modifyVO = null;
// 根据工艺能力和外协厂商查找现有分派规则
List<PlanAssignSteer> 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;
}

@ -1741,6 +1741,13 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
WorkPlanItemDetail workPlanItemDetail;
List<InspectionItem> 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());

Loading…
Cancel
Save