lwhhszx 2 anni fa
parent
commit
18709a3ad6

+ 4 - 0
RMS/pom.xml

@@ -174,6 +174,10 @@
             <artifactId>pagehelper</artifactId>
             <version>5.3.0</version>
         </dependency>
+        <dependency>
+            <groupId>org.projectlombok</groupId>
+            <artifactId>lombok</artifactId>
+        </dependency>
 
     </dependencies>
 

+ 5 - 2
RMS/src/main/java/cn/cslg/report/common/model/dto/ReportDTO.java

@@ -2,12 +2,15 @@ package cn.cslg.report.common.model.dto;
 
 import cn.cslg.report.common.model.BaseEntity;
 import cn.cslg.report.entity.ReportFiles;
-import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.*;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
 import lombok.experimental.Accessors;
 
+
 import java.util.Date;
 import java.util.List;
 

+ 94 - 0
RMS/src/main/java/cn/cslg/report/common/model/dto/invalidReReport/InvalidReasonDTO.java

@@ -0,0 +1,94 @@
+package cn.cslg.report.common.model.dto.invalidReReport;
+
+import cn.cslg.report.entity.Features;
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.models.security.SecurityScheme;
+import lombok.Data;
+
+import java.util.Date;
+import java.util.List;
+
+@Data
+public class InvalidReasonDTO {
+    /**
+     * 无效理由(0权利要求不清楚 1说明书公开不充分 2不具备创造性 3不具备新颖性)
+     */
+    private Integer invalidName;
+
+    /**
+     * 报告id
+     */
+
+    private Integer reportId;
+
+    /**
+     * 涉及内容(0为说明书,其他为权要id
+     */
+
+    private Integer content;
+
+    /**
+     * 选择特征
+     */
+    private List<featuresIn> features;
+    /**
+     * 相关证据
+     */
+
+    private String proofStr;
+
+    /**
+     * 陈述意见
+     */
+
+    private String argument_str;
+
+    /**
+     * 复审委意见
+     */
+    private String comOptions;
+
+    /**
+     * 法院意见
+     */
+    private String courtOptions;
+
+    /**
+     * 证据组合
+     */
+    private List<proofGroupIn> proofGroups;
+
+
+       @Data
+    public static class proofGroupIn{
+           private Integer id;
+        /**
+         * 描述
+         */
+        private String description;
+
+        /**
+         * 陈述意见
+         */
+        private String argument_str;
+
+        private List<Integer> proofIds;
+
+    }
+
+    @Data
+    public static class featuresIn{
+        private Integer id;
+        /**
+         * 特征内容
+         */
+        private String featureStr;
+        /**
+         * 内容起始位置
+         */
+        private Integer position;
+
+
+
+    }
+}

+ 23 - 0
RMS/src/main/java/cn/cslg/report/common/model/dto/invalidReReport/InvalidReasonSearchDTO.java

@@ -0,0 +1,23 @@
+package cn.cslg.report.common.model.dto.invalidReReport;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class InvalidReasonSearchDTO {
+    /**
+     * 无效理由(0权利要求不清楚 1说明书公开不充分 2不具备创造性 3不具备新颖性)
+     */
+    private Integer invalidName;
+
+    /**
+     * 报告id
+     */
+
+    private Integer reportId;
+
+
+
+
+}

+ 67 - 0
RMS/src/main/java/cn/cslg/report/controller/InvalidReReport/InvalidReasonController.java

@@ -0,0 +1,67 @@
+package cn.cslg.report.controller.InvalidReReport;
+
+import cn.cslg.report.common.core.base.Constants;
+import cn.cslg.report.common.model.dto.ShareReportDTO;
+import cn.cslg.report.common.model.dto.invalidReReport.InvalidReasonDTO;
+import cn.cslg.report.common.utils.Response;
+import cn.cslg.report.entity.invalidReReport.InvalidReason;
+import cn.cslg.report.service.business.InvalidReReport.InvalidReasonService;
+import cn.cslg.report.service.business.InvalidReReport.ProofService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.web.bind.annotation.*;
+
+import java.io.IOException;
+import java.util.List;
+
+/**
+ * 无效理由据管理的控制层
+ *
+ * @Author lrj
+ * @Data 2023/4/1
+ */
+@Tag(name = "无效理由和证据管理")
+@Slf4j
+@RequiredArgsConstructor
+@RestController
+@RequestMapping(Constants.REPORT_API + "/invalidReason")
+public class InvalidReasonController {
+    private final InvalidReasonService invalidReasonService;
+
+    @Operation(summary = "添加无效理由和证据")
+    @PostMapping("/addInvalidReason")
+    public String addInvalidReason(@RequestBody InvalidReasonDTO invalidReasonDTO) {
+       invalidReasonService.addInvalidReason(invalidReasonDTO);
+        return Response.success();
+    }
+
+
+    @Operation(summary = "删除无效理由和证据")
+    @PostMapping("/deleteInvalidReason")
+    public String deleteInvalidReason(@RequestBody List<Integer> ids) {
+        invalidReasonService.deleteInvalidReason(ids);
+        return Response.success();
+    }
+
+
+    @Operation(summary = "更新无效理由和证据")
+    @PostMapping("/updateInvalidReason")
+    public String updateInvalidReason(@RequestBody InvalidReasonDTO invalidReasonDTO) throws IOException {
+
+        return Response.success();
+    }
+    @Operation(summary = "查找无效理由和证据")
+    @GetMapping("/queryInvalidReason")
+    public String queryInvalidReason(int reportId) throws IOException {
+
+        return Response.success();
+    }
+    @Operation(summary = "查询无效理由和证据详情")
+    @PostMapping("/queryInvalidReasonDetail")
+    public String queryInvalidReasonDetail(@RequestBody InvalidReasonDTO InvalidReasonDTO) throws IOException {
+
+        return Response.success();
+    }
+}

+ 4 - 4
RMS/src/main/java/cn/cslg/report/controller/InvalidReReport/ProofController.java

@@ -33,15 +33,15 @@ public class ProofController {
     @Operation(summary = "上传专利文献证据(文件)")
     @PostMapping("/addPatentProofByFile")
     public String addPatentProofByFile(@RequestBody ShareReportDTO shareReportDTO) {
-        proofService.
-        return Response.success(flag);
+
+        return Response.success();
     }
 
 
     @Operation(summary = "上传非专利文献证据")
     @PostMapping("/addProofByFile")
     public String addProofByFile(@RequestBody ShareReportDTO shareReportDTO) {
-        proofService
+
         return Response.success();
     }
 
@@ -50,7 +50,7 @@ public class ProofController {
     @PostMapping("/addPatentFile")
     public String addPatentFile(@RequestBody ShareReportDTO shareReportDTO) throws IOException {
 
-        return Response.success(assoReportPersonService.showShare(shareReportDTO));
+        return Response.success();
     }
 
 }

+ 38 - 0
RMS/src/main/java/cn/cslg/report/entity/invalidReReport/AssoInReasonFeatures.java

@@ -0,0 +1,38 @@
+package cn.cslg.report.entity.invalidReReport;
+
+import cn.cslg.report.common.model.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 陈述意见表
+ *
+ * @Author xiexiang
+ * @Date 2023/6/28
+ */
+@Data
+@TableName(value = "ASSO_INREASON_FEATURES")
+public class AssoInReasonFeatures extends BaseEntity<AssoInReasonFeatures> {
+    /**
+     * 特征id
+     */
+    @TableField("FEATURES_ID")
+    private Integer featuresID;
+
+    /**
+     * 无效理由id
+     */
+    @TableField("INREASON_ID")
+    private Integer invalidReasonId;
+
+    /**
+     * 创建人
+     */
+    @TableField("POSITION")
+    private Integer position;
+
+
+}

+ 0 - 12
RMS/src/main/java/cn/cslg/report/entity/invalidReReport/InvalidReason.java

@@ -47,18 +47,6 @@ public class InvalidReason extends BaseEntity<InvalidReason> {
     private String argument_str;
 
     /**
-     * 权要id
-     */
-    @TableField("RIGHT_ID")
-    private Integer rightId;
-
-    /**
-     * 特征id
-     */
-    @TableField("FEATURE_ID")
-    private Integer featureId;
-
-    /**
      * 复审委意见
      */
     @TableField("COM_OPTIONS")

+ 19 - 0
RMS/src/main/java/cn/cslg/report/mapper/InvalidReReport/ArgumentsMapper.java

@@ -0,0 +1,19 @@
+package cn.cslg.report.mapper.InvalidReReport;
+
+import cn.cslg.report.entity.invalidReReport.Arguments;
+import cn.cslg.report.entity.invalidReReport.AssoArguments;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springframework.stereotype.Repository;
+
+/**
+ *
+ *陈述意见Mapper层
+ * @Author 李仁杰
+ * @Date 2023/6/30
+ */
+@Repository
+public interface ArgumentsMapper extends BaseMapper<Arguments> {
+
+
+}
+

+ 14 - 0
RMS/src/main/java/cn/cslg/report/mapper/InvalidReReport/InvalidReasonMapper.java

@@ -0,0 +1,14 @@
+package cn.cslg.report.mapper.InvalidReReport;
+
+import cn.cslg.report.entity.invalidReReport.InvalidReReport;
+import cn.cslg.report.entity.invalidReReport.InvalidReason;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * 无效应对报告的Mapper层接口
+ *
+ * @Author chenyu
+ * @Date 2023/7/3
+ */
+public interface InvalidReasonMapper extends BaseMapper<InvalidReason> {
+}

+ 19 - 0
RMS/src/main/java/cn/cslg/report/service/business/InvalidReReport/ArgumentsService.java

@@ -0,0 +1,19 @@
+package cn.cslg.report.service.business.InvalidReReport;
+
+import cn.cslg.report.entity.invalidReReport.Arguments;
+import cn.cslg.report.entity.invalidReReport.AssoArguments;
+import cn.cslg.report.mapper.InvalidReReport.ArgumentsMapper;
+import cn.cslg.report.mapper.InvalidReReport.AssoArgumentsMapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.context.annotation.Lazy;
+import org.springframework.stereotype.Service;
+
+
+@Service
+@Slf4j
+@RequiredArgsConstructor(onConstructor_ = {@Lazy})
+public class ArgumentsService extends ServiceImpl<ArgumentsMapper,Arguments> {
+
+}

+ 107 - 0
RMS/src/main/java/cn/cslg/report/service/business/InvalidReReport/InvalidReasonService.java

@@ -0,0 +1,107 @@
+package cn.cslg.report.service.business.InvalidReReport;
+
+import cn.cslg.report.common.model.dto.ShareReportDTO;
+import cn.cslg.report.common.model.dto.invalidReReport.InvalidReasonDTO;
+import cn.cslg.report.common.utils.Response;
+import cn.cslg.report.entity.Template;
+import cn.cslg.report.entity.invalidReReport.InvalidReason;
+import cn.cslg.report.mapper.InvalidReReport.InvalidReasonMapper;
+import cn.cslg.report.mapper.TemplateMapper;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import io.swagger.v3.oas.annotations.Operation;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.context.annotation.Lazy;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+
+import java.io.IOException;
+import java.util.List;
+
+
+@Service
+@Slf4j
+@RequiredArgsConstructor(onConstructor_ = {@Lazy})
+public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, InvalidReason> {
+    /**
+     * 添加无效理由和证据
+     * @param invalidReasonDTO 无效理由和证据Dto类
+     * @return
+     */
+    @Transactional(rollbackFor = Exception.class)
+    public String addInvalidReason(InvalidReasonDTO invalidReasonDTO) {
+      //判断invalidName的类型
+        // 若类型为2,3则proofGroups不能为空,features不能为空
+
+        //复制DTO类字段到InvalidReason实体类并保存入库
+        //若类型为2,3根据proofGroups保存 proofGroup
+        //若类型为2,3检查features是否有交集(根据位置和字符串长度判断)若有则返回
+        //若类型为2,3根据features保存 Feature(标的专利号(根据报告id查询标的专利号),权要id(DTO类的content字段),特征内容,报告id)
+        //若类型为2,3根据features保存 feature和 invalidReson关联表(特征id,invalidReasonId,位置)
+        return Response.success();
+
+    }
+
+    /**
+     *
+     * @param ids 无效理由id
+     * @return
+     * @throws IOException
+     */
+    @Transactional(rollbackFor = Exception.class)
+    public String deleteInvalidReason(List<Integer> ids) {
+          //判断ids是否为空 ,为空则返回
+         //根据ids删除feature和 invalidReson关联表内容
+        //根据ids删除proofGroup表内容
+        //根据ids删除InvalidReason内容
+        return Response.success();
+    }
+
+    /**
+     * 更新无效理由和证据
+     * @param invalidReasonDTO
+     * @return
+     */
+    @Transactional(rollbackFor = Exception.class)
+    public  String updateInvalidReason(@RequestBody InvalidReasonDTO invalidReasonDTO) {
+        //判断invalidName的类型
+        // 若类型为2,3则proofGroups不能为空,features不能为空
+        //复制DTO类字段到InvalidReason实体类并更新入库
+        //若类型为2,3根据proofGroups更新 proofGroup
+           //查询该无效应对报告的所有证据组合
+           //过滤出proofGroups的id,和无效应对报告的所有证据组合id作差,并且删除所有的差值证据组合
+          //若 proofGroups里的对象的id为空则直接插入
+          //若 proofGroups里的对象的id不为空则更新
+        //若类型为2,3检查features是否有交集(根据位置和字符串长度判断)若有则返回
+        //查询该无效应对报告的所有特征和无效理由关联记录
+        //过滤出features的id,和无效应对报告的所有特征和无效理由关联记录的特征id作差,并且删除所有的差值的特征和无效理由关联记录;
+     //若类型为2,3检查id为空的features和查出来的features以及本列表中的features是否有交集(根据位置和字符串长度判断)若有则抛出异常
+        //无则插入
+        return Response.success();
+
+    }
+
+    /**
+     * 更新无效理由和证据
+     * @param
+     * @return
+     */
+    @Transactional(rollbackFor = Exception.class)
+    public  String queryInvalidReason(int reportId) {
+        //根据报告id查询无效理由
+        ///若类型为2,3则查询证据组合和特征并装载
+        return Response.success();
+
+    }
+
+    public String queryInvalidReasonDetail(@RequestBody ShareReportDTO shareReportDTO) throws IOException {
+        //根据报告id查询无效理由
+        ///若类型为2,3则查询证据组合和特征并装载
+        return Response.success();
+    }
+}