Merge remote-tracking branch 'origin/master'

liweidong
wusiyu 5 days ago
commit 4c0a5dac87
  1. 78
      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,38 +367,64 @@ public class PlanAssignSteerModifyServiceImpl extends BaseServiceImpl<PlanAssign
@Override @Override
public PlanAssignSteerModifyVO getDetail(Long pasmId, Long caId) { public PlanAssignSteerModifyVO getDetail(Long pasmId, Long caId) {
// 参数校验:pasmId为空直接返回null List<PlanAssignSteerModifyDVO> modifyLst = null;
if (pasmId == null) { PlanAssignSteerModifyVO modifyVO = null;
return null;
} Boolean initSteer = false;
if (pasmId != null) {
List<PlanAssignSteerModifyVO> entity = baseMapper.findByPasmId(pasmId);
List<PlanAssignSteerModifyVO> list = baseMapper.findByPasmId(pasmId);
if (list.isEmpty()) {
return null;
}
// 查询主表信息 modifyVO = list.get(0);
List<PlanAssignSteerModifyVO> list = baseMapper.findByPasmId(pasmId);
if (list.isEmpty()) { if (caId == null || caId.equals(modifyVO.getPlatingId())) {
return null; List<PlanAssignSteerModifyD> 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); if (initSteer) {
modifyVO = null;
// 判断是否需要查询明细:caId为空 或 caId与主表的platingId匹配 // 根据工艺能力和外协厂商查找现有分派规则
// // TODO: 2026/5/22 caId根据工艺能力查询计划分派控制 List<PlanAssignSteer> assignSteers = planAssignSteerService.list(Wrappers.lambdaQuery(PlanAssignSteer.class)
boolean shouldQueryDetail = caId == null || caId.equals(modifyVO.getPlatingId()); .eq(PlanAssignSteer::getPlatingId, caId));
List<PlanAssignSteerModifyDVO> modifyLst = null; modifyLst = assignSteers.stream()
if (shouldQueryDetail) { .map(assign -> {
List<PlanAssignSteerModifyD> detailList = planAssignSteerModifyDService.findByPasmId(pasmId); PlanAssignSteerModifyDVO modifyDVO = new PlanAssignSteerModifyDVO();
if (!detailList.isEmpty()) { modifyDVO.setPlatingId(assign.getPlatingId());
modifyLst = detailList.stream() modifyDVO.setOemId(assign.getOemId());
.map(d -> { modifyDVO.setAssignScale(assign.getAssignScale());
PlanAssignSteerModifyDVO vo = new PlanAssignSteerModifyDVO(); modifyDVO.setPasId(assign.getId());
BeanUtil.copyProperties(d, vo); return modifyDVO;
return vo; })
}) .collect(Collectors.toList());
.collect(Collectors.toList());
}
} }
modifyVO.setModifyLst(modifyLst); modifyVO.setModifyLst(modifyLst);
return modifyVO; return modifyVO;
} }

@ -1741,6 +1741,13 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
WorkPlanItemDetail workPlanItemDetail; WorkPlanItemDetail workPlanItemDetail;
List<InspectionItem> inspectionItems = inspectionService.list(); List<InspectionItem> inspectionItems = inspectionService.list();
for (DsProcessProjectVO project : projects) { 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 = new WorkPlanItem();
workPlanItem.setWpId(workPlan.getId()); workPlanItem.setWpId(workPlan.getId());
workPlanItem.setItemCode(project.getTrialNo()); workPlanItem.setItemCode(project.getTrialNo());

Loading…
Cancel
Save