package cn.besteam.modules.report.controller; import cn.besteam.common.api.vo.Result; import cn.besteam.common.aspect.annotation.OpenApi; import cn.besteam.modules.report.biz.StatisticsBiz; import cn.besteam.modules.report.dto.StatisticsDTO; import cn.besteam.modules.report.vo.RankStatisticsVO; import cn.besteam.modules.report.vo.RegionStatisticsVO; import cn.besteam.modules.report.vo.WasteTypeStatisticsVO; import com.baomidou.mybatisplus.core.metadata.IPage; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping(value = "/statistics") @Slf4j @Api(description = "统计分析") public class StatisticsController { @Autowired private StatisticsBiz statisticsBiz; @OpenApi @GetMapping("/getWasteTypeStatistics") @ApiOperation(value = "医废类型分析") public Result getWasteTypeStatistics(StatisticsDTO dto) { return Result.ok(statisticsBiz.getWasteTypeStatistics(dto)); } @OpenApi @GetMapping("/getRegionStatistics") @ApiOperation(value = "区域产废分析") public Result getRegionStatistics(StatisticsDTO dto) { return Result.ok(statisticsBiz.getRegionStatistics(dto)); } @OpenApi @GetMapping("/getSegmentWeightStatistics") @ApiOperation(value = "各环节重量分析") public Result getSegmentWeightStatistics(StatisticsDTO dto) { return Result.ok(statisticsBiz.getSegmentWeightStatistics(dto)); } @OpenApi @GetMapping("/getTodayRankStatistics") @ApiOperation(value = "今日产废排行榜") public Result> getTodayRankStatistics(StatisticsDTO dto) { dto.setTypeName("today"); return Result.ok(statisticsBiz.getTodayRankStatistics(dto)); } @OpenApi @GetMapping("/getYesterdayRangeStatistics") @ApiOperation(value = "昨日产废排行榜") public Result> getYesterdayRankStatistics(StatisticsDTO dto) { dto.setTypeName("yesterday"); return Result.ok(statisticsBiz.getYesterdayRangeStatistics(dto)); } @OpenApi @GetMapping("/getRangeStatistics") @ApiOperation(value = "累计产废排行榜") public Result> getRankStatistics(StatisticsDTO dto) { dto.setTypeName("total"); return Result.ok(statisticsBiz.getRankStatisticsList(dto)); } @OpenApi @GetMapping("/getRegionTodayRankStatistics") @ApiOperation(value = "区域-今日产废排行榜") public Result> getRegionTodayRankStatistics(StatisticsDTO dto) { return Result.ok(statisticsBiz.getRegionTodayRankStatistics(dto)); } @OpenApi @GetMapping("/getRegionYesterdayRangeStatistics") @ApiOperation(value = "区域-昨日产废排行榜") public Result> getRegionYesterdayRankStatistics(StatisticsDTO dto) { return Result.ok(statisticsBiz.getRegionYesterdayRangeStatistics(dto)); } @OpenApi @GetMapping("/getRegionRangeStatistics") @ApiOperation(value = "区域-累计产废排行榜") public Result> getRegionRankStatistics(StatisticsDTO dto) { return Result.ok(statisticsBiz.getRegionRankStatisticsList(dto)); } }