Преглед изворни кода

Merge remote-tracking branch 'origin/master'

xiexiang пре 7 месеци
родитељ
комит
9973661486

+ 4 - 0
src/main/java/cn/cslg/pas/common/vo/business/InvalidRecordVO.java

@@ -71,4 +71,8 @@ public class InvalidRecordVO {
     private Boolean ifAdd;
 
     private ReportVO reportVO;
+
+    private String casePhase;
+    private String caseChildPhase;
+    private Integer flowType;
 }

+ 3 - 0
src/main/java/cn/cslg/pas/common/vo/business/ReVO.java

@@ -12,4 +12,7 @@ import java.util.Date;
 public class ReVO {
     private Date judgementTime;
     private String result;
+    private String casePhase;
+    private String caseChildPhase;
+    private Integer flowType;
 }

+ 0 - 5
src/main/java/cn/cslg/pas/domain/business/ReportAffair.java

@@ -15,11 +15,6 @@ import java.util.Date;
 @Data
 @TableName("report_affair")
 public class ReportAffair extends BaseEntity<ReportAffair> {
-    /**
-     * 事务类型(0为口审记录,1为无效请求书,2为陈述意见书,3为无效决定书,4为行政诉讼书)
-     */
-    @TableField(value = "affair_type")
-    private Integer affairType;
 
     /**
      * 所属报告id

+ 13 - 4
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.ObjectUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -65,11 +66,12 @@ public class AdminProceedService extends ServiceImpl<AdminProceedMapper, AdminPr
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(addDto.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //1. 首先上传报告事务,拿到报告事务id
         ReportAffairDTO reportAffairDTO = new ReportAffairDTO();
         reportAffairDTO.setProjectId(projectId);
-        //行政诉讼书 4
-        reportAffairDTO.setAffairType(4);
         //发生时间是口审时间
         reportAffairDTO.setOccurredTime(addDto.getProceedingTime());
         //备注
@@ -139,6 +141,9 @@ public class AdminProceedService extends ServiceImpl<AdminProceedMapper, AdminPr
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(updateDTO.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //1. 根据id查出行政记录
         AdminProceed al = this.getById(id);
         if (al == null) {
@@ -178,11 +183,12 @@ public class AdminProceedService extends ServiceImpl<AdminProceedMapper, AdminPr
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(addJudgmentDTO.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //1. 首先上传报告事务,拿到报告事务id
         ReportAffairDTO reportAffairDTO = new ReportAffairDTO();
         reportAffairDTO.setProjectId(projectId);
-        //行政诉讼判决书 5
-        reportAffairDTO.setAffairType(5);
         //发生时间是口审时间
         reportAffairDTO.setOccurredTime(addJudgmentDTO.getJudgmentTime());
         //备注
@@ -235,6 +241,9 @@ public class AdminProceedService extends ServiceImpl<AdminProceedMapper, AdminPr
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(updateJudgmentDTO.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //1.拿到报告事务id,获取法院判别书,并更新
         List<CourtOrder> courtOrders = courtOrderService.list(new LambdaQueryWrapper<CourtOrder>()
                 .eq(CourtOrder::getReportAffairId, reportAffairId)

+ 6 - 2
src/main/java/cn/cslg/pas/service/business/InvalidDecisionFileService.java

@@ -63,11 +63,12 @@ public class InvalidDecisionFileService extends ServiceImpl<InvalidDecisionFileM
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(addInvalidDecisionFileDTO.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //1. 首先上传报告事务,拿到报告事务id
         ReportAffairDTO reportAffairDTO = new ReportAffairDTO();
         reportAffairDTO.setProjectId(projectId);
-        //无效决定书 3
-        reportAffairDTO.setAffairType(3);
         //发生时间是口审时间
         reportAffairDTO.setOccurredTime(addInvalidDecisionFileDTO.getInvalidDecisionTime());
         //备注
@@ -167,6 +168,9 @@ public class InvalidDecisionFileService extends ServiceImpl<InvalidDecisionFileM
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(updateInvalidDecisionFileDTO.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //1. 根据id查出无效决定书
         InvalidDecisionFile invalidDecisionFile = this.getById(id);
         if (invalidDecisionFile == null) {

+ 40 - 12
src/main/java/cn/cslg/pas/service/business/InvalidRecordService.java

@@ -17,12 +17,14 @@ import cn.cslg.pas.domain.BaseEntity;
 import cn.cslg.pas.domain.business.*;
 import cn.cslg.pas.exception.XiaoShiException;
 import cn.cslg.pas.mapper.InvalidRecordMapper;
+import cn.cslg.pas.mapper.ReportAffairCasePhaseMapper;
 import cn.cslg.pas.service.common.FileManagerService;
 import cn.cslg.pas.service.permissions.PermissionService;
 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.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -78,7 +80,7 @@ public class InvalidRecordService extends ServiceImpl<InvalidRecordMapper, Inval
     private InvalidDecisionFileService invalidDecisionFileService;
 
     @Autowired
-    private AssoReportAffairFileService assoReportAffairFileService;
+    private ReportAffairCasePhaseMapper reportAffairCasePhaseMapper;
 
     @Autowired
     private CourtOrderService courtOrderService;
@@ -270,9 +272,16 @@ public class InvalidRecordService extends ServiceImpl<InvalidRecordMapper, Inval
                         Integer affairType = 1;
                         Date invalidTime = this.loadInvalidTime(affairType, item);
                         invalidRecordVO.setInvalidTime(invalidTime);
-                        Integer judgeType = 5;
-                        Date judgeTime = this.loadInvalidTime(judgeType, item);
-
+                        Integer judgeType = 16;
+                        Date judgeTime1 = this.loadInvalidTime(judgeType, item);
+                        Integer judgeType1 = 26;
+                        Date judgeTime2 = this.loadInvalidTime(judgeType1, item);
+                        Date judgeTime = null;
+                        if (ObjectUtils.isNotEmpty(judgeTime2)) {
+                            judgeTime = judgeTime2;
+                        } else {
+                            judgeTime = judgeTime1;
+                        }
                         invalidRecordVO.setJudgementTime(judgeTime);
                         invalidRecordVO.setCreateId(project.getCreateId());
                         invalidRecordVO.setCreateTime(project.getCreateTime());
@@ -281,10 +290,13 @@ public class InvalidRecordService extends ServiceImpl<InvalidRecordMapper, Inval
                         invalidRecordVO.setFileGuids(fileGuids);
                         invalidRecordVO.setIfAdd(false);
                         //装载结果  先查询行政判决诉讼书
-                        Integer resultType = 5;
+                        Integer resultType = 16;
                         ReVO reVO = this.loadResult(resultType, item);
                         invalidRecordVO.setResult(reVO.getResult());
                         invalidRecordVO.setJudgementTime(reVO.getJudgementTime());
+                        invalidRecordVO.setCasePhase(reVO.getCasePhase());
+                        invalidRecordVO.setCaseChildPhase(reVO.getCaseChildPhase());
+                        invalidRecordVO.setFlowType(reVO.getFlowType());
                         //带出报告信息
                         ReportVO reportVO = new ReportVO();
                         BeanUtils.copyProperties(item, reportVO);
@@ -302,7 +314,7 @@ public class InvalidRecordService extends ServiceImpl<InvalidRecordMapper, Inval
 
     public Date loadInvalidTime(Integer type, ReportProject reportProject) {
         LambdaQueryWrapper<ReportAffair> queryWrapper = new LambdaQueryWrapper<>();
-        queryWrapper.eq(ReportAffair::getAffairType, type)
+        queryWrapper.eq(ReportAffair::getAssoCasePhaseId, type)
                 .eq(ReportAffair::getProjectId, reportProject.getProjectId())
                 .orderByDesc(ReportAffair::getCreateTime)
                 .last("LIMIT 1");
@@ -318,9 +330,11 @@ public class InvalidRecordService extends ServiceImpl<InvalidRecordMapper, Inval
         ReVO reVO = new ReVO();
         String result = "";
         LambdaQueryWrapper<ReportAffair> queryWrapper = new LambdaQueryWrapper<>();
-        queryWrapper.eq(ReportAffair::getAffairType, type)
-                .eq(ReportAffair::getProjectId, reportProject.getProjectId())
-                .orderByDesc(ReportAffair::getCreateTime)
+        queryWrapper.eq(ReportAffair::getProjectId, reportProject.getProjectId())
+                .and(item -> item.eq(ReportAffair::getAssoCasePhaseId, type)
+                .or()
+                .eq(ReportAffair::getAssoCasePhaseId,26))
+                .orderByDesc(ReportAffair::getAssoCasePhaseId).orderByDesc(ReportAffair::getOccurredTime)
                 .last("LIMIT 1");
         ReportAffair reportAffair = reportAffairService.getOne(queryWrapper, false);
         if (reportAffair != null) {
@@ -333,14 +347,21 @@ public class InvalidRecordService extends ServiceImpl<InvalidRecordMapper, Inval
                 result = courtOrder.getConclusion();
                 reVO.setResult(result);
                 reVO.setJudgementTime(reportAffair.getOccurredTime());
+                Integer casePhaseId = reportAffair.getAssoCasePhaseId();
+                ReportAffairCasePhase casePhase = reportAffairCasePhaseMapper.selectById(casePhaseId);
+                if (ObjectUtils.isNotEmpty(casePhase)) {
+                    reVO.setCasePhase(casePhase.getCasePhase());
+                    reVO.setCaseChildPhase(casePhase.getCaseChildPhase());
+                    reVO.setFlowType(casePhase.getFlowType());
+                }
             }
         } else {
             //无效决定书
-            Integer affairType = 3;
+            Integer affairType = 7;
             LambdaQueryWrapper<ReportAffair> invalidRecordWrapper = new LambdaQueryWrapper<>();
-            invalidRecordWrapper.eq(ReportAffair::getAffairType, affairType)
+            invalidRecordWrapper.eq(ReportAffair::getAssoCasePhaseId, affairType)
                     .eq(ReportAffair::getProjectId, reportProject.getProjectId())
-                    .orderByDesc(ReportAffair::getCreateTime)
+                    .orderByDesc(ReportAffair::getOccurredTime)
                     .last("LIMIT 1");
             ReportAffair reportAffair1 = reportAffairService.getOne(invalidRecordWrapper, false);
             if (reportAffair1 != null) {
@@ -359,6 +380,13 @@ public class InvalidRecordService extends ServiceImpl<InvalidRecordMapper, Inval
                         reVO.setJudgementTime(reportAffair1.getOccurredTime());
                     }
                 }
+                Integer casePhaseId = reportAffair1.getAssoCasePhaseId();
+                ReportAffairCasePhase casePhase = reportAffairCasePhaseMapper.selectById(casePhaseId);
+                if (ObjectUtils.isNotEmpty(casePhase)) {
+                    reVO.setCasePhase(casePhase.getCasePhase());
+                    reVO.setCaseChildPhase(casePhase.getCaseChildPhase());
+                    reVO.setFlowType(casePhase.getFlowType());
+                }
             }
         }
         return reVO;

+ 7 - 2
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.ObjectUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -59,11 +60,12 @@ public class InvalidRequestFileService extends ServiceImpl<InvalidRequestFileMap
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(addInvalidRequestFileDTO.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //1. 首先上传报告事务,拿到报告事务id
         ReportAffairDTO reportAffairDTO = new ReportAffairDTO();
         reportAffairDTO.setProjectId(projectId);
-        //无效请求书 1
-        reportAffairDTO.setAffairType(1);
         //发生时间是无效请求日
         reportAffairDTO.setOccurredTime(addInvalidRequestFileDTO.getInvalidRequestDate());
         //备注
@@ -126,6 +128,9 @@ public class InvalidRequestFileService extends ServiceImpl<InvalidRequestFileMap
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(updateInvalidRequestFileDTO.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //1. 根据id查出无效请求书
         InvalidRequestFile invalidRequestFile = this.getById(id);
         if (invalidRequestFile == null) {

+ 7 - 2
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.ObjectUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -57,11 +58,12 @@ public class OralTrailService extends ServiceImpl<OralTrailMapper, OralTrail> {
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(addOralTrailDTO.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //1. 首先上传报告事务,拿到报告事务id
         ReportAffairDTO reportAffairDTO = new ReportAffairDTO();
         reportAffairDTO.setProjectId(projectId);
-        //口审记录 0
-        reportAffairDTO.setAffairType(0);
         //发生时间是口审时间
         reportAffairDTO.setOccurredTime(addOralTrailDTO.getOralTrailTime());
         //备注
@@ -129,6 +131,9 @@ public class OralTrailService extends ServiceImpl<OralTrailMapper, OralTrail> {
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(updateOralTrailDTO.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //1. 根据id查出口审记录
         OralTrail oralTrail = this.getById(id);
         if (oralTrail == null) {

+ 7 - 2
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.ObjectUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -57,11 +58,12 @@ public class OtherDocumentsService extends ServiceImpl<OtherDocumentsMapper, Oth
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(addOtherDocumentsDTO.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //1. 首先上传报告事务,拿到报告事务id
         ReportAffairDTO reportAffairDTO = new ReportAffairDTO();
         reportAffairDTO.setProjectId(projectId);
-        //其他文档 8
-        reportAffairDTO.setAffairType(8);
         //发生时间是文档时间
         reportAffairDTO.setOccurredTime(addOtherDocumentsDTO.getDocumentTime());
         //备注
@@ -116,6 +118,9 @@ public class OtherDocumentsService extends ServiceImpl<OtherDocumentsMapper, Oth
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(updateOtherDocumentsDTO.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //1. 根据id查出其他文档
         OtherDocuments otherDocuments = this.getById(id);
         if (otherDocuments == null) {

+ 35 - 7
src/main/java/cn/cslg/pas/service/business/ReportAffairService.java

@@ -16,6 +16,7 @@ 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.mapper.ReportProjectMapper;
 import cn.cslg.pas.service.MailSendService;
 import cn.cslg.pas.service.common.FileManagerService;
 import cn.cslg.pas.service.permissions.PermissionService;
@@ -93,6 +94,9 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
     @Autowired
     private AssoReportCronService assoReportCronService;
 
+    @Autowired
+    private ReportProjectMapper reportProjectMapper;
+
     /**
      * 创建报告事务
      *
@@ -138,8 +142,14 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
                     queryWrapper1.eq(OralTrail::getReportAffairId, id);
                     oralTrailService.remove(queryWrapper1);
                 } else if (flowType.equals(7)) {//无效决定书
-                    //删除报告无效结果与报告关联
                     Integer projectId = reportAffair.getProjectId();
+                    //删除报告中的发文序号
+                    ReportProject reportProject = reportProjectMapper.selectOne(new LambdaQueryWrapper<ReportProject>()
+                            .eq(ReportProject::getProjectId, projectId));
+                    reportProject.setId(reportProject.getId());
+                    reportProject.setIssueNumber(null);
+                    reportProject.updateById();
+                    //删除报告无效结果与报告关联
                     LambdaQueryWrapper<AssoReportCron> reportCronWrapper = new LambdaQueryWrapper<>();
                     reportCronWrapper.eq(AssoReportCron::getProjectId, projectId);
                     assoReportCronService.remove(reportCronWrapper);
@@ -404,11 +414,12 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(addStateOpinionDTO.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //1. 首先上传报告事务,拿到报告事务id
         ReportAffairDTO reportAffairDTO = new ReportAffairDTO();
         reportAffairDTO.setProjectId(projectId);
-        //陈述意见书 2
-        reportAffairDTO.setAffairType(2);
         //发生时间是无效请求日
         reportAffairDTO.setOccurredTime(addStateOpinionDTO.getStateReplyTime());
         //备注
@@ -454,6 +465,9 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(updateStateOpinionDTO.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //2. 拿到报告事务id,获取报告事务
         ReportAffair reportAffair = this.getById(reportAffairId);
         reportAffair.setProjectId(projectId);
@@ -520,11 +534,12 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(addClaimHistoryDTO.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //1. 首先上传报告事务,拿到报告事务id
         ReportAffairDTO reportAffairDTO = new ReportAffairDTO();
         reportAffairDTO.setProjectId(projectId);
-        //权要修改历史 6
-        reportAffairDTO.setAffairType(6);
         //发生时间是无效请求日
         reportAffairDTO.setOccurredTime(addClaimHistoryDTO.getClaimHistoryTime());
         //备注
@@ -570,6 +585,9 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(updateClaimHistoryDTO.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //2. 拿到报告事务id,获取报告事务
         ReportAffair reportAffair = this.getById(reportAffairId);
         reportAffair.setProjectId(projectId);
@@ -601,11 +619,12 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(addSupplyEvidenceDTO.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //1. 首先上传报告事务,拿到报告事务id
         ReportAffairDTO reportAffairDTO = new ReportAffairDTO();
         reportAffairDTO.setProjectId(projectId);
-        //补充证据及理由 7
-        reportAffairDTO.setAffairType(7);
         //发生时间是无效请求日
         reportAffairDTO.setOccurredTime(addSupplyEvidenceDTO.getSupplyEvidenceTime());
         //备注
@@ -651,6 +670,9 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(updateSupplyEvidenceDTO.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //2. 拿到报告事务id,获取报告事务
         ReportAffair reportAffair = this.getById(reportAffairId);
         reportAffair.setProjectId(projectId);
@@ -722,6 +744,9 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(vo.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //1. 首先上传报告事务,拿到报告事务id
         ReportAffairDTO reportAffairDTO = new ReportAffairDTO();
         reportAffairDTO.setProjectId(projectId);
@@ -770,6 +795,9 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        if (ObjectUtils.isEmpty(vo.getAssoCasePhaseId())) {
+            throw new XiaoShiException("案件流程阶段id为空");
+        }
         //2. 拿到报告事务id,获取报告事务
         ReportAffair reportAffair = this.getById(reportAffairId);
         reportAffair.setProjectId(projectId);