package com.iplatform.base.service; import com.iplatform.model.po.S_config; import com.iplatform.model.po.S_dict_type; import com.walker.db.page.GenericPager; import com.walker.db.page.ListPageContext; import com.walker.db.page.PageSearch; import com.walker.infrastructure.utils.StringUtils; import com.walker.jdbc.service.BaseServiceImpl; import org.springframework.stereotype.Service; import java.util.HashMap; import java.util.List; import java.util.Map; @Service public class ConfigArgumentServiceImpl extends BaseServiceImpl { private static final String SQL_PAGE_LIST_PREFIX = "select * from s_config where 1=1"; private static final String SQL_UPDATE_CONFIG = "update s_config set config_value=? where config_key=?"; /** * 从表单分组配置中,更新整个分组配置 * @param savedConfigList * @date 2023-05-31 */ public void execUpdateFormConfig(List savedConfigList){ this.execBatchUpdate(SQL_UPDATE_CONFIG, savedConfigList); } /** * 查询分组下的参数集合。

* 通常该方法调用方是为了初始化加载参数,而不是频繁业务调用。
* 目前:支付模块初始化引擎使用。 * @param group 分组名称 * @return * @date 2023-03-01 */ @Deprecated public List queryGroupConfigList(String group){ return this.select(new S_config(), "where group_id=?", new Object[]{group}); } public S_config queryConfigByKey(String key){ List list = this.select(new S_config(), "where config_key=?", new Object[]{key}); if(StringUtils.isEmptyList(list)){ return null; } return list.get(0); } public GenericPager queryPageConfigList(String configName, String configKey, String configType){ Map parameters = new HashMap<>(); StringBuilder sql = new StringBuilder(SQL_PAGE_LIST_PREFIX); if(StringUtils.isNotEmpty(configName)){ sql.append(" and config_name like :configName"); parameters.put("configName", "%" + configName + "%"); } if(StringUtils.isNotEmpty(configKey)){ sql.append(" and config_key like :configKey"); parameters.put("configKey", "%" + configKey + "%"); } if(StringUtils.isNotEmpty(configType)){ sql.append(" and config_type = :configType"); parameters.put("configType", configType); } PageSearch pageSearch = ListPageContext.getPageSearch(); return this.selectSplit(sql.toString(), parameters, pageSearch.getPageIndex(), pageSearch.getPageSize(), new S_config()); } }