From 765ee9e7ec56d35544f23db219d062e8f6465861 Mon Sep 17 00:00:00 2001 From: fengyuan_yang <1976974459@qq.com> Date: Mon, 31 Aug 2026 15:39:54 +0800 Subject: [PATCH] =?UTF-8?q?2026-08-31=20=E4=BB=A3=E5=8A=9E=E4=B8=AD?= =?UTF-8?q?=E5=BF=83=E6=98=BE=E7=A4=BA=E5=BC=82=E5=B8=B8=E5=8D=95=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ScheduleController.java | 6 +-- .../schedule/mapper/ScheduleMapper.java | 4 +- .../schedule/service/ScheduleService.java | 4 +- .../service/impl/ScheduleServiceImpl.java | 54 +++++++++++++++++-- .../mapper/schedule/ScheduleMapper.xml | 10 +++- .../schedule/ScheduleTodoMessageMapper.xml | 9 ++++ 6 files changed, 73 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/gaotao/modules/schedule/controller/ScheduleController.java b/src/main/java/com/gaotao/modules/schedule/controller/ScheduleController.java index c27b702..fa848c3 100644 --- a/src/main/java/com/gaotao/modules/schedule/controller/ScheduleController.java +++ b/src/main/java/com/gaotao/modules/schedule/controller/ScheduleController.java @@ -303,12 +303,12 @@ public class ScheduleController extends AbstractController { * TODO 按照派工单号查询派工单的数据 * @author LR * @date 2021/11/8 14:23 - * @param seqNo + * @param inData * @return com.gaotao.common.utils.R **/ @RequestMapping(value = "getScheduleDataBySeqNo") - public R getScheduleDataBySeqNo(@RequestBody String seqNo){ - ScheduleData result = scheduleService.getScheduleDataBySeqNo(seqNo); + public R getScheduleDataBySeqNo(@RequestBody SearchScheduleData inData){ + ScheduleData result = scheduleService.getScheduleDataBySeqNo(inData); return R.ok() .put("code", 200) .put("msg", getLanguageMsg(SysMsgConstant.OBJECT_ID_200000)) diff --git a/src/main/java/com/gaotao/modules/schedule/mapper/ScheduleMapper.java b/src/main/java/com/gaotao/modules/schedule/mapper/ScheduleMapper.java index 16ef427..14244de 100644 --- a/src/main/java/com/gaotao/modules/schedule/mapper/ScheduleMapper.java +++ b/src/main/java/com/gaotao/modules/schedule/mapper/ScheduleMapper.java @@ -139,10 +139,10 @@ public interface ScheduleMapper { * TODO 按照派工单号查询派工单的数据 * @author LR * @date 2021/11/8 14:25 - * @param seqNo + * @param inData 含 seqNo / itemNo * @return com.gaotao.modules.schedule.data.ScheduleData **/ - ScheduleData getScheduleDataBySeqNo(String seqNo); + ScheduleData getScheduleDataBySeqNo(SearchScheduleData inData); /** * 校验停机代码是否属于当前加工中心且启用 diff --git a/src/main/java/com/gaotao/modules/schedule/service/ScheduleService.java b/src/main/java/com/gaotao/modules/schedule/service/ScheduleService.java index 7d49e69..a9e5278 100644 --- a/src/main/java/com/gaotao/modules/schedule/service/ScheduleService.java +++ b/src/main/java/com/gaotao/modules/schedule/service/ScheduleService.java @@ -157,12 +157,12 @@ public interface ScheduleService { /** * TODO 按照派工单号查询派工单的数据 * - * @param seqNo + * @param inData * @return com.gaotao.modules.schedule.data.ScheduleData * @author LR * @date 2021/11/8 14:24 **/ - ScheduleData getScheduleDataBySeqNo(String seqNo); + ScheduleData getScheduleDataBySeqNo(SearchScheduleData inData); /** * TODO 获取当前的上机卷信息 diff --git a/src/main/java/com/gaotao/modules/schedule/service/impl/ScheduleServiceImpl.java b/src/main/java/com/gaotao/modules/schedule/service/impl/ScheduleServiceImpl.java index b71a1ac..320d4ad 100644 --- a/src/main/java/com/gaotao/modules/schedule/service/impl/ScheduleServiceImpl.java +++ b/src/main/java/com/gaotao/modules/schedule/service/impl/ScheduleServiceImpl.java @@ -432,8 +432,16 @@ public class ScheduleServiceImpl implements ScheduleService { } @Override - public ScheduleData getScheduleDataBySeqNo(String seqNo) { - return scheduleMapper.getScheduleDataBySeqNo(seqNo); + public ScheduleData getScheduleDataBySeqNo(SearchScheduleData inData) { + if (inData == null || !StringUtils.hasText(inData.getSeqNo())) { + return null; + } + SearchScheduleData query = new SearchScheduleData(); + query.setSeqNo(inData.getSeqNo()); + if (inData.getItemNo() != null && inData.getItemNo() > 0) { + query.setItemNo(inData.getItemNo()); + } + return scheduleMapper.getScheduleDataBySeqNo(query); } @Override @@ -1363,7 +1371,9 @@ public class ScheduleServiceImpl implements ScheduleService { if (!StringUtils.hasText(seqNo)) { throw new XJException("派工单号不能为空"); } - ScheduleData scheduleData = scheduleMapper.getScheduleDataBySeqNo(seqNo); + SearchScheduleData query = new SearchScheduleData(); + query.setSeqNo(seqNo); + ScheduleData scheduleData = scheduleMapper.getScheduleDataBySeqNo(query); if (scheduleData == null) { throw new XJException("未找到对应的派工单信息"); } @@ -3944,8 +3954,20 @@ public class ScheduleServiceImpl implements ScheduleService { List reportList = scheduleTodoDetailRecordMapper.selectByInfoCodeAndStage( site, buNo, infoCode, TODO_DETAIL_STAGE_REPORT); + String processExceptionNo = trimToEmpty(inData.get("mrbInspectionReport")); + if (!StringUtils.hasText(processExceptionNo)) { + processExceptionNo = trimToEmpty(inData.get("processExceptionNo")); + } + String orderNo = trimToEmpty(inData.get("orderNo")); + String seqNoText = trimToEmpty(inData.get("seqNo")); + if (!StringUtils.hasText(processExceptionNo) + && StringUtils.hasText(orderNo) + && StringUtils.hasText(seqNoText)) { + List> mrbDetailList = scheduleMrbExceptionDetailMapper.getDetailList(site, orderNo, seqNoText, infoCode); + processExceptionNo = resolveProcessExceptionNo(mrbDetailList); + } + if (CollectionUtils.isEmpty(triggerList)) { - String orderNo = trimToEmpty(inData.get("orderNo")); Integer seqNo = toInteger(inData.get("seqNo")); if (StringUtils.hasText(orderNo) && seqNo != null) { List cacheList = shiftChangeProductionReportMapper.selectUnprocessedData(site, orderNo, seqNo); @@ -3958,6 +3980,7 @@ public class ScheduleServiceImpl implements ScheduleService { Map result = new HashMap<>(); result.put("triggerList", triggerList == null ? new ArrayList<>() : triggerList); result.put("reportList", reportList == null ? new ArrayList<>() : reportList); + result.put("mrbInspectionReport", processExceptionNo); return result; } @@ -4222,7 +4245,9 @@ public class ScheduleServiceImpl implements ScheduleService { return ""; } try { - ScheduleData scheduleData = scheduleMapper.getScheduleDataBySeqNo(inData.getSeqNo()); + SearchScheduleData query = new SearchScheduleData(); + query.setSeqNo(inData.getSeqNo()); + ScheduleData scheduleData = scheduleMapper.getScheduleDataBySeqNo(query); if (scheduleData == null) { return ""; } @@ -4592,6 +4617,25 @@ public class ScheduleServiceImpl implements ScheduleService { return detailList; } + private String resolveProcessExceptionNo(List> mrbDetailList) { + if (CollectionUtils.isEmpty(mrbDetailList)) { + return ""; + } + for (Map row : mrbDetailList) { + if (row == null) { + continue; + } + String value = trimToEmpty(row.get("mrbInspectionReport")); + if (!StringUtils.hasText(value)) { + value = trimToEmpty(row.get("processExceptionNo")); + } + if (StringUtils.hasText(value)) { + return truncate(value, 100); + } + } + return ""; + } + private void fillSplitRuleMetricData(Map resultMap, SplitRollMetricContext metricContext, SysSceneExceptionRuleConditionEntity condition) { diff --git a/src/main/resources/mapper/schedule/ScheduleMapper.xml b/src/main/resources/mapper/schedule/ScheduleMapper.xml index 8585c24..5eaa3b6 100644 --- a/src/main/resources/mapper/schedule/ScheduleMapper.xml +++ b/src/main/resources/mapper/schedule/ScheduleMapper.xml @@ -588,7 +588,7 @@ - Select T.Site site, T.OrderNo orderNo, @@ -601,7 +601,13 @@ T.SeqNo seqNo, T.QtyRequired qtyRequired, T.QtyReported qtyReported, - (SELECT SUM(RollQty) FROM SFDC_Rolls S WHERE s.Site = T.SITE AND S.OrderNo = T.OrderNo AND s.VirtualNewRollFlag ='N' and s.RollType ='下道流转') qtyApprove, + (SELECT SUM(RollQty) + FROM SFDC_Rolls S + WHERE s.Site = T.SITE + AND S.OrderNo = T.OrderNo + AND s.VirtualNewRollFlag ='N' + AND s.RollType ='下道流转' + AND CreatedOpsSeqno = #{itemNo}) qtyApprove, ROUND(T.TimeRequired, 3) timeRequired, T.TimeReported timeReported, T.PlanStartTime planStartTime, diff --git a/src/main/resources/mapper/schedule/ScheduleTodoMessageMapper.xml b/src/main/resources/mapper/schedule/ScheduleTodoMessageMapper.xml index cd1fb47..0c2fd80 100644 --- a/src/main/resources/mapper/schedule/ScheduleTodoMessageMapper.xml +++ b/src/main/resources/mapper/schedule/ScheduleTodoMessageMapper.xml @@ -268,6 +268,15 @@ stm.matched_defect_rate AS matchedDefectRate, stm.matched_total_qty AS matchedTotalQty, stm.responsibility_dept AS responsibilityDept, + ISNULL(( + SELECT TOP 1 smd.process_exception_no + FROM schedule_mrb_exception_detail smd + WHERE smd.site = stm.site + AND smd.order_no = stm.order_no + AND CAST(smd.seq_no AS NVARCHAR(100)) = stm.seq_no + AND smd.todo_info_code = stm.info_code + ORDER BY smd.update_time DESC, smd.id DESC + ), '') AS mrbInspectionReport, ISNULL(sr.role_name, stm.responsibility_dept) AS responsibilityDeptName FROM schedule_todo_message stm LEFT JOIN sys_role sr