Browse Source

消费模块,消费金币统计接口

huangqizheng/feature-20250626103451-权限页面
sunjiabei 1 week ago
parent
commit
b8a58b038a
  1. 11
      src/main/java/com/example/demo/controller/ConsumeController.java
  2. 23
      src/main/java/com/example/demo/domain/vo/Gold.java
  3. 3
      src/main/java/com/example/demo/service/ConsumeService.java
  4. 37
      src/main/java/com/example/demo/serviceImpl/ConsumeServiceImpl.java

11
src/main/java/com/example/demo/controller/ConsumeController.java

@ -1,6 +1,7 @@
package com.example.demo.controller;
import com.example.demo.domain.vo.Consume;
import com.example.demo.domain.vo.Gold;
import com.example.demo.domain.vo.Result;
import com.example.demo.service.ConsumeService;
import lombok.RequiredArgsConstructor;
@ -29,10 +30,20 @@ public class ConsumeController {
@Autowired
private ConsumeService consumeService;
//消耗明细
@PostMapping("/selectAll")
public Result selcetAll()
{
List<Consume> consumes = consumeService.selectAll();
return Result.success(consumes);
}
//消耗金币统计
@PostMapping("/statsGold")
public Result statsGold()
{
Gold gold = consumeService.statsGold();
return Result.success(gold);
}
}

23
src/main/java/com/example/demo/domain/vo/Gold.java

@ -0,0 +1,23 @@
package com.example.demo.domain.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @program: gold-java
* @ClassName Gold
* @description: 金币信息
* @author: Double
* @create: 202506-23 15:53
* @Version 1.0
**/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Gold {
private Integer permanentGolds; // 永久金币总数
private Integer freeGolds; // 免费金币总数
private Integer taskGolds; // 任务金币总数
}

3
src/main/java/com/example/demo/service/ConsumeService.java

@ -2,6 +2,7 @@ package com.example.demo.service;
import com.example.demo.domain.vo.Consume;
import com.example.demo.domain.vo.Gold;
import java.util.List;
@ -16,4 +17,6 @@ import java.util.List;
public interface ConsumeService {
List<Consume> selectAll();
Gold statsGold();
}

37
src/main/java/com/example/demo/serviceImpl/ConsumeServiceImpl.java

@ -1,6 +1,7 @@
package com.example.demo.serviceImpl;
import com.example.demo.domain.vo.Consume;
import com.example.demo.domain.vo.Gold;
import com.example.demo.mapper.ConsumeMapper;
import com.example.demo.service.ConsumeService;
import org.springframework.beans.factory.annotation.Autowired;
@ -23,9 +24,45 @@ public class ConsumeServiceImpl implements ConsumeService {
@Autowired
private ConsumeMapper consumeMapper;
//消耗明细
@Override
public List<Consume> selectAll() {
List<Consume> consumes = consumeMapper.selectAll();
return consumes;
}
//消耗金币统计
@Override
public Gold statsGold() {
Gold gold = new Gold();
List<Consume> consumes = consumeMapper.selectAll();
// 初始化累加器
int permanentGoldSum = 0;
int freeGoldSum = 0;
int taskGoldSum = 0;
// 遍历消费记录并累加金币
for (Consume consume : consumes) {
// 累加永久金币
if (consume.getPermanentGold() != null) {
permanentGoldSum += consume.getPermanentGold();
}
// 累加免费金币
if (consume.getFreeGold() != null) {
freeGoldSum += consume.getFreeGold();
}
// 累加任务金币
if (consume.getTaskGold() != null) {
taskGoldSum += consume.getTaskGold();
}
}
// 将累加结果设置到Gold对象
gold.setPermanentGolds(permanentGoldSum);
gold.setFreeGolds(freeGoldSum);
gold.setTaskGolds(taskGoldSum);
return gold;
}
}
Loading…
Cancel
Save