Browse Source

涉访涉诉--办理临时保存功能

master
buaixuexideshitongxue 2 weeks ago
parent
commit
612057c4ec
  1. 7
      src/main/java/com/biutag/supervision/controller/data/ComplaintCollectionController.java
  2. 3
      src/main/java/com/biutag/supervision/pojo/param/ComplaintCollection/ComplaintCollectionUpdateParam.java
  3. 71
      src/main/java/com/biutag/supervision/pojo/request/complaintCollection/ComplaintCollectionSaveInvolveJsonRequest.java
  4. 3
      src/main/java/com/biutag/supervision/pojo/transfer/ComplaintCollectionTransfer.java
  5. 138
      src/main/java/com/biutag/supervision/pojo/vo/complaintCollection/ComplaintCollectionHandlerDataVo.java
  6. 3
      src/main/java/com/biutag/supervision/repository/complaintCollection/ComplaintCollectionResourceService.java
  7. 7
      src/main/java/com/biutag/supervision/service/complaintCollection/ComplaintCollectionService.java
  8. 40
      src/main/java/com/biutag/supervision/service/complaintCollection/ComplaintCollectionServiceImpl.java

7
src/main/java/com/biutag/supervision/controller/data/ComplaintCollectionController.java

@ -100,4 +100,11 @@ public class ComplaintCollectionController {
public void exportData(@RequestBody ComplaintCollectionPageRequest request, HttpServletResponse response){ public void exportData(@RequestBody ComplaintCollectionPageRequest request, HttpServletResponse response){
complaintCollectionService.exportData(request, response); complaintCollectionService.exportData(request, response);
} }
@Operation(description = "办理页面临时保存")
@PostMapping("/saveInvolveJson")
public Result<Boolean> saveInvolveJson(@RequestBody ComplaintCollectionSaveInvolveJsonRequest request){
return complaintCollectionService.saveInvolveJson(request);
}
} }

3
src/main/java/com/biutag/supervision/pojo/param/ComplaintCollection/ComplaintCollectionUpdateParam.java

@ -139,4 +139,7 @@ public class ComplaintCollectionUpdateParam {
@Schema(description = "业务类型name") @Schema(description = "业务类型name")
private String businessTypeName; private String businessTypeName;
@Schema(description = "临时保存信息")
private String involveJson;
} }

71
src/main/java/com/biutag/supervision/pojo/request/complaintCollection/ComplaintCollectionSaveInvolveJsonRequest.java

@ -0,0 +1,71 @@
package com.biutag.supervision.pojo.request.complaintCollection;
import cn.hutool.core.util.StrUtil;
import com.biutag.supervision.aop.ParamChecked;
import com.biutag.supervision.pojo.vo.FileVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
import java.util.ArrayList;
import java.util.List;
/**
* @ClassName ComplaintCollectionSaveInvolveJsonaRequest
* @Description 涉访涉诉办理保存请求
* @Author shihao
* @Date 2026/1/21 18:23
*/
@Setter
@Getter
@Schema(description = "涉访涉诉办理保存请求")
public class ComplaintCollectionSaveInvolveJsonRequest implements ParamChecked {
@Schema(description = "涉访涉诉编号id")
private String complaintId;
@Schema(description = "核查结论编码")
private String checkStatusCode;
@Schema(description = "核查结论名称")
private String checkStatusName;
@Schema(description = "问题核查情况描述")
private String checkStatusDesc;
@Schema(description = "涉及对象(PERSONAL / DEPARTMENT / PERSONAL_AND_DEPARTMENT)")
private String accountabilityTarget;
@Schema(description = "涉及单位ID")
private String involveDepartId;
@Schema(description = "涉及单位名称")
private String involveDepartName;
@Schema(description = "办结情况")
private String completionStatus;
@Schema(description = "群众认可情况")
private String publicRecognition;
@Schema(description = "涉及案件/警情编号")
private String caseNumber;
@Schema(description = "保存状态信息")
private String involveJson;
@Schema(description = "核查办理附件列表")
private List<FileVo> files = new ArrayList<>();
@Override
public void check() {
if (StrUtil.isBlank(complaintId)) {
throw new IllegalArgumentException("涉访涉诉id不能为空");
}
}
}

3
src/main/java/com/biutag/supervision/pojo/transfer/ComplaintCollectionTransfer.java

@ -9,6 +9,7 @@ import com.biutag.supervision.pojo.param.ComplaintCollection.ComplaintCollection
import com.biutag.supervision.pojo.param.ComplaintCollection.ComplaintCollectionUpdateParam; import com.biutag.supervision.pojo.param.ComplaintCollection.ComplaintCollectionUpdateParam;
import com.biutag.supervision.pojo.request.complaintCollection.ComplaintCollectionAddRequest; import com.biutag.supervision.pojo.request.complaintCollection.ComplaintCollectionAddRequest;
import com.biutag.supervision.pojo.request.complaintCollection.ComplaintCollectionPageRequest; import com.biutag.supervision.pojo.request.complaintCollection.ComplaintCollectionPageRequest;
import com.biutag.supervision.pojo.request.complaintCollection.ComplaintCollectionSaveInvolveJsonRequest;
import com.biutag.supervision.pojo.request.complaintCollection.ComplaintCollectionUpdateRequest; import com.biutag.supervision.pojo.request.complaintCollection.ComplaintCollectionUpdateRequest;
import com.biutag.supervision.pojo.vo.complaintCollection.ComplaintCollectionPageVo; import com.biutag.supervision.pojo.vo.complaintCollection.ComplaintCollectionPageVo;
import com.biutag.supervision.pojo.vo.complaintCollection.ComplaintCollectionWatchDetailVO; import com.biutag.supervision.pojo.vo.complaintCollection.ComplaintCollectionWatchDetailVO;
@ -53,4 +54,6 @@ public interface ComplaintCollectionTransfer {
List<ComplaintCollectionWatchDetailVO.BlameInfoVO> complaintCollectionBlamesToBlameInfoVO(List<ComplaintCollectionBlame> pseronalList); List<ComplaintCollectionWatchDetailVO.BlameInfoVO> complaintCollectionBlamesToBlameInfoVO(List<ComplaintCollectionBlame> pseronalList);
List<ComplaintCollectionWatchDetailVO.BlameInfoVO> blameToBlameInfoVO(List<Blame> pseronalList); List<ComplaintCollectionWatchDetailVO.BlameInfoVO> blameToBlameInfoVO(List<Blame> pseronalList);
ComplaintCollectionUpdateParam JsonRequestToUpdateParam(ComplaintCollectionSaveInvolveJsonRequest request);
} }

138
src/main/java/com/biutag/supervision/pojo/vo/complaintCollection/ComplaintCollectionHandlerDataVo.java

@ -15,113 +15,55 @@ import java.util.List;
@Schema(description = "办理VO") @Schema(description = "办理VO")
public class ComplaintCollectionHandlerDataVo { public class ComplaintCollectionHandlerDataVo {
/** ================= 核查结果 ================= */ @Schema(description = "核查结论code")
private String checkStatusCode; private String checkStatusCode;
@Schema(description = "核查结论名称")
private String checkStatusName; private String checkStatusName;
@Schema(description = "问题核查情况(描述)")
private String checkStatusDesc; private String checkStatusDesc;
// /** ================= 追责对象 ================= */ @Schema(description = "暂存的涉及信息JSON(如 blames、blameLeaders、files 等)")
// private String involveJson;
// private String accountabilityTarget;
//
// /** ================= 涉及人员 ================= */ /**
// * @see com.biutag.supervision.constants.enums.AccountabilityTargetEnum
// private List<BlamePersonVo> blames; */
// @Schema(description = "涉及对象/追责对象")
// /** ================= 涉及领导 ================= */ private String accountabilityTarget;
//
// private List<BlameLeaderVo> blameLeaders; @Schema(description = "涉及单位ID")
// private String involveDepartId;
// /** ================= 经办人 ================= */
//
// private List<HandlePoliceVo> handlePolices;
//
/** ================= 附件 ================= */
@Schema(description = "涉及单位名称")
private String involveDepartName;
/**
* @see com.biutag.supervision.pojo.enums.complaintCollection.ComplaintCollectionClosingStatusEnum
*/
@Schema(description = "办结情况(1=程序办结;2=已解决合理诉求)")
private String completionStatus;
/**
* @see com.biutag.supervision.pojo.enums.complaintCollection.ComplaintCollectionPublicApprovalEnum
*/
@Schema(description = "群众认可(1=认可;2=不认可;3=不接电话)")
private String publicRecognition;
@Schema(description = "涉及案件/警情编号")
private String caseNumber;
@Schema(description = "核查办理附件列表")
private List<FileVo> files; private List<FileVo> files;
//
// /* ======================== 内部类 ======================== */
//
// @Data
// public static class BlamePersonVo {
//
// /** PERSONAL / DEPARTMENT */
// private String type;
//
// private String blameEmpNo;
// private String blameName;
// private String blameIdCode;
//
// /** 人员属性 */
// private String ivPersonTypeCode;
// private String ivPersonTypeName;
//
// /** 涉嫌问题 */
// private List<ProblemVo> problems;
//
// /** 责任归属 */
// private String responsibilityTypeCode;
// private String responsibilityTypeName;
//
// /** 主观方面 */
// private String subjectiveAspectCode;
// private String subjectiveAspectName;
//
// /** 处理结果 */
// private List<String> handleResultCode;
// private String handleResultName;
//
// /** 禁闭关联 */
// private Long confinementId;
// }
//
// @Data
// public static class BlameLeaderVo {
//
// private String leadEmpNo;
// private String leadName;
// private String leadIdCode;
//
// private String leadResponsibilityTypeCode;
// private String leadResponsibilityTypeName;
//
// private List<String> leadHandleResultCode;
// private String leadHandleResultName;
//
// /** 关联的涉及人员身份证号 */
// private List<String> blameIdCodes;
//
// private Long leadConfinementId;
// }
//
// @Data
// public static class HandlePoliceVo {
//
// private String empNo;
// private String name;
// private String mobile;
// }
//
// @Data
// public static class ProblemVo {
//
// private String oneLevelCode;
// private String oneLevelContent;
//
// private String twoLevelCode;
// private String twoLevelContent;
//
// private String threeLevelCode;
// private String threeLevelContent;
//
// private String threeLevelContentOther;
// }
//
@Data @Data
@Schema(description = "附件信息")
public static class FileVo { public static class FileVo {
@Schema(description = "附件名称")
private String fileName; private String fileName;
@Schema(description = "附件存储路径/下载路径")
private String filePath; private String filePath;
} }
} }

3
src/main/java/com/biutag/supervision/repository/complaintCollection/ComplaintCollectionResourceService.java

@ -209,6 +209,9 @@ public class ComplaintCollectionResourceService extends BaseDAO {
if (param.getBusinessTypeName()!=null){ if (param.getBusinessTypeName()!=null){
uw.set(ComplaintCollection::getBusinessTypeName, param.getBusinessTypeName()); uw.set(ComplaintCollection::getBusinessTypeName, param.getBusinessTypeName());
} }
if (param.getInvolveJson()!=null){
uw.set(ComplaintCollection::getGwf1, param.getInvolveJson());
}
uw.set(ComplaintCollection::getTag, param.getTags() != null ? StringUtils.join(param.getTags(), ",") : null); uw.set(ComplaintCollection::getTag, param.getTags() != null ? StringUtils.join(param.getTags(), ",") : null);
uw.set(ComplaintCollection::getUpdateBy, UserContextHolder.getCurrentUser().getUserName()); uw.set(ComplaintCollection::getUpdateBy, UserContextHolder.getCurrentUser().getUserName());
uw.set(ComplaintCollection::getUpdateTime, LocalDateTime.now()); uw.set(ComplaintCollection::getUpdateTime, LocalDateTime.now());

7
src/main/java/com/biutag/supervision/service/complaintCollection/ComplaintCollectionService.java

@ -82,4 +82,11 @@ public interface ComplaintCollectionService {
* @return * @return
*/ */
void exportData(ComplaintCollectionPageRequest request, HttpServletResponse response); void exportData(ComplaintCollectionPageRequest request, HttpServletResponse response);
/**
* 办理页面保存
* @param request
* @return
*/
Result<Boolean> saveInvolveJson(ComplaintCollectionSaveInvolveJsonRequest request);
} }

40
src/main/java/com/biutag/supervision/service/complaintCollection/ComplaintCollectionServiceImpl.java

@ -245,7 +245,7 @@ public class ComplaintCollectionServiceImpl implements ComplaintCollectionServic
collectionUpdateParam.setId(request.getComplaintId()); collectionUpdateParam.setId(request.getComplaintId());
collectionUpdateParam.setCaseNumber(request.getCaseNumber()); collectionUpdateParam.setCaseNumber(request.getCaseNumber());
// 核查情况code // 核查情况code
collectionUpdateParam.setCheckStatus(checkStatus); collectionUpdateParam.setCheckStatus(request.getCheckStatusCode());
// 核查情况名称 // 核查情况名称
collectionUpdateParam.setCheckStatusName(request.getCheckStatusName()); collectionUpdateParam.setCheckStatusName(request.getCheckStatusName());
// 核查情况内容 // 核查情况内容
@ -484,9 +484,16 @@ public class ComplaintCollectionServiceImpl implements ComplaintCollectionServic
}).toList(); }).toList();
complaintCollectionHandlerDataVo.setFiles(files); complaintCollectionHandlerDataVo.setFiles(files);
} }
complaintCollectionHandlerDataVo.setInvolveJson(complaintCollection.getGwf1());
complaintCollectionHandlerDataVo.setCheckStatusCode(complaintCollection.getCheckStatus()); complaintCollectionHandlerDataVo.setCheckStatusCode(complaintCollection.getCheckStatus());
complaintCollectionHandlerDataVo.setCheckStatusName(complaintCollection.getCheckStatusName()); complaintCollectionHandlerDataVo.setCheckStatusName(complaintCollection.getCheckStatusName());
complaintCollectionHandlerDataVo.setCheckStatusDesc(complaintCollection.getCheckStatusDesc()); complaintCollectionHandlerDataVo.setCheckStatusDesc(complaintCollection.getCheckStatusDesc());
complaintCollectionHandlerDataVo.setAccountabilityTarget(complaintCollection.getAccountabilityTarget());
String involveDepartId = complaintCollection.getThirdDepartId() == null ? complaintCollection.getSecondDepartId() : complaintCollection.getThirdDepartId();
complaintCollectionHandlerDataVo.setInvolveDepartId(involveDepartId);
complaintCollectionHandlerDataVo.setCompletionStatus(complaintCollection.getCompletionStatus());
complaintCollectionHandlerDataVo.setPublicRecognition(complaintCollection.getPublicRecognition());
complaintCollectionHandlerDataVo.setCaseNumber(complaintCollection.getCaseNumber());
return Result.success(complaintCollectionHandlerDataVo); return Result.success(complaintCollectionHandlerDataVo);
} }
@ -541,6 +548,37 @@ public class ComplaintCollectionServiceImpl implements ComplaintCollectionServic
} }
} }
@Override
public Result<Boolean> saveInvolveJson(ComplaintCollectionSaveInvolveJsonRequest request) {
ComplaintCollectionUpdateParam updateParam = ComplaintCollectionTransfer.INSTANCE.JsonRequestToUpdateParam(request);
updateParam.setId(request.getComplaintId());
// 涉及单位
String involveDepartId = request.getInvolveDepartId();
SupDepartQueryParam supDepartQueryParam = new SupDepartQueryParam();
supDepartQueryParam.setId(involveDepartId);
List<SupDepart> list = supDepartResourceService.query(supDepartQueryParam);
if (CollectionUtil.isEmpty(list)) {
throw new RuntimeException("未找到对应的涉及单位");
}
SupDepart supDepart = list.get(0);
if (2 == supDepart.getLevel()) {
updateParam.setSecondDepartId(supDepart.getId());
updateParam.setSecondDepartName(supDepart.getShortName());
}
if (3 == supDepart.getLevel()) {
SupDepartQueryParam thirdQP = new SupDepartQueryParam();
thirdQP.setId(supDepart.getPid());
SupDepart secondDepart = supDepartResourceService.query(thirdQP).get(0);
updateParam.setThirdDepartId(supDepart.getId());
updateParam.setThirdDepartName(supDepart.getShortName());
updateParam.setSecondDepartId(secondDepart.getId());
updateParam.setSecondDepartName(secondDepart.getShortName());
}
updateParam.setCheckStatus(request.getCheckStatusCode());
complaintCollectionResourceService.updateSelectiveById(updateParam);
return Result.success(Boolean.TRUE);
}
private List<ComplaintCollectionPersonExcelDTO> buildComplaintCollectionPersonExcelDTO(List<ComplaintCollectionBlame> blameList, List<NegativeBlame> negativeBlames, List<ComplaintCollectionPageDTO> dataList) { private List<ComplaintCollectionPersonExcelDTO> buildComplaintCollectionPersonExcelDTO(List<ComplaintCollectionBlame> blameList, List<NegativeBlame> negativeBlames, List<ComplaintCollectionPageDTO> dataList) {
List<ComplaintCollectionPersonExcelDTO> res = new ArrayList<>(); List<ComplaintCollectionPersonExcelDTO> res = new ArrayList<>();
Map<String, List<ComplaintCollectionBlame>> complaintCollectionBlameMap = blameList.stream() Map<String, List<ComplaintCollectionBlame>> complaintCollectionBlameMap = blameList.stream()

Loading…
Cancel
Save