package cn.lili.controller.lmk; import cn.lili.base.Result; import cn.lili.common.enums.ResultUtil; import cn.lili.common.vo.ResultMessage; import cn.lili.modules.lmk.domain.vo.PvUvVO; import cn.lili.modules.lmk.enums.general.StatisticsSearchTypeEnum; import cn.lili.modules.order.order.service.OrderService; import cn.lili.modules.statistics.entity.dto.StatisticsQueryParam; import cn.lili.modules.statistics.entity.vo.PlatformViewVO; import cn.lili.modules.statistics.service.PlatformViewService; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.ArrayList; import java.util.List; /** * lmk-shop-java * 统计数据控制层 * * @author : zxl * @date : 2025-09-16 16:36 **/ @RestController @AllArgsConstructor @RequestMapping("/manager/lmk/statistics") public class StatisticsController { private final OrderService orderService; @ApiOperation(value = "获取pv、uv流量数据 表单获取") @GetMapping("/pvUv") public Result getPVUVData(StatisticsQueryParam queryParam) { //TODO 获得 pv/uv数据 PvUvVO pvUvVO = new PvUvVO(); List pvData = new ArrayList<>(); List uvData = new ArrayList<>(); switch (queryParam.getSearchType()) { case "TODAY": // 今天的数据:添加1 pvData.add(1L); uvData.add(9L); break; case "YESTERDAY": // 明天的数据:添加1 pvData.add(1L); uvData.add(10L); break; case "LAST_SEVEN": // 过去七天的数据:添加1, 2, 3 for(int i =1;i<=7;i++){ pvData.add((long) i); uvData.add((long) i+7); } break; case "LAST_THIRTY": // 过去一个月的数据:可以根据需要自定义,这里示例添加1到5 for(int i =1;i<=30;i++){ pvData.add((long) i); uvData.add((long) i+7); } break; } pvUvVO.setPvData(pvData); pvUvVO.setUvData(uvData); return Result.ok().data(pvUvVO); } @GetMapping("/orderCount") public Result getOrderCount(StatisticsQueryParam queryParam) { return orderService.getOrderCount(queryParam); } }