Bläddra i källkod

add shaoyin task

zero 7 månader sedan
förälder
incheckning
cba7355670
34 ändrade filer med 541 tillägg och 30 borttagningar
  1. 4 0
      src/main/java/cn/cslg/pas/common/dto/business/ReportAffairDTO.java
  2. 2 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddAdminProceedDTO.java
  3. 2 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddClaimHistoryDTO.java
  4. 2 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddInvalidDecisionFileDTO.java
  5. 2 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddInvalidRequestFileDTO.java
  6. 2 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddJudgmentDTO.java
  7. 2 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddOralTrailDTO.java
  8. 4 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddOtherDocumentsDTO.java
  9. 2 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddStateOpinionDTO.java
  10. 2 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddSupplyEvidenceDTO.java
  11. 31 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/ReportAffairCaseDTO.java
  12. 2 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateAdminProceedDTO.java
  13. 2 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateClaimHistoryDTO.java
  14. 2 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateInvalidDecisionFileDTO.java
  15. 2 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateInvalidRequestFileDTO.java
  16. 2 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateJudgmentDTO.java
  17. 2 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateOralTrailDTO.java
  18. 4 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateOtherDocumentsDTO.java
  19. 2 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateStateOpinionDTO.java
  20. 2 0
      src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateSupplyEvidenceDTO.java
  21. 13 0
      src/main/java/cn/cslg/pas/common/vo/QueryCasePhaseVO.java
  22. 23 1
      src/main/java/cn/cslg/pas/common/vo/invalidVO/ReportAffairVO.java
  23. 19 1
      src/main/java/cn/cslg/pas/controller/ReportAffairController.java
  24. 9 3
      src/main/java/cn/cslg/pas/domain/business/ReportAffairCasePhase.java
  25. 7 0
      src/main/java/cn/cslg/pas/mapper/ReportAffairMapper.java
  26. 4 0
      src/main/java/cn/cslg/pas/service/ReportAffairCasePhaseService.java
  27. 5 0
      src/main/java/cn/cslg/pas/service/business/AdminProceedService.java
  28. 3 0
      src/main/java/cn/cslg/pas/service/business/InvalidDecisionFileService.java
  29. 3 0
      src/main/java/cn/cslg/pas/service/business/InvalidRequestFileService.java
  30. 3 0
      src/main/java/cn/cslg/pas/service/business/OralTrailService.java
  31. 9 0
      src/main/java/cn/cslg/pas/service/business/OtherDocumentsService.java
  32. 133 25
      src/main/java/cn/cslg/pas/service/business/ReportAffairService.java
  33. 18 0
      src/main/resources/mapper/ReportAffairMapper.xml
  34. 217 0
      src/test/java/cn/cslg/pas/service/ReportAffairTests.java

+ 4 - 0
src/main/java/cn/cslg/pas/common/dto/business/ReportAffairDTO.java

@@ -33,4 +33,8 @@ public class ReportAffairDTO {
      * 备注
      */
     private String description;
+
+    private Integer assoCasePhaseId;
+
+    private String caseChildPhase;
 }

+ 2 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddAdminProceedDTO.java

@@ -27,6 +27,8 @@ public class AddAdminProceedDTO {
 
     private String description;
 
+    private Integer assoCasePhaseId;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 2 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddClaimHistoryDTO.java

@@ -25,6 +25,8 @@ public class AddClaimHistoryDTO {
 
     private String description;
 
+    private Integer assoCasePhaseId;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 2 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddInvalidDecisionFileDTO.java

@@ -45,6 +45,8 @@ public class AddInvalidDecisionFileDTO {
 
     private String description;
 
+    private Integer assoCasePhaseId;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 2 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddInvalidRequestFileDTO.java

@@ -28,6 +28,8 @@ public class AddInvalidRequestFileDTO {
 
     private String description;
 
+    private Integer assoCasePhaseId;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 2 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddJudgmentDTO.java

@@ -27,6 +27,8 @@ public class AddJudgmentDTO {
 
     private String conclusion;
 
+    private Integer assoCasePhaseId;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 2 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddOralTrailDTO.java

@@ -31,6 +31,8 @@ public class AddOralTrailDTO {
 
     private String description;
 
+    private Integer assoCasePhaseId;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 4 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddOtherDocumentsDTO.java

@@ -26,6 +26,10 @@ public class AddOtherDocumentsDTO {
 
     private String description;
 
+    private Integer assoCasePhaseId;
+
+    private String caseChildPhase;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 2 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddStateOpinionDTO.java

@@ -24,6 +24,8 @@ public class AddStateOpinionDTO {
 
     private String description;
 
+    private Integer assoCasePhaseId;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 2 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/AddSupplyEvidenceDTO.java

@@ -25,6 +25,8 @@ public class AddSupplyEvidenceDTO {
 
     private String description;
 
+    private Integer assoCasePhaseId;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 31 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/ReportAffairCaseDTO.java

@@ -0,0 +1,31 @@
+package cn.cslg.pas.common.dto.invalidDTO;
+
+import cn.cslg.pas.common.model.report.ExtraEmailDTO;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+import java.util.List;
+
+@Data
+public class ReportAffairCaseDTO {
+
+    private Integer id;
+
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+    private Date occurredTime;
+
+    private Integer projectId;
+
+    private List<String> fileGuids;
+
+    private String description;
+
+    private Integer assoCasePhaseId;
+
+    private Boolean ifSendEmail;
+
+    private List<ExtraEmailDTO> extraEmailDTOS;
+}

+ 2 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateAdminProceedDTO.java

@@ -27,6 +27,8 @@ public class UpdateAdminProceedDTO {
 
     private String description;
 
+    private Integer assoCasePhaseId;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 2 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateClaimHistoryDTO.java

@@ -26,6 +26,8 @@ public class UpdateClaimHistoryDTO {
 
     private String description;
 
+    private Integer assoCasePhaseId;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 2 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateInvalidDecisionFileDTO.java

@@ -43,6 +43,8 @@ public class UpdateInvalidDecisionFileDTO {
 
     private String description;
 
+    private Integer assoCasePhaseId;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 2 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateInvalidRequestFileDTO.java

@@ -30,6 +30,8 @@ public class UpdateInvalidRequestFileDTO {
 
     private String description;
 
+    private Integer assoCasePhaseId;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 2 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateJudgmentDTO.java

@@ -28,6 +28,8 @@ public class UpdateJudgmentDTO {
 
     private String conclusion;
 
+    private Integer assoCasePhaseId;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 2 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateOralTrailDTO.java

@@ -32,6 +32,8 @@ public class UpdateOralTrailDTO {
 
     private String description;
 
+    private Integer assoCasePhaseId;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 4 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateOtherDocumentsDTO.java

@@ -27,6 +27,10 @@ public class UpdateOtherDocumentsDTO {
 
     private String description;
 
+    private Integer assoCasePhaseId;
+
+    private String caseChildPhase;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 2 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateStateOpinionDTO.java

@@ -25,6 +25,8 @@ public class UpdateStateOpinionDTO {
 
     private String description;
 
+    private Integer assoCasePhaseId;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 2 - 0
src/main/java/cn/cslg/pas/common/dto/invalidDTO/UpdateSupplyEvidenceDTO.java

@@ -26,6 +26,8 @@ public class UpdateSupplyEvidenceDTO {
 
     private String description;
 
+    private Integer assoCasePhaseId;
+
     private Boolean ifSendEmail;
 
     private List<ExtraEmailDTO> extraEmailDTOS;

+ 13 - 0
src/main/java/cn/cslg/pas/common/vo/QueryCasePhaseVO.java

@@ -0,0 +1,13 @@
+package cn.cslg.pas.common.vo;
+
+import lombok.Data;
+
+@Data
+public class QueryCasePhaseVO {
+
+    private String casePhase;
+
+    private String caseChildPhase;
+
+    private Integer flowType;
+}

+ 23 - 1
src/main/java/cn/cslg/pas/common/vo/invalidVO/ReportAffairVO.java

@@ -1,6 +1,7 @@
 package cn.cslg.pas.common.vo.invalidVO;
 
 import cn.cslg.pas.common.model.cronModel.SystemFile;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
 import org.springframework.format.annotation.DateTimeFormat;
@@ -20,7 +21,7 @@ public class ReportAffairVO {
      * 事务类型(0为口审记录,1为无效请求书,2为陈述意见书,3为无效决定书,4为行政诉讼书,5为行政诉讼判决书
      * 6为权要修改记录,7为补充证据及理由,8为其他文档)
      */
-    private Integer affairType;
+//    private Integer affairType;
 
     private Integer projectId;
 
@@ -100,4 +101,25 @@ public class ReportAffairVO {
      * 其他文档返回VO
      */
     private OtherDocumentsVO otherDocumentsVO;
+
+    /**
+     * 事务和流程关联id
+     */
+    private Integer assoCasePhaseId;
+    /**
+     * 流程名称
+     */
+    private String flowName;
+    /**
+     * 案件阶段
+     */
+    private String casePhase;
+    /**
+     * 案件子阶段
+     */
+    private String caseChildPhase;
+    /**
+     * 流程类型
+     */
+    private Integer flowType;
 }

+ 19 - 1
src/main/java/cn/cslg/pas/controller/ReportAffairController.java

@@ -227,10 +227,28 @@ public class ReportAffairController {
 
     @Operation(summary = "查询案件关联文档集合")
     @PostMapping("/queryAssoCasePhaseList")
-    public Response queryAssoCasePhaseList() throws Exception {
+    public Response queryAssoCasePhaseList() {
         List<ReportAffairCasePhase> phases = reportAffairCasePhaseService.queryAssoCasePhaseList();
         Records records = new Records();
         records.setData(phases);
         return Response.success(records);
     }
+
+    @Operation(summary = "添加案件文档")
+    @PostMapping("/addReportAffairCase")
+    public Response addReportAffairCase(@RequestBody ReportAffairCaseDTO affairDTO) throws Exception {
+        Integer id = reportAffairService.addReportAffairCase(affairDTO);
+        Records records = new Records();
+        records.setData(id);
+        return Response.success(records);
+    }
+
+    @Operation(summary = "修改案件文档")
+    @PostMapping("/updateReportAffairCase")
+    public Response updateReportAffairCase(@RequestBody ReportAffairCaseDTO affairDTO) throws Exception {
+        Integer id = reportAffairService.updateReportAffairCase(affairDTO);
+        Records records = new Records();
+        records.setData(id);
+        return Response.success(records);
+    }
 }

+ 9 - 3
src/main/java/cn/cslg/pas/domain/business/ReportAffairCasePhase.java

@@ -15,10 +15,10 @@ import lombok.Data;
 public class ReportAffairCasePhase extends BaseEntity<ReportAffairCasePhase> {
 
     /**
-     * 功能名称
+     * 流程名称
      */
-    @TableField(value = "function_name")
-    private String functionName;
+    @TableField(value = "flow_name")
+    private String flowName;
     /**
      * 案件阶段
      */
@@ -29,4 +29,10 @@ public class ReportAffairCasePhase extends BaseEntity<ReportAffairCasePhase> {
      */
     @TableField(value = "case_child_phase")
     private String caseChildPhase;
+    /**
+     * 流程类型
+     */
+    @TableField(value = "flow_type")
+    private Integer flowType;
+
 }

+ 7 - 0
src/main/java/cn/cslg/pas/mapper/ReportAffairMapper.java

@@ -1,14 +1,21 @@
 package cn.cslg.pas.mapper;
 
+import cn.cslg.pas.common.vo.QueryCasePhaseVO;
 import cn.cslg.pas.domain.business.ReportAffair;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 
+import java.util.List;
+
 /**
  * 报告事务Mapper层
+ *
  * @Author xiexiang
  * @Date 2023/12/23
  */
 @Repository
 public interface ReportAffairMapper extends BaseMapper<ReportAffair> {
+
+    public List<QueryCasePhaseVO> queryCasePhase(@Param("projectIds") List<Integer> projectIds);
 }

+ 4 - 0
src/main/java/cn/cslg/pas/service/ReportAffairCasePhaseService.java

@@ -17,6 +17,10 @@ public class ReportAffairCasePhaseService extends ServiceImpl<ReportAffairCasePh
     @Autowired
     private ReportAffairCasePhaseMapper reportAffairCasePhaseMapper;
 
+    /**
+     * 查询案件关联文档集合
+     * @return
+     */
     public List<ReportAffairCasePhase> queryAssoCasePhaseList() {
         return reportAffairCasePhaseMapper.selectList(new LambdaQueryWrapper<ReportAffairCasePhase>());
     }

+ 5 - 0
src/main/java/cn/cslg/pas/service/business/AdminProceedService.java

@@ -20,6 +20,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -73,6 +74,7 @@ public class AdminProceedService extends ServiceImpl<AdminProceedMapper, AdminPr
         reportAffairDTO.setOccurredTime(addDto.getProceedingTime());
         //备注
         reportAffairDTO.setDescription(addDto.getDescription());
+        reportAffairDTO.setAssoCasePhaseId(addDto.getAssoCasePhaseId());
         Integer reportAffairId = reportAffairService.addReportAffair(reportAffairDTO);
 
         if (reportAffairId == null) {
@@ -152,6 +154,7 @@ public class AdminProceedService extends ServiceImpl<AdminProceedMapper, AdminPr
         reportAffair.setOccurredTime(updateDTO.getProceedingTime());
         //备注
         reportAffair.setDescription(updateDTO.getDescription());
+        reportAffair.setAssoCasePhaseId(updateDTO.getAssoCasePhaseId());
         reportAffair.updateById();
         //3. 更新报告事务与文件关联
         List<String> fileGuids = updateDTO.getFileGuids();
@@ -184,6 +187,7 @@ public class AdminProceedService extends ServiceImpl<AdminProceedMapper, AdminPr
         reportAffairDTO.setOccurredTime(addJudgmentDTO.getJudgmentTime());
         //备注
         reportAffairDTO.setDescription(addJudgmentDTO.getDescription());
+        reportAffairDTO.setAssoCasePhaseId(addJudgmentDTO.getAssoCasePhaseId());
         Integer reportAffairId = reportAffairService.addReportAffair(reportAffairDTO);
 
         if (reportAffairId == null) {
@@ -249,6 +253,7 @@ public class AdminProceedService extends ServiceImpl<AdminProceedMapper, AdminPr
         reportAffair.setOccurredTime(updateJudgmentDTO.getJudgmentTime());
         //备注
         reportAffair.setDescription(updateJudgmentDTO.getDescription());
+        reportAffair.setAssoCasePhaseId(updateJudgmentDTO.getAssoCasePhaseId());
         reportAffair.updateById();
         //3. 更新报告事务与文件关联
         List<String> fileGuids = updateJudgmentDTO.getFileGuids();

+ 3 - 0
src/main/java/cn/cslg/pas/service/business/InvalidDecisionFileService.java

@@ -18,6 +18,7 @@ import cn.cslg.pas.service.report.SendReportMailService;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -62,6 +63,7 @@ public class InvalidDecisionFileService extends ServiceImpl<InvalidDecisionFileM
         reportAffairDTO.setOccurredTime(addInvalidDecisionFileDTO.getInvalidDecisionTime());
         //备注
         reportAffairDTO.setDescription(addInvalidDecisionFileDTO.getDescription());
+        reportAffairDTO.setAssoCasePhaseId(addInvalidDecisionFileDTO.getAssoCasePhaseId());
         Integer reportAffairId = reportAffairService.addReportAffair(reportAffairDTO);
 
         if (reportAffairId == null) {
@@ -125,6 +127,7 @@ public class InvalidDecisionFileService extends ServiceImpl<InvalidDecisionFileM
         reportAffair.setOccurredTime(updateInvalidDecisionFileDTO.getInvalidDecisionTime());
         //备注
         reportAffair.setDescription(updateInvalidDecisionFileDTO.getDescription());
+        reportAffair.setAssoCasePhaseId(updateInvalidDecisionFileDTO.getAssoCasePhaseId());
         reportAffair.updateById();
         //3. 更新报告事务与文件关联
         LambdaQueryWrapper<AssoReportAffairFile> queryWrapper = new LambdaQueryWrapper<>();

+ 3 - 0
src/main/java/cn/cslg/pas/service/business/InvalidRequestFileService.java

@@ -16,6 +16,7 @@ import cn.cslg.pas.service.report.SendReportMailService;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Lazy;
@@ -67,6 +68,7 @@ public class InvalidRequestFileService extends ServiceImpl<InvalidRequestFileMap
         reportAffairDTO.setOccurredTime(addInvalidRequestFileDTO.getInvalidRequestDate());
         //备注
         reportAffairDTO.setDescription(addInvalidRequestFileDTO.getDescription());
+        reportAffairDTO.setAssoCasePhaseId(addInvalidRequestFileDTO.getAssoCasePhaseId());
         Integer reportAffairId = reportAffairService.addReportAffair(reportAffairDTO);
 
         if (reportAffairId == null) {
@@ -139,6 +141,7 @@ public class InvalidRequestFileService extends ServiceImpl<InvalidRequestFileMap
         reportAffair.setOccurredTime(updateInvalidRequestFileDTO.getInvalidRequestDate());
         //备注
         reportAffair.setDescription(updateInvalidRequestFileDTO.getDescription());
+        reportAffair.setAssoCasePhaseId(updateInvalidRequestFileDTO.getAssoCasePhaseId());
         reportAffair.updateById();
         //3. 更新报告事务与文件关联
         List<String> fileGuids = updateInvalidRequestFileDTO.getFileGuids();

+ 3 - 0
src/main/java/cn/cslg/pas/service/business/OralTrailService.java

@@ -18,6 +18,7 @@ import cn.cslg.pas.service.report.SendReportMailService;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Lazy;
@@ -65,6 +66,7 @@ public class OralTrailService extends ServiceImpl<OralTrailMapper, OralTrail> {
         reportAffairDTO.setOccurredTime(addOralTrailDTO.getOralTrailTime());
         //备注
         reportAffairDTO.setDescription(addOralTrailDTO.getDescription());
+        reportAffairDTO.setAssoCasePhaseId(addOralTrailDTO.getAssoCasePhaseId());
         Integer reportAffairId = reportAffairService.addReportAffair(reportAffairDTO);
 
         if (reportAffairId == null) {
@@ -143,6 +145,7 @@ public class OralTrailService extends ServiceImpl<OralTrailMapper, OralTrail> {
         reportAffair.setOccurredTime(updateOralTrailDTO.getOralTrailTime());
         //备注
         reportAffair.setDescription(updateOralTrailDTO.getDescription());
+        reportAffair.setAssoCasePhaseId(updateOralTrailDTO.getAssoCasePhaseId());
         reportAffair.updateById();
         //3. 更新报告事务与文件关联
         List<String> fileGuids = updateOralTrailDTO.getFileGuids();

+ 9 - 0
src/main/java/cn/cslg/pas/service/business/OtherDocumentsService.java

@@ -15,6 +15,7 @@ import cn.cslg.pas.service.report.SendReportMailService;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -65,6 +66,10 @@ public class OtherDocumentsService extends ServiceImpl<OtherDocumentsMapper, Oth
         reportAffairDTO.setOccurredTime(addOtherDocumentsDTO.getDocumentTime());
         //备注
         reportAffairDTO.setDescription(addOtherDocumentsDTO.getDescription());
+        reportAffairDTO.setAssoCasePhaseId(addOtherDocumentsDTO.getAssoCasePhaseId());
+        if (StringUtils.isNotEmpty(addOtherDocumentsDTO.getCaseChildPhase())) {
+            reportAffairDTO.setCaseChildPhase(addOtherDocumentsDTO.getCaseChildPhase());
+        }
         Integer reportAffairId = reportAffairService.addReportAffair(reportAffairDTO);
 
         if (reportAffairId == null) {
@@ -126,6 +131,10 @@ public class OtherDocumentsService extends ServiceImpl<OtherDocumentsMapper, Oth
         reportAffair.setOccurredTime(updateOtherDocumentsDTO.getDocumentTime());
         //备注
         reportAffair.setDescription(updateOtherDocumentsDTO.getDescription());
+        reportAffair.setAssoCasePhaseId(updateOtherDocumentsDTO.getAssoCasePhaseId());
+        if (StringUtils.isNotEmpty(updateOtherDocumentsDTO.getCaseChildPhase())) {
+            reportAffair.setCaseChildPhase(updateOtherDocumentsDTO.getCaseChildPhase());
+        }
         reportAffair.updateById();
         //3. 更新报告事务与文件关联
         LambdaQueryWrapper<AssoReportAffairFile> queryWrapper = new LambdaQueryWrapper<>();

+ 133 - 25
src/main/java/cn/cslg/pas/service/business/ReportAffairService.java

@@ -13,6 +13,7 @@ import cn.cslg.pas.common.vo.invalidVO.*;
 import cn.cslg.pas.domain.BaseEntity;
 import cn.cslg.pas.domain.business.*;
 import cn.cslg.pas.exception.XiaoShiException;
+import cn.cslg.pas.mapper.ReportAffairCasePhaseMapper;
 import cn.cslg.pas.mapper.ReportAffairMapper;
 import cn.cslg.pas.service.MailSendService;
 import cn.cslg.pas.service.common.FileManagerService;
@@ -22,6 +23,8 @@ import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.ObjectUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Lazy;
@@ -77,6 +80,9 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
     @Autowired
     private MailSendService mailSendService;
 
+    @Autowired
+    private ReportAffairCasePhaseMapper reportAffairCasePhaseMapper;
+
     /**
      * 创建报告事务
      *
@@ -109,24 +115,27 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
                 LambdaQueryWrapper<AssoReportAffairFile> queryWrapper2 = new LambdaQueryWrapper<>();
                 queryWrapper2.eq(AssoReportAffairFile::getReportAffairId, id);
                 assoReportAffairFileService.remove(queryWrapper2);
+                Integer assoCasePhaseId = reportAffair.getAssoCasePhaseId();
+                ReportAffairCasePhase casePhase = reportAffairCasePhaseMapper.selectById(assoCasePhaseId);
+                Integer flowType = casePhase.getFlowType();
                 // 根据类型删除对应信息
-                if (reportAffair.getAffairType() == 1) { //无效请求书
+                if (flowType.equals(1)) { //无效请求书
                     LambdaQueryWrapper<InvalidRequestFile> queryWrapper1 = new LambdaQueryWrapper<>();
                     queryWrapper1.eq(InvalidRequestFile::getReportAffairId, id);
                     invalidRequestFileService.remove(queryWrapper1);
-                } else if (reportAffair.getAffairType() == 0) {//口审查记录
+                } else if (flowType.equals(6)) {//口审查记录
                     LambdaQueryWrapper<OralTrail> queryWrapper1 = new LambdaQueryWrapper<>();
                     queryWrapper1.eq(OralTrail::getReportAffairId, id);
                     oralTrailService.remove(queryWrapper1);
-                } else if (reportAffair.getAffairType() == 3) {//无效决定书
+                } else if (flowType.equals(7)) {//无效决定书
                     LambdaQueryWrapper<InvalidDecisionFile> queryWrapper1 = new LambdaQueryWrapper<>();
                     queryWrapper1.eq(InvalidDecisionFile::getReportAffairId, id);
                     invalidDecisionFileService.remove(queryWrapper1);
-                } else if (reportAffair.getAffairType().equals(5)) {//行政诉讼判决书
+                } else if (flowType.equals(16) || flowType.equals(26)) {//行政诉讼判决书
                     LambdaQueryWrapper<CourtOrder> queryWrapper1 = new LambdaQueryWrapper<>();
                     queryWrapper1.eq(CourtOrder::getReportAffairId, id);
                     courtOrderService.remove(queryWrapper1);
-                } else if (reportAffair.getAffairType().equals(8)) {//其他文档
+                } else if (flowType.equals(17) || flowType.equals(27)) {//其他文档
                     LambdaQueryWrapper<OtherDocuments> queryWrapper1 = new LambdaQueryWrapper<>();
                     queryWrapper1.eq(OtherDocuments::getReportAffairId, id);
                     otherDocumentsService.remove(queryWrapper1);
@@ -162,30 +171,44 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
 
 
     public List<ReportAffairVO> loadReportAffairVOS(List<ReportAffair> reportAffairs) {
+        List<Integer> collect = reportAffairs.stream().map(ReportAffair::getAssoCasePhaseId).collect(Collectors.toList());
+        List<ReportAffairCasePhase> phaseList = new ArrayList<>();
+        if (!CollectionUtils.isEmpty(collect)) {
+            List<ReportAffairCasePhase> phases = reportAffairCasePhaseMapper.selectList(new LambdaQueryWrapper<ReportAffairCasePhase>()
+                    .in(BaseEntity::getId, collect));
+            phaseList.addAll(phases);
+        }
         List<ReportAffairVO> reportAffairVOS = new ArrayList<>();
         reportAffairs.forEach(item -> {
             ReportAffairVO reportAffairVO = new ReportAffairVO();
             BeanUtils.copyProperties(item, reportAffairVO);
-            //根据事务类型选择不同的装载方式
-            Integer type = reportAffairVO.getAffairType();
-            if (type.equals(0)) {//0 口审记录
-                this.loadOralTrail(reportAffairVO);
-            } else if (type.equals(1)) {//1 无效请求书
-                this.loadInvalidRequestFile(reportAffairVO);
-            } else if (type.equals(2)) {//2 陈述意见书
-                this.loadStateOpinion(reportAffairVO);
-            } else if (type.equals(3)) {//3 无效决定书
-                this.loadInvalidDecisionFile(reportAffairVO);
-            } else if (type.equals(4)) {//4 行政诉讼书
-                this.loadAdminProceed(reportAffairVO);
-            } else if (type.equals(5)) {//5 行政诉讼判决书
-                this.loadJudgment(reportAffairVO);
-            } else if (type.equals(6)) {//6 权要修改记录
-                this.loadClaimHistory(reportAffairVO);
-            } else if (type.equals(7)) {//7 补充证据及理由
-                this.loadSupplyEvidence(reportAffairVO);
-            } else if (type.equals(8)) {//8 其他文档
-                this.loadOtherDocuments(reportAffairVO);
+            ReportAffairCasePhase casePhase = phaseList.stream().filter(i -> i.getId().equals(item.getAssoCasePhaseId())).findFirst().orElse(null);
+            if (ObjectUtils.isNotEmpty(casePhase)) {
+                Integer type = casePhase.getFlowType();
+                reportAffairVO.setFlowName(casePhase.getFlowName());
+                reportAffairVO.setFlowType(type);
+                reportAffairVO.setCasePhase(casePhase.getCasePhase());
+                reportAffairVO.setCaseChildPhase(casePhase.getCaseChildPhase());
+                if (type.equals(6)) {//6 口审记录
+                    this.loadOralTrail(reportAffairVO);
+                } else if (type.equals(1)) {//1 无效请求书
+                    this.loadInvalidRequestFile(reportAffairVO);
+                } else if (type.equals(5)) {//5 陈述意见书
+                    this.loadStateOpinion(reportAffairVO);
+                } else if (type.equals(7)) {//7 无效决定书
+                    this.loadInvalidDecisionFile(reportAffairVO);
+                } else if (type.equals(15) || type.equals(25)) {//15 25 行政诉讼书
+                    this.loadAdminProceed(reportAffairVO);
+                } else if (type.equals(16) || type.equals(26)) {//16 26 行政诉讼判决书
+                    this.loadJudgment(reportAffairVO);
+                } else if (type.equals(2)) {//2 权要修改记录
+                    this.loadClaimHistory(reportAffairVO);
+                } else if (type.equals(3)) {//3 补充证据及理由
+                    this.loadSupplyEvidence(reportAffairVO);
+                } else if (type.equals(17) || type.equals(27)) {//17 27 其他文档
+                    this.loadOtherDocuments(reportAffairVO);
+                    reportAffairVO.setCaseChildPhase(item.getCaseChildPhase());
+                }
             }
             reportAffairVOS.add(reportAffairVO);
         });
@@ -323,6 +346,7 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
         reportAffairDTO.setOccurredTime(addStateOpinionDTO.getStateReplyTime());
         //备注
         reportAffairDTO.setDescription(addStateOpinionDTO.getDescription());
+        reportAffairDTO.setAssoCasePhaseId(addStateOpinionDTO.getAssoCasePhaseId());
         Integer reportAffairId = this.addReportAffair(reportAffairDTO);
 
         if (reportAffairId == null) {
@@ -370,6 +394,7 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
         reportAffair.setOccurredTime(updateStateOpinionDTO.getStateReplyTime());
         //备注
         reportAffair.setDescription(updateStateOpinionDTO.getDescription());
+        reportAffair.setAssoCasePhaseId(updateStateOpinionDTO.getAssoCasePhaseId());
         reportAffair.updateById();
         //3. 更新报告事务与文件关联
         List<String> fileGuids = updateStateOpinionDTO.getFileGuids();
@@ -437,6 +462,7 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
         reportAffairDTO.setOccurredTime(addClaimHistoryDTO.getClaimHistoryTime());
         //备注
         reportAffairDTO.setDescription(addClaimHistoryDTO.getDescription());
+        reportAffairDTO.setAssoCasePhaseId(addClaimHistoryDTO.getAssoCasePhaseId());
         Integer reportAffairId = this.addReportAffair(reportAffairDTO);
 
         if (reportAffairId == null) {
@@ -484,6 +510,7 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
         reportAffair.setOccurredTime(updateClaimHistoryDTO.getClaimHistoryTime());
         //备注
         reportAffair.setDescription(updateClaimHistoryDTO.getDescription());
+        reportAffair.setAssoCasePhaseId(updateClaimHistoryDTO.getAssoCasePhaseId());
         reportAffair.updateById();
         //3. 更新报告事务与文件关联
         List<String> fileGuids = updateClaimHistoryDTO.getFileGuids();
@@ -516,6 +543,7 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
         reportAffairDTO.setOccurredTime(addSupplyEvidenceDTO.getSupplyEvidenceTime());
         //备注
         reportAffairDTO.setDescription(addSupplyEvidenceDTO.getDescription());
+        reportAffairDTO.setAssoCasePhaseId(addSupplyEvidenceDTO.getAssoCasePhaseId());
         Integer reportAffairId = this.addReportAffair(reportAffairDTO);
 
         if (reportAffairId == null) {
@@ -563,6 +591,7 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
         reportAffair.setOccurredTime(updateSupplyEvidenceDTO.getSupplyEvidenceTime());
         //备注
         reportAffair.setDescription(updateSupplyEvidenceDTO.getDescription());
+        reportAffair.setAssoCasePhaseId(updateSupplyEvidenceDTO.getAssoCasePhaseId());
         reportAffair.updateById();
         //3. 更新报告事务与文件关联
         List<String> fileGuids = updateSupplyEvidenceDTO.getFileGuids();
@@ -613,4 +642,83 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
         reportAffairVO.setOtherDocumentsVO(otherDocumentsVO);
     }
 
+    /**
+     * 添加案件文档
+     * @param vo
+     * @return
+     */
+    public Integer addReportAffairCase(ReportAffairCaseDTO vo){
+        if (ObjectUtils.isEmpty(vo)) {
+            throw new XiaoShiException("入参为空");
+        }
+        Integer projectId = vo.getProjectId();
+        if (projectId == null) {
+            throw new XiaoShiException("报告id为空");
+        }
+        //1. 首先上传报告事务,拿到报告事务id
+        ReportAffairDTO reportAffairDTO = new ReportAffairDTO();
+        reportAffairDTO.setProjectId(projectId);
+        //发生时间是无效请求日
+        reportAffairDTO.setOccurredTime(vo.getOccurredTime());
+        //备注
+        reportAffairDTO.setDescription(vo.getDescription());
+        reportAffairDTO.setAssoCasePhaseId(vo.getAssoCasePhaseId());
+        Integer reportAffairId = this.addReportAffair(reportAffairDTO);
+
+        if (reportAffairId == null) {
+            throw new XiaoShiException("上传报告事务失败");
+        }
+        //3. 添加报告事务与文件关联
+        List<String> fileGuids = vo.getFileGuids();
+        if (!CollectionUtils.isEmpty(fileGuids)) {
+            List<AssoReportAffairFile> assoReportAffairFiles = new ArrayList<>();
+            fileGuids.forEach(item -> {
+                AssoReportAffairFile assoReportAffairFile = new AssoReportAffairFile();
+                assoReportAffairFile.setReportAffairId(reportAffairId);
+                assoReportAffairFile.setFileGuid(item);
+                assoReportAffairFiles.add(assoReportAffairFile);
+            });
+            assoReportAffairFileService.saveBatch(assoReportAffairFiles);
+        }
+        if (vo.getIfSendEmail()) {
+            sendReportMailService.finalSendEmail(projectId, fileGuids, vo.getExtraEmailDTOS());
+        }
+        return reportAffairId;
+    }
+
+    /**
+     * 修改案件文档
+     * @param vo
+     * @return
+     */
+    public Integer updateReportAffairCase(ReportAffairCaseDTO vo){
+        if (ObjectUtils.isEmpty(vo)) {
+            throw new XiaoShiException("入参为空");
+        }
+        Integer projectId = vo.getProjectId();
+        Integer reportAffairId = vo.getId();
+        if (reportAffairId == null) {
+            throw new XiaoShiException("reportAffairId为空");
+        }
+        if (projectId == null) {
+            throw new XiaoShiException("报告id为空");
+        }
+        //2. 拿到报告事务id,获取报告事务
+        ReportAffair reportAffair = this.getById(reportAffairId);
+        reportAffair.setProjectId(projectId);
+        //发生时间是无效请求日
+        reportAffair.setOccurredTime(vo.getOccurredTime());
+        //备注
+        reportAffair.setDescription(vo.getDescription());
+        reportAffair.setAssoCasePhaseId(vo.getAssoCasePhaseId());
+        reportAffair.updateById();
+        //3. 更新报告事务与文件关联
+        List<String> fileGuids = vo.getFileGuids();
+        assoReportAffairFileService.updateAffairFile(reportAffairId, fileGuids);
+        if (vo.getIfSendEmail()) {
+            sendReportMailService.finalSendEmail(projectId, fileGuids, vo.getExtraEmailDTOS());
+        }
+        return reportAffairId;
+    }
+
 }

+ 18 - 0
src/main/resources/mapper/ReportAffairMapper.xml

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="cn.cslg.pas.mapper.ReportAffairMapper">
+    <select id="queryCasePhase" resultType="cn.cslg.pas.common.vo.QueryCasePhaseVO">
+        select a.case_phase,
+        (CASE
+           WHEN a.case_child_phase is not null or a.case_child_phase != '' THEN a.case_child_phase
+           ELSE b.case_child_phase
+        END) AS caseChildPhase
+        from report_affair_case_phase a
+        left join report_affair b on b.asso_case_phase_id = a.id
+        where b.project_id in
+        <foreach collection="projectIds" index="index" item="item" open="(" separator="," close=")">
+            #{item}
+        </foreach>
+        order by b.occurred_time desc,b.id desc
+    </select>
+</mapper>

+ 217 - 0
src/test/java/cn/cslg/pas/service/ReportAffairTests.java

@@ -0,0 +1,217 @@
+package cn.cslg.pas.service;
+
+import cn.cslg.pas.common.dto.invalidDTO.ReportAffairCaseDTO;
+import cn.cslg.pas.domain.business.ReportAffair;
+import cn.cslg.pas.domain.business.ReportAffairCasePhase;
+import cn.cslg.pas.service.business.ReportAffairService;
+import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@SpringBootTest
+public class ReportAffairTests {
+
+    @Autowired
+    private ReportAffairCasePhaseService reportAffairCasePhaseService;
+    @Autowired
+    private ReportAffairService reportAffairService;
+
+    @Test
+    public void queryAssoCasePhaseList() {
+        final List<ReportAffairCasePhase> phases = reportAffairCasePhaseService.queryAssoCasePhaseList();
+        System.out.println(phases);
+    }
+
+    @Test
+    public void addReportAffair() {
+        ReportAffairCaseDTO vo = new ReportAffairCaseDTO();
+        vo.setProjectId(618);
+        final Integer id = reportAffairService.addReportAffairCase(vo);
+        System.out.println(id);
+    }
+
+    @Test
+    public void updateReportAffair() {
+//        ReportAffairCaseDTO vo = new ReportAffairCaseDTO();
+//        vo.setProjectId(618);
+//        final Integer id = reportAffairService.updateReportAffairCase(vo);
+        ReportAffair affair = reportAffairService.getById(119);
+        affair.setCaseChildPhase("行政一审完整测试");
+        affair.setProjectId(618);
+
+        affair.updateById();
+        System.out.println(affair.getId());
+    }
+
+
+
+    public void test() {
+        List<ReportAffairCasePhase> phases = new ArrayList<>();
+
+        ReportAffairCasePhase casePhase = new ReportAffairCasePhase();
+        casePhase.setFlowName("添加无效请求书");
+        casePhase.setCasePhase("无效");
+        casePhase.setCaseChildPhase("无效受理");
+        phases.add(casePhase);
+
+        ReportAffairCasePhase casePhase1 = new ReportAffairCasePhase();
+        casePhase1.setFlowName("添加权要修改记录");
+        casePhase1.setCasePhase("无效");
+        casePhase1.setCaseChildPhase("专利权人提交权要修改");
+        phases.add(casePhase1);
+
+        ReportAffairCasePhase casePhase2 = new ReportAffairCasePhase();
+        casePhase2.setFlowName("补充证据及理由记录");
+        casePhase2.setCasePhase("无效");
+        casePhase2.setCaseChildPhase("请求人补充证据及无效理由");
+        phases.add(casePhase2);
+
+        ReportAffairCasePhase casePhase3 = new ReportAffairCasePhase();
+        casePhase3.setFlowName("添加请求人意见陈述书");
+        casePhase3.setCasePhase("无效");
+        casePhase3.setCaseChildPhase("请求人调整无效证据及理由");
+        phases.add(casePhase3);
+
+        ReportAffairCasePhase casePhase4 = new ReportAffairCasePhase();
+        casePhase4.setFlowName("添加专利权人意见陈述书");
+        casePhase4.setCasePhase("无效");
+        casePhase4.setCaseChildPhase("专利权人答复");
+        phases.add(casePhase4);
+
+        ReportAffairCasePhase casePhase5 = new ReportAffairCasePhase();
+        casePhase5.setFlowName("添加口审记录");
+        casePhase5.setCasePhase("无效");
+        casePhase5.setCaseChildPhase("口审待出决定");
+        phases.add(casePhase5);
+
+        ReportAffairCasePhase casePhase6 = new ReportAffairCasePhase();
+        casePhase6.setFlowName("添加无效决定书");
+        casePhase6.setCasePhase("无效");
+        casePhase6.setCaseChildPhase("已出无效决定");
+        phases.add(casePhase6);
+
+        ReportAffairCasePhase casePhase7 = new ReportAffairCasePhase();
+        casePhase7.setFlowName("添加行政诉讼起诉状");
+        casePhase7.setCasePhase("行政一审");
+        casePhase7.setCaseChildPhase("行诉一审立案");
+        phases.add(casePhase7);
+
+        ReportAffairCasePhase casePhase8 = new ReportAffairCasePhase();
+        casePhase8.setFlowName("添加行政答辩状");
+        casePhase8.setCasePhase("行政一审");
+        casePhase8.setCaseChildPhase("行政答辩");
+        phases.add(casePhase8);
+
+        ReportAffairCasePhase casePhase9 = new ReportAffairCasePhase();
+        casePhase9.setFlowName("添加请求人答辩状");
+        casePhase9.setCasePhase("行政一审");
+        casePhase9.setCaseChildPhase("请求人答辩");
+        phases.add(casePhase9);
+
+        ReportAffairCasePhase casePhase10 = new ReportAffairCasePhase();
+        casePhase10.setFlowName("添加请求人证据");
+        casePhase10.setCasePhase("行政一审");
+        casePhase10.setCaseChildPhase("请求人提交证据");
+        phases.add(casePhase10);
+
+        ReportAffairCasePhase casePhase11 = new ReportAffairCasePhase();
+        casePhase11.setFlowName("添加庭审笔录");
+        casePhase11.setCasePhase("行政一审");
+        casePhase11.setCaseChildPhase("庭审记录");
+        phases.add(casePhase11);
+
+        ReportAffairCasePhase casePhase12 = new ReportAffairCasePhase();
+        casePhase12.setFlowName("添加请求人庭后意见");
+        casePhase12.setCasePhase("行政一审");
+        casePhase12.setCaseChildPhase("请求人提交庭后意见");
+        phases.add(casePhase12);
+
+        ReportAffairCasePhase casePhase13 = new ReportAffairCasePhase();
+        casePhase13.setFlowName("添加第三人庭后意见");
+        casePhase13.setCasePhase("行政一审");
+        casePhase13.setCaseChildPhase("第三人提交庭后意见");
+        phases.add(casePhase13);
+
+        ReportAffairCasePhase casePhase14 = new ReportAffairCasePhase();
+        casePhase14.setFlowName("添加行政诉讼传票");
+        casePhase14.setCasePhase("行政一审");
+        casePhase14.setCaseChildPhase("开庭通知");
+        phases.add(casePhase14);
+
+        ReportAffairCasePhase casePhase15 = new ReportAffairCasePhase();
+        casePhase15.setFlowName("添加行政诉讼判决书");
+        casePhase15.setCasePhase("行政一审");
+        casePhase15.setCaseChildPhase("已出一审判决");
+        phases.add(casePhase15);
+
+        ReportAffairCasePhase casePhase16 = new ReportAffairCasePhase();
+        casePhase16.setFlowName("添加其他文档");
+        casePhase16.setCasePhase("行政一审");
+        phases.add(casePhase16);
+
+        ReportAffairCasePhase casePhase17 = new ReportAffairCasePhase();
+        casePhase17.setFlowName("添加行政诉讼上诉状");
+        casePhase17.setCasePhase("行政二审");
+        casePhase17.setCaseChildPhase("行诉二审立案");
+        phases.add(casePhase17);
+
+        ReportAffairCasePhase casePhase18 = new ReportAffairCasePhase();
+        casePhase18.setFlowName("添加行政答辩状");
+        casePhase18.setCasePhase("行政二审");
+        casePhase18.setCaseChildPhase("行政答辩");
+        phases.add(casePhase18);
+
+        ReportAffairCasePhase casePhase19 = new ReportAffairCasePhase();
+        casePhase19.setFlowName("添加请求人答辩状");
+        casePhase19.setCasePhase("行政二审");
+        casePhase19.setCaseChildPhase("请求人答辩");
+        phases.add(casePhase19);
+
+        ReportAffairCasePhase casePhase20 = new ReportAffairCasePhase();
+        casePhase20.setFlowName("添加请求人证据");
+        casePhase20.setCasePhase("行政二审");
+        casePhase20.setCaseChildPhase("请求人提交证据");
+        phases.add(casePhase20);
+
+        ReportAffairCasePhase casePhase21 = new ReportAffairCasePhase();
+        casePhase21.setFlowName("添加庭审笔录");
+        casePhase21.setCasePhase("行政二审");
+        casePhase21.setCaseChildPhase("庭审记录");
+        phases.add(casePhase21);
+
+        ReportAffairCasePhase casePhase22 = new ReportAffairCasePhase();
+        casePhase22.setFlowName("添加请求人庭后意见");
+        casePhase22.setCasePhase("行政二审");
+        casePhase22.setCaseChildPhase("请求人提交庭后意见");
+        phases.add(casePhase22);
+
+        ReportAffairCasePhase casePhase23 = new ReportAffairCasePhase();
+        casePhase23.setFlowName("添加第三人庭后意见");
+        casePhase23.setCasePhase("行政二审");
+        casePhase23.setCaseChildPhase("第三人提交庭后意见");
+        phases.add(casePhase23);
+
+        ReportAffairCasePhase casePhase24 = new ReportAffairCasePhase();
+        casePhase24.setFlowName("添加行政诉讼传票");
+        casePhase24.setCasePhase("行政二审");
+        casePhase24.setCaseChildPhase("开庭通知");
+        phases.add(casePhase24);
+
+        ReportAffairCasePhase casePhase25 = new ReportAffairCasePhase();
+        casePhase25.setFlowName("添加行政诉讼判决书");
+        casePhase25.setCasePhase("行政二审");
+        casePhase25.setCaseChildPhase("已出终审判决");
+        phases.add(casePhase25);
+
+        ReportAffairCasePhase casePhase26 = new ReportAffairCasePhase();
+        casePhase26.setFlowName("添加其他文档");
+        casePhase26.setCasePhase("行政二审");
+        phases.add(casePhase26);
+
+        reportAffairCasePhaseService.saveBatch(phases);
+        System.out.println("finished");
+    }
+}