simulation-backend/src/main/java/com/hivekion/scenario/controller/BattleConsumeController.java
2025-09-21 07:57:53 +08:00

54 lines
1.7 KiB
Java

package com.hivekion.scenario.controller;
import com.hivekion.common.entity.ResponseData;
import com.hivekion.scenario.bean.StatisticConsumeBean;
import com.hivekion.scenario.entity.ScenarioResource;
import com.hivekion.scenario.service.IBattleConsumeService;
import com.hivekion.scenario.service.ScenarioResourceService;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 战斗消耗 前端控制器
* </p>
*
* @author liDongYu
* @since 2025-09-19
*/
@RestController
@RequestMapping("/scenario/battleConsume")
public class BattleConsumeController {
@Resource
private IBattleConsumeService battleConsumeService;
@Resource
private ScenarioResourceService scenarioResourceService;
@GetMapping("/statistic/minute")
public ResponseData<List<StatisticConsumeBean>> statisticByMinute() {
return ResponseData.success(battleConsumeService.statistic());
}
@GetMapping("/statistic/resource")
public ResponseData<List<StatisticConsumeBean>> statisticByResource() {
List<StatisticConsumeBean> list = battleConsumeService.statisticByResource();
Map<String, ScenarioResource> resourceMap = scenarioResourceService.resourceMap();
list.forEach(item -> {
if (resourceMap.get(item.getResourceId()) != null) {
item.setResourceName(resourceMap.get(item.getResourceId()).getResourceName());
}
});
return ResponseData.success(list.stream().filter(a->a.getResourceName()!=null).collect(
Collectors.toList()));
}
}