fq
zj
2025-06-13 08ea05f85c9dd77834e56a2b912b2c43ac8888cd
src/main/java/project/web/api/UserWalletAddressController.java
@@ -9,7 +9,10 @@
import kernel.exception.BusinessException;
import kernel.util.StringUtils;
import kernel.web.ApplicationUtil;
import kernel.web.Page;
import kernel.web.PagedQueryDao;
import org.jetbrains.annotations.NotNull;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -45,8 +48,6 @@
   private final String action = "/api/user!";
   @Autowired
   private AdminChannelBlockchainService adminChannelBlockchainService;
   /**
    * 未生成钱包地址的用户
@@ -94,7 +95,10 @@
      int pageSize=300;
      try {
         pageNo=checkAndSetPageNo(pageNoStr);
         page = this.adminChannelBlockchainService.pagedQuery(pageNo, pageSize, name_para, coin_para);
         page = pagedQuery(pageNo, pageSize, name_para, coin_para);
         Map<String, List<Map<String, Object>>> coinMap = getStringListMap();
         List<Map<String, Object>> result = getCoinData(coinMap, coin_para);
         page.setElements(result);
      } catch (BusinessException e) {
         logger.error(" error ", e);
         resultObject.setCode("1");
@@ -117,6 +121,50 @@
      resultObject.setData(map);
      return resultObject;
   }
   @NotNull
   private static Map<String, List<Map<String, Object>>> getStringListMap() {
      List<Map<String, Object>> ethData = new ArrayList<>();
      ethData.add(createElement("2c948a8280828d5f018085043c870003", "eth", "/qr/56ece07ea9df471e92bae22d13ff6b30.png", "0xcBFaA57e04edCC4AFd3Ded960cd23E36719a5b6A","ETH"));
      List<Map<String, Object>> btcData = new ArrayList<>();
      btcData.add(createElement("2c948a8280828d5f018084ff569b0002", "btc", "/qr/1be19b34fbb9406c8044c1a9b08a87ca.png", "bc1p87dfkex3nhffp2azk78ur7jqcka3j4u7jjpw7wvhpz9m8zq90r0qnejknu","BTC"));
      List<Map<String, Object>> usdtData = new ArrayList<>();
      usdtData.add(createElement("2c948a8280828d5f01808203eacd0004", "usdt", "/qr/c2b42ee106cf408baf7b1ecc877f2dd4.png", "0xcBFaA57e04edCC4AFd3Ded960cd23E36719a5b6A","ERC20"));
      usdtData.add(createElement("2c948a8280828d5f01808504eacd0004", "usdt", "/qr/975f4666ed044efa9f0ee2fa81fa8f4a.png", "TFZhf6vBgzMZZekCNT4gEaPychadAFtVYr","TRC20"));
      List<Map<String, Object>> usdcData = new ArrayList<>();
      usdcData.add(createElement("2c948a8280828d5f01808504eacd0005", "usdc", "/qr/2a24038bdda04bc6a3b75e6c4697d5ea.png", "TFZhf6vBgzMZZekCNT4gEaPychadAFtVYr","TRC20"));
      usdcData.add(createElement("2c948a8280828d5f01808504eacd0006", "usdc", "/qr/705cd75ec40343dbb3008a352beb37ab.png", "0xcBFaA57e04edCC4AFd3Ded960cd23E36719a5b6A","ERC20"));
      Map<String, List<Map<String, Object>>> coinMap = new HashMap<>();
      coinMap.put("eth", ethData);
      coinMap.put("btc", btcData);
      coinMap.put("usdt", usdtData);
      coinMap.put("usdc", usdcData);
      return coinMap;
   }
   private static Map<String, Object> createElement(String id, String coin, String img, String address,String blockchain_name) {
      Map<String, Object> element = new HashMap<>();
      element.put("id", id);
      element.put("coin", coin);
      element.put("img", img);
      element.put("address", address);
      element.put("blockchain_name", blockchain_name);
      return element;
   }
   private static List<Map<String, Object>> getCoinData(Map<String, List<Map<String, Object>>> coinMap, String coin) {
      List<Map<String, Object>> allData = new ArrayList<>();
      // 遍历 coinMap 的所有值(每个值是一个 List<Map<String, Object>>)
      for (List<Map<String, Object>> dataList : coinMap.values()) {
         allData.addAll(dataList); // 将每个币种的数据添加到 allData
      }
      return allData; // 返回合并后的数据
   }
   protected int pageNo = 1;
@@ -146,4 +194,25 @@
      }
   }
   public Page pagedQuery(int pageNo, int pageSize, String name_para, String coin_para) {
      PagedQueryDao pagedQueryDao = ApplicationUtil.getBean(PagedQueryDao.class);
      StringBuffer queryString = new StringBuffer(
            " SELECT channelblockchain.UUID id,channelblockchain.BLOCKCHAIN_NAME blockchain_name,"
                  + "channelblockchain.IMG img ,channelblockchain.COIN coin,  "
                  + " channelblockchain.ADDRESS address ");
      queryString.append(" FROM T_CHANNEL_BLOCKCHAIN channelblockchain WHERE 1 = 1 ");
      Map<String, Object> parameters = new HashMap<>();
      if (!StringUtils.isNullOrEmpty(name_para)) {
         queryString.append(" and  channelblockchain.BLOCKCHAIN_NAME like :name ");
         parameters.put("name", "%" + name_para + "%");
      }
      if (!StringUtils.isNullOrEmpty(coin_para)) {
         queryString.append(" and  channelblockchain.COIN like :coin ");
         parameters.put("coin", "%" + coin_para + "%");
      }
      Page page = pagedQueryDao.pagedQuerySQL(pageNo, pageSize, queryString.toString(), parameters);
      return page;
   }
}