Commit 5ff596b7 authored by kongfm's avatar kongfm

困人救援/ 故障维修/ 投诉建议 反馈信息查询以及添加修改 接口

parent 537f89d5
package com.yeejoin.amos.boot.module.tzs.api.dto;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 投诉回访DTO
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="DispatchConsultFeedbackDto", description="投诉回访DTO")
public class DispatchConsultFeedbackDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "警情id")
private Long alertId;
@ApiModelProperty(value = "投诉人")
private String emergency;
@ApiModelProperty(value = "投诉人电话")
private String emergencyCall;
@ApiModelProperty(value = "投诉反馈方式")
private String consultFeedbackType;
@ApiModelProperty(value = "投诉反馈结果")
private String feedbackResult;
@ApiModelProperty(value = "投诉回访时间")
private Date consultFeedbackTime;
@ApiModelProperty(value = "投诉回访人")
private String consultFeedbackUname;
@ApiModelProperty(value = "投诉回访人Id")
private String consultFeedbackUid;
@ApiModelProperty(value = "响应人")
private String responseUserName;
@ApiModelProperty(value = "响应人电话")
private String responseUserTel;
@ApiModelProperty(value = "维修反馈方式Code")
private String feedbackCode;
@ApiModelProperty(value = "维修反馈方式")
private String feedbackType;
@ApiModelProperty(value = "处置结果")
private String actionResult;
@ApiModelProperty(value = "回访时间")
private Date feedbackTime;
@ApiModelProperty(value = "维保反馈人id")
private String feedbackUid;
@ApiModelProperty(value = "维保反馈人")
private String feedbackUname;
@ApiModelProperty(value = "电梯故障原因分类")
private String errorResult;
@ApiModelProperty(value = "备注")
private String Remark;
@ApiModelProperty(value = "维保反馈结果")
private String mainFeedbackResult;
@ApiModelProperty(value = "维保完成时间")
private Date feedbackFinishTime;
public DispatchConsultFeedbackDto() {
}
}
package com.yeejoin.amos.boot.module.tzs.api.dto;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 派遣单更新DTO
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="DispatchPaperUpdateDto", description="派遣单更新DTO")
public class DispatchPaperUpdateDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "派遣单Id")
private Long pageId;
@ApiModelProperty(value = "派遣任务单Id")
private Long taskId;
@ApiModelProperty(value = "派遣单位Id")
private Long orgId;
@ApiModelProperty(value = "派遣单位类型code")
private String orgTypeCode;
@ApiModelProperty(value = "派遣单位社会信用代码")
private String orgCreditCode;
@ApiModelProperty(value = "派遣时间")
private Date dispatchTime;
public DispatchPaperUpdateDto() {
}
}
package com.yeejoin.amos.boot.module.tzs.api.dto;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 维修回访DTO
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="DispatchRepairFeedbackDto", description="维修回访DTO")
public class DispatchRepairFeedbackDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "警情id")
private Long alertId;
@ApiModelProperty(value = "报修人")
private String emergency;
@ApiModelProperty(value = "报修人电话")
private String emergencyCall;
@ApiModelProperty(value = "报修反馈方式")
private String fixFeedbackType;
@ApiModelProperty(value = "报修反馈结果")
private String feedbackResult;
@ApiModelProperty(value = "报修回访时间")
private Date fixFeedbackTime;
@ApiModelProperty(value = "报修回访人")
private String fixFeedbackUname;
@ApiModelProperty(value = "报修回访人Id")
private String fixFeedbackUid;
@ApiModelProperty(value = "报修备注")
private String fixRemark;
@ApiModelProperty(value = "响应人")
private String responseUserName;
@ApiModelProperty(value = "响应人电话")
private String responseUserTel;
@ApiModelProperty(value = "维修反馈方式Code")
private String feedbackCode;
@ApiModelProperty(value = "维修反馈方式")
private String feedbackType;
@ApiModelProperty(value = "维修结果")
private String fixResult;
@ApiModelProperty(value = "维修完成时间")
private Date feedbackFinishTime;
@ApiModelProperty(value = "维修反馈人id")
private String feedbackUid;
@ApiModelProperty(value = "维修反馈人")
private String feedbackUname;
@ApiModelProperty(value = "电梯故障原因分类")
private String errorResult;
@ApiModelProperty(value = "备注")
private String Remark;
@ApiModelProperty(value = "回访时间")
private Date feedbackTime;
public DispatchRepairFeedbackDto() {
}
}
package com.yeejoin.amos.boot.module.tzs.api.dto;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 救援回访DTO
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="DispatchSaveFeedbackDto", description="救援回访DTO")
public class DispatchSaveFeedbackDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "警情id")
private Long alertId;
@ApiModelProperty(value = "求援人")
private String emergency;
@ApiModelProperty(value = "求援电话")
private String emergencyCall;
@ApiModelProperty(value = "救援回访时间")
private Date saveFeedbackTime;
@ApiModelProperty(value = "救援回访人")
private String saveFeedbackUser;
@ApiModelProperty(value = "救援回访人Id")
private String saveFeedbackUid;
@ApiModelProperty(value = "救援回访结果")
private String saveFeedbackResult;
@ApiModelProperty(value = "响应人")
private String responseUserName;
@ApiModelProperty(value = "响应人电话")
private String responseUserTel;
@ApiModelProperty(value = "维修反馈方式Code")
private String feedbackCode;
@ApiModelProperty(value = "维修反馈方式")
private String feedbackType;
@ApiModelProperty(value = "维修结果")
private String fixResult;
@ApiModelProperty(value = "维修完成时间")
private Date feedbackFinishTime;
@ApiModelProperty(value = "维修反馈人id")
private String feedbackUid;
@ApiModelProperty(value = "维修反馈人")
private String feedbackUname;
@ApiModelProperty(value = "电梯故障原因分类")
private String errorResult;
@ApiModelProperty(value = "备注")
private String Remark;
@ApiModelProperty(value = "回访时间")
private Date feedbackTime;
public DispatchSaveFeedbackDto() {
}
}
package com.yeejoin.amos.boot.module.tzs.api.service; package com.yeejoin.amos.boot.module.tzs.api.service;
import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchConsultFeedbackDto;
import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperFormDto;
import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchRepairFeedbackDto;
import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchSaveFeedbackDto;
import com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper; import com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
...@@ -14,7 +18,7 @@ public interface IDispatchPaperService { ...@@ -14,7 +18,7 @@ public interface IDispatchPaperService {
DispatchPaper selectDispatchPaperByAlertId(Long alertId); DispatchPaper selectDispatchPaperByAlertId(Long alertId);
Object selectDispatchPaperDtoByAlertId(Long alertId); DispatchPaperFormDto selectDispatchPaperDtoByAlertId(Long alertId);
/** /**
* 根据警情id 及 警情类别 派遣人 创建 派遣单 * 根据警情id 及 警情类别 派遣人 创建 派遣单
...@@ -23,5 +27,51 @@ public interface IDispatchPaperService { ...@@ -23,5 +27,51 @@ public interface IDispatchPaperService {
* @param sendUser * @param sendUser
* @return * @return
*/ */
DispatchPaper createDispatchPaper(Long alertId, String alertCode, AgencyUserModel sendUser); DispatchPaperFormDto createDispatchPaper(Long alertId, String alertCode, AgencyUserModel sendUser);
/**
* 根据警情id 返回 救援回访相关信息
* @param alertId
* @return
*/
DispatchSaveFeedbackDto getDispatchSaveFeedbackDtoByAlertId(Long alertId, AgencyUserModel feedbackUser);
/**
* 坐席填写救援回访相关信息
* @param dispatchSaveFeedbackDto
* @return
*/
Boolean saveDispatchSaveFeedback(DispatchSaveFeedbackDto dispatchSaveFeedbackDto);
/**
* 根据警情id 返回 维修回访相关信息
* @param alertId
* @return
*/
DispatchRepairFeedbackDto getDispatchRepairFeedbackDtoByAlertId(Long alertId, AgencyUserModel feedbackUser);
/**
* 坐席填写维修回访相关信息
* @param dispatchRepairFeedbackDto
* @return
*/
Boolean saveDispatchRepairFeedback(DispatchRepairFeedbackDto dispatchRepairFeedbackDto);
/**
* 根据警情id 返回 投诉回访相关信息
* @param alertId
* @return
*/
DispatchConsultFeedbackDto getDispatchConsultFeedbackDtoByAlertId(Long alertId, AgencyUserModel feedbackUser);
/**
* 坐席填写投诉回访相关信息
* @param dispatchConsultFeedbackDto
* @return
*/
Boolean saveDispatchConsultFeedback(DispatchConsultFeedbackDto dispatchConsultFeedbackDto);
} }
...@@ -4,8 +4,11 @@ import com.alibaba.fastjson.JSONObject; ...@@ -4,8 +4,11 @@ import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams; import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.controller.BaseController; import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils; import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchConsultFeedbackDto;
import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperDto; import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperDto;
import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperFormDto; import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperFormDto;
import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchRepairFeedbackDto;
import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchSaveFeedbackDto;
import com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper; import com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper;
import com.yeejoin.amos.boot.module.tzs.biz.service.impl.DispatchPaperServiceImpl; import com.yeejoin.amos.boot.module.tzs.biz.service.impl.DispatchPaperServiceImpl;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -42,28 +45,97 @@ public class DispatchPaperController extends BaseController { ...@@ -42,28 +45,97 @@ public class DispatchPaperController extends BaseController {
@Autowired @Autowired
RedisUtils redisUtils; RedisUtils redisUtils;
/** /**
* 新增派遣单 * 通过警情id 获取 救援回访相关信息
* * @param alertId
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save") @GetMapping(value = "/feedback/save/{alertId}")
@ApiOperation(httpMethod = "POST", value = "新增派遣单", notes = "新增派遣单") @ApiOperation(httpMethod = "GET", value = "通过警情id 获取 救援回访相关信息", notes = "通过警情id 获取 救援回访相关信息")
public ResponseModel<DispatchPaperFormDto> save(@RequestBody DispatchPaperFormDto dispatchPaperFormDto) { public ResponseModel<DispatchSaveFeedbackDto> getSaveFeedback(@PathVariable Long alertId) {
if (ValidationUtil.isEmpty(dispatchPaperFormDto) ReginParams reginParams =
|| ValidationUtil.isEmpty(dispatchPaperFormDto.getDispatchPaper())) JSONObject.parseObject(null != redisUtils.get(buildKey(getToken())) ?
redisUtils.get(buildKey(getToken())).toString() : null, ReginParams.class);
DispatchSaveFeedbackDto dispatchSaveFeedbackDto = dispatchPaperServiceImpl.getDispatchSaveFeedbackDtoByAlertId(alertId,reginParams.getUserModel());
return ResponseHelper.buildResponse(dispatchSaveFeedbackDto);
}
/**
* 保存救援回访信息
* @param dispatchSaveFeedbackDto
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/feedback/save")
@ApiOperation(httpMethod = "POST", value = "保存救援回访信息", notes = "保存救援回访信息")
public ResponseModel<Boolean> saveSaveFeedBack(@RequestBody DispatchSaveFeedbackDto dispatchSaveFeedbackDto) {
if (ValidationUtil.isEmpty(dispatchSaveFeedbackDto)
|| ValidationUtil.isEmpty(dispatchSaveFeedbackDto.getAlertId()))
throw new BadRequest("参数校验失败."); throw new BadRequest("参数校验失败.");
return ResponseHelper.buildResponse(dispatchPaperServiceImpl.saveDispatchSaveFeedback(dispatchSaveFeedbackDto));
}
/**
* 通过警情id 获取 维修回访相关信息
* @param alertId
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/feedback/repair/{alertId}")
@ApiOperation(httpMethod = "GET", value = "通过警情id 获取 维修回访相关信息", notes = "通过警情id 获取 维修回访相关信息")
public ResponseModel<DispatchRepairFeedbackDto> getRepairFeedBack(@PathVariable Long alertId) {
ReginParams reginParams = ReginParams reginParams =
JSONObject.parseObject(null != redisUtils.get(buildKey(getToken())) ? JSONObject.parseObject(null != redisUtils.get(buildKey(getToken())) ?
redisUtils.get(buildKey(getToken())).toString() : null, ReginParams.class); redisUtils.get(buildKey(getToken())).toString() : null, ReginParams.class);
//获取当前登录人公司 DispatchRepairFeedbackDto dispatchRepairFeedbackDto = dispatchPaperServiceImpl.getDispatchRepairFeedbackDtoByAlertId(alertId,reginParams.getUserModel());
String orgCode= reginParams.getCompany().getOrgCode(); return ResponseHelper.buildResponse(dispatchRepairFeedbackDto);
DispatchPaper dispatchPaper = dispatchPaperFormDto.getDispatchPaper(); }
dispatchPaper.setOrgCode(orgCode);
dispatchPaperFormDto.setDispatchPaper(dispatchPaper); /**
dispatchPaperFormDto = dispatchPaperServiceImpl.createDispatchPaper(dispatchPaperFormDto); * 保存维修回访信息
return ResponseHelper.buildResponse(dispatchPaperFormDto); * @param dispatchRepairFeedbackDto
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/feedback/repair")
@ApiOperation(httpMethod = "POST", value = "保存维修回访信息", notes = "保存维修回访信息")
public ResponseModel<Boolean> saveRepairFeedBack(@RequestBody DispatchRepairFeedbackDto dispatchRepairFeedbackDto) {
if (ValidationUtil.isEmpty(dispatchRepairFeedbackDto)
|| ValidationUtil.isEmpty(dispatchRepairFeedbackDto.getAlertId()))
throw new BadRequest("参数校验失败.");
return ResponseHelper.buildResponse(dispatchPaperServiceImpl.saveDispatchRepairFeedback(dispatchRepairFeedbackDto));
}
/**
* 通过警情id 获取 投诉回访相关信息
* @param alertId
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/feedback/consult/{alertId}")
@ApiOperation(httpMethod = "GET", value = "通过警情id 获取 投诉回访相关信息", notes = "通过警情id 获取 投诉回访相关信息")
public ResponseModel<DispatchConsultFeedbackDto> getConsultFeedBack(@PathVariable Long alertId) {
ReginParams reginParams =
JSONObject.parseObject(null != redisUtils.get(buildKey(getToken())) ?
redisUtils.get(buildKey(getToken())).toString() : null, ReginParams.class);
DispatchConsultFeedbackDto dispatchConsultFeedbackDto = dispatchPaperServiceImpl.getDispatchConsultFeedbackDtoByAlertId(alertId,reginParams.getUserModel());
return ResponseHelper.buildResponse(dispatchConsultFeedbackDto);
}
/**
* 保存投诉回访信息
* @param dispatchConsultFeedbackDto
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/feedback/consult")
@ApiOperation(httpMethod = "POST", value = "保存投诉回访信息", notes = "保存投诉回访信息")
public ResponseModel<Boolean> saveConsultFeedBack(@RequestBody DispatchConsultFeedbackDto dispatchConsultFeedbackDto) {
if (ValidationUtil.isEmpty(dispatchConsultFeedbackDto)
|| ValidationUtil.isEmpty(dispatchConsultFeedbackDto.getAlertId()))
throw new BadRequest("参数校验失败.");
return ResponseHelper.buildResponse(dispatchPaperServiceImpl.saveDispatchConsultFeedback(dispatchConsultFeedbackDto));
} }
/** /**
......
...@@ -3,7 +3,7 @@ package com.yeejoin.amos.boot.module.tzs.biz.service.impl; ...@@ -3,7 +3,7 @@ package com.yeejoin.amos.boot.module.tzs.biz.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.tzs.api.dto.AlertCalledDto; import com.yeejoin.amos.boot.module.tzs.api.dto.AlertCalledDto;
import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperUpdateDto; import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperFormDto;
import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchTaskDto; import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchTaskDto;
import com.yeejoin.amos.boot.module.tzs.api.entity.AlertFormValue; import com.yeejoin.amos.boot.module.tzs.api.entity.AlertFormValue;
import com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper; import com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper;
...@@ -13,7 +13,6 @@ import com.yeejoin.amos.boot.module.tzs.api.entity.MaintenanceUnit; ...@@ -13,7 +13,6 @@ import com.yeejoin.amos.boot.module.tzs.api.entity.MaintenanceUnit;
import com.yeejoin.amos.boot.module.tzs.api.entity.RescueStation; import com.yeejoin.amos.boot.module.tzs.api.entity.RescueStation;
import com.yeejoin.amos.boot.module.tzs.api.entity.Template; import com.yeejoin.amos.boot.module.tzs.api.entity.Template;
import com.yeejoin.amos.boot.module.tzs.api.entity.UseUnit; import com.yeejoin.amos.boot.module.tzs.api.entity.UseUnit;
import com.yeejoin.amos.boot.module.tzs.api.enums.DispatchPaperEnums;
import com.yeejoin.amos.boot.module.tzs.api.mapper.DispatchTaskMapper; import com.yeejoin.amos.boot.module.tzs.api.mapper.DispatchTaskMapper;
import com.yeejoin.amos.boot.module.tzs.api.service.IDispatchTaskService; import com.yeejoin.amos.boot.module.tzs.api.service.IDispatchTaskService;
import com.yeejoin.amos.boot.module.tzs.api.service.IMaintenanceUnitService; import com.yeejoin.amos.boot.module.tzs.api.service.IMaintenanceUnitService;
...@@ -24,6 +23,7 @@ import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; ...@@ -24,6 +23,7 @@ import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.rdbms.service.BaseService; import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.Date; import java.util.Date;
...@@ -83,38 +83,78 @@ public class DispatchTaskServiceImpl extends BaseService<DispatchTaskDto,Dispatc ...@@ -83,38 +83,78 @@ public class DispatchTaskServiceImpl extends BaseService<DispatchTaskDto,Dispatc
public Boolean createDispatchTask(DispatchTaskDto dispatchTaskDto, AgencyUserModel sendUser) { public Boolean createDispatchTask(DispatchTaskDto dispatchTaskDto, AgencyUserModel sendUser) {
boolean flag = false; boolean flag = false;
// 判断派遣单是否存在 如果不存在先创建派遣单 // 判断派遣单是否存在 如果不存在先创建派遣单
DispatchPaper dispatchPaper = dispatchPaperServiceImpl.selectDispatchPaperByAlertId(dispatchTaskDto.getAlertId()); DispatchPaperFormDto dispatchPaperDto = dispatchPaperServiceImpl.selectDispatchPaperDtoByAlertId(dispatchTaskDto.getAlertId());
if(dispatchPaper == null) { if(dispatchPaperDto == null || dispatchPaperDto.getDispatchPaper() == null) {
dispatchPaper = dispatchPaperServiceImpl.createDispatchPaper(dispatchTaskDto.getAlertId(), dispatchTaskDto.getAlertCode(), sendUser); dispatchPaperDto = dispatchPaperServiceImpl.createDispatchPaper(dispatchTaskDto.getAlertId(), dispatchTaskDto.getAlertCode(), sendUser);
} }
DispatchPaper dispatchPaper = dispatchPaperDto.getDispatchPaper();
List<AlertFormValue> dynamicFormAlert = dispatchPaperDto.getDynamicFormAlert();
// 创建派遣单 // 创建派遣单
dispatchTaskDto.setDispatchTime(new Date()); dispatchTaskDto.setDispatchTime(new Date());
DispatchTask dispatchTask = BeanDtoVoUtils.convert(dispatchTaskDto, DispatchTask.class); DispatchTask dispatchTask = BeanDtoVoUtils.convert(dispatchTaskDto, DispatchTask.class);
dispatchTask.setPaperId(dispatchPaper.getSequenceNbr()); dispatchTask.setPaperId(dispatchPaperDto.getSequenceNbr());
flag = this.save(dispatchTask); flag = this.save(dispatchTask);
if(flag) { // 创建好派遣任务单以后根据任务单类型修改派遣单信息 if(flag) { // 创建好派遣任务单以后根据任务单类型修改派遣单信息
DispatchPaperUpdateDto paperUpdateDto = new DispatchPaperUpdateDto();
paperUpdateDto.setPageId(dispatchPaper.getSequenceNbr());
paperUpdateDto.setTaskId(dispatchTask.getSequenceNbr());
paperUpdateDto.setOrgTypeCode(dispatchTask.getOrgTypeCode());
paperUpdateDto.setDispatchTime(dispatchTask.getDispatchTime());
paperUpdateDto.setOrgId(dispatchTask.getResponseOrgId());
// 社会信用代码 根据类型查找放入 // 社会信用代码 根据类型查找放入
MaintenanceUnit maintenanceUnit = null;
switch (dispatchTask.getOrgTypeCode()) { switch (dispatchTask.getOrgTypeCode()) {
case "useUnit": // 使用单位 case "useUnit": // 使用单位
UseUnit useUnit = iUseUnitService.getById(dispatchTask.getResponseOrgId()); UseUnit useUnit = iUseUnitService.getById(dispatchTask.getResponseOrgId());
paperUpdateDto.setOrgCreditCode(useUnit.getSocialCreditCode()); dispatchPaper.setUseOrgId(useUnit.getSequenceNbr());
dispatchPaper.setUseOrgTaskId(dispatchTask.getSequenceNbr());
break; break;
case "repairUnit": case "repairUnit":
maintenanceUnit = iMaintenanceUnitService.getById(dispatchTask.getResponseOrgId());
dispatchPaper.setRepairOrgId(maintenanceUnit.getSequenceNbr());
dispatchPaper.setRepairOrgTaskId(dispatchTask.getSequenceNbr());
break;
case "levelOneUnit": case "levelOneUnit":
MaintenanceUnit maintenanceUnit = iMaintenanceUnitService.getById(dispatchTask.getResponseOrgId()); if(dispatchPaper.getRepairOrgId() != null) { // 已经派遣过调派
paperUpdateDto.setOrgCreditCode(maintenanceUnit.getSocialCreditCode()); throw new BadRequest("已经派遣过其他力量调派");
} else {
maintenanceUnit = iMaintenanceUnitService.getById(dispatchTask.getResponseOrgId());
String socialCreditCode = maintenanceUnit.getSocialCreditCode();
dispatchPaper.setRepairOrgId(maintenanceUnit.getSequenceNbr());
dispatchPaper.setRepairOrgTaskId(dispatchTask.getSequenceNbr());
// 修改动态字段
dynamicFormAlert.stream().forEach(alertFormValue -> {
if(alertFormValue.getFieldCode().equals("dispatch_status")) {
alertFormValue.setFieldValue("已派遣");
alertFormValue.setFieldValueCode("hasDispatched");
} else if(alertFormValue.getFieldCode().equals("response_level")) {
alertFormValue.setFieldValue("一级响应");
alertFormValue.setFieldValueCode("levelOneUnit");
} else if(alertFormValue.getFieldCode().equals("save_credit_code")) {
alertFormValue.setFieldValue(socialCreditCode);
}
});
}
break; break;
case "levelTwoUnit": case "levelTwoUnit":
RescueStation rescueStation = iRescueStationService.getById(dispatchTask.getResponseOrgId()); if(dispatchPaper.getRepairOrgId() != null) { // 已经派遣过调派
throw new BadRequest("已经派遣过其他力量调派");
} else {
RescueStation rescueStation = iRescueStationService.getById(dispatchTask.getResponseOrgId());
dispatchPaper.setRepairOrgId(rescueStation.getSequenceNbr());
dispatchPaper.setRepairOrgTaskId(dispatchTask.getSequenceNbr());
// 修改动态字段
dynamicFormAlert.stream().forEach(alertFormValue -> {
if(alertFormValue.getFieldCode().equals("dispatch_status")) {
alertFormValue.setFieldValue("已派遣");
alertFormValue.setFieldValueCode("hasDispatched");
} else if(alertFormValue.getFieldCode().equals("response_level")) {
alertFormValue.setFieldValue("二级响应");
alertFormValue.setFieldValueCode("levelTwoUnit");
}
});
}
break; break;
} }
// 保存派遣单
dispatchPaperServiceImpl.save(dispatchPaper);
// 保存动态表单数据
iAlertFormValueService.saveBatch(dynamicFormAlert);
} }
return flag; return flag;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment