自提功能完善核销功能

This commit is contained in:
chc 2023-02-02 17:05:35 +08:00
parent 7f44b29fbc
commit 10b4d0b16b
4 changed files with 12 additions and 8 deletions

View File

@ -193,6 +193,7 @@ public enum ResultCode {
ORDER_NOT_USER(31007, "非当前会员的订单"),
ORDER_TAKE_ERROR(31008, "当前订单无法核销"),
MEMBER_ADDRESS_NOT_EXIST(31009, "订单无收货地址,请先配置收货地址"),
STORE_ADDRESS_NOT_EXIST(31009,"订单没有自提地址,请先选择自提地址"),
ORDER_DELIVER_NUM_ERROR(31010, "没有待发货的订单"),
ORDER_NOT_SUPPORT_DISTRIBUTION(31011, "购物车中包含不支持配送的商品,请重新选择收货地址,或者重新选择商品"),
ORDER_NOT_EXIST_VALID(31041, "购物车中无有效商品,请检查购物车内商品,或者重新选择商品"),

View File

@ -1,6 +1,7 @@
package cn.lili.modules.order.order.entity.vo;
import cn.hutool.core.text.CharSequenceUtil;
import cn.lili.modules.order.cart.entity.enums.DeliveryMethodEnum;
import cn.lili.modules.order.order.entity.dos.Order;
import cn.lili.modules.order.order.entity.enums.DeliverStatusEnum;
import cn.lili.modules.order.order.entity.enums.OrderStatusEnum;
@ -69,10 +70,11 @@ public class AllowOperation implements Serializable {
//新订单允许支付
this.pay = status.equals(OrderStatusEnum.UNPAID.name()) && payStatus.equals(PayStatusEnum.UNPAID.name());
//可编辑订单收件人信息=实物订单 && 订单未发货 && 订单未取消
//可编辑订单收件人信息=实物订单 && 订单未发货 && 订单未取消 && 订单不是自提
this.editConsignee = order.getOrderType().equals(OrderTypeEnum.NORMAL.name())
&& order.getDeliverStatus().equals(DeliverStatusEnum.UNDELIVERED.name())
&& !status.equals(OrderStatusEnum.CANCELLED.name());
&& !status.equals(OrderStatusEnum.CANCELLED.name())
&& !order.getDeliveryMethod().equals(DeliveryMethodEnum.SELF_PICK_UP.name());
//是否允许被发货
this.ship = editConsignee && status.equals(OrderStatusEnum.UNDELIVERED.name());
@ -83,7 +85,8 @@ public class AllowOperation implements Serializable {
//是否允许查看物流信息
this.showLogistics = order.getDeliverStatus().equals(DeliverStatusEnum.DELIVERED.name()) && status.equals(OrderStatusEnum.DELIVERED.name());
this.take = order.getOrderType().equals(OrderTypeEnum.VIRTUAL.name()) && order.getOrderStatus().equals(OrderStatusEnum.TAKE.name());
//虚拟订单 自提订单可以核销
this.take = (order.getOrderType().equals(OrderTypeEnum.VIRTUAL.name()) && order.getOrderStatus().equals(OrderStatusEnum.TAKE.name())) || (order.getDeliveryMethod().equals(DeliveryMethodEnum.SELF_PICK_UP.name()) && order.getOrderStatus().equals(OrderStatusEnum.STAY_PICKED_UP.name()));
}
/**

View File

@ -1002,12 +1002,12 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
if (order == null) {
throw new ServiceException(ResultCode.ORDER_NOT_EXIST);
}
//判断是否为虚拟订单
if (!order.getOrderType().equals(OrderTypeEnum.VIRTUAL.name())) {
//判断是否为虚拟订单 自提订单
if (!order.getOrderType().equals(OrderTypeEnum.VIRTUAL.name()) && !order.getDeliveryMethod().equals(DeliveryMethodEnum.SELF_PICK_UP.name())) {
throw new ServiceException(ResultCode.ORDER_TAKE_ERROR);
}
//判断虚拟订单状态
if (!order.getOrderStatus().equals(OrderStatusEnum.TAKE.name())) {
//判断虚拟订单状态 待自提
if (!order.getOrderStatus().equals(OrderStatusEnum.TAKE.name()) && !order.getOrderStatus().equals(OrderStatusEnum.STAY_PICKED_UP.name())) {
throw new ServiceException(ResultCode.ORDER_TAKE_ERROR);
}
//判断验证码是否正确

File diff suppressed because one or more lines are too long