perf:优化订单查询(支持根据下单时间查询,增加区域字段&考虑支撑数据权限)
This commit is contained in:
parent
c72132dd57
commit
8d414ac646
@ -2,6 +2,7 @@ package com.aircraft.modules.order.biz;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.aircraft.exception.BadRequestException;
|
||||
@ -45,6 +46,7 @@ import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
@ -185,6 +187,15 @@ public class OrderBiz {
|
||||
*/
|
||||
private List<OrderMain> adminAllOrderQueryList(OrderMainPageQueryDTO pageQueryDTO) {
|
||||
// TODO 需要考虑用户角色获取对应的数据(财务、区域、管理员角色)
|
||||
// 处理时间格式
|
||||
if (ObjectUtil.isNotNull(pageQueryDTO.getQueryStartTime())) {
|
||||
Date start = DateUtil.beginOfDay(pageQueryDTO.getQueryStartTime());
|
||||
pageQueryDTO.setQueryStartTime(start);
|
||||
}
|
||||
if (ObjectUtil.isNotNull(pageQueryDTO.getQueryEndTime())) {
|
||||
Date end = DateUtil.endOfDay(pageQueryDTO.getQueryEndTime());
|
||||
pageQueryDTO.setQueryEndTime(end);
|
||||
}
|
||||
List<OrderMain> list = orderMainService.queryAll(pageQueryDTO);
|
||||
return list;
|
||||
}
|
||||
@ -247,6 +258,7 @@ public class OrderBiz {
|
||||
orderMain.setOrderCreateTime(addOrderDTO.getOrderCreateTime());
|
||||
orderMain.setMainOrderStatus(MainOrderStatusEnum.NOT_STARTED.getCode());
|
||||
orderMain.setSettlementStatus(OrderSettlementStatusEnum.NOT_SETTLED.getCode());
|
||||
orderMain.setAreaId(scenic.getAreaId());
|
||||
return orderMain;
|
||||
}
|
||||
|
||||
|
@ -50,6 +50,11 @@ public class OrderMain extends BaseEntity {
|
||||
*/
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 区域ID
|
||||
*/
|
||||
private Long areaId;
|
||||
|
||||
/**
|
||||
* 景区ID
|
||||
*/
|
||||
|
@ -2,6 +2,9 @@ package com.aircraft.modules.order.domain.dto;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
*
|
||||
@ -29,13 +32,27 @@ public class OrderMainPageQueryDTO {
|
||||
/**
|
||||
* 客户手机号
|
||||
*/
|
||||
@ApiModelProperty(value = "客户手机号", example = "13788888888")
|
||||
@ApiModelProperty(value = "客户手机号", example = "13456767894")
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 发起人ID
|
||||
*/
|
||||
@ApiModelProperty(value = "发起人ID(无需填写)")
|
||||
private Long orderInitiatorId;
|
||||
|
||||
/**
|
||||
* 下单开始时间
|
||||
*/
|
||||
@ApiModelProperty(value = "下单开始时间", example = "2025-07-19")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||
private Date queryStartTime;
|
||||
|
||||
/**
|
||||
* 下单结束时间
|
||||
*/
|
||||
@ApiModelProperty(value = "下单结束时间", example = "2025-07-19")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||
private Date queryEndTime;
|
||||
|
||||
}
|
||||
|
@ -57,6 +57,12 @@ public class OrderMainPageQueryVO {
|
||||
@ApiModelProperty(value = "发起人手机号")
|
||||
private String initiatorPhone;
|
||||
|
||||
/**
|
||||
* 区域ID
|
||||
*/
|
||||
@ApiModelProperty(value = "区域ID")
|
||||
private Long areaId;
|
||||
|
||||
/**
|
||||
* 景区ID
|
||||
*/
|
||||
|
@ -33,12 +33,13 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
|
||||
private OrderMainMapper orderMainMapper;
|
||||
@Override
|
||||
public List<OrderMain> queryAll(OrderMainPageQueryDTO pageQueryDTO) {
|
||||
|
||||
// TODO 构建查询条件
|
||||
LambdaQueryWrapper<OrderMain> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(ObjectUtil.isNotNull(pageQueryDTO.getAttractionId()),OrderMain::getAttractionId, pageQueryDTO.getAttractionId());
|
||||
queryWrapper.eq(ObjectUtil.isNotNull(pageQueryDTO.getAttractionId()),OrderMain::getCustomerId, pageQueryDTO.getCustomerId());
|
||||
queryWrapper.eq(StrUtil.isNotBlank(pageQueryDTO.getPhone()),OrderMain::getPhone, pageQueryDTO.getPhone());
|
||||
queryWrapper.eq(ObjectUtil.isNotNull(pageQueryDTO.getAttractionId()), OrderMain::getAttractionId, pageQueryDTO.getAttractionId());
|
||||
queryWrapper.eq(ObjectUtil.isNotNull(pageQueryDTO.getCustomerId()), OrderMain::getCustomerId, pageQueryDTO.getCustomerId());
|
||||
queryWrapper.eq(StrUtil.isNotBlank(pageQueryDTO.getPhone()), OrderMain::getPhone, pageQueryDTO.getPhone());
|
||||
// 添加时间查询条件
|
||||
queryWrapper.ge(ObjectUtil.isNotNull(pageQueryDTO.getQueryStartTime()), OrderMain::getOrderCreateTime, pageQueryDTO.getQueryStartTime());
|
||||
queryWrapper.le(ObjectUtil.isNotNull(pageQueryDTO.getQueryEndTime()), OrderMain::getOrderCreateTime, pageQueryDTO.getQueryEndTime());
|
||||
return list(queryWrapper);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user