|
@@ -90,21 +90,27 @@ public class LongYanRepairStrategy extends AbstractRepairBaseStrategy {
|
|
|
throw new DeniedException("送修部门不能为空!");
|
|
|
}
|
|
|
form.setRepairDeptId(repairDeptId); // 存储维修部门ID
|
|
|
- List<SysUserVO> sysUserVOList = getRepairMangers(repairDeptId,null,SysRoleCodeEnum.REPAIR_MANAGE.name());
|
|
|
- if(sysUserVOList == null || sysUserVOList.size() ==0){
|
|
|
- throw new DeniedException("该维修部门,没有工程师,请确认!");
|
|
|
- }
|
|
|
// 报修人
|
|
|
form.setActualUser(SecurityUtils.getUserInfo().getUsername());
|
|
|
form.setUserId(SecurityUtils.getUserInfo().getUserId());
|
|
|
// 区域负责人
|
|
|
form.setReportLeaderId(getReportLeaderId(model.getSbId()));
|
|
|
- form.setStatus(RepairApplicationFormStatusEnum.NOT_ALLOCATED.getValue());
|
|
|
+ form.setStatus(RepairApplicationFormStatusEnum.REPAIR_VERIFYING.getValue()); // 维修待审
|
|
|
+ //form.setStatus(RepairApplicationFormStatusEnum.NOT_ALLOCATED.getValue());
|
|
|
repairApplicationFormMapper.insert(form);
|
|
|
// 记录维修状态跟踪
|
|
|
addRepairStatusRecord(form,"报修");
|
|
|
- // 给相关的工程师推送信息
|
|
|
+ // 给生产的审核人员发送审核消息
|
|
|
+ List<SysUserVO> sysUserVOList = getRepairMangers(null,null,SysRoleCodeEnum.REPAIR_VERIFY_USER.name());
|
|
|
+ if(sysUserVOList == null || sysUserVOList.size() ==0){
|
|
|
+ throw new DeniedException("报修没有审核人,请确认!");
|
|
|
+ }
|
|
|
+ sendMessageToRepairManger(form,sysUserVOList,CommonConstants.CALL_REPAIR_NOTICE);
|
|
|
// 给生产工程师和区域负责人发信息
|
|
|
+ /*List<SysUserVO> sysUserVOList = getRepairMangers(repairDeptId,null,SysRoleCodeEnum.REPAIR_MANAGE.name());
|
|
|
+ if(sysUserVOList == null || sysUserVOList.size() ==0){
|
|
|
+ throw new DeniedException("该维修部门,没有工程师,请确认!");
|
|
|
+ }
|
|
|
List<SysUserVO> mmScb = ListUtils.newArrayList();
|
|
|
sysUserVOList.forEach(item->{
|
|
|
mmScb.add(item);
|
|
@@ -128,7 +134,7 @@ public class LongYanRepairStrategy extends AbstractRepairBaseStrategy {
|
|
|
if(StringUtils.isNotBlank(everyWhereUsers)){
|
|
|
sendMessageToRepairManger(form,getUserVOs(everyWhereUsers.trim()),CommonConstants.CALL_REPAIR_NOTICE);
|
|
|
}
|
|
|
- }
|
|
|
+ }*/
|
|
|
// 生产票证数据
|
|
|
generateTicketData(form);
|
|
|
return form;
|
|
@@ -807,6 +813,55 @@ public class LongYanRepairStrategy extends AbstractRepairBaseStrategy {
|
|
|
sendMessageToProducer(model,CommonConstants.SB_NON_PLAN_TO_PLAN,users);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public void handleCallRepair(RepairApplicationFormDTO model) {
|
|
|
+ RepairApplicationForm queryForm = repairApplicationFormMapper.selectById(model.getId());
|
|
|
+ if(queryForm == null){
|
|
|
+ throw new DeniedException("审核的报修单不存在");
|
|
|
+ }
|
|
|
+ RepairApplicationForm updForm = new RepairApplicationForm();
|
|
|
+ updForm.setId(model.getId());
|
|
|
+ if(model.getStatus() == RepairApplicationFormStatusEnum.NOT_ALLOCATED.getValue()){
|
|
|
+ // 通过报修
|
|
|
+ updForm.setStatus(RepairApplicationFormStatusEnum.NOT_ALLOCATED.getValue());
|
|
|
+ }else if(model.getStatus() == RepairApplicationFormStatusEnum.CALLER_REPAIR_CANCEL.getValue()){
|
|
|
+ updForm.setStatus(RepairApplicationFormStatusEnum.CALLER_REPAIR_CANCEL.getValue());
|
|
|
+ }else {
|
|
|
+ throw new DeniedException("提交状态值非法");
|
|
|
+ }
|
|
|
+ updForm.setVerifyRepairRemark(model.getVerifyRepairRemark());
|
|
|
+ // 给生产工程师和区域负责人发信息
|
|
|
+ List<SysUserVO> sysUserVOList = getRepairMangers(queryForm.getRepairDeptId(),null,SysRoleCodeEnum.REPAIR_MANAGE.name());
|
|
|
+ if(sysUserVOList == null || sysUserVOList.size() ==0){
|
|
|
+ throw new DeniedException("该维修部门,没有工程师,请确认!");
|
|
|
+ }
|
|
|
+ List<SysUserVO> mmScb = ListUtils.newArrayList();
|
|
|
+ sysUserVOList.forEach(item->{
|
|
|
+ mmScb.add(item);
|
|
|
+ });
|
|
|
+ sysUserVOList = getRepairMangers(null,null,SysRoleCodeEnum.MM.name());
|
|
|
+ if(sysUserVOList != null && sysUserVOList.size() > 0){
|
|
|
+ sysUserVOList.forEach(item->{
|
|
|
+ mmScb.add(item);
|
|
|
+ });
|
|
|
+ }
|
|
|
+ sysUserVOList = getRepairMangers(null,null,SysRoleCodeEnum.SCB.name());
|
|
|
+ if(sysUserVOList != null && sysUserVOList.size() > 0){
|
|
|
+ sysUserVOList.forEach(item->{
|
|
|
+ mmScb.add(item);
|
|
|
+ });
|
|
|
+ }
|
|
|
+ repairApplicationFormMapper.updateByPrimaryKeySelective(updForm);
|
|
|
+ sendMessageToRepairManger(queryForm,mmScb,CommonConstants.CALL_REPAIR_NOTICE);
|
|
|
+ // 给值班人员发送消息
|
|
|
+ if(isSendMessage()){
|
|
|
+ String everyWhereUsers = ConfigCache.getLabelByValueAllowNull(SysConfigEnum.REPAIR_TWENTY_FOUR_USER.name());
|
|
|
+ if(StringUtils.isNotBlank(everyWhereUsers)){
|
|
|
+ sendMessageToRepairManger(queryForm,getUserVOs(everyWhereUsers.trim()),CommonConstants.CALL_REPAIR_NOTICE);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public void recoverRepair(RepairApplicationFormDTO model) {
|
|
|
// 判断是否具有权限
|
|
@@ -1319,6 +1374,10 @@ public class LongYanRepairStrategy extends AbstractRepairBaseStrategy {
|
|
|
values = new String[]{"维修主管派单消息!",form.getNo(),sbInfo.getName(),form.getContent(),form.getSbCph(),"请知悉"};
|
|
|
detailType = WorkplaceBacklogDetailTypeEnum.REPAIR_REPORT_LEADER_TRANSFER.getValue();
|
|
|
break;
|
|
|
+ case CommonConstants.REPAIR_VERIFY_USER:
|
|
|
+ values = new String[]{"报修待审消息!",form.getNo(),sbInfo.getName(),form.getContent(),form.getSbCph(),"请知悉"};
|
|
|
+ detailType = WorkplaceBacklogDetailTypeEnum.REPAIR_APPLICATION.getValue();
|
|
|
+ break;
|
|
|
}
|
|
|
Map<String,List<String>> maps = getPushReceivers(userVOs);
|
|
|
// 1、站内信
|