From 6ec052c234f801b09a722a26b94499a88fd476f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=AE=8F=E6=96=8C?= <2164406372@qq.com> Date: Wed, 16 Jul 2025 17:15:38 +0800 Subject: [PATCH] =?UTF-8?q?1.TPM=E7=BA=A2=E7=89=8C=E4=B8=8B=E8=BE=BE?= =?UTF-8?q?=E6=97=B6=EF=BC=8C=E8=83=BD=E5=A4=9F=E9=87=8D=E6=96=B0=E9=80=89?= =?UTF-8?q?=E6=8B=A9=E8=AE=A1=E5=88=92=E6=89=A7=E8=A1=8C=E4=BA=BA=E5=91=98?= =?UTF-8?q?=202.=E6=8D=A2=E7=BA=BF=E4=B8=93=E5=AE=B6=E7=BB=84=E7=BB=B4?= =?UTF-8?q?=E4=BF=AE=E6=89=A7=E8=A1=8C=E5=8A=9F=E8=83=BD=EF=BC=9A=E8=BD=AC?= =?UTF-8?q?=E5=8D=95=EF=BC=9A=E5=A2=9E=E5=8A=A0=E5=8F=91=E9=80=81=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/pms/controller/EamController.java | 5 ++ .../sys/modules/pms/mapper/EamMapper.java | 2 + .../sys/modules/pms/service/EamService.java | 2 + .../pms/service/Impl/EamServiceImpl.java | 75 ++++++++++++++++++- src/main/resources/mapper/pms/EamMapper.xml | 7 +- 5 files changed, 89 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/xujie/sys/modules/pms/controller/EamController.java b/src/main/java/com/xujie/sys/modules/pms/controller/EamController.java index 59f34b1a..e55e7025 100644 --- a/src/main/java/com/xujie/sys/modules/pms/controller/EamController.java +++ b/src/main/java/com/xujie/sys/modules/pms/controller/EamController.java @@ -1846,6 +1846,11 @@ public class EamController { PageUtils page = eamService.eamFeedBackSearch(inData); return R.ok().put("page", page); } + @PostMapping("/updateEamDefectFeedBackPlanOperator") + public R updateEamDefectFeedBackPlanOperator(@RequestBody EamDefectFeedBackInData inData){ + eamService.updateEamDefectFeedBackPlanOperator(inData); + return R.ok(); + } /** * @Description 取消反馈单 diff --git a/src/main/java/com/xujie/sys/modules/pms/mapper/EamMapper.java b/src/main/java/com/xujie/sys/modules/pms/mapper/EamMapper.java index fe45125b..5d0d5210 100644 --- a/src/main/java/com/xujie/sys/modules/pms/mapper/EamMapper.java +++ b/src/main/java/com/xujie/sys/modules/pms/mapper/EamMapper.java @@ -495,4 +495,6 @@ public interface EamMapper { void updateIsReturn(EamWorkOrderInData data); void reportWorkOrderForIsReturn(EamWorkOrderInData inData); + + void updateEamDefectFeedBackPlanOperator(EamDefectFeedBackInData inData); } diff --git a/src/main/java/com/xujie/sys/modules/pms/service/EamService.java b/src/main/java/com/xujie/sys/modules/pms/service/EamService.java index 293351e5..259685d5 100644 --- a/src/main/java/com/xujie/sys/modules/pms/service/EamService.java +++ b/src/main/java/com/xujie/sys/modules/pms/service/EamService.java @@ -1188,4 +1188,6 @@ public interface EamService { void goDownItem(EamPropertiesModelDetailData inData); void sendLoraRedLight(); + + void updateEamDefectFeedBackPlanOperator(EamDefectFeedBackInData inData); } diff --git a/src/main/java/com/xujie/sys/modules/pms/service/Impl/EamServiceImpl.java b/src/main/java/com/xujie/sys/modules/pms/service/Impl/EamServiceImpl.java index 3b58978a..08e9efba 100644 --- a/src/main/java/com/xujie/sys/modules/pms/service/Impl/EamServiceImpl.java +++ b/src/main/java/com/xujie/sys/modules/pms/service/Impl/EamServiceImpl.java @@ -3790,14 +3790,82 @@ public class EamServiceImpl implements EamService { } @Override + @Transactional public void updateRepairTypes(List list) { if (list == null || list.isEmpty()) { throw new IllegalArgumentException("数据列表为空"); } - String repairType = list.get(0).getRepairType(); + EamWorkOrderInData eamWorkOrderInData = list.get(0); + String repairType = eamWorkOrderInData.getRepairType(); + //新建维修反馈模型 + EamDefectFeedBackInData inData = new EamDefectFeedBackInData(); + inData.setSite(eamWorkOrderInData.getSite()); + inData.setBu(inData.getBu()); + inData.setBuNo(eamWorkOrderInData.getBuNo()); + inData.setRepairType("设备维修组"); + //遍历参数传入集合 list.forEach(data -> { + //更新维修工单的维修类型 data.setRepairType(repairType); eamMapper.updateRepairTypes(data); + //设置参数 + inData.setOrderNo(data.getOrderNo()); + inData.setObjectID(data.getObjectID()); + inData.setRepairReportingType(data.getRepairReportingType()); + inData.setFeedBackDesc(data.getFeedBackDesc()); + inData.setDefectID(data.getDefectID()); + System.out.println("******************"+data.getCreatedBy()); + inData.setCreatedBy(data.getCreatedBy()); + inData.setFeedBackID(data.getPlanID()); + // 根据设备查所属部门 + List deptData = eamMapper.queryDepartmentByObjectId(inData); + // 角色 + deptData.get(0).setRoleNo("R021"); + // 根据部门ID查机修人员电话 + List phoneList = eamMapper.queryPhoneByDepartmentId(deptData.get(0)); + if (!phoneList.isEmpty()) { + StringBuilder phoneNumber = new StringBuilder(); + // 拼接所有人员的手机号/姓名 + for (EamObjectAdminData data1 : phoneList) { + if(StringUtils.isNotBlank(data1.getPhone())){ + phoneNumber.append(data1.getPhone()).append(","); + } + } + String mobile = ""; + if (StringUtils.isNotBlank(phoneNumber)) { + mobile = phoneNumber.substring(0, phoneNumber.length() - 1); + } + // 拼接短信内容 + String content =inData.getRepairReportingType() + ":" + inData.getObjectID() + "-" + deptData.get(0).getObjectDesc() + " 在 " + deptData.get(0).getLocationName() + " 发生了 " + inData.getFeedBackDesc() +" 故障,请及时处理!【齐克庞德】"; + try { + // 发送短信 + int code = SendMessageUtils.sendSMSGet("LKSDK0007685", "554958", mobile, content, ""); + //int code = SendMessageUtils.sendSMSGet("LKSDK0007685", "554958", "13592510225", content, ""); + if (code <= 0) { + throw new RuntimeException("短信发送失败,code = " + code + " !"); + } + // 保存短信记录 + MessageRecordData recordData = new MessageRecordData(); + recordData.setSite(inData.getSite()); + recordData.setBuNo(inData.getBuNo()); + recordData.setPlanId(inData.getFeedBackID()); + recordData.setObjectId(inData.getObjectID()); + recordData.setDefectId(inData.getDefectID()); + recordData.setFeedBackDesc(inData.getFeedBackDesc()); + recordData.setSender(inData.getCreatedBy()); + for (EamObjectAdminData data2 : phoneList) { + if (data2.getPhone() != null) { + recordData.setPhone(data2.getPhone()); + } + if (data2.getAdminName() != null) { + recordData.setRecipient(data2.getAdminName()); + } + eamMapper.saveMessageRecord(recordData); + } + } catch (Exception e) { + e.printStackTrace(); + } + } }); } @@ -3882,6 +3950,11 @@ public class EamServiceImpl implements EamService { } + @Override + public void updateEamDefectFeedBackPlanOperator(EamDefectFeedBackInData inData) { + eamMapper.updateEamDefectFeedBackPlanOperator(inData); + } + /** * 员工考勤vs报工工时 */ diff --git a/src/main/resources/mapper/pms/EamMapper.xml b/src/main/resources/mapper/pms/EamMapper.xml index f16036a6..498acec8 100644 --- a/src/main/resources/mapper/pms/EamMapper.xml +++ b/src/main/resources/mapper/pms/EamMapper.xml @@ -1638,7 +1638,7 @@ a.FunctionType, a.PlanOperator, a.ActualOperator, - (CASE WHEN a.Status = '已下达' and a.matter_tracking_flag is not null then a.matter_tracking_flag else a.Status end) as Status, + DBO.GET_EAM_Status (A.site,a.bu_no,a.FeedBackID) AS status, a.PlanDate, a.Remark, a.urgency, @@ -3691,6 +3691,11 @@ status = '待审核' where site = #{site} and orderNo = #{orderNo} and FunctionType = #{functionType} and bu_no = #{buNo} + + update eam_defect_feedBack + set PlanOperator = #{planOperator} + where site = #{site} and bu_no = #{buNo} and feedBackID = #{feedBackID} +