| | |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.math.BigDecimal; |
| | | import java.text.ParseException; |
| | | import java.text.SimpleDateFormat; |
| | | import java.time.LocalDate; |
| | | import java.time.Month; |
| | | import java.time.Year; |
| | | import java.time.temporal.TemporalAdjusters; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | |
| | |
| | | List<OrderQueryVO> list; |
| | | // 根据查询类型查询订单信息 |
| | | if (OrderConstants.YEAR.equals(countType)) { |
| | | list = baseMapper.orderCountByYear(cityList, orderState, startTime, endTime); |
| | | list = baseMapper.orderCountByYear(cityList, orderState); |
| | | } else if (OrderConstants.MONTH.equals(countType)) { |
| | | list = baseMapper.orderCountByMonth(cityList, orderState, startTime, endTime); |
| | | list = baseMapper.orderCountByMonth(cityList, orderState); |
| | | } else if (OrderConstants.WEEK.equals(countType)) { |
| | | list = baseMapper.orderCountByWeek(cityList, orderState, startTime, endTime); |
| | | list = baseMapper.orderCountByWeek(cityList, orderState); |
| | | } else if (OrderConstants.TODAY.equals(countType)) { |
| | | list = baseMapper.orderCountByToday(cityList, orderState, startTime, endTime); |
| | | list = baseMapper.orderCountByToday(cityList, orderState); |
| | | } else { |
| | | list = new ArrayList<>(); |
| | | try { |
| | | startTime = startTime + " 00:00:00"; |
| | | endTime = endTime + " 00:00:00"; |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | Date date1 = sdf.parse(startTime); |
| | | Date date2 = sdf.parse(endTime); |
| | | long diffInMillis = date2.getTime() - date1.getTime(); |
| | | long diffInDays = diffInMillis / (24 * 60 * 60 * 1000); |
| | | if (diffInDays > Constants.YEAR_DAY) { |
| | | list = baseMapper.orderCountByTimeRangeYear(cityList, startTime, endTime,orderState); |
| | | } else if (diffInDays > Constants.THIRTY) { |
| | | list = baseMapper.orderCountByTimeRangeMonth(cityList, startTime, endTime,orderState); |
| | | } else { |
| | | list = baseMapper.orderCountByTimeRange(cityList, startTime, endTime,orderState); |
| | | } |
| | | } catch (ParseException e) { |
| | | list = new ArrayList<>(); |
| | | } |
| | | } |
| | | // 计算订单总额及总订单数量 |
| | | BigDecimal totalMoney; |
| | |
| | | orderNumber = list.stream().filter(order -> order.getNumber() != null) |
| | | .mapToInt(OrderQueryVO::getNumber).sum(); |
| | | } |
| | | return new OrderResultVO(totalMoney, orderNumber, list); |
| | | return new |
| | | |
| | | OrderResultVO(totalMoney, orderNumber, list); |
| | | |
| | | } |
| | | |
| | | @Override |
| | |
| | | } else if (Constants.FOUR.equals(state)) { |
| | | canceled++; |
| | | } |
| | | if (order.getIsReinvest() != null && order.getIsReinvest() == 1) { |
| | | if (order.getState().equals(Constants.SIX)) { |
| | | reInvestment++; |
| | | } |
| | | } |