|
@@ -1,11 +1,9 @@
|
|
|
package cn.cslg.report.service.business.InvalidReReport;
|
|
|
|
|
|
-import cn.cslg.report.common.model.dto.invalidReReport.CheckReFeaturesDTO;
|
|
|
-import cn.cslg.report.common.model.dto.invalidReReport.InvalidReasonDTO;
|
|
|
-import cn.cslg.report.common.model.dto.invalidReReport.ProofGroupDTO;
|
|
|
-import cn.cslg.report.common.model.dto.invalidReReport.QueryInvalidReasonDTO;
|
|
|
+import cn.cslg.report.common.model.dto.invalidReReport.*;
|
|
|
import cn.cslg.report.common.model.vo.PersonnelVO;
|
|
|
import cn.cslg.report.common.model.vo.invalidReReport.PagingVO;
|
|
|
+import cn.cslg.report.common.model.vo.invalidReReport.ProofGroupDetailVO;
|
|
|
import cn.cslg.report.common.model.vo.invalidReReport.QueryAllFeaturesVO;
|
|
|
import cn.cslg.report.common.model.vo.invalidReReport.QueryInvalidReasonVO;
|
|
|
import cn.cslg.report.common.utils.CacheUtils;
|
|
@@ -53,25 +51,27 @@ public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, Inval
|
|
|
private final CacheUtils cacheUtils;
|
|
|
private final LoginUtils loginUtils;
|
|
|
private final CompareFilesService compareFilesService;
|
|
|
+ private final InvalidReasonFieldValueService invalidReasonFieldValueService;
|
|
|
/**
|
|
|
* 判断特征是否有重复的方法
|
|
|
+ *
|
|
|
* @param checkReFeaturesDTO
|
|
|
*/
|
|
|
public Boolean checkReFeatures(CheckReFeaturesDTO checkReFeaturesDTO) {
|
|
|
//查出表中制定报告和权要的全部特征内容和位置
|
|
|
- List<QueryAllFeaturesVO> queryAllFeaturesVOS = featureMapper.queryAllFeatures(checkReFeaturesDTO.getReportId(), checkReFeaturesDTO.getRightSort());
|
|
|
+ List<QueryAllFeaturesVO> queryAllFeaturesVOS = featureMapper.queryAllFeatures(checkReFeaturesDTO.getReportId(), checkReFeaturesDTO.getRightSort());
|
|
|
//List<QueryAllFeaturesVO> list = queryAllFeaturesVOS.stream().sorted(Comparator.comparing(QueryAllFeaturesVO::getPosition)).collect(Collectors.toList());
|
|
|
//取出需要插入的特征内容和位置
|
|
|
List<CheckReFeaturesDTO.featuresIn> features = checkReFeaturesDTO.getFeatures();
|
|
|
//定义一个map装载所有的特征内容和位置
|
|
|
Map<Integer, Integer> map = new HashMap<>();
|
|
|
//遍历装载查询出来的全部特征内容和位置
|
|
|
- for(QueryAllFeaturesVO queryAllFeaturesVO:queryAllFeaturesVOS){
|
|
|
+ for (QueryAllFeaturesVO queryAllFeaturesVO : queryAllFeaturesVOS) {
|
|
|
//位置
|
|
|
Integer position = queryAllFeaturesVO.getPosition();
|
|
|
//特征内容字符串的长度
|
|
|
Integer length = queryAllFeaturesVO.getFeatureStr().length();
|
|
|
- if(position != null && length > 0) {
|
|
|
+ if (position != null && length > 0) {
|
|
|
//如果map中已经有了初始位置,无论长度如何都重复
|
|
|
if (map.containsKey(position)) {
|
|
|
return false;
|
|
@@ -83,9 +83,9 @@ public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, Inval
|
|
|
}
|
|
|
}
|
|
|
//遍历装载需要插入的特征内容和位置
|
|
|
- for(CheckReFeaturesDTO.featuresIn featuresIn:features){
|
|
|
+ for (CheckReFeaturesDTO.featuresIn featuresIn : features) {
|
|
|
//如果map中已经有了初始位置,无论长度如何都重复
|
|
|
- if(map.containsKey(featuresIn.getPosition())) {
|
|
|
+ if (map.containsKey(featuresIn.getPosition())) {
|
|
|
return false;
|
|
|
} else {
|
|
|
map.put(featuresIn.getPosition(), featuresIn.getFeatureStr().length());
|
|
@@ -97,7 +97,7 @@ public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, Inval
|
|
|
List<Integer> positions = new ArrayList<>(keySet);
|
|
|
Collections.sort(positions);
|
|
|
//遍历需要插入的特征内容和位置
|
|
|
- for(CheckReFeaturesDTO.featuresIn featuresIn:features) {
|
|
|
+ for (CheckReFeaturesDTO.featuresIn featuresIn : features) {
|
|
|
//需检查是否重复的特征内容的初始位置 在集合中的位置
|
|
|
Integer index = positions.indexOf(featuresIn.getPosition());
|
|
|
//需检查是否重复的特征内容的末尾位置
|
|
@@ -107,20 +107,22 @@ public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, Inval
|
|
|
//前面一个特征内容的长度
|
|
|
Integer preLength = index > 0 ? map.get(preFeaInitialPos) : -1;
|
|
|
//前面一个特征的末尾位置
|
|
|
- Integer preEndPosition = preFeaInitialPos + preLength -1;
|
|
|
+ Integer preEndPosition = preFeaInitialPos + preLength - 1;
|
|
|
//后面一个特征内容的初始位置
|
|
|
Integer nextFeaInitialPos = index < positions.size() - 1 ? positions.get(index + 1) : -1;
|
|
|
//判断是否与前面一个特征内容重复(前面一个特征内容的末尾位置如果比插入的特征内容的初始位置大,则重复了)
|
|
|
- if(index > 0 && preEndPosition > featuresIn.getPosition()){
|
|
|
+ if (index > 0 && preEndPosition > featuresIn.getPosition()) {
|
|
|
return false;
|
|
|
- } else if( index < (positions.size() - 1) && endPosition > nextFeaInitialPos){//判断是否与后面一个特征内容重复(如果插入的特征内容的末尾位置,比后面一个特征内容的初始位置大,则重复)
|
|
|
+ } else if (index < (positions.size() - 1) && endPosition > nextFeaInitialPos) {//判断是否与后面一个特征内容重复(如果插入的特征内容的末尾位置,比后面一个特征内容的初始位置大,则重复)
|
|
|
return false;
|
|
|
}
|
|
|
}
|
|
|
return true;
|
|
|
}
|
|
|
+
|
|
|
/**
|
|
|
* 添加无效理由和证据
|
|
|
+ *
|
|
|
* @param invalidReasonDTO 无效理由和证据Dto类
|
|
|
* @return
|
|
|
*/
|
|
@@ -129,16 +131,16 @@ public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, Inval
|
|
|
InvalidReason invalidReason = new InvalidReason();
|
|
|
//判断invalidName的类型
|
|
|
Integer invalidName = invalidReasonDTO.getInvalidName();
|
|
|
- if(invalidName.equals(1)) {//若类型为1,则为说明书公开不充分,涉及内容为说明书,手动输入无效证据
|
|
|
+ if (invalidName.equals(1)) {//若类型为1,则为说明书公开不充分,涉及内容为说明书,手动输入无效证据
|
|
|
BeanUtils.copyProperties(invalidReasonDTO, invalidReason);
|
|
|
//获取当前登陆人信息
|
|
|
PersonnelVO personnelVO = cacheUtils.getLoginUser(loginUtils.getId());
|
|
|
invalidReason.setCreateId(personnelVO.getId());
|
|
|
//说明书公开不充分入表
|
|
|
invalidReason.insert();
|
|
|
- } else if(invalidName.equals(0)){//若类型为0,则为“权利要求不清楚”,需要选择涉及内容(content)并输入相关证据(proofStr)
|
|
|
- if(invalidReasonDTO.getProofStr() != null && invalidReasonDTO.getProofStr() != ""){
|
|
|
- if(invalidReasonDTO.getInvalidName()==1){
|
|
|
+ } else if (invalidName.equals(0)) {//若类型为0,则为“权利要求不清楚”,需要选择涉及内容(content)并输入相关证据(proofStr)
|
|
|
+ if (invalidReasonDTO.getProofStr() != null && invalidReasonDTO.getProofStr() != "") {
|
|
|
+ if (invalidReasonDTO.getInvalidName() == 1) {
|
|
|
invalidReasonDTO.setContent(-1);
|
|
|
}
|
|
|
//复制DTO类字段到InvalidReason实体类并保存入库
|
|
@@ -152,20 +154,20 @@ public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, Inval
|
|
|
invalidReason.insert();
|
|
|
//有可能为特征不清楚
|
|
|
//判断是否传入特征集合
|
|
|
- if(invalidReasonDTO.getFeatures() != null && invalidReasonDTO.getFeatures().size() > 0) {
|
|
|
+ if (invalidReasonDTO.getFeatures() != null && invalidReasonDTO.getFeatures().size() > 0) {
|
|
|
//若类型为0检查features是否有交集(根据位置和字符串长度判断)若有则返回
|
|
|
Features features = new Features();
|
|
|
//特征内容
|
|
|
- List<InvalidReasonDTO.featuresIn> featuresIns = invalidReasonDTO.getFeatures();
|
|
|
+ List<InvalidReasonDTO.FeaturesIn> featuresIns = invalidReasonDTO.getFeatures();
|
|
|
//检查特征内容是否有交集(根据位置和字符串长度判断)若有则返回
|
|
|
//装载检查重复需要的类
|
|
|
CheckReFeaturesDTO checkReFeaturesDTO = new CheckReFeaturesDTO();
|
|
|
checkReFeaturesDTO.setReportId(invalidReasonDTO.getReportId());
|
|
|
checkReFeaturesDTO.setRightSort(invalidReasonDTO.getContent());
|
|
|
List<CheckReFeaturesDTO.featuresIn> checkFeatureIns = new ArrayList<>();
|
|
|
- for(InvalidReasonDTO.featuresIn featuresIn : featuresIns){
|
|
|
+ for (InvalidReasonDTO.FeaturesIn featuresIn : featuresIns) {
|
|
|
CheckReFeaturesDTO.featuresIn featuresIn1 = new CheckReFeaturesDTO.featuresIn();
|
|
|
- BeanUtils.copyProperties(featuresIn,featuresIn1);
|
|
|
+ BeanUtils.copyProperties(featuresIn, featuresIn1);
|
|
|
checkFeatureIns.add(featuresIn1);
|
|
|
}
|
|
|
checkReFeaturesDTO.setFeatures(checkFeatureIns);
|
|
@@ -189,7 +191,7 @@ public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, Inval
|
|
|
//遍历特征内容集合,保存到表(类型为0)
|
|
|
for (int i = 0; i < featuresIns.size(); i++) {
|
|
|
//若类型为0,保存到特征表
|
|
|
- InvalidReasonDTO.featuresIn featuresIn = featuresIns.get(i);
|
|
|
+ InvalidReasonDTO.FeaturesIn featuresIn = featuresIns.get(i);
|
|
|
features.setContent(featuresIn.getFeatureStr());
|
|
|
features.insert();
|
|
|
//若类型为0,保存到特征与位置关联表(特征id,位置)
|
|
@@ -202,8 +204,8 @@ public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, Inval
|
|
|
} else {
|
|
|
return Response.error("相关证据不能为空");
|
|
|
}
|
|
|
- } else if(invalidName.equals(2) || invalidName.equals(3)){//若类型为2,3则proofGroups不能为空
|
|
|
- if(invalidReasonDTO.getProofGroups()!= null){
|
|
|
+ } else if (invalidName.equals(2) || invalidName.equals(3)) {//若类型为2,3则proofGroups不能为空
|
|
|
+ if (invalidReasonDTO.getProofGroups() != null) {
|
|
|
//复制DTO类字段到InvalidReason实体类并保存入库
|
|
|
BeanUtils.copyProperties(invalidReasonDTO, invalidReason);
|
|
|
//获取当前登陆人信息
|
|
@@ -212,12 +214,12 @@ public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, Inval
|
|
|
invalidReason.insert();
|
|
|
//根据proofGroups保存proofGroup
|
|
|
List<ProofGroupDTO> proofGroupDTOS = new ArrayList<>();
|
|
|
- for(InvalidReasonDTO.proofGroupIn proofGroupIn:invalidReasonDTO.getProofGroups()){
|
|
|
+ for (InvalidReasonDTO.ProofGroupIn proofGroupIn : invalidReasonDTO.getProofGroups()) {
|
|
|
ProofGroupDTO proofGroupDTO = new ProofGroupDTO();
|
|
|
proofGroupDTO.setInvalidReasonId(invalidReason.getId());//无效理由id
|
|
|
proofGroupDTO.setDescription(proofGroupIn.getDescription());//描述
|
|
|
- proofGroupDTO.setArgument_str(proofGroupIn.getArgument_str());//陈述意见
|
|
|
- proofGroupDTO.setProofIds(proofGroupIn.getProofIds());//证据ids
|
|
|
+ proofGroupDTO.setArgumentStr(proofGroupIn.getArgumentStr());//陈述意见
|
|
|
+ proofGroupDTO.setGroupDetails(proofGroupIn.getGroupDetails());//证据ids
|
|
|
proofGroupDTOS.add(proofGroupDTO);
|
|
|
}
|
|
|
proofGroupService.addProofGroup(proofGroupDTOS);
|
|
@@ -225,11 +227,14 @@ public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, Inval
|
|
|
return Response.error("证据组合不能为空");
|
|
|
}
|
|
|
}
|
|
|
+ //添加自定义字段值
|
|
|
+ invalidReasonFieldValueService.addOrUpdate(invalidReasonDTO.getFields());
|
|
|
return Response.success("添加成功");
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 删除无效理由
|
|
|
+ *
|
|
|
* @param ids 无效理由id
|
|
|
* @return
|
|
|
* @throws IOException
|
|
@@ -248,23 +253,24 @@ public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, Inval
|
|
|
|
|
|
/**
|
|
|
* 更新无效理由和证据
|
|
|
+ *
|
|
|
* @param invalidReasonDTO
|
|
|
* @return
|
|
|
*/
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
- public String updateInvalidReason(InvalidReasonDTO invalidReasonDTO) {
|
|
|
- if(invalidReasonDTO.getId() == null){
|
|
|
- return Response.error("请选择无效理由");
|
|
|
+ public String updateInvalidReason(InvalidReasonDTO invalidReasonDTO) {
|
|
|
+ if (invalidReasonDTO.getId() == null) {
|
|
|
+ return Response.error("请选择无效理由");
|
|
|
}
|
|
|
- Integer invalidName =invalidReasonDTO.getInvalidName();
|
|
|
+ Integer invalidName = invalidReasonDTO.getInvalidName();
|
|
|
InvalidReason invalidReason = this.getById(invalidReasonDTO.getId());
|
|
|
- if(invalidName.equals(1)) {//若类型为1,则为说明书公开不充分,涉及内容为说明书,手动输入无效证据
|
|
|
+ if (invalidName.equals(1)) {//若类型为1,则为说明书公开不充分,涉及内容为说明书,手动输入无效证据
|
|
|
BeanUtils.copyProperties(invalidReasonDTO, invalidReason);
|
|
|
//说明书公开不充分入表
|
|
|
invalidReason.updateById();
|
|
|
- } else if(invalidName.equals(0)){//若类型为0,则为“权利要求不清楚”,需要选择涉及内容(content)并输入相关证据(proofStr)
|
|
|
- if(invalidReasonDTO.getProofStr() != null && invalidReasonDTO.getProofStr() != ""){
|
|
|
- if(invalidReasonDTO.getInvalidName() == 1){
|
|
|
+ } else if (invalidName.equals(0)) {//若类型为0,则为“权利要求不清楚”,需要选择涉及内容(content)并输入相关证据(proofStr)
|
|
|
+ if (invalidReasonDTO.getProofStr() != null && invalidReasonDTO.getProofStr() != "") {
|
|
|
+ if (invalidReasonDTO.getInvalidName() == 1) {
|
|
|
invalidReasonDTO.setContent(-1);
|
|
|
}
|
|
|
//复制DTO类字段到InvalidReason实体类并保存入库
|
|
@@ -275,22 +281,22 @@ public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, Inval
|
|
|
invalidReason.updateById();
|
|
|
//有可能为特征不清楚
|
|
|
//判断是否传入特征集合 (更新无特征更新,可取消)
|
|
|
- if(invalidReasonDTO.getFeatures() != null && invalidReasonDTO.getFeatures().size() > 0) {
|
|
|
+ if (invalidReasonDTO.getFeatures() != null && invalidReasonDTO.getFeatures().size() > 0) {
|
|
|
//若类型为0检查features是否有交集(根据位置和字符串长度判断)若有则返回
|
|
|
Features features = new Features();
|
|
|
//特征内容
|
|
|
- List<InvalidReasonDTO.featuresIn> featuresIns = invalidReasonDTO.getFeatures();
|
|
|
+ List<InvalidReasonDTO.FeaturesIn> featuresIns = invalidReasonDTO.getFeatures();
|
|
|
//过滤带有不带有特征id的特征
|
|
|
- featuresIns = featuresIns.stream().filter(item->item.getId() == null).collect(Collectors.toList());
|
|
|
+ featuresIns = featuresIns.stream().filter(item -> item.getId() == null).collect(Collectors.toList());
|
|
|
//检查特征内容是否有交集(根据位置和字符串长度判断)若有则返回
|
|
|
//装载检查重复需要的类
|
|
|
CheckReFeaturesDTO checkReFeaturesDTO = new CheckReFeaturesDTO();
|
|
|
checkReFeaturesDTO.setReportId(invalidReasonDTO.getReportId());
|
|
|
checkReFeaturesDTO.setRightSort(invalidReasonDTO.getContent());
|
|
|
List<CheckReFeaturesDTO.featuresIn> checkFeatureIns = new ArrayList<>();
|
|
|
- for(InvalidReasonDTO.featuresIn featuresIn : featuresIns){
|
|
|
+ for (InvalidReasonDTO.FeaturesIn featuresIn : featuresIns) {
|
|
|
CheckReFeaturesDTO.featuresIn featuresIn1 = new CheckReFeaturesDTO.featuresIn();
|
|
|
- BeanUtils.copyProperties(featuresIn,featuresIn1);
|
|
|
+ BeanUtils.copyProperties(featuresIn, featuresIn1);
|
|
|
checkFeatureIns.add(featuresIn1);
|
|
|
}
|
|
|
checkReFeaturesDTO.setFeatures(checkFeatureIns);
|
|
@@ -314,7 +320,7 @@ public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, Inval
|
|
|
//遍历特征内容集合,保存到表(类型为0)
|
|
|
for (int i = 0; i < featuresIns.size(); i++) {
|
|
|
//若类型为0,保存到特征表
|
|
|
- InvalidReasonDTO.featuresIn featuresIn = featuresIns.get(i);
|
|
|
+ InvalidReasonDTO.FeaturesIn featuresIn = featuresIns.get(i);
|
|
|
features.setContent(featuresIn.getFeatureStr());
|
|
|
features.insert();
|
|
|
//若类型为0,保存到特征与位置关联表(特征id,位置)
|
|
@@ -328,8 +334,8 @@ public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, Inval
|
|
|
} else {
|
|
|
return Response.error("相关证据不能为空");
|
|
|
}
|
|
|
- } else if(invalidName.equals(2) || invalidName.equals(3)){//若类型为2,3则proofGroups不能为空
|
|
|
- if(invalidReasonDTO.getProofGroups()!= null){
|
|
|
+ } else if (invalidName.equals(2) || invalidName.equals(3)) {//若类型为2,3则proofGroups不能为空
|
|
|
+ if (invalidReasonDTO.getProofGroups() != null) {
|
|
|
//复制DTO类字段到InvalidReason实体类并保存入库
|
|
|
BeanUtils.copyProperties(invalidReasonDTO, invalidReason);
|
|
|
invalidReason.updateById();
|
|
@@ -337,12 +343,12 @@ public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, Inval
|
|
|
proofGroupService.deleteProofGroupByInvalid(invalidReason.getId());
|
|
|
//根据proofGroups保存proofGroup
|
|
|
List<ProofGroupDTO> proofGroupDTOS = new ArrayList<>();
|
|
|
- for(InvalidReasonDTO.proofGroupIn proofGroupIn:invalidReasonDTO.getProofGroups()){
|
|
|
+ for (InvalidReasonDTO.ProofGroupIn proofGroupIn : invalidReasonDTO.getProofGroups()) {
|
|
|
ProofGroupDTO proofGroupDTO = new ProofGroupDTO();
|
|
|
proofGroupDTO.setInvalidReasonId(invalidReason.getId());//无效理由id
|
|
|
proofGroupDTO.setDescription(proofGroupIn.getDescription());//描述
|
|
|
- proofGroupDTO.setArgument_str(proofGroupIn.getArgument_str());//陈述意见
|
|
|
- proofGroupDTO.setProofIds(proofGroupIn.getProofIds());//证据ids
|
|
|
+ proofGroupDTO.setArgumentStr(proofGroupIn.getArgumentStr());//陈述意见
|
|
|
+ proofGroupDTO.setGroupDetails(proofGroupIn.getGroupDetails());//证据ids
|
|
|
proofGroupDTOS.add(proofGroupDTO);
|
|
|
}
|
|
|
proofGroupService.addProofGroup(proofGroupDTOS);
|
|
@@ -350,11 +356,14 @@ public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, Inval
|
|
|
return Response.error("证据组合不能为空");
|
|
|
}
|
|
|
}
|
|
|
+ //添加自定义字段值
|
|
|
+ invalidReasonFieldValueService.addOrUpdate(invalidReasonDTO.getFields());
|
|
|
return Response.success("更新成功");
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 查找无效理由和证据列表
|
|
|
+ *
|
|
|
* @param
|
|
|
* @return
|
|
|
*/
|
|
@@ -363,223 +372,272 @@ public class InvalidReasonService extends ServiceImpl<InvalidReasonMapper, Inval
|
|
|
List<QueryInvalidReasonVO> queryInvalidReasonVOS = new ArrayList<>();
|
|
|
//根据报告id查询无效理由
|
|
|
List<InvalidReason> invalidReasons = new ArrayList<>();
|
|
|
- if(reportId != null) {
|
|
|
+ if (reportId != null) {
|
|
|
LambdaQueryWrapper<InvalidReason> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
queryWrapper.eq(InvalidReason::getReportId, reportId);
|
|
|
invalidReasons = this.list(queryWrapper);
|
|
|
}
|
|
|
- for(InvalidReason invalidReason:invalidReasons) {
|
|
|
+ for (InvalidReason invalidReason : invalidReasons) {
|
|
|
QueryInvalidReasonVO queryInvalidReasonVO = new QueryInvalidReasonVO();
|
|
|
- BeanUtils.copyProperties(invalidReason,queryInvalidReasonVO);
|
|
|
+ BeanUtils.copyProperties(invalidReason, queryInvalidReasonVO);
|
|
|
queryInvalidReasonVOS.add(queryInvalidReasonVO);
|
|
|
}
|
|
|
- if(queryInvalidReasonVOS.size()>0) {
|
|
|
+ if (queryInvalidReasonVOS.size() > 0) {
|
|
|
List<QueryInvalidReasonVO> queryInvalidReasonVOs = this.loadInvalidReason(queryInvalidReasonVOS);
|
|
|
return queryInvalidReasonVOs;
|
|
|
}
|
|
|
return null;
|
|
|
}
|
|
|
|
|
|
- /**查找无效理由和证据列表
|
|
|
- *
|
|
|
- * 把无效理由集合装载到要返回的列表集合中
|
|
|
- * @param queryInvalidReasonVOS
|
|
|
- */
|
|
|
- public List<QueryInvalidReasonVO> loadInvalidReason(List<QueryInvalidReasonVO> queryInvalidReasonVOS){
|
|
|
- //若类型为2,3,则查询证据组合
|
|
|
- //查询出类型为2,3时的无效理由ids
|
|
|
- List<Integer> invalidReasonsIds = queryInvalidReasonVOS.stream()
|
|
|
- .filter(item -> item.getInvalidName() == 2 || item.getInvalidName() == 3)
|
|
|
- .map(QueryInvalidReasonVO::getId)
|
|
|
- .collect(Collectors.toList());
|
|
|
- //根据无效理由ids查询出所有的证据组合c
|
|
|
- List<ProofGroup> proofGroups =new ArrayList<>();
|
|
|
- if(invalidReasonsIds.size() > 0) {
|
|
|
- LambdaQueryWrapper<ProofGroup> queryWrapper1 = new LambdaQueryWrapper<>();
|
|
|
- queryWrapper1.in(ProofGroup::getInvalidReasonId, invalidReasonsIds);
|
|
|
- proofGroups = proofGroupService.list(queryWrapper1);
|
|
|
- }
|
|
|
- //由于查出来的proofGroups中没有proofIds这个字段,于是采用下面的方法装载成proofGroupVOS
|
|
|
- List<QueryInvalidReasonVO.proofGroupIn> proofGroupIns = this.loadProofGroupVO(proofGroups);
|
|
|
- for(QueryInvalidReasonVO queryInvalidReasonVO:queryInvalidReasonVOS) {
|
|
|
- //比对无效理由id,把能匹配上的进行装载
|
|
|
- List<QueryInvalidReasonVO.proofGroupIn> proofGroupIn = proofGroupIns.stream()
|
|
|
- .filter(item -> item.getInvalidReasonId().equals(queryInvalidReasonVO.getId()))
|
|
|
- .collect(Collectors.toList());
|
|
|
- queryInvalidReasonVO.setProofGroups(proofGroupIn);
|
|
|
- }
|
|
|
- return queryInvalidReasonVOS;
|
|
|
- }
|
|
|
+ /**
|
|
|
+ * 查找无效理由和证据列表
|
|
|
+ * <p>
|
|
|
+ * 把无效理由集合装载到要返回的列表集合中
|
|
|
+ *
|
|
|
+ * @param queryInvalidReasonVOS
|
|
|
+ */
|
|
|
+ public List<QueryInvalidReasonVO> loadInvalidReason(List<QueryInvalidReasonVO> queryInvalidReasonVOS) {
|
|
|
+ //若类型为2,3,则查询证据组合
|
|
|
+ //查询出类型为2,3时的无效理由ids
|
|
|
+ List<Integer> invalidReasonsIds = queryInvalidReasonVOS.stream()
|
|
|
+ .filter(item -> item.getInvalidName() == 2 || item.getInvalidName() == 3)
|
|
|
+ .map(QueryInvalidReasonVO::getId)
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ //根据无效理由ids查询出所有的证据组合c
|
|
|
+ List<ProofGroup> proofGroups = new ArrayList<>();
|
|
|
+ if (invalidReasonsIds.size() > 0) {
|
|
|
+ LambdaQueryWrapper<ProofGroup> queryWrapper1 = new LambdaQueryWrapper<>();
|
|
|
+ queryWrapper1.in(ProofGroup::getInvalidReasonId, invalidReasonsIds);
|
|
|
+ proofGroups = proofGroupService.list(queryWrapper1);
|
|
|
+ }
|
|
|
+ //由于查出来的proofGroups中没有proofIds这个字段,于是采用下面的方法装载成proofGroupVOS
|
|
|
+ List<QueryInvalidReasonVO.proofGroupIn> proofGroupIns = this.loadProofGroupVO(proofGroups);
|
|
|
+ //根据无效理由id查询自定义字段
|
|
|
|
|
|
- /**查找无效理由和证据列表
|
|
|
- *
|
|
|
- * 把查出来的所有证据组合实体类集合转成VO类集合
|
|
|
- * @param proofGroups
|
|
|
- */
|
|
|
- public List<QueryInvalidReasonVO.proofGroupIn> loadProofGroupVO(List<ProofGroup> proofGroups){
|
|
|
- List<QueryInvalidReasonVO.proofGroupIn> proofGroupIns = new ArrayList<>();
|
|
|
- //根据传入的proofGroups对象集合,过滤出所有的ids
|
|
|
- List<Integer> proofGroupIds = proofGroups.stream()
|
|
|
- .map(ProofGroup::getId)
|
|
|
- .collect(Collectors.toList());
|
|
|
- //根据组合ids查询出每一个groupId对应的proofIds
|
|
|
- //首先批量查出来所有的证据和证据组合关联对象
|
|
|
- List<AssoProofGroup> assoProofGroups = new ArrayList<>();
|
|
|
- if(proofGroupIds.size() > 0) {
|
|
|
- LambdaQueryWrapper<AssoProofGroup> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
- queryWrapper.in(AssoProofGroup::getGroupId, proofGroupIds);
|
|
|
- assoProofGroups = assoProofGroupService.list(queryWrapper);
|
|
|
- }
|
|
|
- //证据组合的装载
|
|
|
- for (ProofGroup proofGroup : proofGroups) {
|
|
|
- QueryInvalidReasonVO.proofGroupIn proofGroupIn = new QueryInvalidReasonVO.proofGroupIn();
|
|
|
- //基本信息装载
|
|
|
- proofGroupIn.setInvalidReasonId(proofGroup.getInvalidReasonId());
|
|
|
- proofGroupIn.setDescription(proofGroup.getDescription());
|
|
|
- proofGroupIn.setArgument_str(proofGroup.getArgument_str());
|
|
|
- List<Integer> proofIds = assoProofGroups.stream().filter(item->item.getGroupId().equals(proofGroup.getId())).map(AssoProofGroup::getProofId).collect(Collectors.toList());
|
|
|
- //根据证据id查询证据
|
|
|
- List<CompareFiles> proofs =new ArrayList<>();
|
|
|
- if(proofIds.size()>0) {
|
|
|
- LambdaQueryWrapper<CompareFiles> proofLambdaQueryWrapper = new LambdaQueryWrapper<CompareFiles>();
|
|
|
- proofLambdaQueryWrapper.in(CompareFiles::getId, proofIds);
|
|
|
- proofs =compareFilesService.list(proofLambdaQueryWrapper);
|
|
|
- }
|
|
|
- List<QueryInvalidReasonVO.proofIn> proofIns =new ArrayList<>();
|
|
|
- proofs.forEach(item->{
|
|
|
- QueryInvalidReasonVO.proofIn proof=new QueryInvalidReasonVO.proofIn();
|
|
|
- proof.setId(item.getId());
|
|
|
- proof.setSort(item.getSysOrder());
|
|
|
- proof.setPatentNo(item.getPatentNo());
|
|
|
- proof.setFileId(item.getFileId());
|
|
|
- proof.setFileType(item.getFileType());
|
|
|
- proofIns.add(proof);
|
|
|
- });
|
|
|
- proofGroupIn.setProofIds(proofIds);
|
|
|
- proofGroupIn.setProofs(proofIns);
|
|
|
- proofGroupIns.add(proofGroupIn);
|
|
|
- }
|
|
|
- return proofGroupIns;
|
|
|
- }
|
|
|
+ //根据无效理由id查询自定义字段值
|
|
|
+ LambdaQueryWrapper<InvalidReasonFieldValue> wrapper =new LambdaQueryWrapper<>();
|
|
|
+ wrapper.in(InvalidReasonFieldValue::getInvalidReasonId,invalidReasonsIds);
|
|
|
+ List<InvalidReasonFieldValue> invalidReasonFieldValues = invalidReasonFieldValueService.list(wrapper);
|
|
|
+ for (QueryInvalidReasonVO queryInvalidReasonVO : queryInvalidReasonVOS) {
|
|
|
+ //比对无效理由id,把能匹配上的进行装载
|
|
|
+ List<QueryInvalidReasonVO.proofGroupIn> proofGroupIn = proofGroupIns.stream()
|
|
|
+ .filter(item -> item.getInvalidReasonId().equals(queryInvalidReasonVO.getId()))
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ queryInvalidReasonVO.setProofGroups(proofGroupIn);
|
|
|
+List<InvalidReasonFieldValue> valuesTem =invalidReasonFieldValues.stream().filter(item->item.getInvalidReasonId().equals(queryInvalidReasonVO.getId())).collect(Collectors.toList());
|
|
|
+ List<InvalidReasonFieldValueDTO> list =new ArrayList<>();
|
|
|
+ valuesTem.forEach(item->{
|
|
|
+ InvalidReasonFieldValueDTO invalidReasonFieldValueDTO =new InvalidReasonFieldValueDTO();
|
|
|
+ invalidReasonFieldValueDTO.setInvalidReasonId(item.getInvalidReasonId());
|
|
|
+ invalidReasonFieldValueDTO.setFieldValue(item.getFieldValue());
|
|
|
+ invalidReasonFieldValueDTO.setFieldId(item.getInvalidReasonFieldId());
|
|
|
+ list.add(invalidReasonFieldValueDTO);
|
|
|
+ });
|
|
|
+ queryInvalidReasonVO.setFields(list);
|
|
|
+ }
|
|
|
+ return queryInvalidReasonVOS;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 查找无效理由和证据列表
|
|
|
+ * <p>
|
|
|
+ * 把查出来的所有证据组合实体类集合转成VO类集合
|
|
|
+ *
|
|
|
+ * @param proofGroups
|
|
|
+ */
|
|
|
+ public List<QueryInvalidReasonVO.proofGroupIn> loadProofGroupVO(List<ProofGroup> proofGroups) {
|
|
|
+ List<QueryInvalidReasonVO.proofGroupIn> proofGroupIns = new ArrayList<>();
|
|
|
+ //根据传入的proofGroups对象集合,过滤出所有的ids
|
|
|
+ List<Integer> proofGroupIds = proofGroups.stream()
|
|
|
+ .map(ProofGroup::getId)
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ //根据组合ids查询出每一个groupId对应的proofIds
|
|
|
+ //首先批量查出来所有的证据和证据组合关联对象
|
|
|
+ List<AssoProofGroup> assoProofGroups = new ArrayList<>();
|
|
|
+ if (proofGroupIds.size() > 0) {
|
|
|
+ LambdaQueryWrapper<AssoProofGroup> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ queryWrapper.in(AssoProofGroup::getGroupId, proofGroupIds);
|
|
|
+ assoProofGroups = assoProofGroupService.list(queryWrapper);
|
|
|
+ }
|
|
|
+ //证据组合的装载
|
|
|
+ for (ProofGroup proofGroup : proofGroups) {
|
|
|
+ QueryInvalidReasonVO.proofGroupIn proofGroupIn = new QueryInvalidReasonVO.proofGroupIn();
|
|
|
+ //基本信息装载
|
|
|
+ proofGroupIn.setInvalidReasonId(proofGroup.getInvalidReasonId());
|
|
|
+ proofGroupIn.setDescription(proofGroup.getDescription());
|
|
|
+ proofGroupIn.setArgument_str(proofGroup.getArgumentStr());
|
|
|
+ List<Integer> proofIds = assoProofGroups.stream().filter(item -> item.getGroupId().equals(proofGroup.getId())).map(AssoProofGroup::getProofId).collect(Collectors.toList());
|
|
|
+ //根据证据id查询证据
|
|
|
+ List<CompareFiles> proofs = new ArrayList<>();
|
|
|
+ if (proofIds.size() > 0) {
|
|
|
+ LambdaQueryWrapper<CompareFiles> proofLambdaQueryWrapper = new LambdaQueryWrapper<CompareFiles>();
|
|
|
+ proofLambdaQueryWrapper.in(CompareFiles::getId, proofIds);
|
|
|
+ proofs = compareFilesService.list(proofLambdaQueryWrapper);
|
|
|
+ }
|
|
|
+ List<QueryInvalidReasonVO.proofIn> proofIns = new ArrayList<>();
|
|
|
+ proofs.forEach(item -> {
|
|
|
+ QueryInvalidReasonVO.proofIn proof = new QueryInvalidReasonVO.proofIn();
|
|
|
+ proof.setId(item.getId());
|
|
|
+ proof.setSort(item.getSysOrder());
|
|
|
+ proof.setPatentNo(item.getPatentNo());
|
|
|
+ proof.setFileId(item.getFileId());
|
|
|
+ proof.setFileType(item.getFileType());
|
|
|
+ proofIns.add(proof);
|
|
|
+ });
|
|
|
+ proofGroupIn.setProofIds(proofIds);
|
|
|
+ proofIns.sort(Comparator.comparing(QueryInvalidReasonVO.proofIn::getSort));
|
|
|
+ proofGroupIn.setProofs(proofIns);
|
|
|
+ proofGroupIns.add(proofGroupIn);
|
|
|
+ }
|
|
|
+ return proofGroupIns;
|
|
|
+ }
|
|
|
|
|
|
/**
|
|
|
* 查询无效理由和证据的详情
|
|
|
+ *
|
|
|
* @param id
|
|
|
* @return
|
|
|
* @throws IOException
|
|
|
*/
|
|
|
public String queryInvalidReasonDetail(Integer id) throws IOException {
|
|
|
QueryInvalidReasonVO queryInvalidReasonVO = new QueryInvalidReasonVO();
|
|
|
- if(id != null && id > 0){
|
|
|
+ if (id != null && id > 0) {
|
|
|
//根据id查询无效理由
|
|
|
InvalidReason invalidReason = this.getById(id);
|
|
|
- if(invalidReason == null){
|
|
|
+ if (invalidReason == null) {
|
|
|
return Response.error("没查到无效理由");
|
|
|
}
|
|
|
//将初步查出来的无效理由赋值给要返回的VO类
|
|
|
- BeanUtils.copyProperties(invalidReason,queryInvalidReasonVO);
|
|
|
+ BeanUtils.copyProperties(invalidReason, queryInvalidReasonVO);
|
|
|
Integer invalidName = invalidReason.getInvalidName();
|
|
|
- if(invalidName == null){
|
|
|
+ if (invalidName == null) {
|
|
|
return Response.error("没查到类型");
|
|
|
}
|
|
|
//若类型为0,则查询出特征并且装载
|
|
|
- if(invalidName.equals(0)){
|
|
|
+ if (invalidName.equals(0)) {
|
|
|
//获取报告id和权要排序字段
|
|
|
Integer reportId = invalidReason.getReportId();
|
|
|
Integer rightSort = invalidReason.getRightSort();
|
|
|
- if(reportId != null && rightSort != null){
|
|
|
+ if (reportId != null && rightSort != null) {
|
|
|
//调用装载特征的方法
|
|
|
- List<QueryInvalidReasonVO.featuresIn> featuresIns = this.loadFeature(reportId,rightSort);
|
|
|
+ List<QueryInvalidReasonVO.featuresIn> featuresIns = this.loadFeature(reportId, rightSort);
|
|
|
//赋值
|
|
|
queryInvalidReasonVO.setFeatures(featuresIns);
|
|
|
- return Response.success(queryInvalidReasonVO);
|
|
|
}
|
|
|
- } else if(invalidName.equals(2)||invalidName.equals(3)){//若类型为2,3则查询证据组合并装载
|
|
|
+ } else if (invalidName.equals(2) || invalidName.equals(3)) { //若类型为2,3则查询证据组合并装载
|
|
|
//根据无效理由id查询出proofGroup集合
|
|
|
Integer invalidReasonId = invalidReason.getId();
|
|
|
//调用装载证据组合方法
|
|
|
List<QueryInvalidReasonVO.proofGroupIn> proofGroupIns = this.loadProofGroup(invalidReasonId);
|
|
|
queryInvalidReasonVO.setProofGroups(proofGroupIns);
|
|
|
- return Response.success(queryInvalidReasonVO);
|
|
|
- } else if(invalidName.equals(1)){
|
|
|
- //查出来的无效理由可以直接返回
|
|
|
- return Response.success(queryInvalidReasonVO);
|
|
|
- } else {
|
|
|
+ } else {
|
|
|
return Response.error("无效类型错误");
|
|
|
}
|
|
|
- return Response.success();
|
|
|
+ //根据无效理由id查询自定义字段值
|
|
|
+ LambdaQueryWrapper<InvalidReasonFieldValue> wrapper =new LambdaQueryWrapper<>();
|
|
|
+ wrapper.eq(InvalidReasonFieldValue::getInvalidReasonId,id);
|
|
|
+ List<InvalidReasonFieldValue> invalidReasonFieldValues = invalidReasonFieldValueService.list(wrapper);
|
|
|
+ List<InvalidReasonFieldValueDTO> list =new ArrayList<>();
|
|
|
+ invalidReasonFieldValues.forEach(item->{
|
|
|
+ InvalidReasonFieldValueDTO invalidReasonFieldValueDTO =new InvalidReasonFieldValueDTO();
|
|
|
+ invalidReasonFieldValueDTO.setInvalidReasonId(item.getInvalidReasonId());
|
|
|
+ invalidReasonFieldValueDTO.setFieldValue(item.getFieldValue());
|
|
|
+ invalidReasonFieldValueDTO.setFieldId(item.getInvalidReasonFieldId());
|
|
|
+ list.add(invalidReasonFieldValueDTO);
|
|
|
+ });
|
|
|
+ queryInvalidReasonVO.setFields(list);
|
|
|
+ //查出来的无效理由可以直接返回
|
|
|
+ return Response.success(queryInvalidReasonVO);
|
|
|
} else {
|
|
|
return Response.error("未传入参数");
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- /**
|
|
|
- * 装载特征集合
|
|
|
- * @param reportId
|
|
|
- * @param rightSort
|
|
|
- * @return
|
|
|
- */
|
|
|
- public List<QueryInvalidReasonVO.featuresIn> loadFeature(Integer reportId, Integer rightSort){
|
|
|
- //需要装载的某个无效理由的特征集合
|
|
|
- List<QueryInvalidReasonVO.featuresIn> featuresIns = new ArrayList<>();
|
|
|
- //通过报告id查询标的专利号
|
|
|
- LambdaQueryWrapper<Report> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
- queryWrapper.eq(Report::getId, reportId);
|
|
|
- Report report = reportService.getOne(queryWrapper);
|
|
|
- //获取标的专利号
|
|
|
- String signPatentNo = report.getSignPatentNo();
|
|
|
- //根据标的专利号、报告id、权要排序查询出特征集合
|
|
|
- LambdaQueryWrapper<Features> queryWrapper1 = new LambdaQueryWrapper<>();
|
|
|
- queryWrapper1.eq(Features::getReportId,reportId)
|
|
|
- .eq(Features::getSignPatentNo,signPatentNo)
|
|
|
- .eq(Features::getRightId,rightSort);
|
|
|
- List<Features> featuress= featureService.list(queryWrapper1);
|
|
|
- //遍历特征集合
|
|
|
- for(Features features:featuress){
|
|
|
- //需要装载的某个无效理由的每个特征
|
|
|
- QueryInvalidReasonVO.featuresIn featuresIn = new QueryInvalidReasonVO.featuresIn();
|
|
|
- featuresIn.setFeatureStr(features.getContent());
|
|
|
- //需要根据特征id查询出它的初始位置
|
|
|
- Integer featureId = features.getId();
|
|
|
- LambdaQueryWrapper<AssoPositionFeatures> queryWrapper2 = new LambdaQueryWrapper<>();
|
|
|
- queryWrapper2.eq(AssoPositionFeatures::getFeaturesID,featureId);
|
|
|
- AssoPositionFeatures assoPositionFeatures = assoPositionFeaturesService.getOne(queryWrapper2);
|
|
|
- featuresIn.setPosition(assoPositionFeatures.getPosition());
|
|
|
- featuresIns.add(featuresIn);
|
|
|
- }
|
|
|
- return featuresIns;
|
|
|
- }
|
|
|
+ /**
|
|
|
+ * 装载特征集合
|
|
|
+ *
|
|
|
+ * @param reportId
|
|
|
+ * @param rightSort
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public List<QueryInvalidReasonVO.featuresIn> loadFeature(Integer reportId, Integer rightSort) {
|
|
|
+ //需要装载的某个无效理由的特征集合
|
|
|
+ List<QueryInvalidReasonVO.featuresIn> featuresIns = new ArrayList<>();
|
|
|
+ //通过报告id查询标的专利号
|
|
|
+ LambdaQueryWrapper<Report> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ queryWrapper.eq(Report::getId, reportId);
|
|
|
+ Report report = reportService.getOne(queryWrapper);
|
|
|
+ //获取标的专利号
|
|
|
+ String signPatentNo = report.getSignPatentNo();
|
|
|
+ //根据标的专利号、报告id、权要排序查询出特征集合
|
|
|
+ LambdaQueryWrapper<Features> queryWrapper1 = new LambdaQueryWrapper<>();
|
|
|
+ queryWrapper1.eq(Features::getReportId, reportId)
|
|
|
+ .eq(Features::getSignPatentNo, signPatentNo)
|
|
|
+ .eq(Features::getRightId, rightSort);
|
|
|
+ List<Features> featuress = featureService.list(queryWrapper1);
|
|
|
+ //遍历特征集合
|
|
|
+ for (Features features : featuress) {
|
|
|
+ //需要装载的某个无效理由的每个特征
|
|
|
+ QueryInvalidReasonVO.featuresIn featuresIn = new QueryInvalidReasonVO.featuresIn();
|
|
|
+ featuresIn.setFeatureStr(features.getContent());
|
|
|
+ //需要根据特征id查询出它的初始位置
|
|
|
+ Integer featureId = features.getId();
|
|
|
+ LambdaQueryWrapper<AssoPositionFeatures> queryWrapper2 = new LambdaQueryWrapper<>();
|
|
|
+ queryWrapper2.eq(AssoPositionFeatures::getFeaturesID, featureId);
|
|
|
+ AssoPositionFeatures assoPositionFeatures = assoPositionFeaturesService.getOne(queryWrapper2);
|
|
|
+ featuresIn.setPosition(assoPositionFeatures.getPosition());
|
|
|
+ featuresIns.add(featuresIn);
|
|
|
+ }
|
|
|
+ return featuresIns;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 装载证据组合
|
|
|
+ *
|
|
|
+ * @param invalidReasonId
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public List<QueryInvalidReasonVO.proofGroupIn> loadProofGroup(Integer invalidReasonId) {
|
|
|
+ List<QueryInvalidReasonVO.proofGroupIn> proofGroupIns = new ArrayList<>();
|
|
|
+ //根据无效理由id查询出证据组合集合
|
|
|
+ LambdaQueryWrapper<ProofGroup> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ queryWrapper.eq(ProofGroup::getInvalidReasonId, invalidReasonId);
|
|
|
+ List<ProofGroup> proofGroups = proofGroupService.list(queryWrapper);
|
|
|
+ if (proofGroups != null && proofGroups.size() > 0) {
|
|
|
+ //遍历证据组合集合
|
|
|
+ for (ProofGroup proofGroup : proofGroups) {
|
|
|
+ QueryInvalidReasonVO.proofGroupIn proofGroupIn = new QueryInvalidReasonVO.proofGroupIn();
|
|
|
+ proofGroupIn.setDescription(proofGroup.getDescription());
|
|
|
+ proofGroupIn.setArgument_str(proofGroup.getArgumentStr());
|
|
|
+ //组合id
|
|
|
+ Integer groupId = proofGroup.getId();
|
|
|
+ LambdaQueryWrapper<AssoProofGroup> queryWrapper1 = new LambdaQueryWrapper<>();
|
|
|
+ queryWrapper1.eq(AssoProofGroup::getGroupId, groupId);
|
|
|
+ List<AssoProofGroup> assoProofGroups = assoProofGroupService.list(queryWrapper1);
|
|
|
+ //取出证据ids
|
|
|
+ List<Integer> proofIds = assoProofGroups.stream().map(AssoProofGroup::getProofId).collect(Collectors.toList());
|
|
|
+ proofGroupIn.setProofIds(proofIds);
|
|
|
+ proofGroupIns.add(proofGroupIn);
|
|
|
+ }
|
|
|
+ return proofGroupIns;
|
|
|
+ } else {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public String updateArgumentStr(UpdateArgumentStrDTO updateArgumentStrDTO) {
|
|
|
+ Integer invalidReasonId =updateArgumentStrDTO.getId();
|
|
|
+ String argumentStr =updateArgumentStrDTO.getArgumentStr();
|
|
|
+ if(invalidReasonId==null){
|
|
|
+
|
|
|
+ return Response.error("请选择无效理由");
|
|
|
+ }
|
|
|
+ InvalidReason invalidReason= this.getById(invalidReasonId);
|
|
|
+ invalidReason.setArgumentStr(argumentStr);
|
|
|
+ invalidReason.updateById();
|
|
|
+ return Response.success("修改成功");
|
|
|
+ }
|
|
|
|
|
|
- /**
|
|
|
- * 装载证据组合
|
|
|
- * @param invalidReasonId
|
|
|
- * @return
|
|
|
- */
|
|
|
- public List<QueryInvalidReasonVO.proofGroupIn> loadProofGroup(Integer invalidReasonId){
|
|
|
- List<QueryInvalidReasonVO.proofGroupIn> proofGroupIns = new ArrayList<>();
|
|
|
- //根据无效理由id查询出证据组合集合
|
|
|
- LambdaQueryWrapper<ProofGroup> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
- queryWrapper.eq(ProofGroup::getInvalidReasonId,invalidReasonId);
|
|
|
- List<ProofGroup> proofGroups = proofGroupService.list(queryWrapper);
|
|
|
- if(proofGroups != null && proofGroups.size() > 0){
|
|
|
- //遍历证据组合集合
|
|
|
- for(ProofGroup proofGroup:proofGroups){
|
|
|
- QueryInvalidReasonVO.proofGroupIn proofGroupIn = new QueryInvalidReasonVO.proofGroupIn();
|
|
|
- proofGroupIn.setDescription(proofGroup.getDescription());
|
|
|
- proofGroupIn.setArgument_str(proofGroup.getArgument_str());
|
|
|
- //组合id
|
|
|
- Integer groupId = proofGroup.getId();
|
|
|
- LambdaQueryWrapper<AssoProofGroup> queryWrapper1 = new LambdaQueryWrapper<>();
|
|
|
- queryWrapper1.eq(AssoProofGroup::getGroupId,groupId);
|
|
|
- List<AssoProofGroup> assoProofGroups = assoProofGroupService.list(queryWrapper1);
|
|
|
- //取出证据ids
|
|
|
- List<Integer> proofIds = assoProofGroups.stream().map(AssoProofGroup::getProofId).collect(Collectors.toList());
|
|
|
- proofGroupIn.setProofIds(proofIds);
|
|
|
- proofGroupIns.add(proofGroupIn);
|
|
|
- }
|
|
|
- return proofGroupIns;
|
|
|
- } else {
|
|
|
- return null;
|
|
|
- }
|
|
|
- }
|
|
|
}
|