12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- package com.ichaoj.ams.controller;
- import com.ichaoj.ams.service.IAmsAddressAccountService;
- import com.ichaoj.ams.service.IAmsTradeRecordService;
- import com.ichaoj.common.annotation.AuthResource;
- import com.ichaoj.common.model.PublicResult;
- import com.ichaoj.common.model.PublicUserInfo;
- import com.ichaoj.web.context.SuperWhaleContext;
- import io.swagger.v3.oas.annotations.Operation;
- import io.swagger.v3.oas.annotations.tags.Tag;
- import org.springframework.web.bind.annotation.GetMapping;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RestController;
- import javax.annotation.Resource;
- import java.math.BigDecimal;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- /**
- * @author : cjwen
- * @date : 2023/05/23 18:37
- */
- @RestController
- @RequestMapping("/statistics")
- @Tag(name = "统计模块")
- public class StatisticsController {
- @Resource
- private IAmsTradeRecordService tradeService;
- @Resource
- private IAmsAddressAccountService accountService;
- @GetMapping("daily-cost")
- @Operation(summary = "每日消耗gas和本金")
- @AuthResource
- public PublicResult<Map<String, Object>> dailyCostStatistics() {
- Map<String, Object> map = new HashMap<>(5);
- String userId = SuperWhaleContext.getContext(PublicUserInfo.class).getUserId();
- List<String> batchAddresses = accountService.queryGroupList(1);
- // 从链上获取当日gas费用
- BigDecimal dailyGasCost = getDailyGasCost(userId);
- // 从链上获取当日本金消耗量
- // BigDecimal dailyPrincipalCost = getDailyPrincipalCost(userId);
- // 总消耗 = gas费用 + 本金消耗
- // BigDecimal totalCost = dailyGasCost.add(dailyPrincipalCost);
- return PublicResult.success(map);
- }
- private void getGroupAndWalletNum(Map<String, Object> map) {
- List<String> list = accountService.queryGroupList(0);
- map.put("premiumCount", list.size());
- }
- private BigDecimal getDailyGasCost(String userId) {
- return BigDecimal.ZERO;
- }
- }
|