package cc.mrbird.febs;
|
|
import cc.mrbird.febs.common.contants.AppContants;
|
import cc.mrbird.febs.dapp.dto.SystemConstants;
|
import cc.mrbird.febs.dapp.dto.SystemConstantsAddress;
|
import cc.mrbird.febs.dapp.entity.DataDictionaryCustom;
|
import cc.mrbird.febs.dapp.enumerate.DataDictionaryEnum;
|
import cc.mrbird.febs.dapp.mapper.DataDictionaryCustomMapper;
|
import cn.hutool.core.util.StrUtil;
|
import org.mybatis.spring.annotation.MapperScan;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.boot.WebApplicationType;
|
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
import org.springframework.boot.builder.SpringApplicationBuilder;
|
import org.springframework.scheduling.annotation.EnableAsync;
|
import org.springframework.scheduling.annotation.EnableScheduling;
|
import org.springframework.transaction.annotation.EnableTransactionManagement;
|
|
import javax.annotation.PostConstruct;
|
import java.lang.reflect.Field;
|
|
/**
|
* @author MrBird
|
*/
|
@EnableAsync
|
@EnableScheduling
|
@SpringBootApplication
|
@EnableTransactionManagement
|
@MapperScan("cc.mrbird.febs.*.mapper")
|
public class FebsShiroApplication {
|
|
|
@Autowired
|
private DataDictionaryCustomMapper dataDictionaryCustomMapper;
|
|
@Autowired
|
private SystemConstants systemConstants;
|
|
@Autowired
|
private SystemConstantsAddress systemConstantsAddress;
|
|
public static void main(String[] args) {
|
new SpringApplicationBuilder(FebsShiroApplication.class)
|
.web(WebApplicationType.SERVLET)
|
.run(args);
|
}
|
|
@PostConstruct
|
public void systemConstantsInit() {
|
DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
|
DataDictionaryEnum.FEE_ADDRESS_KEY.getType(),
|
DataDictionaryEnum.FEE_ADDRESS_KEY.getCode());
|
String key = dataDictionaryCustom.getCode();
|
key = StrUtil.toCamelCase(key);
|
String value = dataDictionaryCustom.getValue();
|
try {
|
Field field = systemConstants.getClass().getDeclaredField(key);
|
field.set(systemConstants, value);
|
AppContants.FEE_ADDRESS_KEY.put("feeAddressKey",systemConstants.getFeeAddressKey());
|
dataDictionaryCustom.setValue("isReady");
|
dataDictionaryCustomMapper.updateById(dataDictionaryCustom);
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
|
|
DataDictionaryCustom addressDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
|
DataDictionaryEnum.FEE_ADDRESS.getType(),
|
DataDictionaryEnum.FEE_ADDRESS.getCode());
|
String addressKey = addressDic.getCode();
|
addressKey = StrUtil.toCamelCase(addressKey);
|
String valueAddress = addressDic.getValue();
|
try {
|
Field field = systemConstantsAddress.getClass().getDeclaredField(addressKey);
|
field.set(systemConstantsAddress, valueAddress);
|
AppContants.FEE_ADDRESS.put("feeAddress",systemConstantsAddress.getFeeAddress());
|
addressDic.setValue("isReady");
|
dataDictionaryCustomMapper.updateById(addressDic);
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
}
|
|
}
|