Commit 6df167bc by 周晓航

Merge branch 'KA-支持门店手动创建运单,通知骑手到店取餐20210915-zxh' into qa

# Conflicts:
#	assortment-ordercenter-sdk/src/main/java/com/freemud/sdk/api/assortment/order/service/order/OrderCenterSdkServiceImpl.java
#	order-application-service/src/main/java/cn/freemud/adapter/CreateOrderAdapter.java
#	order-application-service/src/main/java/cn/freemud/entities/dto/pay/OrderPayResponse.java
#	order-application-service/src/main/java/cn/freemud/service/impl/MCCafeOrderServiceImpl.java
#	order-application-service/src/main/java/cn/freemud/service/impl/OrderCommonService.java
#	order-application-service/src/main/java/cn/freemud/service/impl/PointsMallOrderServiceImpl.java
#	order-application-service/src/main/java/cn/freemud/service/impl/SellCouponOrderServiceImpl.java
#	order-application-service/src/main/java/cn/freemud/service/universal/UniversalOrderService.java
#	order-management/src/main/java/cn/freemud/management/adapter/DeliverySdkAdapter.java
#	order-management/src/main/java/cn/freemud/management/service/impl/SaasOrderMangerServiceImpl.java
#	shopping-cart-application-service/src/main/java/cn/freemud/adapter/ActivityAdapter.java
#	shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartMallServiceImpl.java
#	shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartNewServiceImpl.java
#	shopping-cart-application-service/src/main/java/cn/freemud/service/impl/calculate/CalculationSharingDiscountService.java
parents 5a106670 748cf6f2
...@@ -68,6 +68,7 @@ import com.freemud.sdk.api.assortment.order.request.order.CreateOrderRequest; ...@@ -68,6 +68,7 @@ import com.freemud.sdk.api.assortment.order.request.order.CreateOrderRequest;
import com.freemud.sdk.api.assortment.order.request.order.OrderDownloadRequest; import com.freemud.sdk.api.assortment.order.request.order.OrderDownloadRequest;
import com.freemud.sdk.api.assortment.order.request.order.*; import com.freemud.sdk.api.assortment.order.request.order.*;
import com.freemud.sdk.api.assortment.order.response.order.*; import com.freemud.sdk.api.assortment.order.response.order.*;
//import com.freemud.sdk.api.assortment.order.response.payment.OrderPayResponse;
import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService; import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService;
import com.freemud.sdk.api.assortment.order.util.AssortOrderLogUtil; import com.freemud.sdk.api.assortment.order.util.AssortOrderLogUtil;
import com.freemud.sdk.api.assortment.order.vo.AssortmentOrderProductVo; import com.freemud.sdk.api.assortment.order.vo.AssortmentOrderProductVo;
......
...@@ -46,6 +46,7 @@ import com.freemud.sdk.api.assortment.order.request.order.*; ...@@ -46,6 +46,7 @@ import com.freemud.sdk.api.assortment.order.request.order.*;
import com.freemud.sdk.api.assortment.order.request.payment.CombPayRequest; import com.freemud.sdk.api.assortment.order.request.payment.CombPayRequest;
import com.freemud.sdk.api.assortment.order.request.payment.PayPlatformVO; import com.freemud.sdk.api.assortment.order.request.payment.PayPlatformVO;
import com.freemud.sdk.api.assortment.order.request.payment.ProductVO; import com.freemud.sdk.api.assortment.order.request.payment.ProductVO;
//import com.freemud.sdk.api.assortment.order.response.payment.OrderPayResponse;
import com.freemud.sdk.api.assortment.order.util.ClassUtils; import com.freemud.sdk.api.assortment.order.util.ClassUtils;
import com.freemud.sdk.api.assortment.order.util.WeightUtils; import com.freemud.sdk.api.assortment.order.util.WeightUtils;
import com.freemud.sdk.api.assortment.order.vo.ProductGroupVo; import com.freemud.sdk.api.assortment.order.vo.ProductGroupVo;
......
...@@ -183,7 +183,6 @@ public class OrderAdapter { ...@@ -183,7 +183,6 @@ public class OrderAdapter {
ArrayList<CreateOrderAccountRequest> orderAccountDtos = new ArrayList<>(); ArrayList<CreateOrderAccountRequest> orderAccountDtos = new ArrayList<>();
long deliveryAmount = 0; long deliveryAmount = 0;
long discountDeliveryAmount = 0; long discountDeliveryAmount = 0;
AppLogUtil.infoLog("fisherman 计算discountDeliveryAmount 的操作 begin", shoppingCartGoodsDto, createOrderVo);
if (createOrderVo.getMenuType().equals(BusinessTypeEnum.SAAS_DELIVERY.getCode())) { if (createOrderVo.getMenuType().equals(BusinessTypeEnum.SAAS_DELIVERY.getCode())) {
deliveryAmount = shoppingCartGoodsDto.getDeliveryAmount() == null ? 9l : shoppingCartGoodsDto.getDeliveryAmount(); deliveryAmount = shoppingCartGoodsDto.getDeliveryAmount() == null ? 9l : shoppingCartGoodsDto.getDeliveryAmount();
discountDeliveryAmount = shoppingCartGoodsDto.getDeliveryAmount() == null ? 9l : shoppingCartGoodsDto.getDeliveryAmount(); discountDeliveryAmount = shoppingCartGoodsDto.getDeliveryAmount() == null ? 9l : shoppingCartGoodsDto.getDeliveryAmount();
...@@ -210,7 +209,6 @@ public class OrderAdapter { ...@@ -210,7 +209,6 @@ public class OrderAdapter {
Long totalScore = shoppingCartGoodsDto.getTotalScore() == null ? 0L : shoppingCartGoodsDto.getTotalScore(); Long totalScore = shoppingCartGoodsDto.getTotalScore() == null ? 0L : shoppingCartGoodsDto.getTotalScore();
createOrderDto.setTotalScore(totalScore); createOrderDto.setTotalScore(totalScore);
AppLogUtil.infoLog("fisherman 计算discountDeliveryAmount 的操作 end", deliveryAmount, discountDeliveryAmount);
//商城实付无需加上配送费用和包装费 //商城实付无需加上配送费用和包装费
if (createOrderVo.getMenuType().equals(BusinessTypeEnum.SAAS_MALL.getCode())) { if (createOrderVo.getMenuType().equals(BusinessTypeEnum.SAAS_MALL.getCode())) {
createOrderDto.setAmount(shoppingCartGoodsDto.getTotalAmount()); createOrderDto.setAmount(shoppingCartGoodsDto.getTotalAmount());
...@@ -1569,7 +1567,6 @@ public class OrderAdapter { ...@@ -1569,7 +1567,6 @@ public class OrderAdapter {
// }); // });
} }
AppLogUtil.infoLog("fisherman orderBean:", JSON.toJSONString(ordersBeans), JSON.toJSONString(list));
return list; return list;
} }
......
...@@ -12,7 +12,6 @@ ...@@ -12,7 +12,6 @@
*/ */
package cn.freemud.entities.dto.pay; package cn.freemud.entities.dto.pay;
import com.freemud.application.sdk.api.ordercenter.enums.PayChannelType; import com.freemud.application.sdk.api.ordercenter.enums.PayChannelType;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderPayItemResp; import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderPayItemResp;
import lombok.Data; import lombok.Data;
......
...@@ -1057,7 +1057,6 @@ public class CheckOrder { ...@@ -1057,7 +1057,6 @@ public class CheckOrder {
request.setPartnerId(partnerId); request.setPartnerId(partnerId);
request.setStoreCode(storeCode); request.setStoreCode(storeCode);
StoreCBaseResponse<StoreCBaseResponseDto> responseDto = storeBaseApiClient.queryDeliverDetail(request); StoreCBaseResponse<StoreCBaseResponseDto> responseDto = storeBaseApiClient.queryDeliverDetail(request);
AppLogUtil.infoLog("fisherman 获取门店预计送达时间", request, responseDto);
if (responseDto == null) { if (responseDto == null) {
throw new ServiceException(ResponseResult.SYSTEM_BUSINESS_ERROR); throw new ServiceException(ResponseResult.SYSTEM_BUSINESS_ERROR);
} }
......
...@@ -121,6 +121,7 @@ import com.freemud.sdk.api.assortment.order.enums.OldOrderStatus; ...@@ -121,6 +121,7 @@ import com.freemud.sdk.api.assortment.order.enums.OldOrderStatus;
import com.freemud.sdk.api.assortment.order.enums.OldOrderType; import com.freemud.sdk.api.assortment.order.enums.OldOrderType;
import com.freemud.sdk.api.assortment.order.request.order.*; import com.freemud.sdk.api.assortment.order.request.order.*;
import com.freemud.sdk.api.assortment.order.response.order.*; import com.freemud.sdk.api.assortment.order.response.order.*;
//import com.freemud.sdk.api.assortment.order.response.payment.OrderPayResponse;
import cn.freemud.service.mccafe.CouponClientService; import cn.freemud.service.mccafe.CouponClientService;
import cn.freemud.service.mccafe.MCCafeOrderCenterSdkService; import cn.freemud.service.mccafe.MCCafeOrderCenterSdkService;
import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService; import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService;
......
...@@ -46,6 +46,7 @@ import com.freemud.sdk.api.assortment.order.request.order.OrderEditRequest; ...@@ -46,6 +46,7 @@ import com.freemud.sdk.api.assortment.order.request.order.OrderEditRequest;
import com.freemud.sdk.api.assortment.order.request.order.PaymentRequest; import com.freemud.sdk.api.assortment.order.request.order.PaymentRequest;
import com.freemud.sdk.api.assortment.order.response.order.AssortmentAffirmGroupOrderResponse; import com.freemud.sdk.api.assortment.order.response.order.AssortmentAffirmGroupOrderResponse;
import com.freemud.sdk.api.assortment.order.response.order.BaseOrderResponse; import com.freemud.sdk.api.assortment.order.response.order.BaseOrderResponse;
//import com.freemud.sdk.api.assortment.order.response.payment.OrderPayResponse;
import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService; import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService;
import com.freemud.sdk.api.assortment.payment.request.UnifiedOrderRequest; import com.freemud.sdk.api.assortment.payment.request.UnifiedOrderRequest;
import com.freemud.sdk.api.assortment.payment.response.UnifiedOrderResponse; import com.freemud.sdk.api.assortment.payment.response.UnifiedOrderResponse;
......
...@@ -491,39 +491,6 @@ public class PointsMallOrderServiceImpl implements PointsMallOrderService { ...@@ -491,39 +491,6 @@ public class PointsMallOrderServiceImpl implements PointsMallOrderService {
/** /**
* 获取券的有效结束时间
*/
private Date getCouponValidEnd(Active activeInfo){
Date returnDate = null;
if (activeInfo.getEffective() != null && activeInfo.getEffective() > 0) { // 根据固定时长来计算 天来计算
int delayTimes = activeInfo.getFromDayEffective() != null ? activeInfo.getFromDayEffective() : 0;
int validityPeriod = activeInfo.getEffective() != null ? activeInfo.getEffective() : 1;
if (activeInfo.getEffectiveStart() != null && activeInfo.getEffectiveEnd() != null) {
// 有效期为0 默认传1天,做兼容处理
Date effectiveStart = activeInfo.getEffectiveStart();
Date effectiveEnd = activeInfo.getEffectiveEnd();
Date date = new Date();
Date startDate = cn.freemud.base.util.DateUtil.addDays(date, delayTimes);
Date endDate = cn.freemud.base.util.DateUtil.addDays(date, (delayTimes + validityPeriod));
if (startDate.before(effectiveStart)) {
startDate = effectiveStart;
}
if (endDate.after(effectiveEnd)) {
endDate = effectiveEnd;
}
returnDate = endDate;
} else {
// 有效期为0 默认传1天,做兼容处理
returnDate = DateUtil.addDays(new Date(), (delayTimes + validityPeriod - 1));
}
} else {
returnDate = activeInfo.getEffectiveEndTime();
}
return returnDate;
}
/**
* 获取商户支付超时时间 * 获取商户支付超时时间
* *
* @param partnerId 商户Id * @param partnerId 商户Id
...@@ -640,4 +607,37 @@ public class PointsMallOrderServiceImpl implements PointsMallOrderService { ...@@ -640,4 +607,37 @@ public class PointsMallOrderServiceImpl implements PointsMallOrderService {
return gson.toJson(map); return gson.toJson(map);
} }
/**
* 获取券的有效结束时间
*/
private Date getCouponValidEnd(Active activeInfo){
Date returnDate = null;
if (activeInfo.getEffective() != null && activeInfo.getEffective() > 0) { // 根据固定时长来计算 天来计算
int delayTimes = activeInfo.getFromDayEffective() != null ? activeInfo.getFromDayEffective() : 0;
int validityPeriod = activeInfo.getEffective() != null ? activeInfo.getEffective() : 1;
if (activeInfo.getEffectiveStart() != null && activeInfo.getEffectiveEnd() != null) {
// 有效期为0 默认传1天,做兼容处理
Date effectiveStart = activeInfo.getEffectiveStart();
Date effectiveEnd = activeInfo.getEffectiveEnd();
Date date = new Date();
Date startDate = cn.freemud.base.util.DateUtil.addDays(date, delayTimes);
Date endDate = cn.freemud.base.util.DateUtil.addDays(date, (delayTimes + validityPeriod));
if (startDate.before(effectiveStart)) {
startDate = effectiveStart;
}
if (endDate.after(effectiveEnd)) {
endDate = effectiveEnd;
}
returnDate = endDate;
} else {
// 有效期为0 默认传1天,做兼容处理
returnDate = DateUtil.addDays(new Date(), (delayTimes + validityPeriod - 1));
}
} else {
returnDate = activeInfo.getEffectiveEndTime();
}
return returnDate;
}
} }
...@@ -51,6 +51,9 @@ import com.freemud.application.sdk.api.ordercenter.request.create.CreateOrderReq ...@@ -51,6 +51,9 @@ import com.freemud.application.sdk.api.ordercenter.request.create.CreateOrderReq
import com.freemud.application.sdk.api.ordercenter.request.create.DeliveryContactInfoCreateReq; import com.freemud.application.sdk.api.ordercenter.request.create.DeliveryContactInfoCreateReq;
import com.freemud.application.sdk.api.ordercenter.request.create.OrderItemCreateReq; import com.freemud.application.sdk.api.ordercenter.request.create.OrderItemCreateReq;
import com.freemud.application.sdk.api.ordercenter.request.create.OrderSettlementCreateReq; import com.freemud.application.sdk.api.ordercenter.request.create.OrderSettlementCreateReq;
import com.freemud.application.sdk.api.ordercenter.request.create.DeliveryContactInfoCreateReq;
import com.freemud.application.sdk.api.ordercenter.request.create.OrderItemCreateReq;
import com.freemud.application.sdk.api.ordercenter.request.create.OrderSettlementCreateReq;
import com.freemud.application.sdk.api.ordercenter.response.OrderBaseResp; import com.freemud.application.sdk.api.ordercenter.response.OrderBaseResp;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderInfoReqs; import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderInfoReqs;
import com.freemud.application.sdk.api.ordercenter.service.OrderSdkService; import com.freemud.application.sdk.api.ordercenter.service.OrderSdkService;
......
...@@ -85,6 +85,7 @@ import com.freemud.sdk.api.assortment.order.request.order.*; ...@@ -85,6 +85,7 @@ import com.freemud.sdk.api.assortment.order.request.order.*;
import com.freemud.sdk.api.assortment.order.request.payment.CombPayRequest; import com.freemud.sdk.api.assortment.order.request.payment.CombPayRequest;
import com.freemud.sdk.api.assortment.order.response.order.BaseOrderResponse; import com.freemud.sdk.api.assortment.order.response.order.BaseOrderResponse;
import com.freemud.sdk.api.assortment.order.response.order.CreateOrderResponse; import com.freemud.sdk.api.assortment.order.response.order.CreateOrderResponse;
//import com.freemud.sdk.api.assortment.order.response.payment.OrderPayResponse;
import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService; import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService;
import com.freemud.sdk.api.assortment.payment.request.UnifiedOrderRequest; import com.freemud.sdk.api.assortment.payment.request.UnifiedOrderRequest;
import com.freemud.sdk.api.assortment.payment.response.UnifiedOrderResponse; import com.freemud.sdk.api.assortment.payment.response.UnifiedOrderResponse;
......
package cn.freemud.management.adapter; package cn.freemud.management.adapter;
import cn.freemud.management.entities.dto.request.console.BizDTO;
import cn.freemud.management.entities.dto.request.console.ConsoleResponseDTO;
import cn.freemud.management.entities.dto.request.console.StoreInfoDTO;
import cn.freemud.management.entities.dto.request.order.OrderManagerRequest; import cn.freemud.management.entities.dto.request.order.OrderManagerRequest;
import cn.freemud.management.enums.DeliveryStatus; import cn.freemud.management.enums.DeliveryStatus;
import com.freemud.application.sdk.api.deliverycenter.dto.CreateDeliveryOrderRequestDto; import com.freemud.application.sdk.api.deliverycenter.dto.CreateDeliveryOrderRequestDto;
...@@ -24,13 +27,13 @@ public class DeliverySdkAdapter { ...@@ -24,13 +27,13 @@ public class DeliverySdkAdapter {
* 创建配送单请求对象 * 创建配送单请求对象
* *
* @param order * @param order
* @param storeInfo * @param bizDTO
* @param deliveryCallBackUrl * @param deliveryCallBackUrl
* @return * @return
*/ */
public CreateDeliveryOrderRequestDto buildDeliveryOrderRequestDto(OrderBeanV1 order public CreateDeliveryOrderRequestDto buildDeliveryOrderRequestDto(OrderBeanV1 order
, StoreResponse storeInfo, String deliveryCallBackUrl) { , ConsoleResponseDTO<BizDTO> bizDTO, String deliveryCallBackUrl) {
StoreInfoDTO storeInfo = bizDTO.getBizVO().getStoreInfo();
CreateDeliveryOrderRequestDto deliveryOrderRequestDto = new CreateDeliveryOrderRequestDto(); CreateDeliveryOrderRequestDto deliveryOrderRequestDto = new CreateDeliveryOrderRequestDto();
deliveryOrderRequestDto.setDepatchWeight(new BigDecimal(1)); deliveryOrderRequestDto.setDepatchWeight(new BigDecimal(1));
deliveryOrderRequestDto.setSerialNumber(order.getOtherCode()); deliveryOrderRequestDto.setSerialNumber(order.getOtherCode());
...@@ -40,23 +43,23 @@ public class DeliverySdkAdapter { ...@@ -40,23 +43,23 @@ public class DeliverySdkAdapter {
deliveryOrderRequestDto.setOrderActualAmount(order.getAmount().intValue()); deliveryOrderRequestDto.setOrderActualAmount(order.getAmount().intValue());
deliveryOrderRequestDto.setPartnerId(order.getCompanyId()); deliveryOrderRequestDto.setPartnerId(order.getCompanyId());
deliveryOrderRequestDto.setOrderChannel(order.getSource()); deliveryOrderRequestDto.setOrderChannel(order.getSource());
deliveryOrderRequestDto.setStoreId(storeInfo.getBizVO().getStoreId()); deliveryOrderRequestDto.setStoreId(storeInfo.getStoreId());
deliveryOrderRequestDto.setStoreCode(storeInfo.getBizVO().getStoreCode()); deliveryOrderRequestDto.setStoreCode(storeInfo.getStoreCode());
StringBuffer address = new StringBuffer(storeInfo.getBizVO().getCity()) StringBuffer address = new StringBuffer(storeInfo.getCity())
.append(storeInfo.getBizVO().getProvince()) .append(storeInfo.getProvince())
.append(storeInfo.getBizVO().getRegion()) .append(storeInfo.getRegion())
.append(storeInfo.getBizVO().getAddress()); .append(storeInfo.getAddress());
deliveryOrderRequestDto.setStoreAddress(address.toString()); deliveryOrderRequestDto.setStoreAddress(address.toString());
deliveryOrderRequestDto.setStoreLng(new BigDecimal(storeInfo.getBizVO().getLongitude())); deliveryOrderRequestDto.setStoreLng(new BigDecimal(storeInfo.getLongitude()));
deliveryOrderRequestDto.setStoreLat(new BigDecimal(storeInfo.getBizVO().getLatitude())); deliveryOrderRequestDto.setStoreLat(new BigDecimal(storeInfo.getLatitude()));
deliveryOrderRequestDto.setStorePhone(storeInfo.getBizVO().getPhone()); deliveryOrderRequestDto.setStorePhone(storeInfo.getPhone());
deliveryOrderRequestDto.setStoreName(order.getShopName()); deliveryOrderRequestDto.setStoreName(order.getShopName());
deliveryOrderRequestDto.setCityName(storeInfo.getBizVO().getCity()); deliveryOrderRequestDto.setCityName(storeInfo.getCity());
deliveryOrderRequestDto.setReceiverName(order.getUserName()); deliveryOrderRequestDto.setReceiverName(order.getUserName());
deliveryOrderRequestDto.setReceiverPrimaryPhone(order.getPhone()); deliveryOrderRequestDto.setReceiverPrimaryPhone(order.getPhone());
deliveryOrderRequestDto.setReceiverAddress(order.getAddress()); deliveryOrderRequestDto.setReceiverAddress(order.getAddress());
deliveryOrderRequestDto.setReceiverLng(new BigDecimal(order.getLongitude())); deliveryOrderRequestDto.setReceiverLng(BigDecimal.valueOf(order.getLongitude()));
deliveryOrderRequestDto.setReceiverLat(new BigDecimal(order.getLatitude())); deliveryOrderRequestDto.setReceiverLat(BigDecimal.valueOf(order.getLatitude()));
deliveryOrderRequestDto.setOrderTime(new Date(order.getGmtCreate())); deliveryOrderRequestDto.setOrderTime(new Date(order.getGmtCreate()));
deliveryOrderRequestDto.setCallbackUrl(deliveryCallBackUrl); deliveryOrderRequestDto.setCallbackUrl(deliveryCallBackUrl);
deliveryOrderRequestDto.setOrderClient(NumberUtils.toInt(order.getOrderClient())); deliveryOrderRequestDto.setOrderClient(NumberUtils.toInt(order.getOrderClient()));
......
package cn.freemud.management.entities.dto.request.console;
import lombok.Data;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/7/22 下午3:38
* @description :
*/
@Data
public class BizDTO {
/**
* 业务配置信息
*/
private BusinessInfoDTO businessInfo;
/**
* 配送信息
*/
private DeliveryInfoDTO deliveryInfo;
/**
*
*/
private StoreInfoDTO storeInfo;
}
package cn.freemud.management.entities.dto.request.console;
import lombok.Data;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/7/22 下午3:01
* @description : 业务配置信息
*/
@Data
public class BusinessInfoDTO {
/**
* 预约自建外卖制作完成后自动流程时间 1:2小时;2:1小时;3:30分钟;4:15分钟;5:10分钟;6:5分钟;
*/
private Integer appointAutoDeliveryTakeOrderWorkflowFinishTime;
/**
* 预约自提单制作完成后自动流程时间 1:2小时;2:1小时;3:30分钟;4:15分钟;5:10分钟;6:5分钟;
*/
private Integer appointAutoSelfmentionMakerWorkflowFinishTime;
/**
* 预约自提单接单后自动流程时间 1:2小时;2:1小时;3:30分钟;4:15分钟;5:10分钟;6:5分钟;
*/
private Integer appointAutoSelfmentionTakeOrderWorkflowFinishTime;
/**
* 预约自建外卖接单后自动流程时间 1:2小时;2:1小时;3:30分钟;4:15分钟;5:10分钟;6:5分钟;
*/
private Integer appointAutoTakeOutTakeOrderWorkflowFinishTime;
/**
* 三方外卖预订单自动拣货完成时间 1:2小时;2:1小时;3:30分钟;4:15分钟;5:10分钟;6:5分钟;7:3分钟;8:2分钟;
*/
private Integer appointThirdDeliveryPickCompleteWorkflowFinishTime;
/**
* 预约三方外卖制作完成后自动流程时间 1:2小时;2:1小时;3:30分钟;4:15分钟;5:10分钟;6:5分钟;7:3分钟;8:2分钟
*/
private Integer appointThirdDeliveryTakeOrderWorkflowFinishTime;
/**
* 自动退单时间
*/
private Integer autoChargebackOrderTime;
/**
* 退单模式 1手动退单 2自动退单
*/
private Integer autoChargebackOrderType;
/**
* 自建外卖制作完成后自动流程时间 1:2小时;2:1小时;3:30分钟;4:15分钟;5:10分钟;6:5分钟;
*/
private Integer autoDeliveryTakeOrderWorkflowFinishTime;
/**
* 自提单制作完成后自动流程时间 1:2小时;2:1小时;3:30分钟;4:15分钟;5:10分钟;6:5分钟;
*/
private Integer autoSelfmentionMakerWorkflowFinishTime;
/**
* 自提单接单后自动流程时间 1:2小时;2:1小时;3:30分钟;4:15分钟;5:10分钟;6:5分钟;
*/
private Integer autoSelfmentionTakeOrderWorkflowFinishTime;
/**
* 自建外卖接单后自动流程时间 1:2小时;2:1小时;3:30分钟;4:15分钟;5:10分钟;6:5分钟;
*/
private Integer autoTakeOutTakeOrderWorkflowFinishTime;
/**
* 三方外卖订单自动拣货完成时间 1:2小时;2:1小时;3:30分钟;4:15分钟;5:10分钟;6:5分钟;7:3分钟;8:2分钟
*/
private Integer autoThirdDeliveryPickCompleteWorkflowFinishTime;
/**
* 实时三方外卖制作完成后自动流程时间 1:2小时;2:1小时;3:30分钟;4:15分钟;5:10分钟;6:5分钟;7:3分钟;8:2分钟
*/
private Integer autoThirdDeliveryTakeOrderWorkflowFinishTime;
/**
* 是否自动同意退款(同意:1,不同意:0)
*/
private Integer automaticRefund;
/**
* 外卖预约单开关(0:关闭,1:开启)
*/
private Integer deliveryAppoint;
/**
* 外卖预约单时间(分钟) 65分钟、90分钟、120分钟
*/
private Integer deliveryAppointTime;
/**
* 自建外卖订单,商家自配送xx分钟后,订单状态更改为【已完成】
*/
private Integer deliveryFinishedAfterMinute;
/**
* 外卖时间:00:00-23:59
*/
private String deliveryHours;
/**
* 外卖预订单提醒时间{1:15分钟;2:30分钟;3:45分钟;4:60分钟;5:5分钟;6:10分钟}
*/
private String deliveryOrderWarnTime;
/**
* 自建外卖订单-实时单,商家自配送,门店接单xx分钟后,订单状态变更为配送中
*/
private Integer deliveryProcessingAfterMinute;
/**
* 自建外卖订单-预约单,商家自配送,预约商家前xx分钟,订单更改为配送中
*/
private Integer deliveryProcessingBeforeMinute;
/**
* 预计送达时间(分钟)
*/
private Integer expectedTime;
/**
* 商品平均制作时常(分钟)
*/
private Integer goodsAvgTimeOfMaking;
/**
* 是否支持发票 1是 0否
*/
private Integer invoice;
/**
* 发票特殊说明
*/
private String invoiceExplain;
/**
* 是否支持自动接单(1是2否)
*/
private Integer isAutoTakeOrder;
/**
* 最大接单量,单位笔
*/
private Integer maxOrderQuantity;
/**
* 可开票的最小价格
*/
private Integer minPriceForInvoice;
/**
* 预订单打印时间{1:提醒时打印;2:接单时打印}
*/
private String orderPrintConfig;
/**
* 订单进度条,1 开启,2 关闭
*/
private Integer orderProgressBarStatus;
/**
* 点餐方式(,隔开):pickup,delivery
*/
private String orderType;
/**
* 预订单提醒时间{1:15分钟;2:30分钟;3:45分钟;4:60分钟;5:5分钟;6:10分钟}
*/
private String orderWarnTime;
/**
* 超时关单 1开启 2关闭
*/
private Integer overTimeCloseOrder;
/**
* 接单超时关单时间,默认30分钟
*/
private Integer overTimeCloseOrderTime;
/**
* 自提-服务端自动接单时间 1:立即;2:1分钟;3:5分钟(顾客下单XX后,订单状态自动更改为已接单)
*/
private Integer pickupAutomaticOrderTime;
/**
* 自提预约单开关(0:关闭,1:开启)
*/
private Integer selfMentionSwitch;
/**
* 是否需要餐具 1 需要 0 不需要
*/
private Integer tableware;
/**
* 参与结算(1:是、2:否)
*/
private Integer takePartInSettleAccounts;
/**
* 外卖-服务端自动接单时间 1:立即;2:1分钟;3:5分钟(顾客下单XX后,订单状态自动更改为已接单)
*/
private Integer takeoutAutomaticOrderTime;
/**
* 所属商户号
*/
private String partnerId;
/**
* 退款时间,time_type_of_refund 为1时格式为HH:mm:ss,为2时默认48小时
*/
private String timeOfRefund;
/**
* 退款时间类型:1指定时间,2默认48小时后
*/
private Integer timeTypeOfRefund;
/**
* 开启制作时间 1 :是 , 2 :否
*/
private Integer turnOnTimeOfMaking;
/**
* 拓展业务字段
*/
private ExpandFieldsDTO expandFields;
}
package cn.freemud.management.entities.dto.request.console;
import lombok.Data;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/7/22 下午2:57
* @description : 门店服务 响应基类
*/
@Data
public class ConsoleResponseDTO<T> {
/**
* 状态码
*/
private String statusCode;
/**
*状态码描述
*/
private String msg;
private T bizVO;
}
package cn.freemud.management.entities.dto.request.console;
import lombok.Data;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/7/22 下午3:12
* @description :
*/
@Data
public class DeliveryInfoDTO {
/**
* 每增加公里(单位米)
*/
private String addRange;
/**
* 每增加公里增加配送费(单位分)
*/
private Integer addRangeAmount;
/**
* 基础配送费(分)
*/
private Integer deliveryAmount;
/**
* 配送方式:1-三方物流配送、2-商家自配送
*/
private Integer deliveryMethod;
/**
* 配送半径
*/
private Integer deliveryRadius;
/**
* 基础配送距离(单位米)
*/
private String deliveryRange;
/**
* 手绘经纬度集合
*/
private String deliveryScope;
/**
* 外卖起送条件(1:杯数,2:金额)
*/
private Integer deliveryType;
/**
* 起送杯数
*/
private Integer freeDeliveryCup;
/**
* 起送价格(单位分)
*/
private Integer freeDeliveryPrice;
/**
* 所属商户号
*/
private String partnerId;
/**
* 配送范围类型 1 自定义 2 半径
*/
private Integer scopeConfig;
}
package cn.freemud.management.entities.dto.request.console;
import lombok.Data;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/7/22 下午4:30
* @description :
*/
@Data
public class ExpandFieldsDTO {
/**
* 是 or 开启
*/
public static String STR_TRUE = "1";
/**
* 否 or 关闭
*/
public static String STR_FALSE = "0";
/**
* 月销量配置值
*/
private String monthlySalesConfigValue;
/**
* 月销量是否展示(1-是;0-否)
*/
private String monthlySalesShow;
/**
* 点赞数是否展示(1-是;0-否)
*/
private String likesShow;
/**
* 点赞数配置值
*/
private String likesConfigValue;
/**
* 扫桌码下单(1-开启;0-关闭) 开启该配置的门店在下单的时候,需要判断有没有桌号,如果没有桌号需要扫码获取桌号后再下单
*/
private String scanOrderSwitch;
// TODO 省略了 高峰时间配送时间 List<Map> 字段对接 peakTimeDelivery
/**
* 每增加一公里增加的时长(分钟)
*/
private String appendMinutePerKilometer;
/**
* 自提打包是否收取餐具费(1-开启;0-关闭)
*/
private String pickupPackageFeeSwitch;
/**
* 外卖打包是否收取餐具费(1-开启;0-关闭)
*/
private String deliveryPackageFeeSwitch;
/**
* 派单模式(0-系统自动派单;1-手动派单)
*/
private String dispatchType;
}
package cn.freemud.management.entities.dto.request.console;
import lombok.Builder;
import lombok.Data;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/7/22 下午2:49
* @description : http://yapi.sandload.cn:3000/project/257/interface/api/60053 接口调用使用
*/
@Data
@Builder
public class GetStoreMixRequest {
/**
* 商户ID
*/
private String partnerId;
/**
* 门店号
*/
private String storeCode;
/**
* 查询数据标志位
*/
private QueryFlag query;
}
package cn.freemud.management.entities.dto.request.console;
import lombok.Builder;
import lombok.Data;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/7/22 下午2:53
* @description :
*/
@Data
@Builder
public class QueryFlag {
/**
* 查询门店基本信息
*/
private boolean queryStoreInfo;
/**
* 查询门店的渠道上级列表
*/
private boolean queryParentUntilTop;
/**
* 查询配送设置信息
*/
private boolean queryDeliveryInfo;
/**
* 查询业务设置信息
*/
private boolean queryBusinessInfo;
/**
* 查询门店图片
*/
private boolean queryStoreImage;
/**
* 查询门店繁忙时间
*/
private boolean queryStoreBusyTime;
}
package cn.freemud.management.entities.dto.request.console;
import lombok.Data;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/7/22 下午3:28
* @description :
*/
@Data
public class StoreInfoDTO {
/**
* 是否繁忙置休,1-是,0-否
*/
private Integer activeFlag;
/**
* 门店地址
*/
private String address;
/**
* 英文门店地址
*/
private String addressEn;
/**
* 门店简称
*/
private String briefName;
/**
* 营业时间
*/
private String businessHours;
/**
* 当日营业时间
*/
private String businessHoursDay;
/**
* 营业时间类型:1-按天,2-按周
*/
private String businessType;
/**
* 市
*/
private String city;
/**
* 是否开通Delivery{1.是;2.否}
*/
private String delivery;
/**
* 配送时间
*/
private String deliveryHours;
/**
* 当日外卖营业时间
*/
private String deliveryHoursDay;
/**
* 到店自取(1是 2否)
*/
private Integer isSelfMention;
/**
* 纬度
*/
private String latitude;
/**
* 门店logo
*/
private String logoUrl;
/**
* 经度
*/
private String longitude;
/**
* 父级商户编码
*/
private String parentCode;
/**
* 父级商户编号
*/
private String parentId;
/**
* 父级商户名称
*/
private String parentName;
/**
* 商户号
*/
private String partnerId;
/**
* 电话
*/
private String phone;
/**
* 省
*/
private String province;
/**
* 区
*/
private String region;
/**
* 备注
*/
private String remark;
/**
* 是否展示优惠(0-不展示; 1-展示)
*/
private Integer showDiscount;
/**
* 营业状态
*/
private String state;
/**
* 门店营运状态(营运1,停运-2,删除-3)
*/
private String status;
/**
* 门店编号
*/
private String storeCode;
/**
* 门店id
*/
private String storeId;
/**
* 门店名称
*/
private String storeName;
/**
* 英文门店名称
*/
private String storeNameEn;
/**
* 门店公告
*/
private String storeNotice;
/**
* 第三方门店编号
*/
private String thirdPartCode;
}
...@@ -2,6 +2,10 @@ package cn.freemud.management.service.handle; ...@@ -2,6 +2,10 @@ package cn.freemud.management.service.handle;
import cn.freemud.base.entity.BaseResponse; import cn.freemud.base.entity.BaseResponse;
import cn.freemud.management.adapter.DeliverySdkAdapter; import cn.freemud.management.adapter.DeliverySdkAdapter;
import cn.freemud.management.entities.dto.request.console.BizDTO;
import cn.freemud.management.entities.dto.request.console.BusinessInfoDTO;
import cn.freemud.management.entities.dto.request.console.ConsoleResponseDTO;
import cn.freemud.management.entities.dto.request.console.ExpandFieldsDTO;
import cn.freemud.management.entities.dto.request.delivery.DeliveryOrderHaltedRequest; import cn.freemud.management.entities.dto.request.delivery.DeliveryOrderHaltedRequest;
import cn.freemud.management.entities.dto.request.order.OrderManagerRequest; import cn.freemud.management.entities.dto.request.order.OrderManagerRequest;
import cn.freemud.management.enums.DeliveryStatus; import cn.freemud.management.enums.DeliveryStatus;
...@@ -9,22 +13,25 @@ import cn.freemud.management.enums.ResponseResult; ...@@ -9,22 +13,25 @@ import cn.freemud.management.enums.ResponseResult;
import cn.freemud.management.service.OrderBaseService; import cn.freemud.management.service.OrderBaseService;
import cn.freemud.management.thirdparty.DeliveryMCCafeClient; import cn.freemud.management.thirdparty.DeliveryMCCafeClient;
import cn.freemud.management.util.ResponseUtil; import cn.freemud.management.util.ResponseUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.freemud.application.sdk.api.deliverycenter.dto.CancelDeliveryOrderRequestDto; import com.freemud.application.sdk.api.deliverycenter.dto.CancelDeliveryOrderRequestDto;
import com.freemud.application.sdk.api.deliverycenter.dto.CreateDeliveryOrderRequestDto; import com.freemud.application.sdk.api.deliverycenter.dto.CreateDeliveryOrderRequestDto;
import com.freemud.application.sdk.api.deliverycenter.response.CreateDeliveryOrderResponseDto; import com.freemud.application.sdk.api.deliverycenter.response.CreateDeliveryOrderResponseDto;
import com.freemud.application.sdk.api.deliverycenter.response.DeliveryResponseDto; import com.freemud.application.sdk.api.deliverycenter.response.DeliveryResponseDto;
import com.freemud.application.sdk.api.deliverycenter.service.DeliveryService; import com.freemud.application.sdk.api.deliverycenter.service.DeliveryService;
import com.freemud.application.sdk.api.log.ApiLog;
import com.freemud.application.sdk.api.log.LogThreadLocal; import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.ordercenter.entities.v1.OrderBeanV1; import com.freemud.application.sdk.api.ordercenter.entities.v1.OrderBeanV1;
import com.freemud.application.sdk.api.service.EmailAlertService; import com.freemud.application.sdk.api.service.EmailAlertService;
import com.freemud.application.sdk.api.storecenter.response.StoreResponse;
import org.apache.commons.lang.ObjectUtils; import org.apache.commons.lang.ObjectUtils;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.Objects;
/** /**
* All rights Reserved, Designed By www.freemud.cn * All rights Reserved, Designed By www.freemud.cn
...@@ -64,15 +71,26 @@ public class DeliveryHandle { ...@@ -64,15 +71,26 @@ public class DeliveryHandle {
/** /**
* 创建配送单 * 创建配送单
* * 【ID1036616】 【野萃山】【万象&小助手】支持门店手动创建运单,通知骑手到店取餐
* @param orderBean * @param orderBean
* @param request * @param request
* @return * @return
*/ */
public BaseResponse createDelivery(OrderBeanV1 orderBean, OrderManagerRequest request, StoreResponse storeInfo) { public BaseResponse createDelivery(OrderBeanV1 orderBean, OrderManagerRequest request, ConsoleResponseDTO<BizDTO> storeInfo,boolean idAutoCreate) {
if (storeInfo == null || ObjectUtils.notEqual(ResponseResult.SUCCESS.getCode(), storeInfo.getStatusCode().toString()) || storeInfo.getBizVO() == null) { if (storeInfo == null || ObjectUtils.notEqual(ResponseResult.SUCCESS.getCode(), storeInfo.getStatusCode()) || storeInfo.getBizVO() == null || storeInfo.getBizVO().getStoreInfo() == null) {
return ResponseUtil.error(ResponseResult.STORE_INFO_NOT_FOUND); return ResponseUtil.error(ResponseResult.STORE_INFO_NOT_FOUND);
} }
// 【ID1036616】 【野萃山】【万象&小助手】支持门店手动创建运单,通知骑手到店取餐
BusinessInfoDTO businessInfo = storeInfo.getBizVO().getBusinessInfo();
if (idAutoCreate && Objects.nonNull(businessInfo) && Objects.nonNull(businessInfo.getExpandFields())) {
ExpandFieldsDTO expandFields = businessInfo.getExpandFields();
String dispatchType = expandFields.getDispatchType();
// 1. 手动派单
if (Objects.equals(dispatchType, "1")) {
ApiLog.printLog("oms 门店自动创建运单->", JSON.toJSONString(orderBean.getOid()),null,null);
return ResponseUtil.success();
}
}
if (!checkOrderOfDelivery(orderBean)) { if (!checkOrderOfDelivery(orderBean)) {
return ResponseUtil.success(); return ResponseUtil.success();
} }
......
package cn.freemud.management.service.impl; package cn.freemud.management.service.impl;
import cn.freemud.base.entity.BaseResponse; import cn.freemud.base.entity.BaseResponse;
import cn.freemud.management.entities.dto.request.console.BizDTO;
import cn.freemud.management.entities.dto.request.console.ConsoleResponseDTO;
import cn.freemud.management.entities.dto.request.console.GetStoreMixRequest;
import cn.freemud.management.entities.dto.request.console.QueryFlag;
import cn.freemud.management.entities.dto.request.delivery.DeliveryOrderRequest; import cn.freemud.management.entities.dto.request.delivery.DeliveryOrderRequest;
import cn.freemud.management.enums.ResponseResult; import cn.freemud.management.enums.ResponseResult;
import cn.freemud.management.service.OrderBaseService; import cn.freemud.management.service.OrderBaseService;
import cn.freemud.management.service.handle.DeliveryHandle; import cn.freemud.management.service.handle.DeliveryHandle;
import cn.freemud.management.thirdparty.ConsoleApiClient;
import cn.freemud.management.util.ResponseUtil; import cn.freemud.management.util.ResponseUtil;
import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.ordercenter.entities.v1.OrderBeanV1; import com.freemud.application.sdk.api.ordercenter.entities.v1.OrderBeanV1;
import com.freemud.application.sdk.api.storecenter.request.StoreInfoRequest;
import com.freemud.application.sdk.api.storecenter.response.StoreResponse;
import com.freemud.application.sdk.api.storecenter.service.StoreCenterService; import com.freemud.application.sdk.api.storecenter.service.StoreCenterService;
import org.apache.commons.lang.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -23,6 +26,8 @@ public class OrderDeliveryService { ...@@ -23,6 +26,8 @@ public class OrderDeliveryService {
private OrderBaseService orderBaseService; private OrderBaseService orderBaseService;
@Autowired @Autowired
private DeliveryHandle deliveryHandle; private DeliveryHandle deliveryHandle;
@Autowired
private ConsoleApiClient consoleApiClient;
private static final int SUCCESS = 100; private static final int SUCCESS = 100;
...@@ -37,11 +42,14 @@ public class OrderDeliveryService { ...@@ -37,11 +42,14 @@ public class OrderDeliveryService {
if (null == orderBean) { if (null == orderBean) {
return ResponseUtil.error(ResponseResult.ORDER_NOT_EXIST); return ResponseUtil.error(ResponseResult.ORDER_NOT_EXIST);
} }
StoreResponse storeInfo = storeCenterService.getStoreInfo(new StoreInfoRequest(orderBean.getCompanyId(), orderBean.getShopId()), LogThreadLocal.getTrackingNo()); GetStoreMixRequest getStoreMixRequest = GetStoreMixRequest.builder().partnerId(orderBean.getCompanyId()).storeCode(orderBean.getShopId()).build();
if (SUCCESS != storeInfo.getStatusCode() || storeInfo.getBizVO() == null) { QueryFlag query = QueryFlag.builder().queryBusinessInfo(true).queryStoreInfo(true).build();
getStoreMixRequest.setQuery(query);
ConsoleResponseDTO<BizDTO> storeMix = consoleApiClient.getStoreMix(getStoreMixRequest);
if (ObjectUtils.notEqual(ResponseResult.SUCCESS.getCode(), storeMix.getStatusCode()) || storeMix.getBizVO() == null || storeMix.getBizVO().getStoreInfo()== null) {
return ResponseUtil.error(ResponseResult.STORE_INFO_NOT_FOUND); return ResponseUtil.error(ResponseResult.STORE_INFO_NOT_FOUND);
} }
return deliveryHandle.createDelivery(orderBean, null, storeInfo); return deliveryHandle.createDelivery(orderBean, null, storeMix,false);
} }
......
package cn.freemud.management.service.impl; package cn.freemud.management.service.impl;
import cn.freemud.base.entity.BaseResponse; import cn.freemud.base.entity.BaseResponse;
import cn.freemud.management.entities.dto.request.console.BizDTO;
import cn.freemud.management.entities.dto.request.console.ConsoleResponseDTO;
import cn.freemud.management.entities.dto.request.console.GetStoreMixRequest;
import cn.freemud.management.entities.dto.request.console.QueryFlag;
import cn.freemud.base.log.LogTreadLocal; import cn.freemud.base.log.LogTreadLocal;
import cn.freemud.base.util.JsonUtil; import cn.freemud.base.util.JsonUtil;
import cn.freemud.management.adapter.DeliverySdkAdapter; import cn.freemud.management.adapter.DeliverySdkAdapter;
...@@ -16,6 +20,7 @@ import cn.freemud.management.intercept.OrderServiceException; ...@@ -16,6 +20,7 @@ import cn.freemud.management.intercept.OrderServiceException;
import cn.freemud.management.service.OrderBaseService; import cn.freemud.management.service.OrderBaseService;
import cn.freemud.management.service.OrderManagerService; import cn.freemud.management.service.OrderManagerService;
import cn.freemud.management.service.handle.*; import cn.freemud.management.service.handle.*;
import cn.freemud.management.thirdparty.ConsoleApiClient;
import cn.freemud.management.thirdparty.OrderCallbackClient; import cn.freemud.management.thirdparty.OrderCallbackClient;
import cn.freemud.management.util.ResponseUtil; import cn.freemud.management.util.ResponseUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
...@@ -31,8 +36,6 @@ import com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto; ...@@ -31,8 +36,6 @@ import com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto;
import com.freemud.application.sdk.api.ordercenter.response.OrderBaseResp; import com.freemud.application.sdk.api.ordercenter.response.OrderBaseResp;
import com.freemud.application.sdk.api.ordercenter.service.OrderSdkService; import com.freemud.application.sdk.api.ordercenter.service.OrderSdkService;
import com.freemud.application.sdk.api.service.EmailAlertService; import com.freemud.application.sdk.api.service.EmailAlertService;
import com.freemud.application.sdk.api.storecenter.request.StoreInfoRequest;
import com.freemud.application.sdk.api.storecenter.response.StoreResponse;
import com.freemud.application.sdk.api.storecenter.service.StoreCenterService; import com.freemud.application.sdk.api.storecenter.service.StoreCenterService;
import com.freemud.sdk.api.assortment.order.enums.OldOrderStatus; import com.freemud.sdk.api.assortment.order.enums.OldOrderStatus;
import com.freemud.sdk.api.assortment.order.enums.OrderSourceType; import com.freemud.sdk.api.assortment.order.enums.OrderSourceType;
...@@ -98,6 +101,8 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService { ...@@ -98,6 +101,8 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
@Autowired @Autowired
private OrderCallbackClient orderCallbackClient; private OrderCallbackClient orderCallbackClient;
@Autowired
private ConsoleApiClient consoleApiClient;
/** /**
* 接单 * 接单
* *
...@@ -109,10 +114,13 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService { ...@@ -109,10 +114,13 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
public BaseResponse<OrderManagerResponse> orderConfirm(OrderManagerRequest request, OrderBeanV1 orderBean) { public BaseResponse<OrderManagerResponse> orderConfirm(OrderManagerRequest request, OrderBeanV1 orderBean) {
// 订单接单 // 订单接单
BaseResponse baseResponse = saasOrderHandle.orderConfirm(request, orderBean); BaseResponse baseResponse = saasOrderHandle.orderConfirm(request, orderBean);
//获取门店信息 // 使用feign调用 获取门店信息
StoreResponse storeInfo = storeCenterService.getStoreInfo(new StoreInfoRequest(orderBean.getCompanyId(), orderBean.getShopId()), ""); GetStoreMixRequest getStoreMixRequest = GetStoreMixRequest.builder().partnerId(orderBean.getCompanyId()).storeCode(orderBean.getShopId()).build();
QueryFlag query = QueryFlag.builder().queryBusinessInfo(true).queryStoreInfo(true).build();
getStoreMixRequest.setQuery(query);
ConsoleResponseDTO<BizDTO> storeMix = consoleApiClient.getStoreMix(getStoreMixRequest);
// 创建配送单 // 创建配送单
deliveryHandle.createDelivery(orderBean, request, storeInfo); deliveryHandle.createDelivery(orderBean, request, storeMix, true);
// 推送pos、微信消息中心 重复接单不重复推消息(针对蜜雪做的修改) // 推送pos、微信消息中心 重复接单不重复推消息(针对蜜雪做的修改)
if(baseResponse != null && baseResponse.getResult() == null){ if(baseResponse != null && baseResponse.getResult() == null){
orderBaseService.sendMessage(orderBean, OperateType.ORDER_CONFIRM, request.getReason()); orderBaseService.sendMessage(orderBean, OperateType.ORDER_CONFIRM, request.getReason());
...@@ -123,7 +131,7 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService { ...@@ -123,7 +131,7 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
ApiLog.infoMessage("紧急方案 接单成功直接调用callback,orderCode:{},requestId:{}",requestVo.getOrderCode(),requestVo.getRequestId()); ApiLog.infoMessage("紧急方案 接单成功直接调用callback,orderCode:{},requestId:{}",requestVo.getOrderCode(),requestVo.getRequestId());
orderCallbackClient.callbackOrder(requestVo); orderCallbackClient.callbackOrder(requestVo);
} }
return ResponseUtil.success(new OrderManagerResponse(storeInfo.getBizVO().getOrderPrintConfig(), orderBean.getGmtExpect(), return ResponseUtil.success(new OrderManagerResponse(storeMix.getBizVO().getBusinessInfo().getOrderPrintConfig(), orderBean.getGmtExpect(),
CollectionUtils.isEmpty(orderBean.getRefundList()) ? null : RefundStatus.getByCode(orderBean.getRefundList().get(0).getStatus()))); CollectionUtils.isEmpty(orderBean.getRefundList()) ? null : RefundStatus.getByCode(orderBean.getRefundList().get(0).getStatus())));
} }
......
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: StoreItemClient
* @Package cn.freemud.service.thirdparty
* @Description:
* @author: liming.guo
* @date: 2018/5/16 9:39
* @version V1.0
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
package cn.freemud.management.thirdparty;
import cn.freemud.management.entities.dto.request.console.BizDTO;
import cn.freemud.management.entities.dto.request.console.ConsoleResponseDTO;
import cn.freemud.management.entities.dto.request.console.GetStoreMixRequest;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@FeignClient("CONSOLE-API")
@RequestMapping(produces = {MediaType.APPLICATION_JSON_UTF8_VALUE})
public interface ConsoleApiClient {
/**
* v2获取门店信息
* http://yapi.sandload.cn:3000/project/257/interface/api/60053 接口调用使用
*
* @param request
* @return
*/
@PostMapping(value = "/api/v2/organization/getStoreMix")
ConsoleResponseDTO<BizDTO> getStoreMix(GetStoreMixRequest request);
}
...@@ -13,12 +13,13 @@ ...@@ -13,12 +13,13 @@
package cn.freemud.adapter; package cn.freemud.adapter;
import cn.freemud.base.constant.Version; import cn.freemud.base.constant.Version;
import cn.freemud.entities.dto.ActivityCancelStockRequestDto; import cn.freemud.entities.dto.*;
import cn.freemud.entities.dto.CouponCodeVerificationProductDto;
import cn.freemud.entities.dto.QueryOrdersResponseDto;
import cn.freemud.entities.dto.activity.ActivityQueryDto; import cn.freemud.entities.dto.activity.ActivityQueryDto;
import cn.freemud.entities.dto.calculate.ActivityCalculationDiscountRequestDto;
import cn.freemud.entities.dto.calculate.ActivityCalculationDiscountResponseDto; import cn.freemud.entities.dto.calculate.ActivityCalculationDiscountResponseDto;
import cn.freemud.entities.dto.calculate.ActivityTypeSharedExclusive; import cn.freemud.entities.dto.calculate.ActivityTypeSharedExclusive;
import cn.freemud.entities.dto.order.CreateOrderDto;
import cn.freemud.entities.vo.CreateOrderVo;
import cn.freemud.entities.vo.PremiumExchangeResponseVo; import cn.freemud.entities.vo.PremiumExchangeResponseVo;
import cn.freemud.entities.vo.coupon.CartProduct; import cn.freemud.entities.vo.coupon.CartProduct;
import cn.freemud.entities.vo.coupon.CouponAvailableCartInfo; import cn.freemud.entities.vo.coupon.CouponAvailableCartInfo;
...@@ -41,6 +42,76 @@ import java.util.stream.Collectors; ...@@ -41,6 +42,76 @@ import java.util.stream.Collectors;
@Component @Component
public class ActivityAdapter { public class ActivityAdapter {
/**
* 扣减库存数量
*/
private static final int STACK_SUB = 1;
public ActivityQueryRequestDto convert2ActivityQueryRequestDto(CreateOrderVo createOrderVo) {
if (createOrderVo == null || createOrderVo.getPremiumExchangeActivity() == null
|| CollectionUtils.isEmpty(createOrderVo.getPremiumExchangeActivity().getProducts())) {
return null;
}
ActivityQueryRequestDto activityQueryRequestDto = new ActivityQueryRequestDto();
activityQueryRequestDto.setVer(Version.VERSION_1);
activityQueryRequestDto.setPartnerCode(createOrderVo.getPartnerId());
activityQueryRequestDto.setStoreId(createOrderVo.getShopId());
activityQueryRequestDto.setActivityType(ActivityTypeEnum.TYPE_81.getCode());
List<ActivityQueryRequestDto.QueryGoodsBeanDto> goodsBeanDtoList = new ArrayList<>();
for (CreateOrderVo.PremiumExchangeActivity.Product skuProduct : createOrderVo.getPremiumExchangeActivity().getProducts()) {
ActivityQueryRequestDto.QueryGoodsBeanDto queryGoodsBeanDto = new ActivityQueryRequestDto.QueryGoodsBeanDto(skuProduct.getSkuId(),
skuProduct.getQty(),
skuProduct.getOriginalPrice());
goodsBeanDtoList.add(queryGoodsBeanDto);
}
activityQueryRequestDto.setGoods(goodsBeanDtoList);
return activityQueryRequestDto;
}
public ActivityCalculationDiscountRequestDto convert2ActivityCalculationDiscountRequestDto(ShoppingCartInfoDto shoppingCartInfoDto
, String partnerCode, String storeId, String appid, Integer orderType, CouponListResponseDto.CouponBean couponBean, Long promotionAmount) {
if (shoppingCartInfoDto == null || CollectionUtils.isEmpty(shoppingCartInfoDto.getData())) {
return null;
}
ActivityCalculationDiscountRequestDto result = new ActivityCalculationDiscountRequestDto();
result.setVer(Integer.valueOf(Version.VERSION_1));
result.setPartnerCode(partnerCode);
result.setStoreId(storeId);
ActivityChannelEnum activityChannelEnum = PropertyConvertUtil.orderTypeConvert2ActivityChannel(orderType);
if(!Objects.isNull(activityChannelEnum)) {
result.setChannel(activityChannelEnum.getCode());
}
result.setAppId(appid);
result.setIsShowActivities(1);
result.setIsShowGoodsActivity(1);
List<ActivityCalculationDiscountRequestDto.CalculationDiscountGoods> goods = new ArrayList<>();
// TODO 暂时指定成一个商品,后期优化
ActivityCalculationDiscountRequestDto.CalculationDiscountGoods calculationDiscountGoods = new ActivityCalculationDiscountRequestDto.CalculationDiscountGoods();
calculationDiscountGoods.setGoodsId("1");
calculationDiscountGoods.setCategory("1");
calculationDiscountGoods.setGoodsQuantity(1);
Long amount = 0L;
if (shoppingCartInfoDto.getAmount() != null) {
amount = shoppingCartInfoDto.getAmount();
}
Long packAmount = 0L;
// 外卖才有打包费
if (shoppingCartInfoDto.getPackAmount() != null && Objects.equals(CreateOrderType.TAKE_OUT.getCode(), orderType)) {
packAmount = shoppingCartInfoDto.getPackAmount();
}
Long couponAmount = 0L;
if (couponBean != null && couponBean.getDiscountAmount() != null) {
couponAmount = Long.valueOf(couponBean.getDiscountAmount());
}
if (promotionAmount == null) {
promotionAmount = 0L;
}
calculationDiscountGoods.setOriginalPrice(amount + packAmount - couponAmount - promotionAmount);
goods.add(calculationDiscountGoods);
result.setGoods(goods);
return result;
}
public PremiumExchangeResponseVo convert2PremiumExchange(ActivityCalculationDiscountResponseDto.CalculationDiscountResult calculationDiscountResult) { public PremiumExchangeResponseVo convert2PremiumExchange(ActivityCalculationDiscountResponseDto.CalculationDiscountResult calculationDiscountResult) {
// 返回构造对象 // 返回构造对象
PremiumExchangeResponseVo premiumExchangeResponseVo = new PremiumExchangeResponseVo(); PremiumExchangeResponseVo premiumExchangeResponseVo = new PremiumExchangeResponseVo();
......
...@@ -18,7 +18,10 @@ import cn.freemud.adapter.ShoppingCartConvertAdapter; ...@@ -18,7 +18,10 @@ import cn.freemud.adapter.ShoppingCartConvertAdapter;
import cn.freemud.base.entity.BaseResponse; import cn.freemud.base.entity.BaseResponse;
import cn.freemud.constant.ResponseCodeConstant; import cn.freemud.constant.ResponseCodeConstant;
import cn.freemud.constant.ShoppingCartConstant; import cn.freemud.constant.ShoppingCartConstant;
import cn.freemud.entities.dto.*; import cn.freemud.entities.dto.BuriedPointShoppingCartRequestDto;
import cn.freemud.entities.dto.GetProductStockRequestDto;
import cn.freemud.entities.dto.GetProductStockResponseDto;
import cn.freemud.entities.dto.UserLoginInfoDto;
import cn.freemud.entities.dto.activity.ActivityQueryDto; import cn.freemud.entities.dto.activity.ActivityQueryDto;
import cn.freemud.entities.dto.activity.DiscountSharingDto; import cn.freemud.entities.dto.activity.DiscountSharingDto;
import cn.freemud.entities.dto.calculate.ActivityCalculationDiscountRequestDto; import cn.freemud.entities.dto.calculate.ActivityCalculationDiscountRequestDto;
...@@ -191,7 +194,7 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService { ...@@ -191,7 +194,7 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
ActivityQueryDto activityQueryDto = activityAdapter.getActivityQueryDto(partnerId, storeId, userId, appId, addShoppingCartGoodsRequestVo.getOrderType()); ActivityQueryDto activityQueryDto = activityAdapter.getActivityQueryDto(partnerId, storeId, userId, appId, addShoppingCartGoodsRequestVo.getOrderType());
ActivityCalculationDiscountResponseDto.CalculationDiscountResult discountResult = null; ActivityCalculationDiscountResponseDto.CalculationDiscountResult discountResult = null;
discountResult = sharingDiscountService.getCalculationSharingDiscountResult(menuType, partnerId, storeId, userId, appId, orderType, assortmentCustomerInfoVo.isMemberPaid(), allCartGoodsList, new ArrayList<>(), null, deliveryAmount, null,null,new DiscountSharingDto(), accountType); discountResult = sharingDiscountService.getCalculationSharingDiscountResult(menuType, partnerId, storeId, userId, appId, orderType, assortmentCustomerInfoVo.isMemberPaid(), allCartGoodsList, new ArrayList<>(), null, deliveryAmount, null,null, accountType,new DiscountSharingDto());
sharingCartService.distribute(discountResult, allCartGoodsList, shoppingCartGoodsResponseVo, null, null, null, activityQueryDto, menuType, deliveryAmount, ShoppingCartConstant.ADD_AND_UPDATE, partnerId, null, userId, storeId); sharingCartService.distribute(discountResult, allCartGoodsList, shoppingCartGoodsResponseVo, null, null, null, activityQueryDto, menuType, deliveryAmount, ShoppingCartConstant.ADD_AND_UPDATE, partnerId, null, userId, storeId);
buildShoppingCartGoodsResponse(shoppingCartGoodsResponseVo,discountResult,null,partnerId); buildShoppingCartGoodsResponse(shoppingCartGoodsResponseVo,discountResult,null,partnerId);
...@@ -286,7 +289,7 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService { ...@@ -286,7 +289,7 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
, new ArrayList() //券 , new ArrayList() //券
, null //加价购商品 , null //加价购商品
, deliveryAmount , deliveryAmount
, null,null,new DiscountSharingDto(), accountFlag); , null,null, accountFlag,new DiscountSharingDto());
sharingCartService.distribute(discountResult sharingCartService.distribute(discountResult
, cartGoodsList , cartGoodsList
...@@ -445,7 +448,7 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService { ...@@ -445,7 +448,7 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
, coupons , coupons
, sendGoods , sendGoods
, deliveryAmount , deliveryAmount
, null,null,new DiscountSharingDto(), accountFlag); , null,null, accountFlag,new DiscountSharingDto());
sharingCartService.distribute(calculationSharingDiscountResult sharingCartService.distribute(calculationSharingDiscountResult
, cartGoodsList , cartGoodsList
, shoppingCartGoodsResponseVo , shoppingCartGoodsResponseVo
...@@ -603,7 +606,7 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService { ...@@ -603,7 +606,7 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
, coupons , coupons
, shoppingCartInfoRequestVo.getSendGoods() , shoppingCartInfoRequestVo.getSendGoods()
, deliveryAmount , deliveryAmount
, shoppingCartInfoRequestVo,null,new DiscountSharingDto(), accountFlag); , shoppingCartInfoRequestVo,null, accountFlag,new DiscountSharingDto());
// 活动校验 // 活动校验
calculationSharingValidatorService.validator(discountResult calculationSharingValidatorService.validator(discountResult
......
...@@ -81,7 +81,6 @@ import com.freemud.sdk.api.assortment.shoppingcart.enums.BusinessTypeEnum; ...@@ -81,7 +81,6 @@ import com.freemud.sdk.api.assortment.shoppingcart.enums.BusinessTypeEnum;
import com.freemud.sdk.api.assortment.shoppingcart.request.CheckCartRequest; import com.freemud.sdk.api.assortment.shoppingcart.request.CheckCartRequest;
import com.freemud.sdk.api.assortment.shoppingcart.service.ShoppingCartBaseService; import com.freemud.sdk.api.assortment.shoppingcart.service.ShoppingCartBaseService;
import com.freemud.sdk.api.assortment.shoppingcart.service.impl.ShoppingCartBaseServiceImpl; import com.freemud.sdk.api.assortment.shoppingcart.service.impl.ShoppingCartBaseServiceImpl;
import com.freemud.sdk.api.assortment.shoppingcart.util.ShoppingSdkLogUtil;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import javafx.util.Pair; import javafx.util.Pair;
import ma.glasnost.orika.MapperFacade; import ma.glasnost.orika.MapperFacade;
...@@ -384,8 +383,9 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -384,8 +383,9 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
, new ArrayList<>() //券 , new ArrayList<>() //券
, null //加价购商品 , null //加价购商品
, deliveryAmount , deliveryAmount
, null,bizType,new DiscountSharingDto(), accountFlag); , null,bizType, accountFlag,new DiscountSharingDto());
//更新购物车券状态
newCalculationUpdateCouponStatus(userId, partnerId, storeId, bizType, cartGoods, allCartGoodsList, discountResult);
sharingCartService.distribute(discountResult sharingCartService.distribute(discountResult
, allCartGoodsList , allCartGoodsList
, shoppingCartGoodsResponseVo , shoppingCartGoodsResponseVo
...@@ -542,11 +542,13 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -542,11 +542,13 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
, new ArrayList() //券 , new ArrayList() //券
, null //加价购商品 , null //加价购商品
, deliveryAmount , deliveryAmount
, null,bizType,new DiscountSharingDto(), accountFlag); , null,bizType, accountFlag,new DiscountSharingDto());
//校验加购数量 //校验加购数量
if (discountResult != null) { if (discountResult != null) {
sendGoodsQtyCheckForUpdate(cartGoodsList, oldQty, appId, partnerId, userId, storeId, cartGoodsUid, "", shoppingCartBaseService, discountResult.getSendGoods(),bizType); sendGoodsQtyCheckForUpdate(cartGoodsList, oldQty, appId, partnerId, userId, storeId, cartGoodsUid, "", shoppingCartBaseService, discountResult.getSendGoods(),bizType);
} }
newCalculationUpdateCouponStatus(userId, partnerId, storeId, bizType, cartGoods, cartGoodsList, discountResult);
sharingCartService.distribute(discountResult sharingCartService.distribute(discountResult
, cartGoodsList , cartGoodsList
, shoppingCartGoodsResponseVo , shoppingCartGoodsResponseVo
...@@ -781,7 +783,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -781,7 +783,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
, sendGoods , sendGoods
, deliveryAmount , deliveryAmount
, null , null
,bizType,new DiscountSharingDto(), accountFlag); ,bizType, accountFlag,new DiscountSharingDto());
sharingCartService.distribute(calculationSharingDiscountResult sharingCartService.distribute(calculationSharingDiscountResult
, cartGoodsList , cartGoodsList
, shoppingCartGoodsResponseVo , shoppingCartGoodsResponseVo
...@@ -1160,7 +1162,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -1160,7 +1162,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
, coupons , coupons
, shoppingCartInfoRequestVo.getSendGoods() , shoppingCartInfoRequestVo.getSendGoods()
, deliveryAmount , deliveryAmount
, shoppingCartInfoRequestVo,bizType,new DiscountSharingDto(), accountFlag); , shoppingCartInfoRequestVo,bizType, accountFlag,new DiscountSharingDto());
// 活动校验 // 活动校验
calculationSharingValidatorService.validator(discountResult calculationSharingValidatorService.validator(discountResult
...@@ -3072,7 +3074,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -3072,7 +3074,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
, coupons //券 , coupons //券
, null //加价购商品 , null //加价购商品
, 0L , 0L
, null,bizType,new DiscountSharingDto(), accountFlag); , null,bizType, accountFlag,new DiscountSharingDto());
premiumExchangeResponseVo = activityAdapter.convert2PremiumExchangeSharing(discountResult); premiumExchangeResponseVo = activityAdapter.convert2PremiumExchangeSharing(discountResult);
} else { } else {
...@@ -3241,7 +3243,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -3241,7 +3243,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
, new ArrayList<>() //券 , new ArrayList<>() //券
, null //加价购商品 , null //加价购商品
, deliveryAmount , deliveryAmount
, null,bizType,sharingDto, accountFlag); , null,bizType, accountFlag,sharingDto);
couponAvailableCartInfo = activityAdapter.convert2CouponAvailableCartInfoSharing(partnerId, storeId, discountResult, orgCodes); couponAvailableCartInfo = activityAdapter.convert2CouponAvailableCartInfoSharing(partnerId, storeId, discountResult, orgCodes);
} else { } else {
......
...@@ -3,7 +3,6 @@ package cn.freemud.service.impl.calculate; ...@@ -3,7 +3,6 @@ package cn.freemud.service.impl.calculate;
import cn.freemud.constant.ResponseCodeConstant; import cn.freemud.constant.ResponseCodeConstant;
import cn.freemud.entities.dto.CheckSpqInfoRequestDto; import cn.freemud.entities.dto.CheckSpqInfoRequestDto;
import cn.freemud.entities.dto.CheckSpqInfoResponseDto; import cn.freemud.entities.dto.CheckSpqInfoResponseDto;
import cn.freemud.entities.dto.activity.DiscountSharingDto;
import cn.freemud.entities.dto.calculate.ActivityCalculationDiscountRequestDto; import cn.freemud.entities.dto.calculate.ActivityCalculationDiscountRequestDto;
import cn.freemud.entities.dto.calculate.ActivityCalculationDiscountResponseDto; import cn.freemud.entities.dto.calculate.ActivityCalculationDiscountResponseDto;
import cn.freemud.entities.dto.shoppingCart.SendPoint; import cn.freemud.entities.dto.shoppingCart.SendPoint;
...@@ -22,6 +21,7 @@ import cn.freemud.service.active.ActiveService; ...@@ -22,6 +21,7 @@ import cn.freemud.service.active.ActiveService;
import cn.freemud.service.impl.AssortmentSdkService; import cn.freemud.service.impl.AssortmentSdkService;
import cn.freemud.service.thirdparty.ActivityClient; import cn.freemud.service.thirdparty.ActivityClient;
import cn.freemud.utils.PropertyConvertUtil; import cn.freemud.utils.PropertyConvertUtil;
import cn.freemud.entities.dto.activity.DiscountSharingDto;
import com.freemud.sdk.api.assortment.shoppingcart.constant.CommonsConstant; import com.freemud.sdk.api.assortment.shoppingcart.constant.CommonsConstant;
import com.freemud.sdk.api.assortment.shoppingcart.enums.BusinessTypeEnum; import com.freemud.sdk.api.assortment.shoppingcart.enums.BusinessTypeEnum;
import com.freemud.sdk.api.assortment.shoppingcart.service.impl.ShoppingCartBaseServiceImpl; import com.freemud.sdk.api.assortment.shoppingcart.service.impl.ShoppingCartBaseServiceImpl;
...@@ -82,7 +82,7 @@ public class CalculationSharingDiscountService { ...@@ -82,7 +82,7 @@ public class CalculationSharingDiscountService {
, List<ActivityCalculationDiscountRequestDto.CalculationDiscountCoupon> coupons , List<ActivityCalculationDiscountRequestDto.CalculationDiscountCoupon> coupons
, List<ShoppingCartInfoRequestVo.SendGoods> sendGoodsList , List<ShoppingCartInfoRequestVo.SendGoods> sendGoodsList
, Long deliveryAmount , Long deliveryAmount
, ShoppingCartInfoRequestVo shoppingCartInfoRequestVo,Integer bizType,DiscountSharingDto sharingDto,Integer accountFlag ) { , ShoppingCartInfoRequestVo shoppingCartInfoRequestVo,Integer bizType, Integer accountFlag, DiscountSharingDto sharingDto) {
ActivityCalculationDiscountRequestDto calculationSharingDiscountRequestDto = this.commonSharingDto(partnerId, storeId, userId, appId, orderType); ActivityCalculationDiscountRequestDto calculationSharingDiscountRequestDto = this.commonSharingDto(partnerId, storeId, userId, appId, orderType);
......
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