From c82b14f3a882698cbca62ef168615d31711320ca Mon Sep 17 00:00:00 2001 From: zhangherong <571457620@qq.com> Date: 星期四, 03 七月 2025 15:12:29 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysDictServiceImpl.java | 39 +++++++++++++++++++++++++++++++++++++-- 1 files changed, 37 insertions(+), 2 deletions(-) diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysDictServiceImpl.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysDictServiceImpl.java index 3776248..516c785 100644 --- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysDictServiceImpl.java +++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysDictServiceImpl.java @@ -1,5 +1,7 @@ package org.jeecg.modules.system.service.impl; +import cn.hutool.core.lang.Validator; +import cn.hutool.core.util.ArrayUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -153,7 +155,7 @@ log.debug("鏃犵紦瀛榙ictTableList鐨勬椂鍊欒皟鐢ㄨ繖閲岋紒"); return sysDictMapper.queryTableDictItemsByCodeAndFilter(table,text,code,filterSql); } - + /** * 閫氳繃鏌ヨ鎸囧畾table鐨� text code 鑾峰彇瀛楀吀鍊紅ext * dictTableCache閲囩敤redis缂撳瓨鏈夋晥鏈�10鍒嗛挓 @@ -282,7 +284,7 @@ public List<DictModel> queryAllUserBackDictModel() { return baseMapper.queryAllUserBackDictModel(); } - + // @Override // public List<DictModel> queryTableDictItems(String table, String text, String code, String keyword) { // return baseMapper.queryTableDictItems(table, text, code, "%"+keyword+"%"); @@ -475,4 +477,37 @@ } } + @Override + @Cacheable(value = CacheConstant.SYS_DICT_TABLE_CACHE) + public String queryTableDictByParams(String table, String text, String codes, String params) { + log.info("鏃犵紦瀛榙ictTable queryTableDictByKeys鐨勬椂鍊欒皟鐢ㄨ繖閲岋紒"); + String[] codeArr = codes.split("&&"); + String[] paramArr = params.split("&&"); + + String subSql = ""; + for (int i = 0; i < codeArr.length; i++) { + String column = codeArr[i]; + // 榛樿鍙傛暟涓虹┖瀛楃涓� + String param = paramArr.length > i ? paramArr[i] : ""; + if(column == null || ! Validator.isGeneral(column)){ + log.error("<<<闈炴硶瀛楁:" + column); + return null; + } + if(null == param || (!"-1".equals(param) && ! Validator.isGeneralWithChinese(param.replaceAll(" ", "")))){ + log.error("<<<闈炴硶鍙傛暟:" + param); + return null; + } + + if(i != 0) subSql += " and "; + subSql += column+" = '"+param+"'"; + } + return sysDictMapper.queryTableDictTextBySubSql(table,text,subSql); + } + + + @Override + public List<Map> queryTableFieldByParams(String queryTable, String[] columns, String paramName, String[] paramValues) { + String column = ArrayUtil.join(columns, ","); + return this.baseMapper.queryTableFieldByParams(queryTable, column, paramName, paramValues); + } } -- Gitblit v1.9.3