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 7642212b..79efe359 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 @@ -2426,4 +2426,11 @@ public class EamController { eamService.sendLoraWatch(); return R.ok(); } + + @PostMapping(value="/updateRepairTypes") + @ResponseBody + public R updateRepairTypes (@RequestBody List list) { + eamService.updateRepairTypes(list); + return R.ok(); + } } 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 73e1485f..a6bd0aea 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 @@ -477,4 +477,6 @@ public interface EamMapper { void updateOrderStatus(EamWorkOrderInData inData); void updateMessageNotification(EamWorkOrderInData inData); + + void updateRepairTypes(EamWorkOrderInData 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 68bf2436..29d65a6f 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 @@ -1178,4 +1178,6 @@ public interface EamService { void getLoraWatch(); void sendThreeColourLight(); + + void updateRepairTypes(List list); } 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 0a1559f2..a2ee1f23 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 @@ -2500,6 +2500,72 @@ public class EamServiceImpl implements EamService { // 如果 key 已经存在,则获取当前 value 并加 1 redisTemplate.opsForValue().set(key, val + 1); } + + // 根据设备查所属部门 + List deptData = eamMapper.queryDepartmentByObjectId(inData); + // 角色 + if ("设备维修组".equals(inData.getRepairType())) { + deptData.get(0).setRoleNo("R021"); + } else { + deptData.get(0).setRoleNo("R020"); + } + // 根据部门ID查机修人员电话 + List phoneList = eamMapper.queryPhoneByDepartmentId(deptData.get(0)); + if (!phoneList.isEmpty()) { + StringBuilder phoneNumber = new StringBuilder(); + // 拼接所有人员的手机号/姓名 + for (EamObjectAdminData data : phoneList) { + if(StringUtils.isNotBlank(data.getPhone())){ + phoneNumber.append(data.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 data : phoneList) { + if (data.getPhone() != null) { + recordData.setPhone(data.getPhone()); + } + if (data.getAdminName() != null) { + recordData.setRecipient(data.getAdminName()); + } + eamMapper.saveMessageRecord(recordData); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + // 查该设备的标准响应时间 + List objectList = eamMapper.getObjectInfo(inData.getSite(), inData.getBuNo(), inData.getObjectID()); + if (!objectList.isEmpty()) { + if (objectList.get(0).getStandardResponseDuration() != null && objectList.get(0).getStandardResponseDuration() != 0) { + // 将标准响应时间作为失效日期存入redis + String key1 = inData.getSite() + "_" + inData.getBuNo() + "_" + inData.getOrderNo() + "_" + "response"; + redisTemplate.opsForValue().set(key1, inData, + Duration.ofMinutes(objectList.get(0).getStandardResponseDuration() + (objectList.get(0).getTimeOutResponseDuration() == null ? 0 : objectList.get(0).getTimeOutResponseDuration()))); + } + } } @Override public List getItemLists(EamPropertiesModelHeaderData inData){ @@ -3005,67 +3071,69 @@ public class EamServiceImpl implements EamService { // 如果 key 已经存在,则获取当前 value 并加 1 redisTemplate.opsForValue().set(key, val + 1); } - } - // 根据设备查所属部门 - List deptData = eamMapper.queryDepartmentByObjectId(inData); - // 角色 - if ("设备维修组".equals(inData.getRepairType())) { - deptData.get(0).setRoleNo("R021"); - } else { - deptData.get(0).setRoleNo("R020"); - } - // 根据部门ID查机修人员电话 - List phoneList = eamMapper.queryPhoneByDepartmentId(deptData.get(0)); - if (!phoneList.isEmpty()) { - StringBuilder phoneNumber = new StringBuilder(); - // 拼接所有人员的手机号/姓名 - for (EamObjectAdminData data : phoneList) { - if(StringUtils.isNotBlank(data.getPhone())){ - phoneNumber.append(data.getPhone()).append(","); - } - } - String mobile = ""; - if (StringUtils.isNotBlank(phoneNumber)) { - mobile = phoneNumber.substring(0, phoneNumber.length() - 1); + // 根据设备查所属部门 + List deptData = eamMapper.queryDepartmentByObjectId(inData); + // 角色 + if ("设备维修组".equals(inData.getRepairType())) { + deptData.get(0).setRoleNo("R021"); + } else { + deptData.get(0).setRoleNo("R020"); } - // 拼接短信内容 - String content = 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()); + // 根据部门ID查机修人员电话 + List phoneList = eamMapper.queryPhoneByDepartmentId(deptData.get(0)); + if (!phoneList.isEmpty()) { + StringBuilder phoneNumber = new StringBuilder(); + // 拼接所有人员的手机号/姓名 for (EamObjectAdminData data : phoneList) { - if (data.getPhone() != null) { - recordData.setPhone(data.getPhone()); + if(StringUtils.isNotBlank(data.getPhone())){ + phoneNumber.append(data.getPhone()).append(","); } - if (data.getAdminName() != null) { - recordData.setRecipient(data.getAdminName()); + } + 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 + " !"); } - eamMapper.saveMessageRecord(recordData); + // 保存短信记录 + 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 data : phoneList) { + if (data.getPhone() != null) { + recordData.setPhone(data.getPhone()); + } + if (data.getAdminName() != null) { + recordData.setRecipient(data.getAdminName()); + } + eamMapper.saveMessageRecord(recordData); + } + } catch (Exception e) { + e.printStackTrace(); } - } catch (Exception e) { - e.printStackTrace(); } - } - // 查该设备的标准响应时间 - List objectList = eamMapper.getObjectInfo(inData.getSite(), inData.getBuNo(), inData.getObjectID()); - if (!objectList.isEmpty()) { - if (objectList.get(0).getStandardResponseDuration() != null && objectList.get(0).getStandardResponseDuration() != 0) { - // 将标准响应时间作为失效日期存入redis - String key = inData.getSite() + "_" + inData.getBuNo() + "_" + inData.getOrderNo() + "_" + "response"; - redisTemplate.opsForValue().set(key, inData, Duration.ofMinutes(objectList.get(0).getStandardResponseDuration() + (objectList.get(0).getTimeOutResponseDuration() == null ? 0 : objectList.get(0).getTimeOutResponseDuration()))); + // 查该设备的标准响应时间 + List objectList = eamMapper.getObjectInfo(inData.getSite(), inData.getBuNo(), inData.getObjectID()); + if (!objectList.isEmpty()) { + if (objectList.get(0).getStandardResponseDuration() != null && objectList.get(0).getStandardResponseDuration() != 0) { + // 将标准响应时间作为失效日期存入redis + String key1 = inData.getSite() + "_" + inData.getBuNo() + "_" + inData.getOrderNo() + "_" + + "response"; + redisTemplate.opsForValue().set(key1, inData, + Duration.ofMinutes(objectList.get(0).getStandardResponseDuration() + (objectList.get(0).getTimeOutResponseDuration() == null ? 0 : objectList.get(0).getTimeOutResponseDuration()))); + } } } } @@ -3699,6 +3767,18 @@ public class EamServiceImpl implements EamService { sendMessageNotificationService.save(sendMessageNotification); } + @Override + public void updateRepairTypes(List list) { + if (list == null || list.isEmpty()) { + throw new IllegalArgumentException("数据列表为空"); + } + String repairType = list.get(0).getRepairType(); + list.forEach(data -> { + data.setRepairType(repairType); + eamMapper.updateRepairTypes(data); + }); + } + public Long calculateFutureTime(Date lastTime,String minutes) { Calendar calendar = Calendar.getInstance(); calendar.setTime(lastTime); diff --git a/src/main/resources/mapper/pms/EamMapper.xml b/src/main/resources/mapper/pms/EamMapper.xml index b814c99f..8896f8df 100644 --- a/src/main/resources/mapper/pms/EamMapper.xml +++ b/src/main/resources/mapper/pms/EamMapper.xml @@ -3606,4 +3606,9 @@ set send_flag = 'N' WHERE SITE = #{site} AND bu_no = #{buNo} AND plan_no = #{feedBackId} AND order_no = #{orderNo} + + UPDATE eam_workOrder + SET repair_type = #{repairType} + WHERE site = #{site} AND bu_no = #{buNo} AND OrderNo = #{orderNo} + diff --git a/src/main/resources/mapper/pms/QcMapper.xml b/src/main/resources/mapper/pms/QcMapper.xml index a11ba3c1..1a156b89 100644 --- a/src/main/resources/mapper/pms/QcMapper.xml +++ b/src/main/resources/mapper/pms/QcMapper.xml @@ -4006,7 +4006,7 @@ order by order_id - getUpItemdata + update Equipment_data_detail set inspection_no = #{inspectionNo} where id = #{id}