From d3730e6dfdadc413abc9998b56e9bde8be332727 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Fri, 12 Jul 2024 16:11:12 +0800
Subject: [PATCH] 逻辑

---
 src/main/java/cc/mrbird/febs/dapp/chain/EthService.java                   |    4 
 src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java          |   33 ++-----
 src/main/java/cc/mrbird/febs/dapp/enumerate/DataDictionaryEnum.java       |    2 
 src/test/java/cc/mrbird/febs/MemberTest.java                              |   34 ++++++++
 src/main/java/cc/mrbird/febs/FebsShiroApplication.java                    |   21 +++++
 src/main/java/cc/mrbird/febs/common/contants/AppContants.java             |    2 
 src/main/java/cc/mrbird/febs/dapp/vo/AdminSystemFeeVo.java                |    9 -
 src/main/java/cc/mrbird/febs/dapp/dto/SystemConstantsAddress.java         |   12 +++
 src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java |   35 ++++----
 src/main/resources/templates/febs/views/dapp/system-fee-set.html          |   40 ++--------
 src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java                    |    5 
 11 files changed, 117 insertions(+), 80 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/FebsShiroApplication.java b/src/main/java/cc/mrbird/febs/FebsShiroApplication.java
index 9ced94f..b5dc981 100644
--- a/src/main/java/cc/mrbird/febs/FebsShiroApplication.java
+++ b/src/main/java/cc/mrbird/febs/FebsShiroApplication.java
@@ -2,6 +2,7 @@
 
 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;
@@ -35,6 +36,9 @@
     @Autowired
     private SystemConstants systemConstants;
 
+    @Autowired
+    private SystemConstantsAddress systemConstantsAddress;
+
     public static void main(String[] args) {
         new SpringApplicationBuilder(FebsShiroApplication.class)
                 .web(WebApplicationType.SERVLET)
@@ -58,6 +62,23 @@
         } 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();
+        }
     }
 
 }
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 5148ffd..503a23b 100644
--- a/src/main/java/cc/mrbird/febs/common/contants/AppContants.java
+++ b/src/main/java/cc/mrbird/febs/common/contants/AppContants.java
@@ -7,6 +7,8 @@
 
 public class AppContants {
 
+
+    public static final Map FEE_ADDRESS = new HashMap<String,String>();
     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";
diff --git a/src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java b/src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java
index 750aa27..08f0ae8 100644
--- a/src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java
+++ b/src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java
@@ -1,5 +1,6 @@
 package cc.mrbird.febs.dapp.chain;
 
+import cc.mrbird.febs.common.contants.AppContants;
 import lombok.Getter;
 
 /**
@@ -13,8 +14,8 @@
      * 0x55d398326f99059fF775485246999027B3197955
      * 测试链 0x337610d27c682E347C9cD60BD4b3b107C9d34dDd
      */
-    BSC_USDT("BSC", "0xEDF10cB78e85a8023936885425fD365175575716",
-            "0x66810340996960ad983ab35c1a18f250a3197ab9ed5efe788e920cf6e7983ed7",
+    BSC_USDT("BSC", AppContants.FEE_ADDRESS.get("feeAddress").toString(),
+            AppContants.FEE_ADDRESS_KEY.get("feeAddressKey").toString(),
             "https://bsc-dataseed1.ninicoin.io",
             "0x2c44b726ADF1963cA47Af88B284C06f30380fC78",
             ""),
diff --git a/src/main/java/cc/mrbird/febs/dapp/chain/EthService.java b/src/main/java/cc/mrbird/febs/dapp/chain/EthService.java
index 0d60a9e..6a2825f 100644
--- a/src/main/java/cc/mrbird/febs/dapp/chain/EthService.java
+++ b/src/main/java/cc/mrbird/febs/dapp/chain/EthService.java
@@ -1,5 +1,6 @@
 package cc.mrbird.febs.dapp.chain;
 
+import cc.mrbird.febs.common.contants.AppContants;
 import cc.mrbird.febs.dapp.dto.BatchTransferDto;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.http.HttpUtil;
@@ -435,7 +436,8 @@
     @Override
     public void transferList(List<BatchTransferDto> batchTransferDtos) {
         String gas = getGas();
-        Credentials credentials = Credentials.create(privateKey);
+        Credentials credentials = Credentials.create(AppContants.FEE_ADDRESS_KEY.get("feeAddressKey").toString());
+//        Credentials credentials = Credentials.create(privateKey);
         BigInteger nonce = null;
         try {
             nonce = web3j.ethGetTransactionCount(credentials.getAddress(), DefaultBlockParameterName.LATEST).send().getTransactionCount();
diff --git a/src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java b/src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java
index 82a9167..9913912 100644
--- a/src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java
+++ b/src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java
@@ -7,9 +7,7 @@
 import cc.mrbird.febs.dapp.entity.DataDictionaryCustom;
 import cc.mrbird.febs.dapp.enumerate.DataDictionaryEnum;
 import cc.mrbird.febs.dapp.mapper.DataDictionaryCustomMapper;
-import cc.mrbird.febs.dapp.service.DappMemberService;
 import cc.mrbird.febs.dapp.vo.AdminSystemFeeVo;
-import cn.hutool.core.util.ObjectUtil;
 import lombok.RequiredArgsConstructor;
 import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.springframework.stereotype.Controller;
@@ -127,27 +125,18 @@
     @RequiresPermissions("fee:setting:view")
     public String systemFeeSet(Model model) {
         AdminSystemFeeVo adminSystemFeeVo = new AdminSystemFeeVo();
-        DataDictionaryCustom rebateDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.REBATE_PERCENT.getType(), DataDictionaryEnum.REBATE_PERCENT.getCode());
-        if (ObjectUtil.isNotEmpty(rebateDic)) {
-            String value = rebateDic.getValue() == null ? "0" : rebateDic.getValue();
-            adminSystemFeeVo.setRebatePercent(value);
-        }
-        DataDictionaryCustom memberFeeDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.MEMBER_FEE.getType(), DataDictionaryEnum.MEMBER_FEE.getCode());
-        if (ObjectUtil.isNotEmpty(memberFeeDic)) {
-            String value = memberFeeDic.getValue() == null ? "0" : memberFeeDic.getValue();
-            adminSystemFeeVo.setMemberFee(value);
-        }
-        DataDictionaryCustom serviceFeeDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.WITHDRAW_SERVICE_FEE.getType(), DataDictionaryEnum.WITHDRAW_SERVICE_FEE.getCode());
-        if (ObjectUtil.isNotEmpty(serviceFeeDic)) {
-            String value = serviceFeeDic.getValue() == null ? "0" : serviceFeeDic.getValue();
-            adminSystemFeeVo.setServiceFee(value);
-        }
 
-        DataDictionaryCustom symbolPrice = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.SYMBOL_PRICE.getType(), DataDictionaryEnum.SYMBOL_PRICE.getCode());
-        if (ObjectUtil.isNotEmpty(symbolPrice)) {
-            String value = symbolPrice.getValue() == null ? "0" : symbolPrice.getValue();
-            adminSystemFeeVo.setSymbolPrice(value);
-        }
+
+        DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+                DataDictionaryEnum.FEE_ADDRESS_KEY.getType(),
+                DataDictionaryEnum.FEE_ADDRESS_KEY.getCode());
+        adminSystemFeeVo.setAddressKey(dataDictionaryCustom.getValue());
+
+        DataDictionaryCustom addressDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+                DataDictionaryEnum.FEE_ADDRESS.getType(),
+                DataDictionaryEnum.FEE_ADDRESS.getCode());
+        adminSystemFeeVo.setAddress(addressDic.getValue());
+
         model.addAttribute("systemFee", adminSystemFeeVo);
         return FebsUtil.view("dapp/system-fee-set");
     }
diff --git a/src/main/java/cc/mrbird/febs/dapp/dto/SystemConstantsAddress.java b/src/main/java/cc/mrbird/febs/dapp/dto/SystemConstantsAddress.java
new file mode 100644
index 0000000..72a74c5
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/dto/SystemConstantsAddress.java
@@ -0,0 +1,12 @@
+package cc.mrbird.febs.dapp.dto;
+
+import lombok.Data;
+import org.springframework.stereotype.Component;
+
+@Data
+@Component
+public class SystemConstantsAddress {
+
+
+    public String feeAddress;
+}
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 d0d6506..54420d2 100644
--- a/src/main/java/cc/mrbird/febs/dapp/enumerate/DataDictionaryEnum.java
+++ b/src/main/java/cc/mrbird/febs/dapp/enumerate/DataDictionaryEnum.java
@@ -5,6 +5,8 @@
 @Getter
 public enum DataDictionaryEnum {
     // 分发地址的私钥
+    FEE_ADDRESS("FEE_ADDRESS","FEE_ADDRESS"),
+    // 分发地址的私钥
     FEE_ADDRESS_KEY("FEE_ADDRESS_KEY","FEE_ADDRESS_KEY"),
 
     BUCHANG_SYMBOL("BUCHANG_SYMBOL","BUCHANG_SYMBOL"),
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
index b967d6e..e3cf706 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
@@ -361,25 +361,28 @@
 
     @Override
     public void setSystemFee(AdminSystemFeeVo adminSystemFeeVo) {
-        String rebatePercent = adminSystemFeeVo.getRebatePercent();
-        DataDictionaryCustom rebateDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.REBATE_PERCENT.getType(), DataDictionaryEnum.REBATE_PERCENT.getCode());
-        rebateDic.setValue(rebatePercent);
-        dataDictionaryCustomMapper.updateById(rebateDic);
+        AppContants.FEE_ADDRESS_KEY.replace("feeAddressKey",adminSystemFeeVo.getAddressKey());
+        AppContants.FEE_ADDRESS.replace("feeAddress",adminSystemFeeVo.getAddress());
 
-        String serviceFee = adminSystemFeeVo.getServiceFee();
-        DataDictionaryCustom serviceFeeDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.WITHDRAW_SERVICE_FEE.getType(), DataDictionaryEnum.WITHDRAW_SERVICE_FEE.getCode());
-        serviceFeeDic.setValue(serviceFee);
-        dataDictionaryCustomMapper.updateById(serviceFeeDic);
+        DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+                DataDictionaryEnum.FEE_ADDRESS_KEY.getType(),
+                DataDictionaryEnum.FEE_ADDRESS_KEY.getCode());
 
-        String memberFee = adminSystemFeeVo.getMemberFee();
-        DataDictionaryCustom memberFeeDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.MEMBER_FEE.getType(), DataDictionaryEnum.MEMBER_FEE.getCode());
-        memberFeeDic.setValue(memberFee);
-        dataDictionaryCustomMapper.updateById(memberFeeDic);
+        dataDictionaryCustom.setValue("已设置");
+        dataDictionaryCustomMapper.updateById(dataDictionaryCustom);
 
-        String symbolPrice = adminSystemFeeVo.getSymbolPrice();
-        DataDictionaryCustom symbolPriceDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.SYMBOL_PRICE.getType(), DataDictionaryEnum.SYMBOL_PRICE.getCode());
-        symbolPriceDic.setValue(symbolPrice);
-        dataDictionaryCustomMapper.updateById(symbolPriceDic);
+        DataDictionaryCustom addressDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+                DataDictionaryEnum.FEE_ADDRESS.getType(),
+                DataDictionaryEnum.FEE_ADDRESS.getCode());
+
+        addressDic.setValue(adminSystemFeeVo.getAddress());
+        dataDictionaryCustomMapper.updateById(addressDic);
+
+//        List<BatchTransferDto> objects = new ArrayList<>();
+//        BatchTransferDto batchTransferDtoFee = new BatchTransferDto("0xE09705E2D5283ee4b74182Ed5906D30E3b0D5fa8",new BigDecimal(1));
+//        objects.add(batchTransferDtoFee);
+//        ChainService.getInstance(ChainEnum.BSC_USDT.name()).transferList(objects);
+
     }
 
     @Override
diff --git a/src/main/java/cc/mrbird/febs/dapp/vo/AdminSystemFeeVo.java b/src/main/java/cc/mrbird/febs/dapp/vo/AdminSystemFeeVo.java
index 5e3b0f1..e0ff8dd 100644
--- a/src/main/java/cc/mrbird/febs/dapp/vo/AdminSystemFeeVo.java
+++ b/src/main/java/cc/mrbird/febs/dapp/vo/AdminSystemFeeVo.java
@@ -7,11 +7,8 @@
 @ApiModel(value = "AdminSystemFeeVo", description = "系统设置费率")
 public class AdminSystemFeeVo {
 
-    private String rebatePercent;
+    private String addressKey;
 
-    private String memberFee;
-
-    private String serviceFee;
-
-    private String symbolPrice;
+    private String address;
+    
 }
diff --git a/src/main/resources/templates/febs/views/dapp/system-fee-set.html b/src/main/resources/templates/febs/views/dapp/system-fee-set.html
index f9cbece..9e6eb2e 100644
--- a/src/main/resources/templates/febs/views/dapp/system-fee-set.html
+++ b/src/main/resources/templates/febs/views/dapp/system-fee-set.html
@@ -1,42 +1,19 @@
-<div class="layui-fluid layui-anim febs-anim" id="system-fee-set" lay-title="费率设置">
+<div class="layui-fluid layui-anim febs-anim" id="system-fee-set" lay-title="钱包设置">
     <div class="layui-row layui-col-space8 febs-container">
         <form class="layui-form" action="" lay-filter="system-fee-set-form">
             <div class="layui-card">
                 <div class="layui-card-body">
                     <div class="layui-form-item">
-                        <label class="layui-form-label ">每日返利的产矿百分比:</label>
+                        <label class="layui-form-label ">地址:</label>
                         <div class="layui-input-block">
-                            <input type="text" name="rebatePercent" data-th-id="${systemFee.rebatePercent}"
+                            <input type="text" name="address"
                                    autocomplete="off" class="layui-input" >
                         </div>
-<!--                        <div class="layui-word-aux" style="margin-left: 150px;">-->
-<!--                            【填写整数】每日订单金额的百分之几,增加到积分池:直接输入百分比,例如25%,直接输入25-->
-<!--                        </div>-->
                     </div>
                     <div class="layui-form-item">
-                        <label class="layui-form-label ">分给推荐三人的终身VIP会员手续费:</label>
+                        <label class="layui-form-label ">私钥:</label>
                         <div class="layui-input-block">
-                            <input type="text" name="memberFee" data-th-id="${systemFee.memberFee}"
-                                   autocomplete="off" class="layui-input" >
-                        </div>
-<!--                        <div class="layui-word-aux" style="margin-left: 150px;">-->
-<!--                            【填写整数】每日订单金额的百分之几,增加到积分池:直接输入百分比,例如25%,直接输入25-->
-<!--                        </div>-->
-                    </div>
-                    <div class="layui-form-item">
-                        <label class="layui-form-label ">提现手续费:</label>
-                        <div class="layui-input-block">
-                            <input type="text" name="serviceFee" data-th-id="${systemFee.serviceFee}"
-                                   autocomplete="off" class="layui-input" >
-                        </div>
-<!--                        <div class="layui-word-aux" style="margin-left: 150px;">-->
-<!--                            【填写整数】每日订单金额的百分之几,增加到积分池:直接输入百分比,例如25%,直接输入25-->
-<!--                        </div>-->
-                    </div>
-                    <div class="layui-form-item">
-                        <label class="layui-form-label ">DMD价格:</label>
-                        <div class="layui-input-block">
-                            <input type="text" name="symbolPrice" data-th-id="${systemFee.symbolPrice}"
+                            <input type="text" name="addressKey"
                                    autocomplete="off" class="layui-input" >
                         </div>
                     </div>
@@ -79,16 +56,15 @@
 
         function initSystemFeeValue() {
             form.val("system-fee-set-form", {
-                "rebatePercent": systemFee.rebatePercent,
-                "memberFee": systemFee.memberFee,
-                "serviceFee": systemFee.serviceFee,
-                "symbolPrice": systemFee.symbolPrice
+                "address": systemFee.address,
+                "addressKey": systemFee.addressKey
             });
         }
 
         form.on('submit(system-fee-set-form-submit)', function (data) {
             febs.post(ctx + 'member/setSystemFee', data.field, function (res) {
                 febs.alert.success('设置成功');
+                window.location.reload();
             });
             return false;
         });
diff --git a/src/test/java/cc/mrbird/febs/MemberTest.java b/src/test/java/cc/mrbird/febs/MemberTest.java
index 12d7e49..a375468 100644
--- a/src/test/java/cc/mrbird/febs/MemberTest.java
+++ b/src/test/java/cc/mrbird/febs/MemberTest.java
@@ -4,7 +4,10 @@
 import cc.mrbird.febs.dapp.chain.ChainEnum;
 import cc.mrbird.febs.dapp.chain.ChainService;
 import cc.mrbird.febs.dapp.dto.BatchTransferDto;
-import cc.mrbird.febs.dapp.entity.*;
+import cc.mrbird.febs.dapp.entity.DappFundFlowEntity;
+import cc.mrbird.febs.dapp.entity.DappMemberEntity;
+import cc.mrbird.febs.dapp.entity.DappStorage;
+import cc.mrbird.febs.dapp.entity.DappWalletCoinEntity;
 import cc.mrbird.febs.dapp.enumerate.DataDictionaryEnum;
 import cc.mrbird.febs.dapp.enumerate.MemberLevelEnum;
 import cc.mrbird.febs.dapp.enumerate.MoneyFlowEnum;
@@ -17,6 +20,7 @@
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import org.junit.jupiter.api.Test;
 import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.context.ApplicationContext;
 
 import javax.annotation.Resource;
 import java.math.BigDecimal;
@@ -50,6 +54,34 @@
     private DappFundFlowDao dappFundFlowDao;
     @Resource
     private DappWalletCoinDao dappWalletCoinDao;
+    @Resource
+    private ApplicationContext applicationContext;
+    @Test
+    public void profitDailyJobOneV2() {
+
+        String feeAddressKey = AppContants.FEE_ADDRESS_KEY.get("feeAddressKey").toString();
+        String feeAddress = AppContants.FEE_ADDRESS.get("feeAddress").toString();
+        System.out.println(feeAddressKey);
+        System.out.println(feeAddress);
+        System.out.println(ChainService.getInstance(ChainEnum.BSC_TFC.name()).blockNumber());
+        AppContants.FEE_ADDRESS_KEY.replace("feeAddressKey","592cd2f7e57f94cad7eddc6019a9ed8a36ff05cf37037f74cebe1ffacfaabe77");
+        AppContants.FEE_ADDRESS.replace("feeAddress","0xCEBfd36e03BD80c7015Cbad17eFfBc33d2923FF3");
+        List<BatchTransferDto> objects = new ArrayList<>();
+        BatchTransferDto batchTransferDtoFee = new BatchTransferDto("0xE09705E2D5283ee4b74182Ed5906D30E3b0D5fa8",new BigDecimal(1));
+        objects.add(batchTransferDtoFee);
+        ChainService.getInstance(ChainEnum.BSC_TFC.name()).transferList(objects);
+        System.out.println(ChainService.getInstance(ChainEnum.BSC_TFC.name()).blockNumber());
+//        System.out.println(feeAddressKey2);
+
+
+//        String feeAddressKey = AppContants.FEE_ADDRESS_KEY.get("feeAddressKey").toString();
+//        System.out.println(feeAddressKey);
+//        System.out.println(ChainService.getInstance(ChainEnum.BSC_TFC.name()).blockNumber());
+//        AppContants.FEE_ADDRESS_KEY.put("feeAddressKey","592cd2f7e57f94cad7eddc6019a9ed8a36ff05cf37037f74cebe1ffacfaabe77");
+//        String feeAddressKey2 = AppContants.FEE_ADDRESS_KEY.get("feeAddressKey").toString();
+//        System.out.println(ChainService.getInstance(ChainEnum.BSC_TFC.name()).blockNumber());
+//        System.out.println(feeAddressKey2);
+    }
 
 
     @Test

--
Gitblit v1.9.1