no message
This commit is contained in:
parent
5a172360bc
commit
dd51d48a45
|
|
@ -1234,7 +1234,7 @@ public class OrderController extends BaseController {
|
||||||
orderListRequest.setDeptId(request.getDeptId());
|
orderListRequest.setDeptId(request.getDeptId());
|
||||||
orderListRequest.setTimeout(1);
|
orderListRequest.setTimeout(1);
|
||||||
orderListRequest.setWorkerId(request.getWorkerId());
|
orderListRequest.setWorkerId(request.getWorkerId());
|
||||||
orderListRequest.setIsMonitoredOrder(true);
|
// orderListRequest.setIsMonitoredOrder(true);
|
||||||
orderListRequest.setNeedImgs(false);
|
orderListRequest.setNeedImgs(false);
|
||||||
orderListRequest.setOrderType(request.getOrderType());
|
orderListRequest.setOrderType(request.getOrderType());
|
||||||
response.setOverTimeOrderNum(this.appMixOrderCount(orderListRequest));
|
response.setOverTimeOrderNum(this.appMixOrderCount(orderListRequest));
|
||||||
|
|
@ -1337,38 +1337,52 @@ public class OrderController extends BaseController {
|
||||||
List<OrderMaster> filteredMasterList = new ArrayList<OrderMaster>();
|
List<OrderMaster> filteredMasterList = new ArrayList<OrderMaster>();
|
||||||
for (OrderMaster master : allList) {
|
for (OrderMaster master : allList) {
|
||||||
boolean isKeep = false;
|
boolean isKeep = false;
|
||||||
// 查询该主单下所有售后中的子单
|
// 查询该主单下所有子单(使用与统计子单相同的查询条件)
|
||||||
OrderDetail detailAfterListOfMasterQry = new OrderDetail();
|
OrderDetail detailAfterListOfMasterQry = new OrderDetail();
|
||||||
detailAfterListOfMasterQry.setOrderMasterCode(master.getCode());
|
detailAfterListOfMasterQry.setOrderMasterCode(master.getCode());
|
||||||
|
BeanUtils.copyProperties(orderListRequest, detailAfterListOfMasterQry);
|
||||||
|
detailAfterListOfMasterQry.setOrderMasterCode(master.getCode()); // 确保使用主单code
|
||||||
List<OrderDetail> tmpDetailListOfMasters = orderDetailService
|
List<OrderDetail> tmpDetailListOfMasters = orderDetailService
|
||||||
.selectOrderDetailList(detailAfterListOfMasterQry);
|
.selectOrderDetailList(detailAfterListOfMasterQry);
|
||||||
|
|
||||||
|
// 如果主单下没有符合条件的子单,保留主单(因为子单没有被统计,不存在重复计数)
|
||||||
|
if (CollectionUtils.isEmpty(tmpDetailListOfMasters)) {
|
||||||
|
filteredMasterList.add(master);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
List<OrderListResponse> detailListOfMasters = new ArrayList<>();
|
List<OrderListResponse> detailListOfMasters = new ArrayList<>();
|
||||||
tmpDetailListOfMasters.forEach(model -> {
|
tmpDetailListOfMasters.forEach(model -> {
|
||||||
OrderListResponse response = new OrderListResponse();
|
OrderListResponse response = new OrderListResponse();
|
||||||
BeanUtils.copyProperties(model, response);
|
BeanUtils.copyProperties(model, response);
|
||||||
detailListOfMasters.add(response);
|
detailListOfMasters.add(response);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// 检查是否有其他师傅的子单(排除同个师傅的主单子单同时出现)
|
||||||
for (OrderListResponse detailListOfMaster : detailListOfMasters) {
|
for (OrderListResponse detailListOfMaster : detailListOfMasters) {
|
||||||
if (!detailListOfMaster.getWorkerId().equals(orderListRequest.getWorkerId())) {
|
// 修复空指针问题:检查workerId是否为null
|
||||||
|
if (detailListOfMaster.getWorkerId() != null
|
||||||
|
&& orderListRequest.getWorkerId() != null
|
||||||
|
&& !detailListOfMaster.getWorkerId().equals(orderListRequest.getWorkerId())) {
|
||||||
isKeep = true;
|
isKeep = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
logger.info("主单id{},子单数据{},{}", master.getId(), CollectionUtils.isEmpty(tmpDetailListOfMasters),
|
|
||||||
isKeep);
|
logger.info("主单id{},符合条件的子单数量{},是否有其他师傅的子单:{}", master.getId(), detailListOfMasters.size(), isKeep);
|
||||||
if (isKeep || CollectionUtils.isEmpty(tmpDetailListOfMasters)) {
|
|
||||||
|
// 如果有其他师傅的子单,保留主单
|
||||||
|
// 如果所有子单都是同一个师傅(等于请求的workerId),且这些子单已经在前面统计过了,排除主单(避免重复计数)
|
||||||
|
if (isKeep) {
|
||||||
filteredMasterList.add(master);
|
filteredMasterList.add(master);
|
||||||
}
|
}
|
||||||
|
// 如果所有子单都是同一个师傅,且这些子单已经在前面统计过了,不添加到filteredMasterList(排除主单)
|
||||||
}
|
}
|
||||||
count += filteredMasterList.size();
|
count += filteredMasterList.size();
|
||||||
mateIds = filteredMasterList.stream().map(OrderMaster::getId)
|
mateIds = filteredMasterList.stream().map(OrderMaster::getId)
|
||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
logger.info("主单filteredMasterList超时数量{}总数{},filteredMasterList的id集合{}", filteredMasterList.size(), count,
|
logger.info("主单filteredMasterList超时数量{}总数{},filteredMasterList的id集合{}", filteredMasterList.size(), count,
|
||||||
mateIds);
|
mateIds);
|
||||||
if (CollectionUtils.isEmpty(filteredMasterList)) {
|
|
||||||
count += masterList.size();
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
count += masterList.size();
|
count += masterList.size();
|
||||||
}
|
}
|
||||||
|
|
@ -2076,6 +2090,10 @@ public class OrderController extends BaseController {
|
||||||
if (orderMaster.getOrderStatus() != null && OrderStatus.PLAIN.code() == orderMaster.getOrderStatus()) {
|
if (orderMaster.getOrderStatus() != null && OrderStatus.PLAIN.code() == orderMaster.getOrderStatus()) {
|
||||||
orderMaster.setHasDispatchedAll(0);
|
orderMaster.setHasDispatchedAll(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(orderMaster.getTimeout()!=null && orderMaster.getTimeout()>0){
|
||||||
|
orderMaster.setOrderStatuses("1,2,4");
|
||||||
|
}
|
||||||
List<OrderMaster> list = orderMasterService.selectOrderMasterList(orderMaster);
|
List<OrderMaster> list = orderMasterService.selectOrderMasterList(orderMaster);
|
||||||
List<Long> orderMasterIds = list.stream().map(OrderMaster::getId).collect(Collectors.toList());
|
List<Long> orderMasterIds = list.stream().map(OrderMaster::getId).collect(Collectors.toList());
|
||||||
// 缓存 orderDetailMap
|
// 缓存 orderDetailMap
|
||||||
|
|
|
||||||
|
|
@ -719,8 +719,10 @@
|
||||||
<if test="shareAccountCountdownDuration != null">#{shareAccountCountdownDuration},</if>
|
<if test="shareAccountCountdownDuration != null">#{shareAccountCountdownDuration},</if>
|
||||||
<if test="refundPayStatus != null">#{refundPayStatus},</if>
|
<if test="refundPayStatus != null">#{refundPayStatus},</if>
|
||||||
0,
|
0,
|
||||||
SYSDATE(),
|
<if test="createTime != null">#{createTime},</if>
|
||||||
SYSDATE()
|
<if test="createTime == null">SYSDATE(),</if>
|
||||||
|
<if test="updateTime != null">#{updateTime},</if>
|
||||||
|
<if test="updateTime == null">SYSDATE()</if>
|
||||||
)
|
)
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -242,7 +242,8 @@ public class OrderServiceImpl implements OrderService {
|
||||||
if (order.getGoodsOrderMasterId()==null) {
|
if (order.getGoodsOrderMasterId()==null) {
|
||||||
orderMasterService.removeWorker(order.getId());
|
orderMasterService.removeWorker(order.getId());
|
||||||
}
|
}
|
||||||
orderMasterService.updateCreateTime(order.getId());
|
// orderMasterService.up;
|
||||||
|
// 移除 updateCreateTime 调用:创建时间不应该被修改,它代表订单最初创建的时间
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue