From 1427ad5d5fb2afd9bbfae23dab9d6694733563ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B8=B8=E7=86=9F=E5=90=B4=E5=BD=A6=E7=A5=96?= Date: Tue, 18 Aug 2026 11:02:07 +0800 Subject: [PATCH] bug --- .../modules/production/entity/SOToolData.java | 10 +++++ .../service/impl/DailyPlanServiceImpl.java | 40 +++++++++++++++++++ .../js/pda/scanningOfVulcanizedMold2.js | 1 + 3 files changed, 51 insertions(+) diff --git a/src/main/java/com/heai/modules/production/entity/SOToolData.java b/src/main/java/com/heai/modules/production/entity/SOToolData.java index 9a7c2a7..0d03543 100644 --- a/src/main/java/com/heai/modules/production/entity/SOToolData.java +++ b/src/main/java/com/heai/modules/production/entity/SOToolData.java @@ -43,6 +43,8 @@ public class SOToolData { */ private Double itemNo; + private Integer seqNo; + public String getSite() { return site; } @@ -106,5 +108,13 @@ public class SOToolData { public void setItemNo(Double itemNo) { this.itemNo = itemNo; } + + public Integer getSeqNo() { + return seqNo; + } + + public void setSeqNo(Integer seqNo) { + this.seqNo = seqNo; + } } diff --git a/src/main/java/com/heai/modules/production/service/impl/DailyPlanServiceImpl.java b/src/main/java/com/heai/modules/production/service/impl/DailyPlanServiceImpl.java index 8e18df8..2ef1bd6 100644 --- a/src/main/java/com/heai/modules/production/service/impl/DailyPlanServiceImpl.java +++ b/src/main/java/com/heai/modules/production/service/impl/DailyPlanServiceImpl.java @@ -42,6 +42,9 @@ import java.util.*; @Service @Slf4j public class DailyPlanServiceImpl implements DailyPlanService { + + @Autowired + private OutboundLabelScanMapper outboundLabelScanMapper; @Autowired private TCPClient tcpClient; @Autowired @@ -2302,6 +2305,16 @@ public class DailyPlanServiceImpl implements DailyPlanService { } }); } + //如果传了工序号 就校验下 + if(soToolData.getSeqNo()!=null){ + String fifoFlag = outboundLabelScanMapper.getSysParamenter(toolingHistDataList.get(0).getSite(), "205"); + if ("Y".equalsIgnoreCase(String.valueOf(fifoFlag).trim())){ + // 参数205=Y时:校验工具实例当前领用派工单(ToolDetail.now_seq_no)必须等于本次报工派工单 - rqrq + if(toolDetailData.getNowSeqNo()!=soToolData.getSeqNo()){ + throw new RuntimeException("本工具"+ "未在本派工单领用"); + } + } + } String toolDesc = dailyPlanMapper.getToolHeaderDescription(toolDetailData.getToolID(), toolDetailData.getSite()); Map map = new HashMap<>(); map.put("toolInstanceID", toolDetailData.getToolInstanceID()); @@ -2491,6 +2504,33 @@ public class DailyPlanServiceImpl implements DailyPlanService { @Override @Transactional public void batchSaveToolingHist(List toolingHistDataList) { + if (Objects.isNull(toolingHistDataList) || toolingHistDataList.isEmpty()){ + throw new RuntimeException("保存数据不能为空"); + } + String fifoFlag = outboundLabelScanMapper.getSysParamenter(toolingHistDataList.get(0).getSite(), "205"); + if ("Y".equalsIgnoreCase(String.valueOf(fifoFlag).trim())){ + // 参数205=Y时:校验工具实例当前领用派工单(ToolDetail.now_seq_no)必须等于本次报工派工单 - rqrq + for (ToolingHistData toolingHistData : toolingHistDataList) { + if (!StringUtils.hasText(toolingHistData.getSite())){ + throw new RuntimeException("工厂编码不能为空"); + } + if (!StringUtils.hasText(toolingHistData.getToolInstanceID())){ + throw new RuntimeException("工具实例编码不能为空"); + } + if (Objects.isNull(toolingHistData.getSeqNo())){ + throw new RuntimeException("派工单号不能为空"); + } + ToolDetailData toolDetailData = new LambdaQueryChainWrapper<>(toolDetailMapper) + .eq(ToolDetailData::getSite, toolingHistData.getSite()) + .eq(ToolDetailData::getToolInstanceID, toolingHistData.getToolInstanceID()) + .one(); + if (Objects.isNull(toolDetailData) + || Objects.isNull(toolDetailData.getNowSeqNo()) + || !toolDetailData.getNowSeqNo().equals(toolingHistData.getSeqNo())){ + throw new RuntimeException("工具实例" + toolingHistData.getToolInstanceID() + "未在本派工单领用"); + } + } + } dailyPlanMapper.batchSaveToolingHist(toolingHistDataList); } diff --git a/src/main/resources/static/js/pda/scanningOfVulcanizedMold2.js b/src/main/resources/static/js/pda/scanningOfVulcanizedMold2.js index ccf4250..d4b1780 100644 --- a/src/main/resources/static/js/pda/scanningOfVulcanizedMold2.js +++ b/src/main/resources/static/js/pda/scanningOfVulcanizedMold2.js @@ -64,6 +64,7 @@ function getToolDetail(){ site:resultData.site, orderNo:resultData.orderNo, itemNo:resultData.itemNo, + seqNo:Number(resultData.seqNo), remark:resultData.seqNo, } requestPost("/pdaOrder/selectSoTool",jsonData,successShopOrder)