Commit 004e9e4a by 周晓航

预定单 C端小程序 queryOrders 列表是否要展示 申请退款按钮 开发

Signed-off-by: 周晓航 <xiaohang.zhou@freemud.com>
parent e9a52436
...@@ -18,9 +18,9 @@ import cn.freemud.constant.RedisKeyConstant; ...@@ -18,9 +18,9 @@ import cn.freemud.constant.RedisKeyConstant;
import cn.freemud.constant.ResponseCodeConstant; import cn.freemud.constant.ResponseCodeConstant;
import cn.freemud.entities.dto.*; import cn.freemud.entities.dto.*;
import cn.freemud.entities.dto.activity.ShareDiscountActivityDto; import cn.freemud.entities.dto.activity.ShareDiscountActivityDto;
import cn.freemud.entities.dto.order.*;
import cn.freemud.entities.dto.order.CreateOrderAccountDto; import cn.freemud.entities.dto.order.CreateOrderAccountDto;
import cn.freemud.entities.dto.order.CreateOrderProductDto; import cn.freemud.entities.dto.order.CreateOrderProductDto;
import cn.freemud.entities.dto.order.*;
import cn.freemud.entities.dto.pay.CombPayResponse; import cn.freemud.entities.dto.pay.CombPayResponse;
import cn.freemud.entities.dto.promotion.OrderBeanRequest; import cn.freemud.entities.dto.promotion.OrderBeanRequest;
import cn.freemud.entities.dto.promotion.ShoppingCartGoodsResponse; import cn.freemud.entities.dto.promotion.ShoppingCartGoodsResponse;
...@@ -30,7 +30,6 @@ import cn.freemud.entities.ttpay.OrderInfo; ...@@ -30,7 +30,6 @@ import cn.freemud.entities.ttpay.OrderInfo;
import cn.freemud.entities.vo.*; import cn.freemud.entities.vo.*;
import cn.freemud.entities.vo.encircle.CreateReserveOrderVo; import cn.freemud.entities.vo.encircle.CreateReserveOrderVo;
import cn.freemud.entities.vo.encircle.PreviewOrderInfoVo; import cn.freemud.entities.vo.encircle.PreviewOrderInfoVo;
import cn.freemud.enums.*;
import cn.freemud.enums.ActivityTypeEnum; import cn.freemud.enums.ActivityTypeEnum;
import cn.freemud.enums.OrderChannelType; import cn.freemud.enums.OrderChannelType;
import cn.freemud.enums.OrderSourceType; import cn.freemud.enums.OrderSourceType;
...@@ -39,6 +38,7 @@ import cn.freemud.enums.PayStatus; ...@@ -39,6 +38,7 @@ import cn.freemud.enums.PayStatus;
import cn.freemud.enums.QueryOrderStatus; import cn.freemud.enums.QueryOrderStatus;
import cn.freemud.enums.RefundStatus; import cn.freemud.enums.RefundStatus;
import cn.freemud.enums.ResponseResult; import cn.freemud.enums.ResponseResult;
import cn.freemud.enums.*;
import cn.freemud.interceptor.ServiceException; import cn.freemud.interceptor.ServiceException;
import cn.freemud.management.entities.dto.request.BatchOrderRefundV2Request; import cn.freemud.management.entities.dto.request.BatchOrderRefundV2Request;
import cn.freemud.redis.RedisCache; import cn.freemud.redis.RedisCache;
...@@ -54,7 +54,6 @@ import com.freemud.api.assortment.datamanager.entity.vo.AssortmentCustomerInfoVo ...@@ -54,7 +54,6 @@ import com.freemud.api.assortment.datamanager.entity.vo.AssortmentCustomerInfoVo
import com.freemud.api.assortment.datamanager.enums.IappIdType; import com.freemud.api.assortment.datamanager.enums.IappIdType;
import com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformPartnerConfigManager; import com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformPartnerConfigManager;
import com.freemud.api.assortment.datamanager.manager.cache.CacheOpenPlatformPartnerWxappConfigManager; import com.freemud.api.assortment.datamanager.manager.cache.CacheOpenPlatformPartnerWxappConfigManager;
//import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.log.LogThreadLocal; import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.ordercenter.entities.PayItem; import com.freemud.application.sdk.api.ordercenter.entities.PayItem;
import com.freemud.application.sdk.api.ordercenter.enums.*; import com.freemud.application.sdk.api.ordercenter.enums.*;
...@@ -105,6 +104,8 @@ import java.util.stream.Stream; ...@@ -105,6 +104,8 @@ import java.util.stream.Stream;
import static cn.freemud.constant.OrderRefundConstant.ALLOW_REFUND; import static cn.freemud.constant.OrderRefundConstant.ALLOW_REFUND;
//import com.freemud.application.sdk.api.log.LogThreadLocal;
@Component @Component
public class OrderAdapter { public class OrderAdapter {
private static FastDateFormat yyyyMMddHHmmss = FastDateFormat.getInstance("yyyy-MM-dd HH:mm:ss", Locale.CHINA); private static FastDateFormat yyyyMMddHHmmss = FastDateFormat.getInstance("yyyy-MM-dd HH:mm:ss", Locale.CHINA);
...@@ -2084,6 +2085,11 @@ public class OrderAdapter { ...@@ -2084,6 +2085,11 @@ public class OrderAdapter {
// 除 未支付 拒单 和 取消外,其他可退款 // 除 未支付 拒单 和 取消外,其他可退款
return Stream.of(OrderStatus.WAIT_PAY, OrderStatus.REFUSE, OrderStatus.CALCEL).noneMatch(s -> Objects.equals(status, s)); return Stream.of(OrderStatus.WAIT_PAY, OrderStatus.REFUSE, OrderStatus.CALCEL).noneMatch(s -> Objects.equals(status, s));
} }
// 爱马哥 预定单 付款之后 预定当天之前的时间都可退款
if (orderBean.getBizType().compareTo(BizTypeEnum.ADVANCE_ORDER.getBizType()) == 0) {
return this.checkAdvanceOrder(orderBean.getGmtExpect());
}
boolean canRefund = false; boolean canRefund = false;
List<AssortmentOpenPlatformPartnerWxappConfig> wxappConfigs = cacheWxappConfigManager.cacheSelectDefaultPage(wxAppId, "2"); List<AssortmentOpenPlatformPartnerWxappConfig> wxappConfigs = cacheWxappConfigManager.cacheSelectDefaultPage(wxAppId, "2");
...@@ -2156,6 +2162,20 @@ public class OrderAdapter { ...@@ -2156,6 +2162,20 @@ public class OrderAdapter {
return canRefund; return canRefund;
} }
/**
* 预约时间
* @param gmtExpect
* @return true 可退 false不可操作
*/
public boolean checkAdvanceOrder(Long gmtExpect) {
if (Objects.isNull(gmtExpect)) {
throw new ServiceException(ResponseResult.PARAMETER_MISSING, "gmtExpect参数有异常");
}
// 只有在 预约时间当天不可取消订单
Date expectDate = DateUtil.convert2Date(new Date(gmtExpect), DateUtil.FORMAT_YMD);
return new Date().before(expectDate);
}
public List<OrderAccountVo> convent2OrderAccountVo(List<QueryOrdersResponse.DataBean.OrderBean.OrderSettlement> orderSettlements) { public List<OrderAccountVo> convent2OrderAccountVo(List<QueryOrdersResponse.DataBean.OrderBean.OrderSettlement> orderSettlements) {
List<OrderAccountVo> orderAccountVos = new ArrayList<>(); List<OrderAccountVo> orderAccountVos = new ArrayList<>();
if (CollectionUtils.isEmpty(orderSettlements)) { if (CollectionUtils.isEmpty(orderSettlements)) {
......
...@@ -1888,10 +1888,11 @@ public class OrderServiceImpl implements Orderservice { ...@@ -1888,10 +1888,11 @@ public class OrderServiceImpl implements Orderservice {
// fisherman 预定单前置校验-> bizType=7 // fisherman 预定单前置校验-> bizType=7
if (BizTypeEnum.ADVANCE_ORDER.getBizType().compareTo(orderBean.getBizType()) == 0) { if (BizTypeEnum.ADVANCE_ORDER.getBizType().compareTo(orderBean.getBizType()) == 0) {
// 预定时间 前一天都可退款 // 预定时间 前一天都可退款
BaseResponse baseResponse = this.checkAdvanceOrder(orderBean.getGmtExpect()); boolean b = orderAdapter.checkAdvanceOrder(orderBean.getGmtExpect());
if (Objects.nonNull(baseResponse)) { if (!b) {
return baseResponse; return ResponseUtil.error(ResponseResult.ORDER__ERRORREFUND.getCode(), "预约时间当天不可退款");
} }
} }
/** /**
...@@ -2016,22 +2017,6 @@ public class OrderServiceImpl implements Orderservice { ...@@ -2016,22 +2017,6 @@ public class OrderServiceImpl implements Orderservice {
return ResponseUtil.success(); return ResponseUtil.success();
} }
/**
*
* @param gmtExpect 预约时间
* @return
*/
private BaseResponse checkAdvanceOrder(Long gmtExpect) {
if (Objects.isNull(gmtExpect)) {
return ResponseUtil.error(ResponseResult.ORDER__ERRORREFUND.getCode(), "预期送达时间为空,请联系售后");
}
// 只有在 预约时间当天不可取消订单
Date expectDate = DateUtil.convert2Date(new Date(gmtExpect), DateUtil.FORMAT_YMD);
if (new Date().after(expectDate)) {
return ResponseUtil.error(ResponseResult.ORDER__ERRORREFUND.getCode(), "预约时间当天不可退款");
}
return null;
}
/** /**
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment