From 184302cb9d4bdd4a9d69d7c6fcc2e25ad597d962 Mon Sep 17 00:00:00 2001 From: "DESKTOP-DDTUS3E\\yaxin" <daixiaoyi0622@gmail.com> Date: Tue, 13 Aug 2024 15:39:28 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E7=9C=9F=E5=AE=9E=E5=88=A0?= =?UTF-8?q?=E9=99=A4=EF=BC=88=E6=89=B9=E9=87=8F=EF=BC=89=E3=80=81=E6=81=A2?= =?UTF-8?q?=E5=A4=8D=E5=88=A0=E9=99=A4=EF=BC=88=E6=89=B9=E9=87=8F=EF=BC=89?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=EF=BC=8C=E5=8E=9F=E9=80=BB=E8=BE=91=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=8E=A5=E5=8F=A3=E4=B8=AD=E7=9A=84=E7=9F=A5=E8=AF=86?= =?UTF-8?q?=E5=BA=93=E5=88=A0=E9=99=A4=E6=93=8D=E4=BD=9C=E7=A7=BB=E5=8A=A8?= =?UTF-8?q?=E5=88=B0=E7=9C=9F=E5=AE=9E=E5=88=A0=E9=99=A4=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ModelCaseController.java | 10 ++++ .../police/service/ModelCaseService.java | 4 ++ .../service/impl/ModelCaseServiceImpl.java | 52 ++++++++++++++++--- 3 files changed, 58 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/supervision/police/controller/ModelCaseController.java b/src/main/java/com/supervision/police/controller/ModelCaseController.java index a71c2e6..2df18d1 100644 --- a/src/main/java/com/supervision/police/controller/ModelCaseController.java +++ b/src/main/java/com/supervision/police/controller/ModelCaseController.java @@ -62,6 +62,16 @@ public class ModelCaseController { return modelCaseService.addOrUpd(modelCaseBase); } + @DeleteMapping("/realDeleteByIds") + public R<?> realDeleteByIds(@RequestBody List<String> ids) { + return modelCaseService.realDeleteByIds(ids); + } + + @PostMapping("/resetDataStatusByIds") + public R<?> resetDataStatusByIds(@RequestBody List<String> ids) { + return modelCaseService.resetDataStatusByIds(ids); + } + /** * 删除 * @param id diff --git a/src/main/java/com/supervision/police/service/ModelCaseService.java b/src/main/java/com/supervision/police/service/ModelCaseService.java index b012697..ffdcf74 100644 --- a/src/main/java/com/supervision/police/service/ModelCaseService.java +++ b/src/main/java/com/supervision/police/service/ModelCaseService.java @@ -28,6 +28,10 @@ public interface ModelCaseService extends IService<ModelCase> { R<?> del(String id); + R<?> realDeleteByIds(List<String> ids); + + R<?> resetDataStatusByIds(List<String> ids); + R<List<CasePerson>> getPerson(String caseId, String name); R<?> addPerson(CasePerson person); diff --git a/src/main/java/com/supervision/police/service/impl/ModelCaseServiceImpl.java b/src/main/java/com/supervision/police/service/impl/ModelCaseServiceImpl.java index 5b6125f..3e9dbbf 100644 --- a/src/main/java/com/supervision/police/service/impl/ModelCaseServiceImpl.java +++ b/src/main/java/com/supervision/police/service/impl/ModelCaseServiceImpl.java @@ -12,7 +12,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.supervision.chat.UploadParamEnum; import com.supervision.chat.client.LangChainChatService; import com.supervision.chat.client.dto.CreateBaseDTO; import com.supervision.chat.client.dto.LangChainChatRes; @@ -55,6 +54,8 @@ import java.util.stream.Collectors; @RequiredArgsConstructor public class ModelCaseServiceImpl extends ServiceImpl<ModelCaseMapper, ModelCase> implements ModelCaseService { + private static final String DATA_STATUS_DEFAULT = "1"; + private final ComDictionaryService comDictionaryService; private final ModelCaseMapper modelCaseMapper; @@ -108,7 +109,7 @@ public class ModelCaseServiceImpl extends ServiceImpl<ModelCaseMapper, ModelCase if (CollUtil.isNotEmpty(casePersonMap)) { Optional<CasePerson> optionalCasePerson = casePersonMap.getOrDefault("1", new ArrayList<>()) .stream().filter(person -> Integer.valueOf(1).equals(person.getCaseActorFlag())).findAny(); - if (optionalCasePerson.isPresent()){ + if (optionalCasePerson.isPresent()) { modelCaseDTO.setLawActor(optionalCasePerson.get()); modelCaseDTO.floatLawActorInfo(); } @@ -177,12 +178,7 @@ public class ModelCaseServiceImpl extends ServiceImpl<ModelCaseMapper, ModelCase @Override public R<?> del(String id) { - ModelCase modelCase = modelCaseMapper.selectById(id); - LangChainChatRes langChainChatRes = langChainChatService.deleteBase(modelCase.getCaseNo()); - if (200 != langChainChatRes.getCode()){ - log.info("删除知识库失败"); - } modelCase.setDataStatus(DataStatus.NOT_AVAILABLE.getCode()); int i = modelCaseMapper.updateById(modelCase); if (i > 0) { @@ -192,6 +188,46 @@ public class ModelCaseServiceImpl extends ServiceImpl<ModelCaseMapper, ModelCase } } + @Override + @Transactional(transactionManager = "dataSourceTransactionManager", rollbackFor = Exception.class) + public R<?> realDeleteByIds(List<String> ids) { + List<ModelCase> modelCases = modelCaseMapper.selectBatchIds(ids); + if (modelCases != null && !modelCases.isEmpty()) { + modelCases.forEach(modelCase -> { + LangChainChatRes<Object> langChainChatRes = langChainChatService.deleteBase(modelCase.getCaseNo()); + if (200 != langChainChatRes.getCode()) { + log.error("删除知识库失败:{}, caseNo:{}", langChainChatRes.getMsg(), modelCase.getCaseNo()); + throw new BusinessException("删除知识库失败"); + } + }); + } + int i = modelCaseMapper.deleteBatchIds(ids); + if (i > 0) { + return R.okMsg("删除成功"); + } else { + return R.fail("删除失败"); + } + } + + @Override + @Transactional(transactionManager = "dataSourceTransactionManager", rollbackFor = Exception.class) + public R<?> resetDataStatusByIds(List<String> ids) { + boolean result = false; + //批量查出案件,并更新案件状态 + List<ModelCase> modelCases = modelCaseMapper.selectBatchIds(ids); + if (modelCases != null && !modelCases.isEmpty()) { + modelCases.forEach(modelCase -> { + modelCase.setDataStatus(DATA_STATUS_DEFAULT); + }); + result = updateBatchById(modelCases); + } + if (result) { + return R.okMsg("恢复成功"); + } else { + return R.fail("恢复失败"); + } + } + @Override public R<List<CasePerson>> getPerson(String caseId, String name) { LambdaQueryWrapper<CasePerson> wrapper = Wrappers.lambdaQuery(); @@ -245,7 +281,7 @@ public class ModelCaseServiceImpl extends ServiceImpl<ModelCaseMapper, ModelCase .set(CasePerson::getName, person.getName()) .set(CasePerson::getRoleCode, person.getRoleCode()) .update(); - if (update){ + if (update) { caseStatusManageService.whenSaveCasePeople(person.getCaseId(), person); }