package com.zy.system.service.impl; import com.baomidou.mybatisplus.service.impl.ServiceImpl; import com.core.common.Cools; import com.zy.system.entity.Config; import com.zy.system.mapper.ConfigMapper; import com.zy.system.service.ConfigService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @Service("configService") @Slf4j public class ConfigServiceImpl extends ServiceImpl implements ConfigService { @Override public Config selectConfigByCode(String code) { return this.baseMapper.selectConfigByCode(code); } /** * 获取配置信息 * * @param key 键值 * @param clazz 类型 * @param t 默认值 * @param * @return */ @Override @SuppressWarnings("unchecked") public T getVal(String key, Class clazz, T t) { try { Config config = this.baseMapper.selectConfigByCode(key); if (config == null || config.getStatus() != 1 || Cools.isEmpty(config.getValue())) { return t; } String val = config.getValue(); if (clazz.equals(Boolean.class)) { if (val.equals("1") || val.trim().equalsIgnoreCase("TRUE")) { return (T) Boolean.TRUE; } return (T) Boolean.FALSE; } else if (clazz.equals(Integer.class)) { return (T) Integer.valueOf(val); } else if (clazz.equals(String.class)) { return (T) val; } else if (clazz.equals(Short.class)) { return (T) Short.valueOf(val); } else if (clazz.equals(Long.class)) { return (T) Long.valueOf(val); } else if (clazz.equals(Double.class)) { return (T) Double.valueOf(val); } } catch (Exception e) { log.error("参数加载异常,配置参数={}", key); } return t; } }