package com.stylefeng.guns.modular.system.controller.specialTrain;
|
|
import com.aliyun.oss.ServiceException;
|
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 lombok.extern.slf4j.Slf4j;
|
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
|
*/
|
@Slf4j
|
@AllArgsConstructor
|
@Controller
|
@RequestMapping("/gunsApi/tOrderStatistics")
|
public class TOrderStatisticsController extends BaseController {
|
|
private final TOrderStatisticsService orderStatisticsService;
|
|
/**
|
* 年度趋势统计
|
*/
|
@ResponseBody
|
@RequestMapping(value = "/annualTrend", method = RequestMethod.GET)
|
public ResultUtil annualTrend(String year) {
|
try {
|
List<TOrderStatisticsAnnualTrendVo> annualTrendList = orderStatisticsService.annualTrendStatistics(year);
|
return ResultUtil.success(annualTrendList);
|
} catch (ServiceException e) {
|
log.error("可视化数据统计异常", e);
|
return ResultUtil.error(e.getErrorMessage());
|
}
|
}
|
|
/**
|
* 总体订单统计
|
*/
|
@ResponseBody
|
@RequestMapping(value = "/totalOrder", method = RequestMethod.GET)
|
public ResultUtil totalOrder(String startDate, String endDate) {
|
try {
|
TOrderStatisticsTotalOrderVo totalOrderVo = orderStatisticsService.totalOrderStatistics(startDate, endDate);
|
return ResultUtil.success(totalOrderVo);
|
} catch (ServiceException e) {
|
log.error("可视化数据统计异常", e);
|
return ResultUtil.error(e.getErrorMessage());
|
}
|
}
|
|
/**
|
* 新增乘客统计
|
*/
|
@ResponseBody
|
@RequestMapping(value = "/newAddPassenger", method = RequestMethod.GET)
|
public ResultUtil newAddPassenger(Integer type) {
|
try {
|
List<TOrderStatisticsCountVo> countVos = orderStatisticsService.newAddPassengerStatistics(type);
|
return ResultUtil.success(countVos);
|
} catch (ServiceException e) {
|
log.error("可视化数据统计异常", e);
|
return ResultUtil.error(e.getErrorMessage());
|
}
|
}
|
|
/**
|
* 订单量统计
|
*/
|
@ResponseBody
|
@RequestMapping(value = "/orderCount", method = RequestMethod.GET)
|
public ResultUtil orderCount(Integer type) {
|
try {
|
List<TOrderStatisticsCountVo> countVos = orderStatisticsService.orderCountStatistics(type);
|
return ResultUtil.success(countVos);
|
} catch (ServiceException e) {
|
log.error("可视化数据统计异常", e);
|
return ResultUtil.error(e.getErrorMessage());
|
}
|
}
|
|
/**
|
* 当日各时段统计
|
*/
|
@ResponseBody
|
@RequestMapping(value = "/orderDayHourCount", method = RequestMethod.GET)
|
public ResultUtil orderDayHourCount(Integer startHour, Integer endHour) {
|
try {
|
List<TOrderStatisticsCountVo> countVos = orderStatisticsService.orderDayHourCount(startHour, endHour);
|
return ResultUtil.success(countVos);
|
} catch (ServiceException e) {
|
log.error("可视化数据统计异常", e);
|
return ResultUtil.error(e.getErrorMessage());
|
}
|
}
|
|
/**
|
* 司机接单排名统计
|
*/
|
@ResponseBody
|
@RequestMapping(value = "/driverCar", method = RequestMethod.GET)
|
public ResultUtil driverCar(Integer type) {
|
try {
|
List<TOrderStatisticsCarVo> countVos = orderStatisticsService.driverCarStatistics(type);
|
return ResultUtil.success(countVos);
|
} catch (ServiceException e) {
|
log.error("可视化数据统计异常", e);
|
return ResultUtil.error(e.getErrorMessage());
|
}
|
}
|
|
/**
|
* 乘客排名统计
|
*/
|
@ResponseBody
|
@RequestMapping(value = "/passenger", method = RequestMethod.GET)
|
public ResultUtil passenger(Integer type) {
|
try {
|
List<TOrderStatisticsPassengerVo> countVos = orderStatisticsService.passengerStatistics(type);
|
return ResultUtil.success(countVos);
|
} catch (ServiceException e) {
|
log.error("可视化数据统计异常", e);
|
return ResultUtil.error(e.getErrorMessage());
|
}
|
}
|
|
}
|