表字典搜索条件不做限制

This commit is contained in:
JeeLowCode
2025-01-16 09:26:27 +08:00
parent b1e2a8fde5
commit 9c6ee9b8a2
6 changed files with 40 additions and 2 deletions

View File

@@ -13,7 +13,9 @@ http://www.apache.org/licenses/
*/
package com.jeelowcode.core.framework.config.btncommand.receiver;
import com.jeelowcode.core.framework.utils.Func;
import com.jeelowcode.framework.utils.adapter.IJeeLowCodeAdapter;
import com.jeelowcode.framework.utils.enums.ParamEnum;
import com.jeelowcode.framework.utils.model.ResultDataModel;
import com.jeelowcode.framework.utils.tool.spring.SpringUtils;
import com.jeelowcode.core.framework.config.btncommand.param.ButtonParamList;
@@ -53,6 +55,9 @@ public class ButtonReceiverList extends ButtonReceiverBase implements IButtonCom
Long dbformId = param.getDbFormId();
Map<String, Object> params = param.getParams();
if(Func.isNotEmpty(params)){
params.remove(ParamEnum.ALL_QUERY_FIELD.getCode());//特殊字段不允许用户带过来
}
Page page = param.getPage();
ResultDataModel resultDataModel = frameService.getDataList(dbformId, page, params);

View File

@@ -257,6 +257,7 @@ public class DbFormController extends BaseController {
params.put(code,dataId);//id=1
params.put(ParamEnum.PAGE_NO.getCode(),1);
params.put(ParamEnum.PAGE_SIZE.getCode(),1000);
params.put(ParamEnum.ALL_QUERY_FIELD.getCode(),"Y");
ResultDataModel model = frameService.getDataList(dbformId, params);
List<Map<String, Object>> tmpList = model.getRecords();
if(Func.isEmpty(tmpList)){

View File

@@ -33,6 +33,9 @@ public interface JeeLowCodeMapper {
@JeelowCodeCache(cacheNames = "'JeeLowCodeMapper:getDbWhereFieldList:' + #dbFormId", reflexClass = Map.class,nullIsSave = true)
List<Map<String,String>> getDbWhereFieldList(Long dbFormId);
@JeelowCodeCache(cacheNames = "'JeeLowCodeMapper:getAllDbWhereFieldList:' + #dbFormId", reflexClass = Map.class,nullIsSave = true)
List<Map<String,String>> getAllDbWhereFieldList(Long dbFormId);
//获取开启搜索列-数据报表
@JeelowCodeCache(cacheNames = "'JeeLowCodeMapper:getReportWhereFieldList:' + #reportId", reflexClass = Map.class,nullIsSave=true)
List<Map<String,String>> getReportWhereFieldList(Long reportId);

View File

@@ -1130,7 +1130,14 @@ public class FrameServiceImpl implements IFrameService {
//处理where
private void handleWhere(Long dbFormId, SqlInfoQueryWrapper.Wrapper wrapper, Map<String, Object> params) {
List<Map<String, String>> whereFieldMapList = jeeLowCodeMapper.getDbWhereFieldList(dbFormId);
String allQueryField = Func.getMap2Str(params, ParamEnum.ALL_QUERY_FIELD.getCode());
List<Map<String, String>> whereFieldMapList =null;
if(Func.isNotEmpty(allQueryField) && Func.equals(allQueryField,"Y")){
//特殊情况,是全部放开
whereFieldMapList = jeeLowCodeMapper.getAllDbWhereFieldList(dbFormId);
}else{
whereFieldMapList = jeeLowCodeMapper.getDbWhereFieldList(dbFormId);
}
handleWhere(whereFieldMapList, wrapper, params);
}

View File

@@ -39,6 +39,26 @@
field.id ASC
</select>
<select id="getAllDbWhereFieldList" resultType="map">
SELECT
field.field_code as "field_code",
field.field_type as "field_type",
field_query.query_mode as "query_mode"
FROM
lowcode_dbform_field field
INNER JOIN lowcode_dbform_field_web field_web ON field.field_code = field_web.field_code and field.dbform_id = field_web.dbform_id
INNER JOIN lowcode_dbform_field_query field_query ON field.field_code = field_query.field_code and field.dbform_id = field_query.dbform_id
WHERE
field.is_deleted = 0
AND field_web.is_deleted = 0
AND field_query.is_deleted = 0
AND field.is_db='Y'
AND field.dbform_id = #{dbFormId}
ORDER BY
field.sort_num ASC,
field.id ASC
</select>
<select id="getReportWhereFieldList" resultType="map">
SELECT
field.field_code as "field_code",

View File

@@ -28,7 +28,9 @@ public enum ParamEnum {
TREE_PARENT("jeeLowCode_treeParent", "获取指定列的所有上级"),
REQUEST_PARAM_BODY("requestParamBody", "body参数"),
MORE_SELECT_FIELD("more_select_field", "body参数"),
REQUEST_REPORT_CODES("jeeLowCode_report_codes", "报表code 多个通过,隔开")
REQUEST_REPORT_CODES("jeeLowCode_report_codes", "报表code 多个通过,隔开"),
ALL_QUERY_FIELD("jeeLowCode_all_query_field", "所有字段都可以查询"),
;
/**