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.

88 lines
2.6 KiB

6 days ago
  1. package com.example.demo.serviceImpl;
  2. import com.example.demo.domain.vo.ConsumeUser;
  3. import com.example.demo.domain.vo.Gold;
  4. import com.example.demo.domain.vo.RefundUser;
  5. import com.example.demo.domain.vo.Result;
  6. import com.example.demo.mapper.ConsumeMapper;
  7. import com.example.demo.mapper.RefundMapper;
  8. import com.example.demo.mapper.UserMapper;
  9. import com.example.demo.service.RefundService;
  10. import com.github.pagehelper.PageHelper;
  11. import com.github.pagehelper.PageInfo;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.stereotype.Service;
  14. import java.util.List;
  15. /**
  16. * @program: gold-java
  17. * @ClassName RefundServiceImpl
  18. * @description:
  19. * @author: Double
  20. * @create: 202506-27 11:50
  21. * @Version 1.0
  22. **/
  23. @Service
  24. public class RefundServiceImpl implements RefundService {
  25. @Autowired
  26. private RefundMapper refundMapper;
  27. @Autowired
  28. private UserMapper userMapper;
  29. @Override
  30. public PageInfo<RefundUser> selectAll(Integer pageNum, Integer pageSize) {
  31. PageHelper.startPage(pageNum, pageSize);
  32. List<RefundUser> refundUsers = refundMapper.selectAll();
  33. return new PageInfo<>(refundUsers);
  34. }
  35. @Override
  36. public Gold statsGold() {
  37. Gold gold = new Gold();
  38. List<RefundUser> refundUsers = refundMapper.selectAll();
  39. // 初始化累加器
  40. int permanentGoldSum = 0;
  41. int freeGoldSum = 0;
  42. int taskGoldSum = 0;
  43. // 遍历推开记录并累加金币
  44. for (RefundUser refundUser : refundUsers) {
  45. // 累加永久金币
  46. if (refundUser.getPermanentGold() != null) {
  47. permanentGoldSum += refundUser.getPermanentGold();
  48. }
  49. // 累加免费金币
  50. if (refundUser.getFreeGold() != null) {
  51. freeGoldSum += refundUser.getFreeGold();
  52. }
  53. // 累加任务金币
  54. if (refundUser.getTaskGold() != null) {
  55. taskGoldSum += refundUser.getTaskGold();
  56. }
  57. }
  58. // 将累加结果设置到Gold对象
  59. gold.setPermanentGolds(permanentGoldSum);
  60. gold.setFreeGolds(freeGoldSum);
  61. gold.setTaskGolds(taskGoldSum);
  62. return gold;
  63. }
  64. @Override
  65. public PageInfo<RefundUser> selectBy(Integer pageNum, Integer pageSize, RefundUser refundUser) {
  66. PageHelper.startPage(pageNum, pageSize);
  67. List<RefundUser> refundUsers = refundMapper.selectBy(refundUser);
  68. return new PageInfo<>(refundUsers);
  69. }
  70. @Override
  71. public Result add(RefundUser refundUser) {
  72. return null;
  73. }
  74. }