You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

152 lines
5.6 KiB

3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
  1. package com.example.demo.controller.coin;
  2. import com.example.demo.Util.JWTUtil;
  3. import com.example.demo.config.interfac.Log;
  4. import com.example.demo.domain.entity.Admin;
  5. import com.example.demo.domain.vo.coin.*;
  6. import com.example.demo.service.coin.RechargeService;
  7. import jakarta.servlet.http.HttpServletRequest;
  8. import lombok.RequiredArgsConstructor;
  9. import lombok.extern.slf4j.Slf4j;
  10. import org.apache.commons.lang3.StringUtils;
  11. import org.springframework.beans.factory.annotation.Autowired;
  12. import org.springframework.util.ObjectUtils;
  13. import org.springframework.web.bind.annotation.*;
  14. import org.springframework.web.context.request.RequestContextHolder;
  15. import org.springframework.web.context.request.ServletRequestAttributes;
  16. import java.util.Arrays;
  17. import java.util.List;
  18. /**
  19. * @program: gold-java
  20. * @ClassName RechargeController
  21. * @description:
  22. * @author: Double
  23. * @create: 202506-29 13:01
  24. * @Version 1.0
  25. **/
  26. @RestController
  27. @RequestMapping("/recharge")
  28. @RequiredArgsConstructor
  29. @Slf4j
  30. @CrossOrigin
  31. public class RechargeController {
  32. @Autowired
  33. private RechargeService rechargeService;
  34. //充值明细
  35. @Log("获取全部充值明细")
  36. @PostMapping("/selectAll")
  37. public Result selcetAll(@RequestBody Page page) {
  38. try {
  39. if (ObjectUtils.isEmpty(page.getPageNum())) {
  40. return Result.error("页码数为空!");
  41. }
  42. if (ObjectUtils.isEmpty(page.getPageSize())) {
  43. return Result.error("页大小为空!");
  44. } else {
  45. //解token权限
  46. HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
  47. String token = request.getHeader("token");
  48. Admin admin = (Admin) JWTUtil.getUserDetailsList(String.valueOf(token), Admin.class);
  49. if (admin != null) {
  50. List<String> list = Arrays.asList(admin.getMarkets().split(","));
  51. page.getRechargeUser().setMarkets(list);
  52. }
  53. else{
  54. return Result.error("角色为空");
  55. }
  56. return Result.success(rechargeService.selectAll(page.getPageNum(), page.getPageSize(),page.getRechargeUser()));
  57. }
  58. } catch (Exception e) {
  59. return Result.error("请检查筛选数据的格式");
  60. }
  61. }
  62. //充值明细筛选
  63. @Log("充值明细筛选")
  64. @PostMapping("/selectBy")
  65. public Result selcetBy(@RequestBody Page page) {
  66. try {
  67. if (ObjectUtils.isEmpty(page.getPageNum())) {
  68. return Result.error("页码数为空!");
  69. }
  70. if (ObjectUtils.isEmpty(page.getPageSize())) {
  71. return Result.error("页大小为空!");
  72. } else {
  73. //解token权限
  74. if(page.getRechargeUser().getMarkets()==null||page.getRechargeUser().getMarkets().isEmpty()){
  75. HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
  76. String token = request.getHeader("token");
  77. Admin admin = (Admin) JWTUtil.getUserDetailsList(String.valueOf(token), Admin.class);
  78. if (admin != null) {
  79. List<String> markets = Arrays.asList(StringUtils.split(admin.getMarkets(), ","));;
  80. page.getRechargeUser().setMarkets(markets);
  81. }
  82. }
  83. return Result.success(rechargeService.selectBy(page.getPageNum(), page.getPageSize(), page.getRechargeUser()));
  84. }
  85. } catch (Exception e) {
  86. e.printStackTrace();
  87. return Result.error("请检查筛选数据的格式");
  88. }
  89. }
  90. //充值金币统计
  91. @Log("充值金币合计数统计")
  92. @PostMapping("/statsGold")
  93. public Result statsGold(@RequestBody RechargeUser rechargeUser) {
  94. try {
  95. //解token权限
  96. if(rechargeUser.getMarkets()==null||rechargeUser.getMarkets().isEmpty()){
  97. HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
  98. String token = request.getHeader("token");
  99. Admin admin = (Admin) JWTUtil.getUserDetailsList(String.valueOf(token), Admin.class);
  100. List<String> markets = Arrays.asList(StringUtils.split(admin.getMarkets(), ","));
  101. rechargeUser.setMarkets(markets);
  102. }
  103. Gold gold = rechargeService.statsGold(rechargeUser);
  104. return Result.success(gold);
  105. } catch (Exception e) {
  106. return Result.error("请检查数据的格式");
  107. }
  108. }
  109. //充值金币增加
  110. @Log("新增金币充值")
  111. @PostMapping("/add")
  112. public Result add(@RequestBody RechargeUser rechargeUser) {
  113. try {
  114. return rechargeService.add(rechargeUser);
  115. } catch (Exception e) {
  116. return Result.error("请检查数据的格式");
  117. }
  118. }
  119. public Result selcet(@RequestBody Page page) {
  120. try {
  121. if (ObjectUtils.isEmpty(page.getPageNum())) {
  122. return Result.error("页码数为空!");
  123. }
  124. if (ObjectUtils.isEmpty(page.getPageSize())) {
  125. return Result.error("页大小为空!");
  126. } else {
  127. //解token权限
  128. return Result.success(rechargeService.selectBy(page.getPageNum(), page.getPageSize(), page.getRechargeUser()));
  129. }
  130. } catch (Exception e) {
  131. return Result.error("请检查筛选数据的格式");
  132. }
  133. }
  134. }