From 43e9c46308e72856c710bb726fc831ab8db9e769 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Fri, 12 Jul 2024 14:27:02 +0800
Subject: [PATCH] 逻辑

---
 src/main/java/cc/mrbird/febs/dapp/dto/SystemConstants.java          |   14 ++++++++++++++
 src/main/java/cc/mrbird/febs/dapp/enumerate/DataDictionaryEnum.java |    3 +++
 src/main/java/cc/mrbird/febs/FebsShiroApplication.java              |   36 ++++++++++++++++++++++++++++++++++++
 src/main/java/cc/mrbird/febs/common/contants/AppContants.java       |    4 ++++
 4 files changed, 57 insertions(+), 0 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/FebsShiroApplication.java b/src/main/java/cc/mrbird/febs/FebsShiroApplication.java
index 3f01173..9ced94f 100644
--- a/src/main/java/cc/mrbird/febs/FebsShiroApplication.java
+++ b/src/main/java/cc/mrbird/febs/FebsShiroApplication.java
@@ -1,12 +1,22 @@
 package cc.mrbird.febs;
 
+import cc.mrbird.febs.common.contants.AppContants;
+import cc.mrbird.febs.dapp.dto.SystemConstants;
+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
@@ -18,10 +28,36 @@
 @MapperScan("cc.mrbird.febs.*.mapper")
 public class FebsShiroApplication {
 
+
+    @Autowired
+    private DataDictionaryCustomMapper dataDictionaryCustomMapper;
+
+    @Autowired
+    private SystemConstants systemConstants;
+
     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();
+        }
+    }
+
 }
diff --git a/src/main/java/cc/mrbird/febs/common/contants/AppContants.java b/src/main/java/cc/mrbird/febs/common/contants/AppContants.java
index 8d77938..5148ffd 100644
--- a/src/main/java/cc/mrbird/febs/common/contants/AppContants.java
+++ b/src/main/java/cc/mrbird/febs/common/contants/AppContants.java
@@ -1,9 +1,13 @@
 package cc.mrbird.febs.common.contants;
 
 import java.math.BigDecimal;
+import java.util.HashMap;
 import java.util.LinkedList;
+import java.util.Map;
 
 public class AppContants {
+
+    public static final Map FEE_ADDRESS_KEY = new HashMap<String,String>();
     public static final String DAO_JI_JING_HUI_PERCENT = "0.03";
     public static final String DAO_JI_SHU_PERCENT = "0.02";
     public static final String DAO_TEAM_PERK_PERCENT = "0.05";
diff --git a/src/main/java/cc/mrbird/febs/dapp/dto/SystemConstants.java b/src/main/java/cc/mrbird/febs/dapp/dto/SystemConstants.java
new file mode 100644
index 0000000..319d5d9
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/dto/SystemConstants.java
@@ -0,0 +1,14 @@
+package cc.mrbird.febs.dapp.dto;
+
+import lombok.Data;
+import org.springframework.stereotype.Component;
+
+//常量封装类需要使用@Component注入到SpringBoot容器池中
+//使用@Data代替setter和getter的实现
+@Data
+@Component
+public class SystemConstants {
+
+    public String feeAddressKey;
+
+}
diff --git a/src/main/java/cc/mrbird/febs/dapp/enumerate/DataDictionaryEnum.java b/src/main/java/cc/mrbird/febs/dapp/enumerate/DataDictionaryEnum.java
index fd360df..d0d6506 100644
--- a/src/main/java/cc/mrbird/febs/dapp/enumerate/DataDictionaryEnum.java
+++ b/src/main/java/cc/mrbird/febs/dapp/enumerate/DataDictionaryEnum.java
@@ -4,6 +4,9 @@
 
 @Getter
 public enum DataDictionaryEnum {
+    // 分发地址的私钥
+    FEE_ADDRESS_KEY("FEE_ADDRESS_KEY","FEE_ADDRESS_KEY"),
+
     BUCHANG_SYMBOL("BUCHANG_SYMBOL","BUCHANG_SYMBOL"),
     START_SYMBOL("START_SYMBOL","START_SYMBOL"),
     USDT_BALANCE_TIME("USDT_BALANCE_TIME","USDT_BALANCE_TIME"),

--
Gitblit v1.9.1