|  |  |  | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Slf4j | 
|---|
|  |  |  | @Service("configService") | 
|---|
|  |  |  | public class ConfigServiceImpl extends ServiceImpl<ConfigMapper, Config> implements ConfigService { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | return this.baseMapper.selectConfigByCode(code); | 
|---|
|  |  |  | }; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | @SuppressWarnings("unchecked") | 
|---|
|  |  |  | public <T> T getVal(String key, Class<T> 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; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|