|
|
@@ -1094,11 +1094,12 @@ public class RepairApplicationFormServiceImpl
|
|
|
sbInfoService.updateStatus(sbInfoDTO);
|
|
|
|
|
|
// 维修完成通知报修人:邮件+站内信+微信,任何异常不影响完成主流程
|
|
|
- try {
|
|
|
- sendFinishNoticeToReporter(applicationForm);
|
|
|
- } catch (Exception e) {
|
|
|
- log.error("维修完成通知报修人发送失败, 报修id: " + applicationForm.getId(), e);
|
|
|
- }
|
|
|
+ // 已调整:改到审核通过(approve)后发送,点“完成”时不再通知
|
|
|
+ // try {
|
|
|
+ // sendFinishNoticeToReporter(applicationForm);
|
|
|
+ // } catch (Exception e) {
|
|
|
+ // log.error("维修完成通知报修人发送失败, 报修id: " + applicationForm.getId(), e);
|
|
|
+ // }
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -1801,6 +1802,8 @@ public class RepairApplicationFormServiceImpl
|
|
|
applicationForm.setCheckUserId(userInfo.getUserId());
|
|
|
super.modModelByPrimaryKey(applicationForm);
|
|
|
// 给设备使用人员发送消息通知
|
|
|
+ // 暂时停用:审核通过后不再单独通知设备使用人,改为统一走 sendFinishNoticeToReporter 通知报修人
|
|
|
+ /*
|
|
|
if (StringUtils.isNotBlank(info.getSaveUser())) {
|
|
|
List<String> userIds = ListUtils.newArrayList();
|
|
|
List<String> openIds = ListUtils.newArrayList();
|
|
|
@@ -1831,6 +1834,14 @@ public class RepairApplicationFormServiceImpl
|
|
|
// 发送短信
|
|
|
sendCompleteSms(receiverList, info, applicationForm);
|
|
|
}
|
|
|
+ */
|
|
|
+
|
|
|
+ // 审核通过后通知报修人:邮件+站内信+微信(原在 finish 点“完成”时发送,移至此处),任何异常不影响审核主流程
|
|
|
+ try {
|
|
|
+ sendFinishNoticeToReporter(applicationForm);
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error("审核通过维修完成通知报修人发送失败, 报修id: " + applicationForm.getId(), e);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
private void sendCompleteWechat(List<String> openIds, RepairApplicationForm form, SbInfo info) {
|
|
|
@@ -1925,17 +1936,23 @@ public class RepairApplicationFormServiceImpl
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 验收是主管验收,驳回到待审核状态
|
|
|
+ * 验收是主管验收,驳回后直接退回「维修中」,维修人保持不变,由其继续计时维修后重新提交审核。
|
|
|
+ * 说明:
|
|
|
+ * 1)不再置为「已驳回(5)」,避免需要重新接单/派工;
|
|
|
+ * 2)assistantStatus 复位为 init,使手机端「开始维修」按钮重新出现,可开启新一轮计时;
|
|
|
+ * 3)不动 RepairTimeRecord 计时明细,也不重置 repairMinutes(累计工时模型,历史工时保留、后续累加)。
|
|
|
*
|
|
|
* @param dto
|
|
|
*/
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
@Override
|
|
|
public void returnRepair(RepairApplicationFormDTO dto) {
|
|
|
- // 1.修改验收单状态
|
|
|
+ // 1.修改验收单状态:驳回退回维修中,维修人不变
|
|
|
RepairApplicationForm applicationForm = mapper.selectById(dto.getId());
|
|
|
applicationForm.setCheckContent(dto.getCheckContent());
|
|
|
- applicationForm.setStatus(RepairApplicationFormStatusEnum.REBACK.getValue());
|
|
|
+ applicationForm.setStatus(RepairApplicationFormStatusEnum.PROCESSING.getValue());
|
|
|
+ // 复位辅助状态,允许维修人重新「开始维修」计时
|
|
|
+ applicationForm.setAssistantStatus(RepairAssistantStatusEnum.init.getValue());
|
|
|
applicationForm.setUpdateTime(LocalDateTime.now());
|
|
|
super.modModelByPrimaryKey(applicationForm);
|
|
|
|