Forráskód Böngészése

fixed 法院判决书

zero 1 éve
szülő
commit
e055c8467d

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

@@ -23,4 +23,6 @@ public class AddJudgmentDTO {
     private List<String> fileGuids;
 
     private String description;
+
+    private String conclusion;
 }

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

@@ -24,4 +24,6 @@ public class UpdateJudgmentDTO {
     private List<String> fileGuids;
 
     private String description;
+
+    private String conclusion;
 }

+ 2 - 0
src/main/java/cn/cslg/pas/common/vo/invalidVO/JudgementVO.java

@@ -25,4 +25,6 @@ public class JudgementVO {
     private List<String> fileGuids;
 
     private String description;
+
+    private String conclusion;
 }

+ 28 - 0
src/main/java/cn/cslg/pas/domain/business/CourtOrder.java

@@ -0,0 +1,28 @@
+package cn.cslg.pas.domain.business;
+
+import cn.cslg.pas.domain.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+/**
+ * 法院判决表
+ * @Author xiexiang
+ * @Date 2023/12/22
+ */
+@Data
+@TableName("court_order")
+public class CourtOrder extends BaseEntity<CourtOrder> {
+
+    /**
+     * 报告事务id
+     */
+    @TableField(value = "report_affair_id")
+    private Integer reportAffairId;
+
+    /**
+     * 结论
+     */
+    @TableField(value = "conclusion")
+    private String conclusion;
+}

+ 9 - 0
src/main/java/cn/cslg/pas/mapper/CourtOrderMapper.java

@@ -0,0 +1,9 @@
+package cn.cslg.pas.mapper;
+
+import cn.cslg.pas.domain.business.CourtOrder;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springframework.stereotype.Repository;
+
+@Repository
+public interface CourtOrderMapper extends BaseMapper<CourtOrder> {
+}

+ 25 - 4
src/main/java/cn/cslg/pas/service/business/AdminProceedService.java

@@ -8,18 +8,18 @@ import cn.cslg.pas.common.dto.invalidDTO.UpdateJudgmentDTO;
 import cn.cslg.pas.common.vo.invalidVO.AdminProceedVO;
 import cn.cslg.pas.common.vo.invalidVO.JudgementVO;
 import cn.cslg.pas.common.vo.invalidVO.OralTrailVO;
-import cn.cslg.pas.domain.business.AdminProceed;
-import cn.cslg.pas.domain.business.AssoReportAffairFile;
-import cn.cslg.pas.domain.business.OralTrail;
-import cn.cslg.pas.domain.business.ReportAffair;
+import cn.cslg.pas.domain.BaseEntity;
+import cn.cslg.pas.domain.business.*;
 import cn.cslg.pas.exception.XiaoShiException;
 import cn.cslg.pas.mapper.AdminProceedMapper;
 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.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -37,6 +37,9 @@ public class AdminProceedService extends ServiceImpl<AdminProceedMapper, AdminPr
     @Autowired
     private AssoReportAffairFileService assoReportAffairFileService;
 
+    @Autowired
+    private CourtOrderService courtOrderService;
+
     /**
      * 上传行政诉讼书
      * @param addDto
@@ -169,6 +172,13 @@ public class AdminProceedService extends ServiceImpl<AdminProceedMapper, AdminPr
         if (reportAffairId == null) {
             throw new XiaoShiException("上传报告事务失败");
         }
+
+        //2.创建法院判决书
+        CourtOrder courtOrder = new CourtOrder();
+        courtOrder.setConclusion(addJudgmentDTO.getConclusion());
+        courtOrder.setReportAffairId(reportAffairId);
+        courtOrder.insert();
+
         //3. 添加报告事务与文件关联
         List<String> fileGuids = addJudgmentDTO.getFileGuids();
         if (fileGuids != null && !fileGuids.isEmpty()) {
@@ -201,6 +211,17 @@ public class AdminProceedService extends ServiceImpl<AdminProceedMapper, AdminPr
         if (projectId == null) {
             throw new XiaoShiException("报告id为空");
         }
+        //1.拿到报告事务id,获取法院判别书,并更新
+        List<CourtOrder> courtOrders = courtOrderService.list(new LambdaQueryWrapper<CourtOrder>()
+                .eq(CourtOrder::getReportAffairId, reportAffairId)
+                .orderByDesc(BaseEntity::getId));
+        if (!CollectionUtils.isEmpty(courtOrders)) {
+            CourtOrder courtOrder = courtOrders.get(0);
+            CourtOrder court = courtOrderService.getById(courtOrder.getId());
+            court.setConclusion(updateJudgmentDTO.getConclusion());
+            court.updateById();
+        }
+
         //2. 拿到报告事务id,获取报告事务
         ReportAffair reportAffair = reportAffairService.getById(reportAffairId);
         reportAffair.setProjectId(projectId);

+ 19 - 0
src/main/java/cn/cslg/pas/service/business/CourtOrderService.java

@@ -0,0 +1,19 @@
+package cn.cslg.pas.service.business;
+
+import cn.cslg.pas.domain.business.CourtOrder;
+import cn.cslg.pas.mapper.CourtOrderMapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+/**
+ * 法院判决Service层
+ *
+ * @Author xiexiang
+ * @Date 2023/12/23
+ */
+@Slf4j
+@Service
+public class CourtOrderService extends ServiceImpl<CourtOrderMapper, CourtOrder> {
+
+}

+ 21 - 6
src/main/java/cn/cslg/pas/service/business/InvalidRecordService.java

@@ -10,6 +10,7 @@ import cn.cslg.pas.common.utils.LoginUtils;
 import cn.cslg.pas.common.utils.StringUtils;
 import cn.cslg.pas.common.vo.business.InvalidRecordVO;
 import cn.cslg.pas.common.vo.business.ReportVO;
+import cn.cslg.pas.domain.BaseEntity;
 import cn.cslg.pas.domain.business.*;
 import cn.cslg.pas.exception.XiaoShiException;
 import cn.cslg.pas.mapper.InvalidRecordMapper;
@@ -22,6 +23,7 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -77,6 +79,9 @@ public class InvalidRecordService extends ServiceImpl<InvalidRecordMapper, Inval
     @Autowired
     private AssoReportAffairFileService assoReportAffairFileService;
 
+    @Autowired
+    private CourtOrderService courtOrderService;
+
     /**
      * 新增or更新
      * @param invalidRecordDTO
@@ -255,6 +260,7 @@ public class InvalidRecordService extends ServiceImpl<InvalidRecordMapper, Inval
                         invalidRecordVO.setInvalidTime(invalidTime);
                         Integer judgeType = 5;
                         Date judgeTime = this.loadInvalidTime(judgeType, item);
+
                         invalidRecordVO.setJudgementTime(judgeTime);
                         invalidRecordVO.setCreateId(project.getCreateId());
                         invalidRecordVO.setCreateTime(project.getCreateTime());
@@ -295,6 +301,7 @@ public class InvalidRecordService extends ServiceImpl<InvalidRecordMapper, Inval
     }
 
     public String loadResult(Integer type, ReportProject reportProject){
+        String result = "";
         LambdaQueryWrapper<ReportAffair> queryWrapper = new LambdaQueryWrapper<>();
         queryWrapper.eq(ReportAffair::getAffairType, type)
                 .eq(ReportAffair::getProjectId, reportProject.getProjectId())
@@ -302,7 +309,14 @@ public class InvalidRecordService extends ServiceImpl<InvalidRecordMapper, Inval
                 .last("LIMIT 1");
         ReportAffair reportAffair = reportAffairService.getOne(queryWrapper, false);
         if (reportAffair != null) {
-            return reportAffair.getDescription();
+            Integer reportAffairId = reportAffair.getId();
+            List<CourtOrder> courtOrders = courtOrderService.list(new LambdaQueryWrapper<CourtOrder>()
+                    .eq(CourtOrder::getReportAffairId, reportAffairId)
+                    .orderByDesc(BaseEntity::getId));
+            if (!CollectionUtils.isEmpty(courtOrders)) {
+                CourtOrder courtOrder = courtOrders.get(0);
+                result = courtOrder.getConclusion();
+            }
         } else {
             Integer affairType = 3;
             LambdaQueryWrapper<ReportAffair> invalidRecordWrapper = new LambdaQueryWrapper<>();
@@ -317,14 +331,15 @@ public class InvalidRecordService extends ServiceImpl<InvalidRecordMapper, Inval
                 invalidDecisionFileWrapper.eq(InvalidDecisionFile::getReportAffairId, reportAffairId2);
                 InvalidDecisionFile invalidDecisionFile = invalidDecisionFileService.getOne(invalidDecisionFileWrapper, false);
                 if (invalidDecisionFile != null) {
-                    return invalidDecisionFile.getDecisionKey();
-                } else {
-                    return null;
+                    if (StringUtils.isNotEmpty(invalidDecisionFile.getConclusion())) {
+                        result = invalidDecisionFile.getConclusion();
+                    } else {
+                        result = invalidDecisionFile.getDecisionKey();
+                    }
                 }
-            } else {
-                return null;
             }
         }
+        return result;
     }
 
 

+ 16 - 0
src/main/java/cn/cslg/pas/service/business/ReportAffairService.java

@@ -8,6 +8,7 @@ import cn.cslg.pas.common.model.cronModel.SystemFile;
 import cn.cslg.pas.common.utils.CacheUtils;
 import cn.cslg.pas.common.utils.LoginUtils;
 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.ReportAffairMapper;
@@ -21,6 +22,7 @@ import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
 import org.springframework.web.bind.annotation.RequestBody;
 
 import java.io.IOException;
@@ -62,6 +64,8 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
     @Autowired
     @Lazy
     private OtherDocumentsService otherDocumentsService;
+    @Autowired
+    private CourtOrderService courtOrderService;
 
     /**
      * 创建报告事务
@@ -108,6 +112,10 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
                     LambdaQueryWrapper<InvalidDecisionFile> queryWrapper1 = new LambdaQueryWrapper<>();
                     queryWrapper1.eq(InvalidDecisionFile::getReportAffairId, id);
                     invalidDecisionFileService.remove(queryWrapper1);
+                } else if (reportAffair.getAffairType().equals(5)) {//行政诉讼判决书
+                    LambdaQueryWrapper<CourtOrder> queryWrapper1 = new LambdaQueryWrapper<>();
+                    queryWrapper1.eq(CourtOrder::getReportAffairId, id);
+                    courtOrderService.remove(queryWrapper1);
                 } else if (reportAffair.getAffairType().equals(8)) {//其他文档
                     LambdaQueryWrapper<OtherDocuments> queryWrapper1 = new LambdaQueryWrapper<>();
                     queryWrapper1.eq(OtherDocuments::getReportAffairId, id);
@@ -380,6 +388,14 @@ public class ReportAffairService extends ServiceImpl<ReportAffairMapper, ReportA
     public void loadJudgment(ReportAffairVO reportAffairVO) {
         Integer reportAffairId = reportAffairVO.getId();
         JudgementVO judgementVO = adminProceedService.getJudgment(reportAffairId);
+        //获取判决书结论
+        List<CourtOrder> courtOrders = courtOrderService.list(new LambdaQueryWrapper<CourtOrder>()
+                .eq(CourtOrder::getReportAffairId, reportAffairId)
+                .orderByDesc(BaseEntity::getId));
+        if (!CollectionUtils.isEmpty(courtOrders)) {
+            CourtOrder courtOrder = courtOrders.get(0);
+            judgementVO.setConclusion(courtOrder.getConclusion());
+        }
         reportAffairVO.setJudgementVO(judgementVO);
     }
 

+ 0 - 2
src/test/java/cn/cslg/pas/service/PDFBoxTests.java

@@ -1,7 +1,5 @@
 package cn.cslg.pas.service;
 
-import com.spire.pdf.PdfDocument;
-import com.spire.pdf.PdfPageBase;
 import org.apache.pdfbox.contentstream.operator.Operator;
 import org.apache.pdfbox.cos.*;
 import org.apache.pdfbox.pdfparser.PDFStreamParser;