From 43e1cf2a22cfeca9dfc5e97dbc1159d7e286f0d8 Mon Sep 17 00:00:00 2001 From: lijiarao Date: Fri, 2 Feb 2024 20:28:52 +0800 Subject: [PATCH] =?UTF-8?q?fix=2081705=20=E8=BD=A6=E5=9E=8B=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE=E5=BA=93=E8=AF=A6=E6=83=85-=E8=B0=83=E5=8F=96?= =?UTF-8?q?=EF=BC=8C=E5=8B=BE=E9=80=89=E4=B8=80=E9=A1=B5=E7=9A=84=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=B7=BB=E5=8A=A0=EF=BC=8C=E6=8F=90=E7=A4=BA=E6=93=8D?= =?UTF-8?q?=E4=BD=9C=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/LawsAssessController.java | 68 +--------------- .../mapper/LawsAssessMapper.java | 3 + .../mapper/xml/LawsAssessMapper.xml | 14 ++++ .../service/ILawsAssessService.java | 4 + .../service/impl/LawsAssessServiceImpl.java | 79 ++++++++++++++++++- 5 files changed, 97 insertions(+), 71 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/projectLibrary/controller/LawsAssessController.java b/laws-modules/src/main/java/com/jero/modules/projectLibrary/controller/LawsAssessController.java index 4e345d8d..db026eec 100644 --- a/laws-modules/src/main/java/com/jero/modules/projectLibrary/controller/LawsAssessController.java +++ b/laws-modules/src/main/java/com/jero/modules/projectLibrary/controller/LawsAssessController.java @@ -88,74 +88,8 @@ public class LawsAssessController extends JeroController retrieval(@Validated @RequestBody LawsAssessAddVo lawsAssessAddVo) { - String projectId = lawsAssessAddVo.getProjectId(); - String standardNumbers = lawsAssessAddVo.getStandardNumber(); - if (StringUtils.isBlank(standardNumbers)){ - throw new JeroBootException(ResultCommon.PLEASE_SELECT_DATA); - } - //查询当前项目已绑定的标准,为了不造成重复绑定 - //查询该项目下所有未删除的标准 - List allByProjectIdNotDeleted = lawsAssessService.getAllByProjectIdNotDeleted(projectId); - List allByProjectIdNotDeletedIdList = allByProjectIdNotDeleted.stream().map(LawsAssess::getStandardId).distinct().collect(Collectors.toList()); - //查询该项目下所有删除的标准 - List allByProjectIdDeleted = lawsAssessService.getAllByProjectIdDeleted(projectId); - List allByProjectIdDeletedIdList = allByProjectIdDeleted.stream().map(LawsAssess::getStandardId).distinct().collect(Collectors.toList()); + lawsAssessService.retrieval(lawsAssessAddVo); - List lawsAssesses = new ArrayList<>(); - for (String standardNumber : standardNumbers.split(",")) { - LawsDomesticStandard lawsDomesticStandard = lawsDomesticStandardService.queryByStandardNumber(standardNumber); - if (lawsDomesticStandard != null){ - String id = lawsDomesticStandard.getId(); - if (allByProjectIdNotDeletedIdList.contains(id)){ - //如果已存在跳过新增 - continue; - } - if (allByProjectIdDeletedIdList.contains(id)){ - //如果已删除则恢复未删除状态 - LawsAssess lawsAssess = lawsAssessService.getById(id); - lawsAssess.setDelFlag(CommonConstant.DEL_FLAG_0.toString()); - lawsAssessService.updateById(lawsAssess); - continue; - } - LawsAssess lawsAssess = new LawsAssess(); - lawsAssess.setSource(CommonConstant.STANDARD_SOURCE_1); - lawsAssess.setProjectId(projectId); - lawsAssess.setStandardId(id); - LawsDomesticStandard standard = lawsDomesticStandardService.queryById(id); - lawsAssess.setStandardNumber(standard.getStandardNumber()); - lawsAssess.setStandardName(standard.getStandardName()); - lawsAssess.setProcessStatus(AssessCommon.NOT_EVALUATED); - lawsAssess.setDelFlag(CommonConstant.DEL_FLAG_0.toString()); - lawsAssesses.add(lawsAssess); - continue; - } - LawsOverseasStandard lawsOverseasStandard = lawsOverseasStandardService.queryByStandardNumber(standardNumber); - if (lawsOverseasStandard != null){ - String id = lawsOverseasStandard.getId(); - if (allByProjectIdNotDeletedIdList.contains(id)){ - //如果已存在跳过新增 - continue; - } - if (allByProjectIdDeletedIdList.contains(id)){ - //如果已删除则恢复未删除状态 - LawsAssess lawsAssess = lawsAssessService.getById(id); - lawsAssess.setDelFlag(CommonConstant.DEL_FLAG_0.toString()); - lawsAssessService.updateById(lawsAssess); - continue; - } - LawsAssess lawsAssess = new LawsAssess(); - lawsAssess.setSource(CommonConstant.STANDARD_SOURCE_2); - lawsAssess.setProjectId(projectId); - lawsAssess.setStandardId(id); - LawsOverseasStandard standard = lawsOverseasStandardService.queryById(id); - lawsAssess.setStandardNumber(standard.getStandardNumber()); - lawsAssess.setStandardName(standard.getStandardName()); - lawsAssess.setProcessStatus(AssessCommon.NOT_EVALUATED); - lawsAssess.setDelFlag(CommonConstant.DEL_FLAG_0.toString()); - lawsAssesses.add(lawsAssess); - } - } - lawsAssessService.saveBatch(lawsAssesses); return Result.OK("操作成功!"); } diff --git a/laws-modules/src/main/java/com/jero/modules/projectLibrary/mapper/LawsAssessMapper.java b/laws-modules/src/main/java/com/jero/modules/projectLibrary/mapper/LawsAssessMapper.java index 189f7e32..7336a429 100644 --- a/laws-modules/src/main/java/com/jero/modules/projectLibrary/mapper/LawsAssessMapper.java +++ b/laws-modules/src/main/java/com/jero/modules/projectLibrary/mapper/LawsAssessMapper.java @@ -14,4 +14,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface LawsAssessMapper extends BaseMapper { + Integer changeDelFlag(@Param("id") String id); + + List getAllByProjectIdDeleted(@Param("projectId") String projectId); } diff --git a/laws-modules/src/main/java/com/jero/modules/projectLibrary/mapper/xml/LawsAssessMapper.xml b/laws-modules/src/main/java/com/jero/modules/projectLibrary/mapper/xml/LawsAssessMapper.xml index 0a346426..df5b4e54 100644 --- a/laws-modules/src/main/java/com/jero/modules/projectLibrary/mapper/xml/LawsAssessMapper.xml +++ b/laws-modules/src/main/java/com/jero/modules/projectLibrary/mapper/xml/LawsAssessMapper.xml @@ -22,4 +22,18 @@ + + + + + update laws_assess la + set la.del_flag = 0 + where id = #{id} + diff --git a/laws-modules/src/main/java/com/jero/modules/projectLibrary/service/ILawsAssessService.java b/laws-modules/src/main/java/com/jero/modules/projectLibrary/service/ILawsAssessService.java index caf5c708..0aee8c7b 100644 --- a/laws-modules/src/main/java/com/jero/modules/projectLibrary/service/ILawsAssessService.java +++ b/laws-modules/src/main/java/com/jero/modules/projectLibrary/service/ILawsAssessService.java @@ -4,6 +4,8 @@ import com.jero.modules.projectLibrary.entity.LawsAssess; import com.baomidou.mybatisplus.extension.service.IService; import javax.servlet.http.HttpServletRequest; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.jero.modules.projectLibrary.vo.LawsAssessAddVo; + import java.util.List; /** @@ -77,4 +79,6 @@ public interface ILawsAssessService extends IService { List getAllByProjectIdDeleted(String projectId); void assignment(List records); + + void retrieval(LawsAssessAddVo lawsAssessAddVo); } diff --git a/laws-modules/src/main/java/com/jero/modules/projectLibrary/service/impl/LawsAssessServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/projectLibrary/service/impl/LawsAssessServiceImpl.java index a5e43c69..959058e0 100644 --- a/laws-modules/src/main/java/com/jero/modules/projectLibrary/service/impl/LawsAssessServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/projectLibrary/service/impl/LawsAssessServiceImpl.java @@ -2,6 +2,7 @@ package com.jero.modules.projectLibrary.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.jero.common.api.vo.ResultCommon; import com.jero.common.constant.CommonConstant; import com.jero.common.system.api.ISysBaseAPI; import com.jero.common.system.vo.DictModel; @@ -9,10 +10,12 @@ import com.jero.modules.laws.standard.entity.LawsDomesticStandard; import com.jero.modules.laws.standard.entity.LawsOverseasStandard; import com.jero.modules.laws.standard.service.ILawsDomesticStandardService; import com.jero.modules.laws.standard.service.ILawsOverseasStandardService; +import com.jero.modules.projectLibrary.common.AssessCommon; import com.jero.modules.projectLibrary.entity.LawsAssess; import com.jero.modules.projectLibrary.mapper.LawsAssessMapper; import com.jero.modules.projectLibrary.service.ILawsAssessService; import com.jero.modules.projectLibrary.vo.DecompositionOrderSourceVO; +import com.jero.modules.projectLibrary.vo.LawsAssessAddVo; import com.jero.modules.split.entity.SarFileSplitInfoEO; import com.jero.modules.split.service.ISarFileSplitInfoService; import org.apache.commons.lang3.StringUtils; @@ -22,6 +25,7 @@ import org.springframework.transaction.annotation.Transactional; import com.jero.common.exception.JeroBootException; import java.util.*; +import java.util.stream.Collectors; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.system.query.QueryGenerator; @@ -51,6 +55,8 @@ public class LawsAssessServiceImpl extends ServiceImpl(); } - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(LawsAssess::getProjectId, projectId); - wrapper.eq(LawsAssess::getDelFlag, CommonConstant.DEL_FLAG_1.toString()); - return list(wrapper); + return lawsAssessMapper.getAllByProjectIdDeleted(projectId); } @Override @@ -229,4 +232,72 @@ public class LawsAssessServiceImpl extends ServiceImpl allByProjectIdNotDeleted = this.getAllByProjectIdNotDeleted(projectId); + List allByProjectIdNotDeletedIdList = allByProjectIdNotDeleted.stream().map(LawsAssess::getStandardId).distinct().collect(Collectors.toList()); + //查询该项目下所有删除的标准 + List allByProjectIdDeleted = this.getAllByProjectIdDeleted(projectId); + List allByProjectIdDeletedIdList = allByProjectIdDeleted.stream().map(LawsAssess::getStandardId).distinct().collect(Collectors.toList()); + + List lawsAssesses = new ArrayList<>(); + for (String standardNumber : standardNumbers.split(",")) { + LawsDomesticStandard lawsDomesticStandard = lawsDomesticStandardService.queryByStandardNumber(standardNumber); + if (lawsDomesticStandard != null){ + String id = lawsDomesticStandard.getId(); + if (allByProjectIdNotDeletedIdList.contains(id)){ + //如果已存在跳过新增 + continue; + } + if (allByProjectIdDeletedIdList.contains(id)){ + //如果已删除则恢复未删除状态 + lawsAssessMapper.changeDelFlag(id); + continue; + } + LawsAssess lawsAssess = new LawsAssess(); + lawsAssess.setSource(CommonConstant.STANDARD_SOURCE_1); + lawsAssess.setProjectId(projectId); + lawsAssess.setStandardId(id); + LawsDomesticStandard standard = lawsDomesticStandardService.queryById(id); + lawsAssess.setStandardNumber(standard.getStandardNumber()); + lawsAssess.setStandardName(standard.getStandardName()); + lawsAssess.setProcessStatus(AssessCommon.NOT_EVALUATED); + lawsAssess.setDelFlag(CommonConstant.DEL_FLAG_0.toString()); + lawsAssesses.add(lawsAssess); + continue; + } + LawsOverseasStandard lawsOverseasStandard = lawsOverseasStandardService.queryByStandardNumber(standardNumber); + if (lawsOverseasStandard != null){ + String id = lawsOverseasStandard.getId(); + if (allByProjectIdNotDeletedIdList.contains(id)){ + //如果已存在跳过新增 + continue; + } + if (allByProjectIdDeletedIdList.contains(id)){ + //如果已删除则恢复未删除状态 + lawsAssessMapper.changeDelFlag(id); + continue; + } + LawsAssess lawsAssess = new LawsAssess(); + lawsAssess.setSource(CommonConstant.STANDARD_SOURCE_2); + lawsAssess.setProjectId(projectId); + lawsAssess.setStandardId(id); + LawsOverseasStandard standard = lawsOverseasStandardService.queryById(id); + lawsAssess.setStandardNumber(standard.getStandardNumber()); + lawsAssess.setStandardName(standard.getStandardName()); + lawsAssess.setProcessStatus(AssessCommon.NOT_EVALUATED); + lawsAssess.setDelFlag(CommonConstant.DEL_FLAG_0.toString()); + lawsAssesses.add(lawsAssess); + } + } + this.saveBatch(lawsAssesses); + } }