yanderong
2026-06-22 ad15ad228abdce24eaaa03507e2218b01ec2eeca
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
package com.stylefeng.guns.modular.system.controller.specialTrain;
 
import com.stylefeng.guns.core.base.controller.BaseController;
import com.stylefeng.guns.modular.system.response.*;
import com.stylefeng.guns.modular.system.service.TOrderStatisticsService;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
 
import java.util.List;
 
/**
 * 订单相关统计,可视化数据
 *
 * @author Lux
 * @version 1.0.0
 * @since 2026/6/22 11:30
 */
@AllArgsConstructor
@Controller
@RequestMapping("/tOrderStatistics")
public class TOrderStatisticsController extends BaseController {
 
    private final TOrderStatisticsService orderStatisticsService;
 
    /**
     * 年度趋势统计
     */
    @ResponseBody
    @RequestMapping(value = "/annualTrend", method = RequestMethod.GET)
    public ResultUtil<List<TOrderStatisticsAnnualTrendVo>> annualTrend(String year) {
        List<TOrderStatisticsAnnualTrendVo> annualTrendList = orderStatisticsService.annualTrendStatistics(year);
        return ResultUtil.success(annualTrendList);
    }
 
    /**
     * 总体订单统计
     */
    @ResponseBody
    @RequestMapping(value = "/totalOrder", method = RequestMethod.GET)
    public ResultUtil<TOrderStatisticsTotalOrderVo> totalOrder(String startDate, String endDate) {
        TOrderStatisticsTotalOrderVo totalOrderVo = orderStatisticsService.totalOrderStatistics(startDate, endDate);
        return ResultUtil.success(totalOrderVo);
    }
 
    /**
     * 新增乘客统计
     */
    @ResponseBody
    @RequestMapping(value = "/newAddPassenger", method = RequestMethod.GET)
    public ResultUtil<List<TOrderStatisticsCountVo>> newAddPassenger(Integer type) {
        List<TOrderStatisticsCountVo> countVos = orderStatisticsService.newAddPassengerStatistics(type);
        return ResultUtil.success(countVos);
    }
 
    /**
     * 订单量统计
     */
    @ResponseBody
    @RequestMapping(value = "/orderCount", method = RequestMethod.GET)
    public ResultUtil<List<TOrderStatisticsCountVo>> orderCount(Integer type) {
        List<TOrderStatisticsCountVo> countVos = orderStatisticsService.orderCountStatistics(type);
        return ResultUtil.success(countVos);
    }
 
    /**
     * 当日各时段统计
     */
    @ResponseBody
    @RequestMapping(value = "/orderDayHourCount", method = RequestMethod.GET)
    public ResultUtil<List<TOrderStatisticsCountVo>> orderDayHourCount(Integer startHour, Integer endHour) {
        List<TOrderStatisticsCountVo> countVos = orderStatisticsService.orderDayHourCount(startHour, endHour);
        return ResultUtil.success(countVos);
    }
 
    /**
     * 司机接单排名统计
     */
    @ResponseBody
    @RequestMapping(value = "/driverCar", method = RequestMethod.GET)
    public ResultUtil<List<TOrderStatisticsCarVo>> driverCar(Integer type) {
        List<TOrderStatisticsCarVo> countVos = orderStatisticsService.driverCarStatistics(type);
        return ResultUtil.success(countVos);
    }
 
    /**
     * 司机接单排名统计
     */
    @ResponseBody
    @RequestMapping(value = "/passenger", method = RequestMethod.GET)
    public ResultUtil<List<TOrderStatisticsPassengerVo>> passenger(Integer type) {
        List<TOrderStatisticsPassengerVo> countVos = orderStatisticsService.passengerStatistics(type);
        return ResultUtil.success(countVos);
    }
 
}