Merge branch 'feat/earnling-line-status'
Some checks failed
Build and Push Backend / docker (push) Failing after 5s
Some checks failed
Build and Push Backend / docker (push) Failing after 5s
This commit is contained in:
@@ -54,6 +54,12 @@ public class PlayOrderInfoQueryVo extends BasePageEntity {
|
||||
@ApiModelProperty(value = "是否首单", example = "1", notes = "0:不是,1:是")
|
||||
private String firstOrder;
|
||||
|
||||
/**
|
||||
* 随机单要求-店员性别(0:未知;1:男;2:女)
|
||||
*/
|
||||
@ApiModelProperty(value = "店员性别", example = "2", notes = "0:未知;1:男;2:女")
|
||||
private String sex;
|
||||
|
||||
/**
|
||||
* 是否使用优惠券[0:未使用,1:已使用]
|
||||
*/
|
||||
|
||||
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
||||
@@ -421,6 +422,25 @@ public class PlayOrderInfoServiceImpl extends ServiceImpl<PlayOrderInfoMapper, P
|
||||
if (StringUtils.isNotBlank(vo.getOrderType())) {
|
||||
lambdaQueryWrapper.eq(PlayOrderInfoEntity::getOrderType, vo.getOrderType());
|
||||
}
|
||||
if (StringUtils.isNotBlank(vo.getSex())) {
|
||||
lambdaQueryWrapper.eq(PlayOrderInfoEntity::getSex, vo.getSex());
|
||||
}
|
||||
if (StringUtils.isNotBlank(vo.getPayMethod())) {
|
||||
lambdaQueryWrapper.eq(PlayOrderInfoEntity::getPayMethod, vo.getPayMethod());
|
||||
}
|
||||
if (StringUtils.isNotBlank(vo.getUseCoupon())) {
|
||||
lambdaQueryWrapper.eq(PlayOrderInfoEntity::getUseCoupon, vo.getUseCoupon());
|
||||
}
|
||||
if (StringUtils.isNotBlank(vo.getBackendEntry())) {
|
||||
lambdaQueryWrapper.eq(PlayOrderInfoEntity::getBackendEntry, vo.getBackendEntry());
|
||||
}
|
||||
if (StringUtils.isNotBlank(vo.getFirstOrder())) {
|
||||
lambdaQueryWrapper.eq(PlayOrderInfoEntity::getFirstOrder, vo.getFirstOrder());
|
||||
}
|
||||
applyRangeFilter(lambdaQueryWrapper, vo.getPurchaserTime(), PlayOrderInfoEntity::getPurchaserTime);
|
||||
applyRangeFilter(lambdaQueryWrapper, vo.getAcceptTime(), PlayOrderInfoEntity::getAcceptTime);
|
||||
applyRangeFilter(lambdaQueryWrapper, vo.getStartOrderTime(), PlayOrderInfoEntity::getOrderStartTime);
|
||||
applyRangeFilter(lambdaQueryWrapper, vo.getEndOrderTime(), PlayOrderInfoEntity::getOrderEndTime);
|
||||
// 加入组员的筛选,要么acceptBy为空,要么就在in里面
|
||||
List<String> clerkIdList = playClerkGroupInfoService.getValidClerkIdList(SecurityUtils.getLoginUser(),
|
||||
vo.getClerkNickName());
|
||||
@@ -728,6 +748,33 @@ public class PlayOrderInfoServiceImpl extends ServiceImpl<PlayOrderInfoMapper, P
|
||||
|
||||
}
|
||||
|
||||
private void applyRangeFilter(MPJLambdaWrapper<PlayOrderInfoEntity> wrapper, List<String> range,
|
||||
SFunction<PlayOrderInfoEntity, ?> column) {
|
||||
if (CollectionUtil.isEmpty(range)) {
|
||||
return;
|
||||
}
|
||||
String start = normalizeRangeValue(range, 0, false);
|
||||
String end = normalizeRangeValue(range, 1, true);
|
||||
if (StrUtil.isNotBlank(start) && StrUtil.isNotBlank(end)) {
|
||||
wrapper.between(column, start, end);
|
||||
} else if (StrUtil.isNotBlank(start)) {
|
||||
wrapper.ge(column, start);
|
||||
} else if (StrUtil.isNotBlank(end)) {
|
||||
wrapper.le(column, end);
|
||||
}
|
||||
}
|
||||
|
||||
private String normalizeRangeValue(List<String> range, int index, boolean isEnd) {
|
||||
if (range.size() <= index) {
|
||||
return null;
|
||||
}
|
||||
String raw = range.get(index);
|
||||
if (StrUtil.isBlank(raw)) {
|
||||
return null;
|
||||
}
|
||||
return isEnd ? DateRangeUtils.normalizeEndOptional(raw) : DateRangeUtils.normalizeStartOptional(raw);
|
||||
}
|
||||
|
||||
public void updateStateTo23(String operatorByType, String operatorBy, String orderState, String orderId) {
|
||||
OperatorType operatorType = resolveOperatorTypeOrThrow(operatorByType);
|
||||
boolean isCustomer = operatorType == OperatorType.CUSTOMER;
|
||||
|
||||
Reference in New Issue
Block a user