From 862397aa5b5e2866c0468d6275bdb95bc97c6e52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= Date: Wed, 7 Aug 2024 17:36:00 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=A0=87=E7=AD=BE=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/tag/controller/LawsTagController.java | 1 + .../com/jero/modules/tag/mapper/LawsTagMapper.java | 8 ++++---- .../jero/modules/tag/mapper/xml/LawsTagMapper.xml | 7 ++----- .../jero/modules/tag/service/ILawsTagService.java | 8 ++++++++ .../tag/service/impl/ILawsTagServiceImpl.java | 14 +++++++++----- 5 files changed, 24 insertions(+), 14 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/tag/controller/LawsTagController.java b/laws-modules/src/main/java/com/jero/modules/tag/controller/LawsTagController.java index 09f60113..27de5f58 100644 --- a/laws-modules/src/main/java/com/jero/modules/tag/controller/LawsTagController.java +++ b/laws-modules/src/main/java/com/jero/modules/tag/controller/LawsTagController.java @@ -92,6 +92,7 @@ public class LawsTagController extends JeroController // TODO 这里有Bug,由于采用了逻辑删除标识,此查询会自动将已删除的数据过滤掉,所以无法查出重复数据。所以去掉逻辑删除的标识,删除的时候自己处理逻辑删除 queryWrapper.eq("db_field_txt", lawsTag.getDbFieldTxt()).eq("is_model", lawsTag.getIsModel()); List existCgformTagList = this.lawsTagService.list(queryWrapper); +// List existCgformTagList = this.lawsTagService.listByData(lawsTag.getDbFieldTxt(),lawsTag.getIsModel()); String dictId = lawsTag.getDictId(); if (StringUtils.isNotBlank(dictId)){ SysDict sysDict = dictMapper.selectById(dictId); diff --git a/laws-modules/src/main/java/com/jero/modules/tag/mapper/LawsTagMapper.java b/laws-modules/src/main/java/com/jero/modules/tag/mapper/LawsTagMapper.java index 2d7681d3..9e962f0e 100644 --- a/laws-modules/src/main/java/com/jero/modules/tag/mapper/LawsTagMapper.java +++ b/laws-modules/src/main/java/com/jero/modules/tag/mapper/LawsTagMapper.java @@ -58,12 +58,12 @@ public interface LawsTagMapper extends BaseMapper { int updateAllById(@Param("updated")LawsTag updated); /** - * 查看字段是否已存在 - * @param tableName 表名 - * @param dbFieldName 字段名 + * 查询数据 + * @param dbFieldTxt + * @param isModel * @return */ - long selectColumns(@Param("tableName") String tableName,@Param("dbFieldName") String dbFieldName); + List listByData(@Param("dbFieldTxt") String dbFieldTxt,@Param("isModel") String isModel); diff --git a/laws-modules/src/main/java/com/jero/modules/tag/mapper/xml/LawsTagMapper.xml b/laws-modules/src/main/java/com/jero/modules/tag/mapper/xml/LawsTagMapper.xml index 5e94287e..9a0f3bb9 100644 --- a/laws-modules/src/main/java/com/jero/modules/tag/mapper/xml/LawsTagMapper.xml +++ b/laws-modules/src/main/java/com/jero/modules/tag/mapper/xml/LawsTagMapper.xml @@ -169,10 +169,7 @@ where id = #{updated.id} - + select * from laws_tag where db_field_txt = #{dbFieldTxt} and is_model = #{isModel} diff --git a/laws-modules/src/main/java/com/jero/modules/tag/service/ILawsTagService.java b/laws-modules/src/main/java/com/jero/modules/tag/service/ILawsTagService.java index b310e6dd..832f4d52 100644 --- a/laws-modules/src/main/java/com/jero/modules/tag/service/ILawsTagService.java +++ b/laws-modules/src/main/java/com/jero/modules/tag/service/ILawsTagService.java @@ -79,4 +79,12 @@ public interface ILawsTagService extends IService { */ Integer queryExitArea(LawsArea lawsArea); + /** + * 查询数据 + * @param dbFieldTxt + * @param isModel + * @return + */ + List listByData(String dbFieldTxt,String isModel); + } diff --git a/laws-modules/src/main/java/com/jero/modules/tag/service/impl/ILawsTagServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/tag/service/impl/ILawsTagServiceImpl.java index 59caec13..5ace7385 100644 --- a/laws-modules/src/main/java/com/jero/modules/tag/service/impl/ILawsTagServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/tag/service/impl/ILawsTagServiceImpl.java @@ -212,11 +212,6 @@ public class ILawsTagServiceImpl extends ServiceImpl imp if (StringUtils.isNotBlank(dbFieldNameOld)){ sql = "alter table " + tableName + " change `" + dbFieldNameOld + "` `" + dbFieldName + "` " + type + " null comment '"+dbFieldTxt+"'"; }else { - // 验证字段是否存在 - long l = lawsTagMapper.selectColumns(tableName,dbFieldName); - if(l > 0){ - throw new JeroBootException(ResultCommon.TAG_EDIT_ERROR_2); - } sql = "alter table " + tableName + " " + modifyOrAdd + " `" + dbFieldName + "` " + type + " null comment '"+dbFieldTxt+"'"; } @@ -229,6 +224,10 @@ public class ILawsTagServiceImpl extends ServiceImpl imp // 判断是否为SQLSyntaxErrorException throw new JeroBootException(ResultCommon.ROW_SIZE_TOO_LARGE); } + if(e.getMessage().contains("java.sql.SQLSyntaxErrorException: Duplicate column name")){ + // 判断是否为SQLSyntaxErrorException + throw new JeroBootException(ResultCommon.TAG_EDIT_ERROR_2); + } throw new JeroBootException(ResultCommon.ERROR); } } @@ -303,4 +302,9 @@ public class ILawsTagServiceImpl extends ServiceImpl imp Integer count = lawsTagMapper.selectCount(queryWrapper); return count; } + + @Override + public List listByData(String dbFieldTxt, String isModel) { + return lawsTagMapper.listByData(dbFieldTxt, isModel); + } }