|
@@ -10,10 +10,7 @@ import cn.cslg.pas.common.utils.StringUtils;
|
|
import cn.cslg.pas.common.vo.PatentRightVo;
|
|
import cn.cslg.pas.common.vo.PatentRightVo;
|
|
import cn.cslg.pas.common.vo.RePatentClaim;
|
|
import cn.cslg.pas.common.vo.RePatentClaim;
|
|
import cn.cslg.pas.common.vo.business.*;
|
|
import cn.cslg.pas.common.vo.business.*;
|
|
-import cn.cslg.pas.domain.business.FTOCompareRecord;
|
|
|
|
-import cn.cslg.pas.domain.business.Feature;
|
|
|
|
-import cn.cslg.pas.domain.business.ProjectTask;
|
|
|
|
-import cn.cslg.pas.domain.business.ReportProject;
|
|
|
|
|
|
+import cn.cslg.pas.domain.business.*;
|
|
import cn.cslg.pas.exception.UnLoginException;
|
|
import cn.cslg.pas.exception.UnLoginException;
|
|
import cn.cslg.pas.exception.XiaoShiException;
|
|
import cn.cslg.pas.exception.XiaoShiException;
|
|
import cn.cslg.pas.mapper.FTOCompareRecordMapper;
|
|
import cn.cslg.pas.mapper.FTOCompareRecordMapper;
|
|
@@ -58,6 +55,8 @@ public class TortCompareRecordService extends ServiceImpl<FTOCompareRecordMapper
|
|
@Lazy
|
|
@Lazy
|
|
private ProjectTaskService projectTaskService;
|
|
private ProjectTaskService projectTaskService;
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private PatentSplitMessageService patentSplitMessageService;
|
|
// /**
|
|
// /**
|
|
// * 新增侵权对比结果
|
|
// * 新增侵权对比结果
|
|
// *
|
|
// *
|
|
@@ -139,16 +138,19 @@ public class TortCompareRecordService extends ServiceImpl<FTOCompareRecordMapper
|
|
throw new XiaoShiException("projectId不能为空");
|
|
throw new XiaoShiException("projectId不能为空");
|
|
}
|
|
}
|
|
List<TortDTO> tortDTOS = tortCompareRecordDTO.getTortDTOS();
|
|
List<TortDTO> tortDTOS = tortCompareRecordDTO.getTortDTOS();
|
|
|
|
+
|
|
//不能将特征一次性全部删除,使用处理特征方法
|
|
//不能将特征一次性全部删除,使用处理特征方法
|
|
if (tortDTOS.isEmpty()) {
|
|
if (tortDTOS.isEmpty()) {
|
|
throw new XiaoShiException("传入特征集合不能为空");
|
|
throw new XiaoShiException("传入特征集合不能为空");
|
|
}
|
|
}
|
|
|
|
+
|
|
//查询出原来的特征id集合
|
|
//查询出原来的特征id集合
|
|
LambdaQueryWrapper<Feature> queryWrapper = new LambdaQueryWrapper<>();
|
|
LambdaQueryWrapper<Feature> queryWrapper = new LambdaQueryWrapper<>();
|
|
queryWrapper.select(Feature::getId)
|
|
queryWrapper.select(Feature::getId)
|
|
.eq(Feature::getProjectId, projectId);
|
|
.eq(Feature::getProjectId, projectId);
|
|
Function<Object,Integer> f = (o -> Integer.parseInt(o.toString()));
|
|
Function<Object,Integer> f = (o -> Integer.parseInt(o.toString()));
|
|
List<Integer> featureIds = featureService.listObjs(queryWrapper,f);
|
|
List<Integer> featureIds = featureService.listObjs(queryWrapper,f);
|
|
|
|
+
|
|
// 删除特征
|
|
// 删除特征
|
|
List<Integer> ids = new ArrayList<>();
|
|
List<Integer> ids = new ArrayList<>();
|
|
if (!featureIds.isEmpty()) {
|
|
if (!featureIds.isEmpty()) {
|
|
@@ -192,9 +194,19 @@ public class TortCompareRecordService extends ServiceImpl<FTOCompareRecordMapper
|
|
* @param tortDTOS
|
|
* @param tortDTOS
|
|
*/
|
|
*/
|
|
public List<Integer> updateFeatures(Integer projectId, List<Integer> featureIds, List<TortDTO> tortDTOS){
|
|
public List<Integer> updateFeatures(Integer projectId, List<Integer> featureIds, List<TortDTO> tortDTOS){
|
|
|
|
+
|
|
// 处理剩余特征和对比结果
|
|
// 处理剩余特征和对比结果
|
|
// 根据projctId查询出专利号
|
|
// 根据projctId查询出专利号
|
|
String patentNo = projectTaskService.getPatentNoByProjectId(projectId);
|
|
String patentNo = projectTaskService.getPatentNoByProjectId(projectId);
|
|
|
|
+
|
|
|
|
+ //根据专利号和专题库id获得拆分信息
|
|
|
|
+ LambdaQueryWrapper<PatentSplitMessage> queryWrapper =new LambdaQueryWrapper<>();
|
|
|
|
+ queryWrapper.eq(PatentSplitMessage::getProjectId,projectId);
|
|
|
|
+ queryWrapper.eq(PatentSplitMessage::getPatentNo,patentNo);
|
|
|
|
+ PatentSplitMessage patentSplitMessage =patentSplitMessageService.getOne(queryWrapper,false);
|
|
|
|
+ if(patentSplitMessage==null){
|
|
|
|
+ throw new XiaoShiException("未查询出拆分信息");
|
|
|
|
+ }
|
|
// 获取登录人信息
|
|
// 获取登录人信息
|
|
PersonnelVO personnelVO = new PersonnelVO();
|
|
PersonnelVO personnelVO = new PersonnelVO();
|
|
try {
|
|
try {
|
|
@@ -231,11 +243,12 @@ public class TortCompareRecordService extends ServiceImpl<FTOCompareRecordMapper
|
|
feature.setExplainText(item.getExplainText());
|
|
feature.setExplainText(item.getExplainText());
|
|
feature.setCreateId(personnelVO.getId());
|
|
feature.setCreateId(personnelVO.getId());
|
|
feature.setRightType(item.getRightType());
|
|
feature.setRightType(item.getRightType());
|
|
|
|
+ feature.setSplitMessageId(patentSplitMessage.getId());
|
|
feature.setSysOrder(order);
|
|
feature.setSysOrder(order);
|
|
feature.insert();
|
|
feature.insert();
|
|
item.setFeatureId(feature.getId());
|
|
item.setFeatureId(feature.getId());
|
|
// 新增对比结果
|
|
// 新增对比结果
|
|
- Integer id = this.addCompareRecords(projectId, item);
|
|
|
|
|
|
+ Integer id = this.addCompareRecords(projectId,item);
|
|
if (id != null) {
|
|
if (id != null) {
|
|
ftoIds.add(id);
|
|
ftoIds.add(id);
|
|
}
|
|
}
|
|
@@ -250,7 +263,7 @@ public class TortCompareRecordService extends ServiceImpl<FTOCompareRecordMapper
|
|
* @param projectId
|
|
* @param projectId
|
|
* @param tortDTO
|
|
* @param tortDTO
|
|
*/
|
|
*/
|
|
- public Integer addCompareRecords(Integer projectId, TortDTO tortDTO){
|
|
|
|
|
|
+ public Integer addCompareRecords(Integer projectId, TortDTO tortDTO) {
|
|
Integer featureId = tortDTO.getFeatureId();
|
|
Integer featureId = tortDTO.getFeatureId();
|
|
//获取登录人信息
|
|
//获取登录人信息
|
|
PersonnelVO personnelVO = new PersonnelVO();
|
|
PersonnelVO personnelVO = new PersonnelVO();
|