package com.ruoyi.order.service.impl;
|
|
import com.ruoyi.common.core.enums.TimeTypeEnum;
|
import com.ruoyi.common.core.exception.ServiceException;
|
import com.ruoyi.common.core.utils.DateUtils;
|
import com.ruoyi.order.controller.management.dto.MgtOrderStaticsQuery;
|
import com.ruoyi.order.controller.management.vo.MgtOrderStaticsVO;
|
import com.ruoyi.order.service.IOrderService;
|
import java.time.LocalDateTime;
|
import java.util.Objects;
|
import lombok.RequiredArgsConstructor;
|
import org.springframework.stereotype.Service;
|
|
/**
|
* @author mitao
|
* @date 2024/6/19
|
*/
|
@Service
|
@RequiredArgsConstructor
|
public class MgtBusinessDataService {
|
|
private final IOrderService orderService;
|
|
public MgtOrderStaticsVO getOverview(MgtOrderStaticsQuery query) {
|
LocalDateTime now = LocalDateTime.now();
|
LocalDateTime startTime = null;
|
LocalDateTime endTime = null;
|
getTimeByTimeType(query, startTime, endTime, now);
|
return null;
|
}
|
|
private static void getTimeByTimeType(MgtOrderStaticsQuery query, LocalDateTime startTime,
|
LocalDateTime endTime, LocalDateTime now) {
|
if (Objects.equals(TimeTypeEnum.TODAY.getCode(), query.getTimeType())) {
|
startTime = DateUtils.getDayStart(now);
|
endTime = DateUtils.getDayEnd(now);
|
} else if (Objects.equals(TimeTypeEnum.PAST_SEVEN_DAYS.getCode(), query.getTimeType())) {
|
startTime = DateUtils.getDayStart(now.minusDays(7));
|
endTime = DateUtils.getDayEnd(now);
|
} else if (Objects.equals(TimeTypeEnum.PAST_THIRTY_DAYS.getCode(), query.getTimeType())) {
|
startTime = DateUtils.getDayStart(now.minusDays(30));
|
endTime = DateUtils.getDayEnd(now);
|
} else if (Objects.equals(TimeTypeEnum.CUSTOM.getCode(), query.getTimeType())) {
|
if (Objects.isNull(query.getStartTime()) || Objects.isNull(query.getEndTime())) {
|
throw new ServiceException("自定义时间不能为空");
|
}
|
startTime = query.getStartTime();
|
endTime = query.getEndTime();
|
} else {
|
startTime = DateUtils.getDayStart(now);
|
endTime = DateUtils.getDayEnd(now);
|
}
|
}
|
}
|