Browse Source

Merge remote-tracking branch 'origin/master'

# Conflicts:
#	RMS/src/main/java/cn/cslg/report/entity/CompareFiles.java
#	RMS/src/main/java/cn/cslg/report/service/business/CompareFilesService.java
#	RMS/src/main/resources/application.yml
#	logs/rms/rms-debug.2022-11-29.0.log
#	logs/rms/rms-debug.2022-11-30.0.log
#	logs/rms/rms-info.2022-11-29.0.log
#	logs/rms/rms-info.2022-11-30.0.log
lwhhszx 2 years ago
parent
commit
517cc3d180

+ 38 - 0
RMS/src/main/java/cn/cslg/report/common/model/vo/CompareFileVO.java

@@ -0,0 +1,38 @@
+package cn.cslg.report.common.model.vo;
+
+import cn.cslg.report.entity.ReportField;
+
+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 CompareFileVO {
+@Schema(description = "报告id")
+    private Integer reportId;
+
+    @Schema(description = "专利号ID")
+    private String patentNo;
+
+
+    @Schema(description = "标引")
+    private String remark;
+
+    @Schema(description = "状态")
+    private String state;
+    @Schema(description = "自定义字段的集合")
+    private List<ReportField> list;
+    @Schema(description = "自定义字段的id的集合")
+    private List<Integer> ReportFieldIDlist;
+    @Schema(description = "自定义字段类型")
+    private int type;
+//    private List obj;
+//    @Schema(description = "栏位数组")
+//    private List<String> str;
+//    @Schema(description = "类型")
+//     private Integer type;
+
+
+}

+ 25 - 12
RMS/src/main/java/cn/cslg/report/controller/CompareFilesController.java

@@ -1,18 +1,19 @@
 package cn.cslg.report.controller;
 
 import cn.cslg.report.common.core.base.Constants;
+import cn.cslg.report.common.model.vo.CompareFileVO;
 import cn.cslg.report.entity.CompareFiles;
 import cn.cslg.report.service.business.CompareFilesService;
+
 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.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import java.io.IOException;
+import java.util.List;
+
 
 @Tag(name = "初选")
 @RestController
@@ -20,10 +21,10 @@ import java.io.IOException;
 @RequiredArgsConstructor(onConstructor_ = {@Lazy})
 public class CompareFilesController {
     private final CompareFilesService compareFilesService;
-   @GetMapping("/add")
-    @Operation(summary = "初选保存")
-    public String add(int reportId,String patentNo,int patentFiledID)throws IOException{
-       return compareFilesService.add(reportId,patentNo,patentFiledID);
+   @PostMapping("/add")
+    @Operation(summary = "增加")
+    public String add(@RequestBody CompareFileVO CompareFileVO)throws IOException{
+       return compareFilesService.add(CompareFileVO);
    }
     @GetMapping("/delete")
     @Operation(summary = "删除")
@@ -31,10 +32,22 @@ public class CompareFilesController {
        return compareFilesService.dele(id);
 
     }
-    public String update(CompareFiles a) throws IOException{
-       return compareFilesService.update(a);
+    @PostMapping("/update")
+    @Operation(summary = "修改")
+    public String update(@RequestBody CompareFileVO CompareFileVO) throws IOException{
+       return compareFilesService.update(CompareFileVO);
     }
-
-
+    @PostMapping("/settingAll")
+    @Operation(summary = "初选所有")
+    public String settingAll(@RequestBody CompareFileVO  compareFileVO )throws IOException{
+       return compareFilesService.settingAll(compareFileVO.getReportId(),compareFileVO.getReportFieldIDlist(),compareFileVO.getPatentNo());
+    }
+//    @PostMapping("/set")
+//    @Operation(summary = "初选")
+//    public String set(@RequestBody CompareFileVO compareFileVO)throws IOException{
+////       return compareFilesService.set(compareFileVO.getReportId(),compareFileVO.getPatentFiledID(),compareFileVO.getPatentNo(),compareFileVO.getType());
+//        return null;
+//
+//    }
 
 }

+ 1 - 3
RMS/src/main/java/cn/cslg/report/controller/PatentFiledController.java

@@ -45,9 +45,7 @@ public class PatentFiledController {
     @GetMapping("delete")
     @Operation(summary = "删除自定义字段")
     public String delete(Integer id,Integer reportId) {
-//        if(reportId!=null){
-//            return reportFieldService.deleteReportId(reportId,id);
-//        }
+
         return reportFieldService.delete(id);
     }
 

+ 23 - 0
RMS/src/main/java/cn/cslg/report/entity/AssoComapareFiel.java

@@ -0,0 +1,23 @@
+package cn.cslg.report.entity;
+
+import cn.cslg.report.common.model.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.util.List;
+
+@Data
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = true)
+@TableName(value = "ASSO_COMAPARE_FIELD")
+public class AssoComapareFiel extends BaseEntity<AssoComapareFiel> {
+    @TableField(value = "COMPARE_FILE_ID")
+    private Integer compareFileID;
+    @TableField(value = "FIELD_ID")
+    private Integer fieldID;
+
+}

+ 10 - 0
RMS/src/main/java/cn/cslg/report/mapper/AssoComapareFielMapper.java

@@ -0,0 +1,10 @@
+package cn.cslg.report.mapper;
+
+import cn.cslg.report.entity.AssoComapareFiel;
+import cn.cslg.report.entity.CompareFiles;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface AssoComapareFielMapper extends BaseMapper<AssoComapareFiel> {
+}

+ 1 - 0
RMS/src/main/java/cn/cslg/report/mapper/CompareFilesMapper.java

@@ -12,5 +12,6 @@ import java.util.List;
 @Mapper
 public interface CompareFilesMapper extends BaseMapper<CompareFiles> {
     int selectedTotal(@Param("id") int id);
+    List<CompareFiles> selectCompareFiles(@Param("reportId") int reportId, @Param("patentFiledID") int patentFiledID,@Param("patentNo") String patentNo, @Param("list") List<String> list);
 
 }

+ 4 - 4
RMS/src/main/java/cn/cslg/report/service/OutInterfaceService.java

@@ -15,12 +15,11 @@ import cn.cslg.report.service.business.ReportService;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.google.gson.Gson;
-import io.lettuce.core.event.EventBus;
-import io.swagger.v3.oas.models.security.SecurityScheme;
+
 import lombok.RequiredArgsConstructor;
-import lombok.val;
+
 import okhttp3.*;
-import okio.ByteString;
+
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
@@ -35,6 +34,7 @@ import java.util.stream.Collectors;
  * @description 调用外部接口的Service类 PCS:权限系统 PAS:专利分析系统
  * @date 2022-10-31
  */
+@SuppressWarnings({"all"})
 @Service
 @RequiredArgsConstructor(onConstructor_ = {@Lazy})
 public class OutInterfaceService {

+ 35 - 0
RMS/src/main/java/cn/cslg/report/service/business/AssoComapareFielService.java

@@ -0,0 +1,35 @@
+package cn.cslg.report.service.business;
+
+import cn.cslg.report.entity.AssoComapareFiel;
+import cn.cslg.report.entity.CompareFiles;
+import cn.cslg.report.mapper.AssoComapareFielMapper;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.conditions.update.UpdateChainWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import java.io.IOException;
+import java.util.List;
+
+@Service
+public class AssoComapareFielService extends ServiceImpl<AssoComapareFielMapper, AssoComapareFiel> {
+    public void add(AssoComapareFiel comapareFiel) throws IOException{
+        comapareFiel.insert();
+
+    }
+    public void   updateAssoComapareFiel(AssoComapareFiel assoComapareFiel)throws  IOException{
+        assoComapareFiel.updateById();
+    }
+    public List<AssoComapareFiel>  select(int id)throws  IOException{
+        LambdaQueryWrapper<AssoComapareFiel> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.eq(AssoComapareFiel::getCompareFileID,id);
+        List<AssoComapareFiel> list = this.list();
+        return list;
+
+    }
+
+
+
+
+
+}

+ 120 - 12
RMS/src/main/java/cn/cslg/report/service/business/CompareFilesService.java

@@ -1,30 +1,33 @@
 package cn.cslg.report.service.business;
 
+import cn.cslg.report.common.model.vo.CompareFileVO;
 import cn.cslg.report.common.model.vo.CompareFilesVO;
 import cn.cslg.report.common.model.vo.PatentVO;
 
 import cn.cslg.report.common.utils.JsonUtils;
 import cn.cslg.report.common.utils.Response;
-import cn.cslg.report.entity.CompareFiles;
-import cn.cslg.report.entity.Report;
+import cn.cslg.report.entity.*;
 import cn.cslg.report.mapper.CompareFilesMapper;
 import cn.cslg.report.service.OutInterfaceService;
+import cn.hutool.core.lang.tree.Tree;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
 import lombok.RequiredArgsConstructor;
+
 import lombok.extern.slf4j.Slf4j;
-import lombok.val;
+
 import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.io.IOException;
-import java.lang.reflect.Array;
+
 import java.util.*;
 import java.util.stream.Collectors;
-
+@SuppressWarnings({"all"})
 @Service
 @Slf4j
 @RequiredArgsConstructor(onConstructor_ = {@Lazy})
@@ -32,6 +35,10 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
     private final CompareFilesMapper compareFilesMapper;
     private final OutInterfaceService outInterfaceService;
     private final ReportService reportService;
+    private final ReportFieldService reportFieldService;
+    private final ReportFieldTreeService reportFieldTreeService;
+    private final ReportFieldOptionService reportFieldOptionService;
+    private final AssoComapareFielService assoComapareFielService;
 
     @Transactional(rollbackFor = Exception.class)
     public String addCompareFile(CompareFilesVO compareFilesVO) throws IOException {
@@ -73,7 +80,7 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
             if (quotes.size() != 0 && quotes.contains(patentNos.get(i))) {
                 compareFiles1.setRemark("引");
             }
-            if ( familyPatentNos!=null&& familyPatentNos.size() != 0 && familyPatentNos.contains(patentNos.get(i))) {
+            if (familyPatentNos.size() != 0 && familyPatentNos.contains(patentNos.get(i))) {
                 compareFiles1.setRemark("同");
             }
             compareFiles.add(compareFiles1);
@@ -165,11 +172,24 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
         }
         return Response.success();
     }
-    public String add(int reportId,String patentNo,int patentFiledID)throws IOException{
-        CompareFiles compareFiles = new CompareFiles();
-        compareFiles.setPatentNo(patentNo);
-        compareFiles.setReportId(reportId);
+    public String add(CompareFileVO compareFileVO)throws IOException{
+        CompareFiles compareFiles=new CompareFiles();
+        compareFiles.setRemark(compareFileVO.getRemark())
+                .setReportId(compareFileVO.getReportId())
+                .setState(compareFileVO.getState())
+                .setPatentNo(compareFileVO.getPatentNo());
         compareFiles.insert();
+        List<Integer> reportFieldIDlist = compareFileVO.getReportFieldIDlist();
+       if(reportFieldIDlist.size()!=0){
+           for( Integer a: reportFieldIDlist){
+               AssoComapareFiel assoComapareFiel = new AssoComapareFiel();
+               assoComapareFiel.setFieldID(a);
+               assoComapareFiel.setCompareFileID(compareFiles.getId());
+               assoComapareFielService.add(assoComapareFiel);
+           }
+       }
+
+
         return Response.success();
 
     }
@@ -178,11 +198,99 @@ public class CompareFilesService extends ServiceImpl<CompareFilesMapper, Compare
         compareFiles.deleteById(id);
         return Response.success();
     }
-    public String update(CompareFiles compareFiles)throws IOException{
-        compareFiles.insertOrUpdate();
+    @Transactional
+    public String update(CompareFileVO compareFileVO)throws IOException{
+
+        LambdaQueryWrapper<CompareFiles> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.eq(CompareFiles::getReportId,compareFileVO.getReportId())
+                .eq(CompareFiles::getPatentNo,compareFileVO.getPatentNo())
+                .eq(CompareFiles::getRemark,compareFileVO.getRemark())
+                .eq(CompareFiles::getState,compareFileVO.getState());
+        CompareFiles compareFiles = this.list(lambdaQueryWrapper).get(0);
+        compareFiles.updateById();
+        List<AssoComapareFiel> select = assoComapareFielService.select(compareFiles.getId());
+        List<Integer> reportFieldIDlist = compareFileVO.getReportFieldIDlist();
+        if(select.size()==reportFieldIDlist.size()){
+            for(int i=0;i<select.size();i++){
+                AssoComapareFiel assoComapareFiel = select.get(i);
+                assoComapareFiel.setFieldID(reportFieldIDlist.get(i));
+                assoComapareFielService.updateAssoComapareFiel(assoComapareFiel);
+
+
+            }
+        }
+
+
+
+
         return Response.success();
     }
+    public String settingAll(int reportId,List<Integer> patentFiledID,String patentNo) throws IOException {
+        LambdaQueryWrapper<CompareFiles> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        CompareFileVO compareFileVO=new CompareFileVO();
+        lambdaQueryWrapper.eq(CompareFiles::getReportId,reportId)
+                .eq(CompareFiles::getPatentNo,patentNo);
+        List<CompareFiles> list = this.list(lambdaQueryWrapper);
+        List<ReportField> fieldList=new ArrayList<>();
+        List<CompareFileVO> voList=new ArrayList<>();
+        if(list.size()!=0){
+            CompareFiles compareFiles = list.get(0);
+            compareFileVO.setReportId(compareFiles.getReportId())
+                    .setState(compareFiles.getState())
+                    .setRemark(compareFiles.getRemark())
+                    .setPatentNo(compareFiles.getPatentNo());
+            if(patentFiledID.size()!=0) {
+                for(Integer a :patentFiledID){
+                    List<ReportField> reportFields = reportFieldService.selectAll(a);
+                    if(reportFields.size()!=0){
+                        fieldList.add(reportFields.get(0));
+                    }
+
 
+                }
+                compareFileVO.setList(fieldList);
+            }
+
+        }
+
+
+
+        return Response.success(compareFileVO);
+
+    }
+    public String set(int reportId, int patentFiledID, String patentNo, Integer type, List<String> list)throws IOException{
+        List<CompareFiles> compareFiles = compareFilesMapper.selectCompareFiles(reportId, patentFiledID, patentNo, list);
+        List<CompareFileVO> voList=new ArrayList<>();
+        if(type==6) {
+            for (CompareFiles c : compareFiles) {
+                CompareFileVO compareFileVO = new CompareFileVO();
+                compareFileVO.setReportId(c.getReportId())
+                        .setState(c.getState())
+                        .setPatentNo(c.getPatentNo())
+                        .setRemark(c.getRemark());
+//                List<Tree<Integer>> reportFieldTreeNodeByFieldId = reportFieldTreeService.getReportFieldTreeNodeByFieldId(c.getPatentFiledID());
+//                compareFileVO.setObj(reportFieldTreeNodeByFieldId);
+                voList.add(compareFileVO);
+
+            }
+
+        }else {
+            for (CompareFiles c : compareFiles){
+                CompareFileVO compareFileVO = new CompareFileVO();
+                compareFileVO.setReportId(c.getReportId())
+                        .setState(c.getState())
+                        .setPatentNo(c.getPatentNo())
+                        .setRemark(c.getRemark());
+//                List<ReportFieldOption> listByFieldId = reportFieldOptionService.getListByFieldId(c.getPatentFiledID());
+//                compareFileVO.setObj(listByFieldId);
+                voList.add(compareFileVO);
+            }
+
+        }
+
+        return Response.success(voList);
+
+    }
 
 
 

+ 8 - 2
RMS/src/main/java/cn/cslg/report/service/business/CompareScenariosService.java

@@ -30,6 +30,7 @@ public class CompareScenariosService extends ServiceImpl<CompareScenariosMapper,
     private final CompareRecordsService compareRecordsService;
     private final FeatureService featureService;
     public String add(CompareScenariosVO compareScenariosVO) throws IOException{
+        //对比方案信息入表
         CompareScenarios compareScenarios = new CompareScenarios();
         compareScenarios.setContrastResult(compareScenariosVO.getContrastResult());
         compareScenarios.setReportId(compareScenariosVO.getReportId());
@@ -44,6 +45,7 @@ public class CompareScenariosService extends ServiceImpl<CompareScenariosMapper,
             CompareScenariosAndRecords compareScenariosAndRecords = new CompareScenariosAndRecords();
             compareScenariosAndRecords.setScenariosID(id);
             compareScenariosAndRecords.setFeaturesID(integer);
+            compareScenariosAndRecords.setRecordID(0);
             compareScenariosAndRecordsService.add(compareScenariosAndRecords);
         }
         List<Integer> recordIDList = compareScenariosVO.getRecordIDList();
@@ -51,6 +53,7 @@ public class CompareScenariosService extends ServiceImpl<CompareScenariosMapper,
             CompareScenariosAndRecords compareScenariosAndRecords = new CompareScenariosAndRecords();
             compareScenariosAndRecords.setScenariosID(id);
             compareScenariosAndRecords.setRecordID(integer);
+            compareScenariosAndRecords.setFeaturesID(0);
             compareScenariosAndRecordsService.add(compareScenariosAndRecords);
         }
        return Response.success();
@@ -68,12 +71,15 @@ public class CompareScenariosService extends ServiceImpl<CompareScenariosMapper,
             compareScenariosVO.setReportId(a.getReportId());
             compareScenariosVO.setSignPatentNo(  a.getSignPatentNo());
             compareScenariosVO.setRight(a.getRightName());
+            //根据对比方案ID获得s所有对比方案和对比记录关联信息
             List<AssoScenarIOS> select = assoScenarIOSService.select(a.getId());
-            List<Integer> recordIds = select.stream().map(AssoScenarIOS::getRecordID).collect(Collectors.toList());
+            //获得Id不为0的对比记录Id
+            List<Integer> recordIds = select.stream().filter(item->item.getRecordID()!=0).map(AssoScenarIOS::getRecordID).collect(Collectors.toList());
             LambdaQueryWrapper<CompareRecords> wrapper1 =new LambdaQueryWrapper<>();
+            wrapper1.in(CompareRecords::getId,recordIds);
             //获得方案的所有记录
             List<CompareRecords> compareRecords = compareRecordsService.list(wrapper1);
-           List<Integer> featuresIds =select.stream().filter(item->item.getFeaturesID().equals(0)).map(AssoScenarIOS::getFeaturesID).collect(Collectors.toList());
+           List<Integer> featuresIds =select.stream().filter(item->!item.getFeaturesID().equals(0)).map(AssoScenarIOS::getFeaturesID).collect(Collectors.toList());
             compareScenariosVO.setFeaturesIDList(featuresIds);
             compareScenariosVO.setCompareRecords(compareRecords);
             list.add(compareScenariosVO);

+ 2 - 0
RMS/src/main/java/cn/cslg/report/service/business/ReportFieldOptionService.java

@@ -12,6 +12,7 @@ import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -120,4 +121,5 @@ public class ReportFieldOptionService extends ServiceImpl<ReportFieldOptionMappe
             return Response.success(reportFieldOption.getId());
         }
     }
+
 }

+ 11 - 0
RMS/src/main/java/cn/cslg/report/service/business/ReportFieldService.java

@@ -11,6 +11,7 @@ import cn.cslg.report.entity.*;
 import cn.cslg.report.mapper.ReportFieldMapper;
 import cn.hutool.core.lang.tree.Tree;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -20,6 +21,7 @@ import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.io.IOException;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -169,10 +171,19 @@ public class ReportFieldService extends ServiceImpl<ReportFieldMapper, ReportFie
         List<ReportField> reportFields = reportFieldMapper.find(reportId,id);
         return Response.success(reportFields);
     }
+
     public String updateReportId(ReportField reportField){
         reportFieldMapper.updateReportId(reportField);
         return Response.success();
     }
+    public List<ReportField> selectAll(int id)throws IOException{
+        LambdaQueryWrapper<ReportField> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(ReportField::getId,id);
+        List<ReportField> list = this.list(queryWrapper);
+        return list;
+
+    }
+
 
 
 }

+ 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.13:8880
-PASUrl: http://192.168.1.13:8879
+PCSUrl:  http://localhost:8880
+PASUrl:  http://localhost:8879
 

+ 9 - 0
RMS/src/main/resources/mapper/CompareFilesMapper.xml

@@ -25,4 +25,13 @@
     <select id="selectedTotal" resultType="java.lang.Integer">
         select  count(*) from COMPARE_FILES where REPORT_ID=#{id}
     </select>
+    <select id="selectCompareFiles" resultType="cn.cslg.report.entity.CompareFiles">
+        select * from COMPARE_FILES
+        where REPORT_ID=#{reportId} and PATENT_NO=#{patentNo} and PATENT_FILED_ID=#{patentFiledID}
+and REMARK in 
+<foreach collection="list" index="index" item="item" open="(" separator="," close=")">
+
+    #{item}
+</foreach>
+    </select>
 </mapper>

File diff suppressed because it is too large
+ 8808 - 294
logs/rms/rms-debug.2022-11-29.0.log


File diff suppressed because it is too large
+ 8155 - 19035
logs/rms/rms-debug.2022-11-30.0.log