chenyi преди 2 години
родител
ревизия
ac21db071f

+ 57 - 0
RMS/src/main/java/cn/cslg/report/common/model/vo/CompareRecordsVO.java

@@ -0,0 +1,57 @@
+package cn.cslg.report.common.model.vo;
+/*
+  对应前台传输的对比专利信息
+ */
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+import java.util.List;
+@Data
+@Accessors(chain = true)
+
+public class CompareRecordsVO {
+    /**
+     * 专利号
+     */
+    @Schema(description = "专利号")
+    private String patentNo;
+    /**
+     * 位置
+     */
+    @Schema(description = "位置")
+    private String position;
+
+    /**
+     * 内容
+     */
+    @Schema(description = "内容")
+    private String content;
+    @Schema(description = "报告ID")
+    private String reportId;
+    @Schema(description = "对比人ID")
+    private String personId;
+    @Schema(description = "特征和特征id")
+    private List<DFeatureObjects> DFeatureObjects;
+
+    @Data
+    public static class DFeatureObjects {
+        /**
+         * 特征ID
+         */
+        private String featuresId;
+        /**
+         * 特征
+         */
+        private String features;
+
+    }
+
+
+
+
+
+
+}

+ 1 - 0
RMS/src/main/java/cn/cslg/report/controller/BaseController.java

@@ -155,4 +155,5 @@ public class BaseController {
     }
 
 
+
 }

+ 56 - 0
RMS/src/main/java/cn/cslg/report/controller/CompareRecordsController.java

@@ -0,0 +1,56 @@
+package cn.cslg.report.controller;
+
+import cn.cslg.report.common.core.base.Constants;
+import cn.cslg.report.common.model.vo.CompareRecordsVO;
+import cn.cslg.report.common.utils.Response;
+import cn.cslg.report.service.business.CompareRecordsService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.RequiredArgsConstructor;
+import org.springframework.context.annotation.Lazy;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.*;
+
+import java.io.IOException;
+
+@Tag(name = "对比记录")
+@RestController
+@RequestMapping(Constants.REPORT_API + "/CompareRecords")
+@RequiredArgsConstructor(onConstructor_ = {@Lazy})
+public class CompareRecordsController {
+    private final CompareRecordsService compareRecordsService;
+    @PostMapping(value = "/addCompareRecords")
+    @Operation(summary = "增加对比记录数据")
+    public String addCompareRecords(@RequestBody CompareRecordsVO compareRecordsVO)throws IOException{
+        if (compareRecordsVO != null) {
+
+            return compareRecordsService.addCompareRecords(compareRecordsVO);
+
+        } else {
+            return Response.error("网络异常");
+        }
+
+    }
+    @RequestMapping(value = "/deleCompareRecords", method = RequestMethod.GET)
+    @Operation(summary = "删除对比记录数据")
+    public String deleCompareRecords(int id) throws IOException{
+        return compareRecordsService.deleCompareRecords(id);
+    }
+    @PostMapping(value = "/updateCompareRecords")
+    @Operation(summary = "修改对比记录数据")
+    @Transactional(rollbackFor = Exception.class)
+    public String updateCompareRecords(@RequestBody CompareRecordsVO compareRecordsVO) throws IOException{
+        if(compareRecordsVO !=null){
+            return compareRecordsService.updateCompareRecords(compareRecordsVO);
+        }
+        return Response.error("网络异常");
+    }
+    @PostMapping(value = "/slectCompareRecords")
+    @Operation(summary = "分页查询对比记录数据")
+    public String slectCompareRecords(@RequestBody CompareRecordsVO compareRecordsVO) throws IOException{
+        return compareRecordsService.find(compareRecordsVO);
+    }
+
+
+
+}

+ 26 - 0
RMS/src/main/java/cn/cslg/report/mapper/CompareRecordsMapper.java

@@ -0,0 +1,26 @@
+package cn.cslg.report.mapper;
+
+import cn.cslg.report.common.model.vo.CompareRecordsVO;
+import cn.cslg.report.entity.CompareRecords;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+
+@Mapper
+public interface CompareRecordsMapper {
+    int add(CompareRecords compareRecords);
+    int deleCompareRecords(@Param("id")int id);
+    int updateCompareRecords(CompareRecords compareRecords);
+    /*
+    现未经过实践有待改善xml也要改
+     */
+    List<CompareRecords> find(CompareRecordsVO compareRecordsVO);
+    /*
+     /*
+    现未经过实践有待改善xml也要改
+
+     */
+    int total(CompareRecords compareRecords);
+}

+ 79 - 0
RMS/src/main/java/cn/cslg/report/service/business/CompareRecordsService.java

@@ -0,0 +1,79 @@
+package cn.cslg.report.service.business;
+
+import cn.cslg.report.common.model.vo.CompareRecordsVO;
+import cn.cslg.report.common.utils.Response;
+import cn.cslg.report.entity.CompareRecords;
+import cn.cslg.report.mapper.CompareRecordsMapper;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.context.annotation.Lazy;
+import org.springframework.stereotype.Service;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@Service
+@Slf4j
+@RequiredArgsConstructor(onConstructor_ = {@Lazy})
+public class CompareRecordsService {
+    public final CompareRecordsMapper compareRecordsMapper;
+    public String addCompareRecords(CompareRecordsVO compareRecordsVO)throws IOException{
+        List<CompareRecordsVO.DFeatureObjects> featureObjects = compareRecordsVO.getDFeatureObjects();
+        for(CompareRecordsVO.DFeatureObjects a:featureObjects){
+            CompareRecords compareRecords=new CompareRecords();
+            compareRecords.setReportId(compareRecordsVO.getReportId());
+            compareRecords.setContent(compareRecordsVO.getContent());
+            compareRecords.setFeatures(a.getFeatures());
+            compareRecords.setFeaturesId(a.getFeaturesId());
+            compareRecords.setPatentNo(compareRecordsVO.getPatentNo());
+            compareRecords.setPersonId(compareRecordsVO.getPersonId());
+            compareRecords.setPosition(compareRecordsVO.getPosition());
+            compareRecordsMapper.add(compareRecords);
+        }
+
+        return Response.success();
+    }
+    public String deleCompareRecords(int id) throws IOException{
+        compareRecordsMapper.deleCompareRecords(id);
+        return Response.success();
+    }
+    public String updateCompareRecords(CompareRecordsVO compareRecordsVO)throws IOException{
+        List<CompareRecordsVO.DFeatureObjects> featureObjects = compareRecordsVO.getDFeatureObjects();
+        for(CompareRecordsVO.DFeatureObjects a:featureObjects){
+            CompareRecords compareRecords=new CompareRecords();
+            compareRecords.setReportId(compareRecordsVO.getReportId());
+            compareRecords.setContent(compareRecordsVO.getContent());
+            compareRecords.setFeatures(a.getFeatures());
+            compareRecords.setFeaturesId(a.getFeaturesId());
+            compareRecords.setPatentNo(compareRecordsVO.getPatentNo());
+            compareRecords.setPersonId(compareRecordsVO.getPersonId());
+            compareRecords.setPosition(compareRecordsVO.getPosition());
+            compareRecordsMapper.updateCompareRecords(compareRecords);
+        }
+        return Response.success();
+    }
+    public String find(CompareRecordsVO compareRecordsVO) throws IOException{
+        List<CompareRecordsVO.DFeatureObjects> featureObjects = compareRecordsVO.getDFeatureObjects();
+        List<CompareRecords> list=new ArrayList<>();
+        for(CompareRecordsVO.DFeatureObjects a:featureObjects){
+            CompareRecords compareRecords=new CompareRecords();
+            compareRecords.setReportId(compareRecordsVO.getReportId());
+            compareRecords.setContent(compareRecordsVO.getContent());
+            compareRecords.setFeatures(a.getFeatures());
+            compareRecords.setFeaturesId(a.getFeaturesId());
+            compareRecords.setPatentNo(compareRecordsVO.getPatentNo());
+            compareRecords.setPersonId(compareRecordsVO.getPersonId());
+            compareRecords.setPosition(compareRecordsVO.getPosition());
+           list = compareRecordsMapper.find(compareRecordsVO);
+
+        }
+        Map<String,Object> map=new HashMap<>();
+        map.put("list",list);
+        return Response.success(map);
+    }
+
+
+}

+ 2 - 2
RMS/src/main/resources/application.yml

@@ -67,6 +67,6 @@ mybatis-plus:
     map-underscore-to-camel-case: true
     cache-enabled: false
   mapper-locations: classpath:mapper/*.xml
-PCSUrl: http://192.168.1.4:8880
-PASUrl: http://192.168.1.4:8879
+PCSUrl: http://192.168.1.17:8880
+PASUrl: http://192.168.1.17:8879
 

+ 94 - 0
RMS/src/main/resources/mapper/CompareRecordsMapper.xml

@@ -0,0 +1,94 @@
+<?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.report.mapper.CompareRecordsMapper">
+    <insert id="add">
+        insert into COMPARE_RECORDS (PATENT_NO,POSITION,CONTENT,FEATURES_ID,FEATURES,PERSON_ID,REPORT_ID) values(patentNo,position,content,featuresId,features,personId,reportId)
+    </insert>
+<delete id="deleCompareRecords">
+    delete from COMPARE_RECORDS where id=#{id}
+</delete>
+<update id="updateCompareRecords">
+    update COMPARE_RECORDS
+<set>
+    <if test="patentNo !='' and patentNo !=null">
+        PATENT_NO=#{PATENT_NO}
+    </if>
+    <if test="position !='' and position !=null">
+        POSITION=#{position}
+    </if>
+    <if test="content !='' and content !=null">
+        CONTENT=#{content}
+    </if>
+    <if test="featuresId !='' and featuresId !=null">
+        FEATURES_ID=#{featuresId}
+    </if>
+    <if test="features !='' and features !=null">
+        FEATURES=#{features}
+    </if>
+    <if test="personId !='' and personId !=null">
+        PERSON_ID=#{PATENT_NO}
+    </if>
+    <if test="reportId !='' and reportId !=null">
+        REPORT_ID=#{reportId}
+    </if>
+</set>
+  where id=#{id}
+</update>
+    <select id="total" resultType="int">
+        select count(*) from COMPARE_RECORDS
+
+    <where>
+        <if test="patentNo !='' and patentNo !=null">
+           PATENT_NO like concat('%', #{patentNo}, '%')
+        </if>
+        <if test="position !='' and position !=null">
+           and POSITION like concat('%', #{position}, '%')
+        </if>
+        <if test="content !='' and content !=null">
+           and CONTENT like concat('%', #{content}, '%')
+        </if>
+        <if test="featuresId !='' and featuresId !=null">
+           and FEATURES_ID like concat('%', #{featuresId}, '%')
+        </if>
+        <if test="features !='' and features !=null">
+           and FEATURES like concat('%', #{featuresId}, '%')
+        </if>
+        <if test="personId !='' and personId !=null">
+           and PERSON_ID like concat('%', #{personId}, '%')
+        </if>
+        <if test="reportId !='' and reportId !=null">
+          and REPORT_ID like concat('%', #{reportId}, '%')
+        </if>
+    </where>
+    </select>
+    <select id="find" resultType="cn.cslg.report.entity.CompareRecords">
+      <bind name="n" value="(pageNO-1)pageSize"/>
+       select * from COMPARE_RECORDS
+        <where>
+            <if test="patentNo !='' and patentNo !=null">
+              PATENT_NO like concat('%', #{patentNo}, '%')
+            </if>
+            <if test="position !='' and position !=null">
+                and POSITION like concat('%', #{position}, '%')
+            </if>
+            <if test="content !='' and content !=null">
+                and CONTENT like concat('%', #{content}, '%')
+            </if>
+            <if test="featuresId !='' and featuresId !=null">
+                and FEATURES_ID like concat('%', #{featuresId}, '%')
+            </if>
+            <if test="features !='' and features !=null">
+                and FEATURES like concat('%', #{featuresId}, '%')
+            </if>
+            <if test="personId !='' and personId !=null">
+                and PERSON_ID like concat('%', #{personId}, '%')
+            </if>
+            <if test="reportId !='' and reportId !=null">
+                and REPORT_ID like concat('%', #{reportId}, '%')
+            </if>
+        </where>
+          limit #{n},#{pageSize}
+    </select>
+
+
+</mapper>