From 4115bad374ac4d3411d9d0dfa675fe7638628279 Mon Sep 17 00:00:00 2001 From: "DESKTOP-DDTUS3E\\yaxin" <daixiaoyi0622@gmail.com> Date: Mon, 28 Oct 2024 11:07:40 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E7=A4=BA=E8=AF=8D=E4=BF=9D=E5=AD=98?= =?UTF-8?q?=E6=97=B6=EF=BC=8C=E4=B8=89=E5=85=83=E7=BB=84=E5=B7=B2=E5=AD=98?= =?UTF-8?q?=E5=9C=A8=E6=A0=A1=E9=AA=8C=E7=BB=93=E6=9E=9C=E4=B8=8D=E7=AC=A6?= =?UTF-8?q?=E5=90=88=E7=9B=B4=E6=8E=A5=E8=BF=94=E5=9B=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ModelRecordTypeServiceImpl.java | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/supervision/police/service/impl/ModelRecordTypeServiceImpl.java b/src/main/java/com/supervision/police/service/impl/ModelRecordTypeServiceImpl.java index e1c1c42..80731ec 100644 --- a/src/main/java/com/supervision/police/service/impl/ModelRecordTypeServiceImpl.java +++ b/src/main/java/com/supervision/police/service/impl/ModelRecordTypeServiceImpl.java @@ -161,7 +161,9 @@ public class ModelRecordTypeServiceImpl extends ServiceImpl<ModelRecordTypeMappe boolean save; if (StringUtils.isEmpty(prompt.getId())) { // 新增的时候,校验是否已经存在相同的三元组关系,如果已经存在了相同的三元组关系,不允许添加 - checkHasSameTriple(prompt.getStartEntityType(), prompt.getRelType(), prompt.getEndEntityType(), null); + if (checkHasSameTriple(prompt.getStartEntityType(), prompt.getRelType(), prompt.getEndEntityType(), null)) { + return R.fail("已存在相同的三元组关系,不允许添加"); + } save = notePromptService.save(prompt); // 新增prompt绑定的分类信息 for (String typeId : typeList) { @@ -171,7 +173,9 @@ public class ModelRecordTypeServiceImpl extends ServiceImpl<ModelRecordTypeMappe notePromptTypeRelService.save(rel); } } else { - checkHasSameTriple(prompt.getStartEntityType(), prompt.getRelType(), prompt.getEndEntityType(), prompt.getId()); + if (checkHasSameTriple(prompt.getStartEntityType(), prompt.getRelType(), prompt.getEndEntityType(), prompt.getId())) { + return R.fail("已存在相同的三元组关系,不允许添加"); + } save = notePromptService.updateById(prompt); // 更新prompt绑定的分类信息 // 首先查询已经有的,如果都存在,就不变,如果数据库有,前端没有,就删除,如果前端有,数据库没有,就新增 @@ -255,21 +259,18 @@ public class ModelRecordTypeServiceImpl extends ServiceImpl<ModelRecordTypeMappe } - private void checkHasSameTriple(String startEntityType, String relType, String endEntityType, String promptId) { + private boolean checkHasSameTriple(String startEntityType, String relType, String endEntityType, String promptId) { List<NotePrompt> list = notePromptService.lambdaQuery().eq(NotePrompt::getStartEntityType, startEntityType) .eq(NotePrompt::getRelType, relType).eq(NotePrompt::getEndEntityType, endEntityType).list(); if (CollUtil.isNotEmpty(list)) { if (StrUtil.isBlank(promptId)) { - throw new RuntimeException("该三元组关系已经存在,请勿重复添加"); + return true; } else { - // 校验list查出来的是不是和promptId相等,如果不想等,也报错 - if (!list.get(0).getId().equals(promptId)) { - throw new RuntimeException("该三元组关系已经存在,请勿重复添加"); - } + return !list.get(0).getId().equals(promptId); } - } + return false; } @Override