|
@@ -1074,16 +1074,16 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
|
|
|
throw new ServiceException("订单不存在或不属于当前商户");
|
|
throw new ServiceException("订单不存在或不属于当前商户");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ // 判断当前订单状态判断是否为【已到达】的订单,非【已到达】订单直接抛出异常(前端toast提示操作失败)
|
|
|
|
|
+ if (ObjectUtil.isNull(order.getArrivedTime())) {
|
|
|
|
|
+ throw new ServiceException("操作失败,请重试");
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
Integer status = order.getStatus();
|
|
Integer status = order.getStatus();
|
|
|
if (!OrderStatusEnum.PENDING_SERVICE.getCode().equals(status)) {
|
|
if (!OrderStatusEnum.PENDING_SERVICE.getCode().equals(status)) {
|
|
|
throw new ServiceException("仅【待服务】订单可开始服务,当前状态:" + OrderStatusEnum.getInfoByCode(status));
|
|
throw new ServiceException("仅【待服务】订单可开始服务,当前状态:" + OrderStatusEnum.getInfoByCode(status));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- // 可选强校验:必须先签到到达才能开始服务
|
|
|
|
|
- if (ObjectUtil.isNull(order.getArrivedTime())) {
|
|
|
|
|
- throw new ServiceException("请先完成到达签到,再开始服务");
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
// 更新状态+服务开始时间
|
|
// 更新状态+服务开始时间
|
|
|
LambdaUpdateWrapper<TOrder> update = Wrappers.lambdaUpdate(TOrder.class)
|
|
LambdaUpdateWrapper<TOrder> update = Wrappers.lambdaUpdate(TOrder.class)
|
|
|
.set(TOrder::getStatus, OrderStatusEnum.IN_SERVICE.getCode())
|
|
.set(TOrder::getStatus, OrderStatusEnum.IN_SERVICE.getCode())
|
|
@@ -1161,7 +1161,11 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// 查询订单
|
|
// 查询订单
|
|
|
- TOrder order = baseMapper.selectOne(Wrappers.lambdaQuery(TOrder.class).select(TOrder::getId, TOrder::getMerchantId, TOrder::getStatus).eq(TOrder::getId, orderId).eq(TOrder::getMerchantId, merchantId).eq(TOrder::getIsDelete, NOT_DELETE));
|
|
|
|
|
|
|
+ TOrder order = baseMapper.selectOne(Wrappers.lambdaQuery(TOrder.class)
|
|
|
|
|
+ .select(TOrder::getId, TOrder::getMerchantId, TOrder::getStatus)
|
|
|
|
|
+ .eq(TOrder::getId, orderId)
|
|
|
|
|
+ .eq(TOrder::getMerchantId, merchantId)
|
|
|
|
|
+ .eq(TOrder::getIsDelete, NOT_DELETE));
|
|
|
if (ObjectUtil.isNull(order)) {
|
|
if (ObjectUtil.isNull(order)) {
|
|
|
throw new ServiceException("订单不存在或不属于当前商户");
|
|
throw new ServiceException("订单不存在或不属于当前商户");
|
|
|
}
|
|
}
|
|
@@ -1173,7 +1177,12 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// 更新到达信息
|
|
// 更新到达信息
|
|
|
- LambdaUpdateWrapper<TOrder> update = Wrappers.lambdaUpdate(TOrder.class).set(TOrder::getArrivedTime, LocalDateTime.now()).set(TOrder::getUpdateTime, LocalDateTime.now()).set(TOrder::getUpdateBy, loginUser.getCNickName()).eq(TOrder::getId, orderId).eq(TOrder::getStatus, status);
|
|
|
|
|
|
|
+ LambdaUpdateWrapper<TOrder> update = Wrappers.lambdaUpdate(TOrder.class)
|
|
|
|
|
+ .set(TOrder::getArrivedTime, LocalDateTime.now())
|
|
|
|
|
+ .set(TOrder::getUpdateTime, LocalDateTime.now())
|
|
|
|
|
+ .set(TOrder::getUpdateBy, loginUser.getCNickName())
|
|
|
|
|
+ .eq(TOrder::getId, orderId)
|
|
|
|
|
+ .eq(TOrder::getStatus, status);
|
|
|
int count = baseMapper.update(null, update);
|
|
int count = baseMapper.update(null, update);
|
|
|
if (count <= 0) {
|
|
if (count <= 0) {
|
|
|
throw new ServiceException("订单状态已变更,请刷新重试");
|
|
throw new ServiceException("订单状态已变更,请刷新重试");
|