Commit f88982cd by 周晓航

Merge branch 'master' of gitlab.freemud.com:order-group-application/order-group…

Merge branch 'master' of gitlab.freemud.com:order-group-application/order-group into feature/修复微信模板推送字数限制
parents 888ceba8 d766fdf6
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>assortment-ordercenter-sdk</artifactId> <artifactId>assortment-ordercenter-sdk</artifactId>
<version>2.1.40-RELEASE</version> <version>2.1.44-RELEASE</version>
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
...@@ -38,7 +38,7 @@ ...@@ -38,7 +38,7 @@
<dependency> <dependency>
<groupId>cn.freemud</groupId> <groupId>cn.freemud</groupId>
<artifactId>ordercenter-sdk</artifactId> <artifactId>ordercenter-sdk</artifactId>
<version>1.3.42.RELEASE</version> <version>1.3.43.RELEASE</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.freemud.application.service.sdk</groupId> <groupId>com.freemud.application.service.sdk</groupId>
......
...@@ -116,4 +116,6 @@ ...@@ -116,4 +116,6 @@
| 2.1.37-RELEASE | 订单满赠优惠 | 张志恒 | 2021-03-11 | | 2.1.37-RELEASE | 订单满赠优惠 | 张志恒 | 2021-03-11 |
| 2.1.38-RELEASE | 外卖配送自动流转 | 张志恒 | 2021-03-11 | | 2.1.38-RELEASE | 外卖配送自动流转 | 张志恒 | 2021-03-11 |
| 2.1.39-RELEASE | 美业 | 刘鹏飞 | 2021-03-12 | | 2.1.39-RELEASE | 美业 | 刘鹏飞 | 2021-03-12 |
| 2.1.40-RELEASE | 三方展示活动信息 | 张志恒 | 2021-03-22 | | 2.1.40-RELEASE | 三方展示活动信息 | 张志恒 | 2021-03-22 |
\ No newline at end of file | 2.1.41-RELEASE | 小助手刷卡支付下单 | 王航航 | 2021-03-31 |
| 2.1.44-RELEASE | 外卖渠道新增美团聚宝盆 | 伍平 | 2021-04-06 |
\ No newline at end of file
...@@ -33,7 +33,7 @@ public enum OrderSourceType { ...@@ -33,7 +33,7 @@ public enum OrderSourceType {
BDWM("bdwm", "百度外卖", 16), BDWM("bdwm", "百度外卖", 16),
IPINTUAN("ipintuan", "i拼团", 18), IPINTUAN("ipintuan", "i拼团", 18),
MEAL("meal", "i围餐", 19), MEAL("meal", "i围餐", 19),
JUBAOPEN("jbp", "美团聚宝盆", 20), JUBAOPEN("mtjbp", "美团聚宝盆", 20),
DIANPING("dp", "美团点评", 21), DIANPING("dp", "美团点评", 21),
KOUBEI("koubeiwaimai", "口碑外卖", 22), KOUBEI("koubeiwaimai", "口碑外卖", 22),
MALL("mall", "非码Mall", 23), MALL("mall", "非码Mall", 23),
...@@ -43,10 +43,10 @@ public enum OrderSourceType { ...@@ -43,10 +43,10 @@ public enum OrderSourceType {
Y_POS("ypos", "非码云POS", 26), Y_POS("ypos", "非码云POS", 26),
TIKTOKPAY("tiktokpay","抖音支付", 27), TIKTOKPAY("tiktokpay","抖音支付", 27),
BEAUTIFUL("beautiful","美业", 28), BEAUTIFUL("beautiful","美业", 28),
ASSISTANT("assistant","非码小助手", 29),
parkingmanual("parkingmanual", "农工商停车手工录单", 98), parkingmanual("parkingmanual", "农工商停车手工录单", 98),
PARKING("parking", "农工商停车", 99), PARKING("parking", "农工商停车", 99),
SDG("sdg", "闪电购", 1000); SDG("sdg", "闪电购", 1000);
private String code; private String code;
private String desc; private String desc;
private Integer clientType; private Integer clientType;
......
...@@ -1898,7 +1898,7 @@ public class OrderCenterSdkServiceImpl implements OrderCenterSdkService { ...@@ -1898,7 +1898,7 @@ public class OrderCenterSdkServiceImpl implements OrderCenterSdkService {
} }
//预约单 //预约单
if(OrderType.RESERVED_EXPRESS.equals(baseQueryOrderRequest.getOrderType()) if(OrderType.RESERVED_EXPRESS.equals(baseQueryOrderRequest.getOrderType())
&& configuration.getDeliveryProcessingBeforeMinute()>0){ && configuration.getDeliveryProcessingBeforeMinute() != null && configuration.getDeliveryProcessingBeforeMinute()>0){
timeout = QueryDeliveryType.SELF.getCode().equals(baseQueryOrderRequest.getDeliveryType()) timeout = QueryDeliveryType.SELF.getCode().equals(baseQueryOrderRequest.getDeliveryType())
//? AutoOrderConfigTime.getTime(configuration.getDeliveryProcessingBeforeMinute().toString()) //? AutoOrderConfigTime.getTime(configuration.getDeliveryProcessingBeforeMinute().toString())
? configuration.getDeliveryProcessingBeforeMinute() ? configuration.getDeliveryProcessingBeforeMinute()
......
...@@ -46,7 +46,7 @@ ...@@ -46,7 +46,7 @@
<dependency> <dependency>
<groupId>cn.freemud</groupId> <groupId>cn.freemud</groupId>
<artifactId>assortment-ordercenter-sdk</artifactId> <artifactId>assortment-ordercenter-sdk</artifactId>
<version>2.1.40-RELEASE</version> <version>2.1.44-RELEASE</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.freemud.application.service.sdk</groupId> <groupId>com.freemud.application.service.sdk</groupId>
......
...@@ -15,6 +15,7 @@ package cn.freemud.adapter; ...@@ -15,6 +15,7 @@ package cn.freemud.adapter;
import cn.freemud.base.log.LogTreadLocal; import cn.freemud.base.log.LogTreadLocal;
import cn.freemud.base.util.DateUtil; import cn.freemud.base.util.DateUtil;
import cn.freemud.constant.CustomerScoreConstant; import cn.freemud.constant.CustomerScoreConstant;
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;
...@@ -48,9 +49,11 @@ import com.alibaba.fastjson.JSON; ...@@ -48,9 +49,11 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference; import com.alibaba.fastjson.TypeReference;
import com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformPartnerConfig;
import com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformPartnerWxappConfig; import com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformPartnerWxappConfig;
import com.freemud.api.assortment.datamanager.entity.vo.AssortmentCustomerInfoVo; 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.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.ordercenter.entities.PayItem; import com.freemud.application.sdk.api.ordercenter.entities.PayItem;
...@@ -128,6 +131,10 @@ public class OrderAdapter { ...@@ -128,6 +131,10 @@ public class OrderAdapter {
private String withOrderBuyCardId; private String withOrderBuyCardId;
@Value("${mccafe.universal.coupon.code}") @Value("${mccafe.universal.coupon.code}")
private String withOrderBuyCouponCode; private String withOrderBuyCouponCode;
@Value("${pay.turnoff.refund}")
private String payTurnoffRefund = "0";
@Value("${pay.turnoff.refund.partnerId}")
private String payTurnoffRefundPartnerId = "0";
/** /**
* coco商户 * coco商户
...@@ -159,11 +166,14 @@ public class OrderAdapter { ...@@ -159,11 +166,14 @@ public class OrderAdapter {
@Autowired @Autowired
private OrderSdkAdapter orderSdkAdapter; private OrderSdkAdapter orderSdkAdapter;
/** @Autowired
* @param createOrderVo private AssortmentOpenPlatformPartnerConfigManager assortmentOpenPlatformPartnerConfigManager;
* @param shoppingCartGoodsDto
* @return /**
*/ * @param createOrderVo
* @param shoppingCartGoodsDto
* @return
*/
public BaseCreateOrderRequest convent2CreateOrderDto(CreateOrderVo createOrderVo, ShoppingCartGoodsDto shoppingCartGoodsDto,StoreResponse.BizVO storeResponseDto) { public BaseCreateOrderRequest convent2CreateOrderDto(CreateOrderVo createOrderVo, ShoppingCartGoodsDto shoppingCartGoodsDto,StoreResponse.BizVO storeResponseDto) {
// UserDeliveryInfoDto deliveryInfoDto = createOrderVo.getUserDeliveryInfoDto(); // UserDeliveryInfoDto deliveryInfoDto = createOrderVo.getUserDeliveryInfoDto();
BaseCreateOrderRequest createOrderDto = getCreateOrderDto(createOrderVo); BaseCreateOrderRequest createOrderDto = getCreateOrderDto(createOrderVo);
...@@ -1419,6 +1429,7 @@ public class OrderAdapter { ...@@ -1419,6 +1429,7 @@ public class OrderAdapter {
responseVo.setProgress(ordersBean.getProgress()); responseVo.setProgress(ordersBean.getProgress());
responseVo.setQueueIndex(ordersBean.getQueueIndex()); responseVo.setQueueIndex(ordersBean.getQueueIndex());
responseVo.setOrderProgressBarStatus(ordersBean.getOrderProgressBarStatus()); responseVo.setOrderProgressBarStatus(ordersBean.getOrderProgressBarStatus());
responseVo.setPayTurnoffRefund(getPayTurnoffRefund());
list.add(responseVo); list.add(responseVo);
}); });
return list; return list;
...@@ -4115,4 +4126,19 @@ public class OrderAdapter { ...@@ -4115,4 +4126,19 @@ public class OrderAdapter {
} }
return "下单成功"; return "下单成功";
} }
/**
* 获取是否支持订单退款
*/
public String getPayTurnoffRefund(){
try {
AssortmentOpenPlatformPartnerConfig assortmentOpenPlatformPartnerConfig = assortmentOpenPlatformPartnerConfigManager.selectPartnerConfigByPartnerKey(payTurnoffRefundPartnerId,RedisKeyConstant.PARTNER_PAY_TURNOFF_REFUND,1);
if (null != assortmentOpenPlatformPartnerConfig) {
payTurnoffRefund = assortmentOpenPlatformPartnerConfig.getPartnerValue();
}
}catch (Exception e){
log.error("getPayTurnoffRefund error:{}", e.getMessage());
}
return payTurnoffRefund;
}
} }
...@@ -69,6 +69,16 @@ public class RedisKeyConstant { ...@@ -69,6 +69,16 @@ public class RedisKeyConstant {
*/ */
public final static String KGD_SENDPOINT_ORDERID = "kgd:sendpoint:orderid:"; public final static String KGD_SENDPOINT_ORDERID = "kgd:sendpoint:orderid:";
/**
* 支付是否可以退款前缀
*/
public final static String SAAS_ORDER_PAYMENT_PARTNERKEY_ = "saas:order:payment:partnerkey_";
/**
* 支付是否可以退款后缀
*/
public final static String PARTNER_PAY_TURNOFF_REFUND = "partner_pay_turnoff_refund";
private final static String REDIS_KEY_SEP = ":"; private final static String REDIS_KEY_SEP = ":";
......
...@@ -82,12 +82,18 @@ public class OrderRiderResponseVo { ...@@ -82,12 +82,18 @@ public class OrderRiderResponseVo {
/** /**
* 骑手姓名 * 骑手姓名
*/ */
private String RiderName; private String riderName;
/** /**
* 骑手电话 * 骑手电话
*/ */
private String RiderPhone; private String riderPhone;
/**
* 配送类型 1自配送(三方渠道配送、商家店员配送) 2平台配送
*/
private Integer expressType;
@Data @Data
public static class Operation{ public static class Operation{
private String createTime; private String createTime;
......
...@@ -167,6 +167,11 @@ public class QueryOrderResponseVo { ...@@ -167,6 +167,11 @@ public class QueryOrderResponseVo {
* 是否展示进度条 * 是否展示进度条
*/ */
private Integer orderProgressBarStatus ; private Integer orderProgressBarStatus ;
/**
* 是否支持退款
*/
private String payTurnoffRefund ;
/** /**
* 申请退款按钮 * 申请退款按钮
*/ */
......
...@@ -924,6 +924,19 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService { ...@@ -924,6 +924,19 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
// TODO 记录一下冻结失败的券 // TODO 记录一下冻结失败的券
} }
} }
//调用基础服务生成第三方订单号
String downstreamThirdOrderCode = "";
if(OldOrderType.TAKE_OUT.getCode().equals(orderBean.getType())) {
//调用基础订单接口更新信息
UpdateDownstreamOrderCodeReq updateDownstreamOrderCodeReq = new UpdateDownstreamOrderCodeReq();
updateDownstreamOrderCodeReq.setOrderCode(orderBean.getOid());
com.freemud.application.sdk.api.ordercenter.response.BaseResponse baseResponse = orderSdkService.updateDownstreamThirdOrderCode(updateDownstreamOrderCodeReq, LogThreadLocal.getTrackingNo());
LinkedHashMap<String, String> linkedHashMap = (LinkedHashMap) baseResponse.getResult();
downstreamThirdOrderCode = linkedHashMap.get("downstreamThirdOrderCode");
}
// 订单失败后 发消息重试 待实现 // 订单失败后 发消息重试 待实现
String takeCode; String takeCode;
String daySeq; String daySeq;
...@@ -950,18 +963,6 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService { ...@@ -950,18 +963,6 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
// 订单支付成功 // 订单支付成功
com.freemud.sdk.api.assortment.order.response.order.PayAccessResponse payAccessRes = orderCenterSdkService.payAccessMCCafe(var1); com.freemud.sdk.api.assortment.order.response.order.PayAccessResponse payAccessRes = orderCenterSdkService.payAccessMCCafe(var1);
//调用基础服务生成第三方订单号
String downstreamThirdOrderCode = "";
if(OldOrderType.TAKE_OUT.getCode().equals(orderBean.getType())) {
//调用基础订单接口更新信息
UpdateDownstreamOrderCodeReq updateDownstreamOrderCodeReq = new UpdateDownstreamOrderCodeReq();
updateDownstreamOrderCodeReq.setOrderCode(orderBean.getOid());
com.freemud.application.sdk.api.ordercenter.response.BaseResponse baseResponse = orderSdkService.updateDownstreamThirdOrderCode(updateDownstreamOrderCodeReq, LogThreadLocal.getTrackingNo());
LinkedHashMap<String, String> linkedHashMap = (LinkedHashMap) baseResponse.getResult();
downstreamThirdOrderCode = linkedHashMap.get("downstreamThirdOrderCode");
}
String string2 = JSONObject.toJSONString(payAccessRes); String string2 = JSONObject.toJSONString(payAccessRes);
JSONObject jsonObject2 = JSONObject.parseObject(string2); JSONObject jsonObject2 = JSONObject.parseObject(string2);
payAccessResponse = jsonObject2.toJavaObject(PayAccessResponse.class); payAccessResponse = jsonObject2.toJavaObject(PayAccessResponse.class);
......
...@@ -590,7 +590,7 @@ public class OrderServiceImpl implements Orderservice { ...@@ -590,7 +590,7 @@ public class OrderServiceImpl implements Orderservice {
} }
//支付回掉成功标记 //支付回掉成功标记
redisCache.save(RedisKeyConstant.KGD_PAYMENT_CALLBACK_FMID + message.getOut_trade_no(), message.getOut_trade_no(), 10L, TimeUnit.MINUTES); redisCache.save(RedisKeyConstant.KGD_PAYMENT_CALLBACK_FMID + message.getOut_trade_no(), message.getOut_trade_no(), 10L, TimeUnit.MINUTES);
if (message.getSource().equals(PaySuccessSource.OUTSIDE.getSource())) { if (message.getSource() != null && message.getSource().equals(PaySuccessSource.OUTSIDE.getSource())) {
log.info("调用券码核销==" + message.getTrans_id()); log.info("调用券码核销==" + message.getTrans_id());
verificationCoupon(message.getTrans_id()); verificationCoupon(message.getTrans_id());
log.info("调用券码结束==" + message.getTrans_id()); log.info("调用券码结束==" + message.getTrans_id());
...@@ -1349,6 +1349,7 @@ public class OrderServiceImpl implements Orderservice { ...@@ -1349,6 +1349,7 @@ public class OrderServiceImpl implements Orderservice {
responseVo.setStorePhone(deliveryBaseResponse.getData().getStorePhone()); responseVo.setStorePhone(deliveryBaseResponse.getData().getStorePhone());
responseVo.setRiderName(deliveryBaseResponse.getData().getRiderName()); responseVo.setRiderName(deliveryBaseResponse.getData().getRiderName());
responseVo.setRiderPhone(deliveryBaseResponse.getData().getRiderPhone()); responseVo.setRiderPhone(deliveryBaseResponse.getData().getRiderPhone());
responseVo.setExpressType(orderBean.getExpressType());
if (deliveryBaseResponse.getData().getCurrentPoint() != null) { if (deliveryBaseResponse.getData().getCurrentPoint() != null) {
String[] currentPoint = deliveryBaseResponse.getData().getCurrentPoint().split(","); String[] currentPoint = deliveryBaseResponse.getData().getCurrentPoint().split(",");
responseVo.setRiderLongitude(currentPoint[0]); responseVo.setRiderLongitude(currentPoint[0]);
...@@ -1421,12 +1422,10 @@ public class OrderServiceImpl implements Orderservice { ...@@ -1421,12 +1422,10 @@ public class OrderServiceImpl implements Orderservice {
if (CollectionUtils.isNotEmpty(queryOrderResponseVo.getProducts())) { if (CollectionUtils.isNotEmpty(queryOrderResponseVo.getProducts())) {
// add by miaohui for 20210325_华莱士紧急上线需求支付有礼须支持套餐内固定可选商品_miaohui start // add by miaohui for 20210325_华莱士紧急上线需求支付有礼须支持套餐内固定可选商品_miaohui start
List<String> skuIds = queryOrderResponseVo.getProducts().stream().map(p -> p.getPid()).collect(Collectors.toList()); List<String> skuIds = queryOrderResponseVo.getProducts().stream().map(p -> p.getPid()).collect(Collectors.toList());
ApiLog.info("支付有礼hlsPartnerId套餐参与促销日志", hlsPartnerId, queryOrderResponseVo.getOid());
if (hlsPartnerId != null && hlsPartnerId.contains(partnerId)) { if (hlsPartnerId != null && hlsPartnerId.contains(partnerId)) {
// 华莱士获取支付有理促销数据时须将套餐商品内固定搭配、可选搭配商品的skuId一同传入 // 华莱士获取支付有理促销数据时须将套餐商品内固定搭配、可选搭配商品的skuId一同传入
queryOrderResponseVo.getProducts().forEach(productVo -> { queryOrderResponseVo.getProducts().forEach(productVo -> {
if (CollectionUtils.isNotEmpty(productVo.getSetMealProducts())) { if (CollectionUtils.isNotEmpty(productVo.getSetMealProducts())) {
ApiLog.info("支付有礼productVo.getSetMealProducts()套餐参与促销日志", productVo.getSetMealProducts(), queryOrderResponseVo.getOid());
productVo.getSetMealProducts().forEach(setMealProduct -> { productVo.getSetMealProducts().forEach(setMealProduct -> {
skuIds.add(setMealProduct.getPid()); skuIds.add(setMealProduct.getPid());
}); });
...@@ -3251,11 +3250,13 @@ public class OrderServiceImpl implements Orderservice { ...@@ -3251,11 +3250,13 @@ public class OrderServiceImpl implements Orderservice {
orderEditRequest.setPayChannelType(PayChannelType.getByEbcode(orderPayResponse.getPayMode()).getIndex()); orderEditRequest.setPayChannelType(PayChannelType.getByEbcode(orderPayResponse.getPayMode()).getIndex());
} }
//混合支付项 //混合支付项
if (CollectionUtils.isNotEmpty(orderPayResponse.getPayItem()) && orderPayResponse.getPayItem().size()==2) { if (CollectionUtils.isNotEmpty(orderPayResponse.getPayItem())) {
orderEditRequest.setOrderPayItem(orderPayResponse.getPayItem()); orderEditRequest.setOrderPayItem(orderPayResponse.getPayItem());
orderEditRequest.setPayChannel(PayChannelType.COMB.getEbcode()); if(orderPayResponse.getPayItem().size()==2){
orderEditRequest.setPayChannelName(PayChannelType.COMB.getName()); orderEditRequest.setPayChannel(PayChannelType.COMB.getEbcode());
orderEditRequest.setPayChannelType(PayChannelType.COMB.getIndex()); orderEditRequest.setPayChannelName(PayChannelType.COMB.getName());
orderEditRequest.setPayChannelType(PayChannelType.COMB.getIndex());
}
} }
BaseOrderResponse baseOrderResponse = orderCenterSdkService.orderEdit(orderEditRequest); BaseOrderResponse baseOrderResponse = orderCenterSdkService.orderEdit(orderEditRequest);
if (!ObjectUtils.equals(ResponseCodeConstant.RESPONSE_SUCCESS, baseOrderResponse.getErrcode())) { if (!ObjectUtils.equals(ResponseCodeConstant.RESPONSE_SUCCESS, baseOrderResponse.getErrcode())) {
...@@ -3798,7 +3799,7 @@ public class OrderServiceImpl implements Orderservice { ...@@ -3798,7 +3799,7 @@ public class OrderServiceImpl implements Orderservice {
String ebCode = this.getPayCodeByChanel(paymentRequest.getWxAppId(), channel, storeId); String ebCode = this.getPayCodeByChanel(paymentRequest.getWxAppId(), channel, storeId);
OrderPayResponse orderPayResponse = new OrderPayResponse(); OrderPayResponse orderPayResponse = new OrderPayResponse();
;
if (StringUtils.isBlank(ebCode)) { if (StringUtils.isBlank(ebCode)) {
orderPayResponse.setMsg("请先联系相关人员配置商户对应的支付渠道"); orderPayResponse.setMsg("请先联系相关人员配置商户对应的支付渠道");
return orderPayResponse; return orderPayResponse;
...@@ -3979,6 +3980,7 @@ public class OrderServiceImpl implements Orderservice { ...@@ -3979,6 +3980,7 @@ public class OrderServiceImpl implements Orderservice {
log.info("payment timeout callback for refund orderDto={}", JSON.toJSONString(orderBean)); log.info("payment timeout callback for refund orderDto={}", JSON.toJSONString(orderBean));
Integer abState = 4; Integer abState = 4;
String noPay = "8200404"; String noPay = "8200404";
//4 表示订单已经退款了
if (abState.equals(orderBean.getAbnormalState())) { if (abState.equals(orderBean.getAbnormalState())) {
log.info("payment timeout callback for refund is exist"); log.info("payment timeout callback for refund is exist");
return; return;
...@@ -4007,7 +4009,7 @@ public class OrderServiceImpl implements Orderservice { ...@@ -4007,7 +4009,7 @@ public class OrderServiceImpl implements Orderservice {
sdkUpdateAbnormalState.setAbnormalDesc(desc + ",退款失败"); sdkUpdateAbnormalState.setAbnormalDesc(desc + ",退款失败");
} }
sdkUpdateAbnormalState.setPartnerId(orderBean.getCompanyId()); sdkUpdateAbnormalState.setPartnerId(orderBean.getCompanyId());
sdkUpdateAbnormalState.setAbnormalState(4); sdkUpdateAbnormalState.setAbnormalState(4);//
sdkUpdateAbnormalState.setOrderCode(orderBean.getOid()); sdkUpdateAbnormalState.setOrderCode(orderBean.getOid());
orderSdkService.updateAbnormalState(sdkUpdateAbnormalState); orderSdkService.updateAbnormalState(sdkUpdateAbnormalState);
} }
......
package cn.freemud.service.impl; package cn.freemud.service.impl;
import cn.freemud.constant.RedisKeyConstant;
import cn.freemud.entities.vo.CreateOrderVo; import cn.freemud.entities.vo.CreateOrderVo;
import cn.freemud.management.entities.dto.request.order.OrderManagerRequest; import cn.freemud.management.entities.dto.request.order.OrderManagerRequest;
import cn.freemud.management.service.adapter.OrderManagerAdapter; import cn.freemud.management.service.adapter.OrderManagerAdapter;
import cn.freemud.management.thirdparty.MulitiPaymentClient; import cn.freemud.management.thirdparty.MulitiPaymentClient;
import cn.freemud.redis.RedisCache;
import cn.freemud.service.delivery.ThirdDeliveryServiceImpl; import cn.freemud.service.delivery.ThirdDeliveryServiceImpl;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformConfig;
import com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformPartnerConfig;
import com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformConfigManager;
import com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformPartnerConfigManager;
import com.freemud.application.sdk.api.ordercenter.request.OrderConditionsReq; import com.freemud.application.sdk.api.ordercenter.request.OrderConditionsReq;
import com.freemud.application.sdk.api.ordercenter.service.OrderDownLoadSdkService; import com.freemud.application.sdk.api.ordercenter.service.OrderDownLoadSdkService;
import com.freemud.sdk.api.assortment.order.request.order.MultiOrderRefundRequest; import com.freemud.sdk.api.assortment.order.request.order.MultiOrderRefundRequest;
import com.freemud.sdk.api.assortment.order.response.order.MultiOrderRefundResponse; import com.freemud.sdk.api.assortment.order.response.order.MultiOrderRefundResponse;
import org.apache.commons.lang.StringUtils;
import org.hibernate.validator.HibernateValidator; import org.hibernate.validator.HibernateValidator;
import org.hibernate.validator.HibernateValidatorConfiguration; import org.hibernate.validator.HibernateValidatorConfiguration;
import org.junit.Test; import org.junit.Test;
...@@ -37,7 +45,7 @@ import java.util.Set; ...@@ -37,7 +45,7 @@ import java.util.Set;
public class MallOrderServiceImplTest { public class MallOrderServiceImplTest {
@Autowired @Autowired
private ThirdDeliveryServiceImpl thirdDeliveryServiceImpl; private AssortmentOpenPlatformPartnerConfigManager assortmentOpenPlatformPartnerConfigManager;
// @Autowired // @Autowired
// private MallOrderServiceImpl mallOrderService; // private MallOrderServiceImpl mallOrderService;
...@@ -106,8 +114,15 @@ public class MallOrderServiceImplTest { ...@@ -106,8 +114,15 @@ public class MallOrderServiceImplTest {
@Test @Test
public void test() { public void test() {
thirdDeliveryServiceImpl.sendException("19828644895966012600001","异常单子测试","2021-01-22 00:00:00",""); String payTurnoffRefund = "0";
} try {
AssortmentOpenPlatformPartnerConfig assortmentOpenPlatformPartnerConfig = assortmentOpenPlatformPartnerConfigManager.selectPartnerConfigByPartnerKey("0",RedisKeyConstant.PARTNER_PAY_TURNOFF_REFUND,1);
if (null != assortmentOpenPlatformPartnerConfig) {
payTurnoffRefund = assortmentOpenPlatformPartnerConfig.getPartnerValue();
}
}catch (Exception e){
}
System.out.println(payTurnoffRefund);
}
} }
...@@ -65,7 +65,7 @@ ...@@ -65,7 +65,7 @@
<dependency> <dependency>
<groupId>cn.freemud</groupId> <groupId>cn.freemud</groupId>
<artifactId>assortment-ordercenter-sdk</artifactId> <artifactId>assortment-ordercenter-sdk</artifactId>
<version>2.1.40-RELEASE</version> <version>2.1.44-RELEASE</version>
<scope>provided</scope> <scope>provided</scope>
</dependency> </dependency>
<dependency> <dependency>
......
package cn.freemud.management.enums; package cn.freemud.management.enums;
public enum OrderSource { public enum OrderSource {
BDWM("bdwm", "百度外卖"), BDWM("bdwm", "百度外卖"),//16
JDWM("jdwm", "京东到家"), JDWM("jdwm", "京东到家"),//10
MTWM("mtwm", "美团外卖"), MTWM("mtwm", "美团外卖"),//11
SDG("sdg", "闪电购"), SDG("sdg", "闪电购"),
ELEME("eleme", "饿了么外卖"), ELEME("eleme", "饿了么外卖"),//8
FMWD("fmwd", "非码微店"), FMWD("fmwd", "非码微店"),//25
MALL("mall", "非码Mall"), MALL("mall", "非码Mall"),
SAAS("saas", "saas点餐"), SAAS("saas", "saas点餐"),
ALIPAY("alipay", "支付宝"), ALIPAY("alipay", "支付宝"),
EBAI("ebwm", "饿百外卖"), EBAI("ebwm", "饿百外卖"),//9
KOUBEI("koubeiwaimai", "口碑外卖"), KOUBEI("koubeiwaimai", "口碑外卖"),//22
DPZHCT("dpzhct", "美团点评智慧餐厅"); DPZHCT("dpzhct", "美团点评智慧餐厅");//24
private String source; private String source;
private String sourceName; private String sourceName;
......
...@@ -11,6 +11,8 @@ import org.springframework.beans.factory.annotation.Value; ...@@ -11,6 +11,8 @@ import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContext;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
/** /**
* 根据渠道获取渠道操作实体类 * 根据渠道获取渠道操作实体类
*/ */
...@@ -20,19 +22,26 @@ public class OrderBeanFactory { ...@@ -20,19 +22,26 @@ public class OrderBeanFactory {
@Value("${mccafe.partner.id}") @Value("${mccafe.partner.id}")
private String macCafePartnerId; private String macCafePartnerId;
@Value("#{'${o2o.orderClient}'.split(',')}")
private List<String> o2oOrderClients;
@Autowired @Autowired
private ApplicationContext applicationContext; private ApplicationContext applicationContext;
public OrderManagerService getOrderManagerService(QueryOrdersResponse.DataBean.OrderBean orderBean){ public OrderManagerService getOrderManagerService(QueryOrdersResponse.DataBean.OrderBean orderBean){
String source = orderBean.getSource(); // String source = orderBean.getSource();
String orderClient = orderBean.getOrderClient();
String companyId = orderBean.getCompanyId(); String companyId = orderBean.getCompanyId();
if (macCafePartnerId.equals(companyId)){ if (macCafePartnerId.equals(companyId)){
return applicationContext.getBean(McCafeMangerServiceImpl.class); return applicationContext.getBean(McCafeMangerServiceImpl.class);
} }
if (OrderSource.BDWM.getSource().equals(source) || OrderSource.JDWM.getSource().equals(source) // if (OrderSource.BDWM.getSource().equals(source) || OrderSource.JDWM.getSource().equals(source)
|| OrderSource.MTWM.getSource().equals(source) || OrderSource.ELEME.getSource().equals(source) // || OrderSource.MTWM.getSource().equals(source) || OrderSource.ELEME.getSource().equals(source)
|| OrderSource.FMWD.getSource().equals(source) || OrderSource.EBAI.getSource().equals(source) // || OrderSource.FMWD.getSource().equals(source) || OrderSource.EBAI.getSource().equals(source)
|| OrderSource.KOUBEI.getSource().equals(source) || OrderSource.DPZHCT.getSource().equals(source)){ // || OrderSource.KOUBEI.getSource().equals(source) || OrderSource.DPZHCT.getSource().equals(source)){
// return applicationContext.getBean(WaimaiOrderMangerServiceImpl.class);
// }
if (o2oOrderClients.contains(orderClient)){
return applicationContext.getBean(WaimaiOrderMangerServiceImpl.class); return applicationContext.getBean(WaimaiOrderMangerServiceImpl.class);
} }
return applicationContext.getBean(SaasOrderMangerServiceImpl.class); return applicationContext.getBean(SaasOrderMangerServiceImpl.class);
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<version>1.0.0</version> <version>1.0.0</version>
</parent> </parent>
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<version>1.3.42.RELEASE</version> <version>1.3.43.RELEASE</version>
<artifactId>ordercenter-sdk</artifactId> <artifactId>ordercenter-sdk</artifactId>
<dependencies> <dependencies>
......
...@@ -73,4 +73,5 @@ ...@@ -73,4 +73,5 @@
| 1.3.39.RELEASE | 订单满赠优惠 | 张志恒 | 2021-03-11 | | 1.3.39.RELEASE | 订单满赠优惠 | 张志恒 | 2021-03-11 |
| 1.3.40.RELEASE | 外卖配送自动流转 | 李小二 | 2021-03-11 | | 1.3.40.RELEASE | 外卖配送自动流转 | 李小二 | 2021-03-11 |
| 1.3.41.RELEASE | 美业 | 刘鹏飞 | 2021-03-12 | | 1.3.41.RELEASE | 美业 | 刘鹏飞 | 2021-03-12 |
| 1.3.42.RELEASE | 三方展示活动信息 | 张志恒 | 2021-03-22 | | 1.3.42.RELEASE | 三方展示活动信息 | 张志恒 | 2021-03-22 |
\ No newline at end of file | 1.3.43.RELEASE | 小助手刷卡支付 | 王航航 | 2021-03-31 |
\ No newline at end of file
...@@ -38,6 +38,7 @@ public enum OrderClientType { ...@@ -38,6 +38,7 @@ public enum OrderClientType {
FMWD(25, "非码微店"), FMWD(25, "非码微店"),
TIKTOKPAY(27, "抖音小程序"), TIKTOKPAY(27, "抖音小程序"),
BEAUTIFUL(28, "美业"), BEAUTIFUL(28, "美业"),
ASSISTANT(29, "非码小助手"),
PARKING(99 , "农工商停车"), PARKING(99 , "农工商停车"),
; ;
......
...@@ -16,21 +16,18 @@ import cn.freemud.aop.LogIgnore; ...@@ -16,21 +16,18 @@ import cn.freemud.aop.LogIgnore;
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.demo.controller.ShoppingCartDemoController; import cn.freemud.demo.controller.ShoppingCartDemoController;
import cn.freemud.demo.entities.dto.goods.add.AddGoodsRequestDTO;
import cn.freemud.entities.dto.GetMemberInfoRequestDto; import cn.freemud.entities.dto.GetMemberInfoRequestDto;
import cn.freemud.entities.vo.*; import cn.freemud.entities.vo.*;
import cn.freemud.entities.vo.coupon.CouponAvailableRequestVo;
import cn.freemud.enums.OrderChannelType; import cn.freemud.enums.OrderChannelType;
import cn.freemud.enums.ResponseResult; import cn.freemud.enums.ResponseResult;
import cn.freemud.service.OpenStoreIappWxappConfigService; import cn.freemud.service.OpenStoreIappWxappConfigService;
import cn.freemud.interceptor.ServiceException;
import cn.freemud.service.ShoppingCartNewService; import cn.freemud.service.ShoppingCartNewService;
import cn.freemud.service.impl.ShoppingCartMallServiceImpl; import cn.freemud.service.impl.ShoppingCartMallServiceImpl;
import cn.freemud.service.impl.ShoppingCartMealServiceImpl; import cn.freemud.service.impl.ShoppingCartMealServiceImpl;
import cn.freemud.service.impl.ShoppingCartNewServiceImpl; import cn.freemud.service.impl.ShoppingCartNewServiceImpl;
import cn.freemud.service.impl.ShoppingCartToolsServiceImpl; import cn.freemud.service.impl.ShoppingCartToolsServiceImpl;
import cn.freemud.utils.BeanUtil;
import cn.freemud.utils.ResponseUtil; import cn.freemud.utils.ResponseUtil;
import com.alibaba.fastjson.JSON;
import com.freemud.api.assortment.datamanager.entity.vo.AssortmentCustomerInfoVo; 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.customer.AssortmentCustomerInfoManager; import com.freemud.api.assortment.datamanager.manager.customer.AssortmentCustomerInfoManager;
...@@ -38,10 +35,9 @@ import com.freemud.application.sdk.api.base.SDKCommonBaseContextWare; ...@@ -38,10 +35,9 @@ import com.freemud.application.sdk.api.base.SDKCommonBaseContextWare;
import com.freemud.application.sdk.api.log.ApiAnnotation; import com.freemud.application.sdk.api.log.ApiAnnotation;
import com.freemud.application.sdk.api.log.LogParams; import com.freemud.application.sdk.api.log.LogParams;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import lombok.extern.slf4j.Slf4j;
import ma.glasnost.orika.MapperFacade; import ma.glasnost.orika.MapperFacade;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType; import org.springframework.http.MediaType;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
...@@ -245,7 +241,15 @@ public class ShoppingCartController { ...@@ -245,7 +241,15 @@ public class ShoppingCartController {
*/ */
@PostMapping(value = "/premiumExchange") @PostMapping(value = "/premiumExchange")
@LogIgnore(excludeStatusCodes = {ResponseCodeConstant.RESPONSE_SUCCESS_STR},logMessage = "/premiumExchange") @LogIgnore(excludeStatusCodes = {ResponseCodeConstant.RESPONSE_SUCCESS_STR},logMessage = "/premiumExchange")
public BaseResponse premiumExchange(@LogParams @RequestBody PremiumExchangeRequestVo request) { public BaseResponse premiumExchange(@LogParams @RequestBody @Validated PremiumExchangeRequestVo request) {
return SDKCommonBaseContextWare.getBean(ShoppingCartNewServiceImpl.class).premiumExchange(request); return SDKCommonBaseContextWare.getBean(ShoppingCartNewServiceImpl.class).premiumExchange(request);
} }
/**
* 券码查询购物车商品信息(平台结算页可用券列表用)
*/
@PostMapping(value = "/getCartInfoByUser")
@LogIgnore(excludeStatusCodes = {ResponseCodeConstant.RESPONSE_SUCCESS_STR},logMessage = "/getCartInfoByUser")
public BaseResponse getCartInfoByUser(@LogParams @RequestBody @Validated CouponAvailableRequestVo request) {
return SDKCommonBaseContextWare.getBean(ShoppingCartNewServiceImpl.class).getCartInfoByUser(request);
}
} }
...@@ -12,15 +12,15 @@ public class PremiumExchangeRequestVo { ...@@ -12,15 +12,15 @@ public class PremiumExchangeRequestVo {
@ApiModelProperty(value="版本号", name="version", example="1", required = false) @ApiModelProperty(value="版本号", name="version", example="1", required = false)
private String version; private String version;
@NotEmpty(message = "partnerId不能为空") @NotNull(message = "partnerId不能为空")
@ApiModelProperty(value="商户号", name="partnerId", example="1864", required = true) @ApiModelProperty(value="商户号", name="partnerId", example="1864", required = true)
private String partnerId; private String partnerId;
@NotEmpty(message = "shopId不能为空") @NotNull(message = "shopId不能为空")
@ApiModelProperty(value="门店ID", name="shopId", example="007", required = true) @ApiModelProperty(value="门店ID", name="shopId", example="007", required = true)
private String shopId; private String shopId;
@NotEmpty(message = "用户会话sessionId不能为空") @NotNull(message = "用户会话sessionId不能为空")
@ApiModelProperty(value="sessionId", name="sessionId", example="1234", required = true) @ApiModelProperty(value="sessionId", name="sessionId", example="1234", required = true)
private String sessionId; private String sessionId;
......
package cn.freemud.entities.vo.coupon;
import lombok.Data;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: cn.freemud.entities.vo.coupon Product
* @Description: TDO 描述....
* @author: family
* @date: 2020/6/30
* @Copyright: www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Data
public class CartProduct {
/**
* 商品id
*/
private String productId;
/**
* 总原价金额(包括主商品+可选搭配+加料商品)
*/
private Long originalTotalAmount;
/**
* 总实付金额(包括主商品+可选搭配+加料商品)
*/
private Long realAmount;
//总优惠金额(不包括赠品优惠金额和套餐优惠金额)
private Long discountAmount;
/**
* 主商品数量
*/
private Integer quantity;
//使用的商品券号
private String couponCode;
}
package cn.freemud.entities.vo.coupon;
import cn.freemud.entities.vo.CartGoods;
import lombok.Data;
import java.util.List;
/**
* All rights Reserved, Designed By sunary.site
*
* @version v1.0
* @Title: IntelliJ IDEA
* @Package cn.freemud.service.impl.mcoffee.entity
* @Description: 请简单描述下这个类是做什么用的
* @author: yu.sun
* @date: 2020-10-26 13:59:32
* @Copyright: 2019 www.freemud.cn Inc. All rights reserved.
*/
@Data
public class CouponAvailableCartInfo {
//渠道id
private String providerId;
//商户号
private String merchantId;
//门店id(校验门店限制)
private String storeId;
//组织机构id列表(校验渠道限制)
private List<String> channelIdList;
//组织机构code列表(校验渠道限制)
private List<String> channelCodeList;
//已使用券列表
private List<String> couponCodes;
/**
* 总原价金额(包括主商品+可选搭配+加料商品)
*/
private Long originalTotalAmount;
/**
* 总实付金额(包括主商品+可选搭配+加料商品)
*/
private Long realAmount;
//总优惠金额(不包括赠品优惠金额和套餐优惠金额)
private Long discountAmount;
//购物车商品列表
private List<CartProduct> productList;
}
package cn.freemud.entities.vo.coupon;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0
* @Title: QueryCartInfoRequestVo
* @Package cn.freemud.entities.vo
* @Description: 简单描述下这个类是做什么用的
* @author: yu.sun
* @date: 2020/9/11 10:35
* @Copyright: 2020 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Data
public class CouponAvailableRequestVo {
@NotNull(message = "门店id不可为空")
private String storeId;
@ApiModelProperty(value = "sessionId",required = true)
@NotNull(message = "用户sessionId不可为空")
private String sessionId;
@ApiModelProperty(value = "menuType",notes = "菜单类型 saas(开个店自提)、saasdelivery(开个店外卖)",required = true)
@NotNull(message ="菜单类型不可为空")
private String menuType ;
@ApiModelProperty(value = "订单类型 1到店自取 2外卖")
@NotNull(message = "订单类型不可为空")
private Integer orderType;
@ApiModelProperty(value = "收货地址id",notes = "svc卡支付外卖订单必传")
private String receiveId;
}
\ No newline at end of file
...@@ -34,6 +34,7 @@ public enum ActivityTypeEnum { ...@@ -34,6 +34,7 @@ public enum ActivityTypeEnum {
TYPE_3(3, "代金券"), TYPE_3(3, "代金券"),
TYPE_31(31, "折扣券"), TYPE_31(31, "折扣券"),
TYPE_32(32, "商品券"), TYPE_32(32, "商品券"),
TYPE_33(33, "换购券"),
TYPE_37(37, "月享卡种子券"), TYPE_37(37, "月享卡种子券"),
TYPE_5(5, "整单满金额折"), TYPE_5(5, "整单满金额折"),
TYPE_51(51, "每满金额折"), TYPE_51(51, "每满金额折"),
...@@ -57,6 +58,7 @@ public enum ActivityTypeEnum { ...@@ -57,6 +58,7 @@ public enum ActivityTypeEnum {
TYPE_200(200, "X元Y件"), TYPE_200(200, "X元Y件"),
TYPE_PACKAGE(900, "包装费"), TYPE_PACKAGE(900, "包装费"),
TYPE_DELIVERY(901, "配送费"), TYPE_DELIVERY(901, "配送费"),
TYPE_310(310, "套餐活动优惠"),
TYPE_320(320, "会员价商品优惠"), TYPE_320(320, "会员价商品优惠"),
TYPE_221(221, "集点"); TYPE_221(221, "集点");
......
...@@ -36,6 +36,8 @@ import cn.freemud.entities.dto.user.GetSessionUserInfoDto; ...@@ -36,6 +36,8 @@ import cn.freemud.entities.dto.user.GetSessionUserInfoDto;
import cn.freemud.entities.dto.user.GetUserScoreUseDetailRequest; import cn.freemud.entities.dto.user.GetUserScoreUseDetailRequest;
import cn.freemud.entities.dto.user.GetUserScoreUserDetailResponse; import cn.freemud.entities.dto.user.GetUserScoreUserDetailResponse;
import cn.freemud.entities.vo.*; import cn.freemud.entities.vo.*;
import cn.freemud.entities.vo.coupon.CouponAvailableCartInfo;
import cn.freemud.entities.vo.coupon.CouponAvailableRequestVo;
import cn.freemud.enums.*; import cn.freemud.enums.*;
import cn.freemud.interceptor.BizServiceException; import cn.freemud.interceptor.BizServiceException;
import cn.freemud.interceptor.ServiceException; import cn.freemud.interceptor.ServiceException;
...@@ -55,7 +57,6 @@ import com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformPa ...@@ -55,7 +57,6 @@ import com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformPa
import com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformPartnerStoreDeliveryConfigManager; import com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformPartnerStoreDeliveryConfigManager;
import com.freemud.api.assortment.datamanager.manager.customer.AssortmentCustomerInfoManager; import com.freemud.api.assortment.datamanager.manager.customer.AssortmentCustomerInfoManager;
import com.freemud.application.sdk.api.base.SDKCommonBaseContextWare; import com.freemud.application.sdk.api.base.SDKCommonBaseContextWare;
import com.freemud.application.sdk.api.constant.FMStatusCode;
import com.freemud.application.sdk.api.log.ApiLog; import com.freemud.application.sdk.api.log.ApiLog;
import com.freemud.application.sdk.api.log.ErrorLog; import com.freemud.application.sdk.api.log.ErrorLog;
import com.freemud.application.sdk.api.log.LogThreadLocal; import com.freemud.application.sdk.api.log.LogThreadLocal;
...@@ -81,11 +82,9 @@ import com.freemud.sdk.api.assortment.shoppingcart.service.ShoppingCartBaseServi ...@@ -81,11 +82,9 @@ import com.freemud.sdk.api.assortment.shoppingcart.service.ShoppingCartBaseServi
import com.freemud.sdk.api.assortment.shoppingcart.service.impl.ShoppingCartBaseServiceImpl; import com.freemud.sdk.api.assortment.shoppingcart.service.impl.ShoppingCartBaseServiceImpl;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import javafx.util.Pair; import javafx.util.Pair;
import javafx.util.Pair;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import ma.glasnost.orika.MapperFacade; import ma.glasnost.orika.MapperFacade;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
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;
...@@ -2863,4 +2862,47 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -2863,4 +2862,47 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
} }
} }
} }
/**
* 券码查询购物车商品信息(平台用)
* @param requestVo
* @return
*/
public BaseResponse<CouponAvailableCartInfo> getCartInfoByUser(CouponAvailableRequestVo requestVo){
// 获取用户信息
CustomerInfoVo assortmentCustomerInfoVo = getCustomerInfoVo(requestVo.getSessionId());
String userId = assortmentCustomerInfoVo.getMemberId();
String partnerId = assortmentCustomerInfoVo.getPartnerId();
String appId = assortmentCustomerInfoVo.getAppId();
String storeId = requestVo.getStoreId();
String menuType = requestVo.getMenuType();
Integer orderType = requestVo.getOrderType();
CouponAvailableCartInfo couponAvailableCartInfo;
List<String> orgCodes = commonService.getOrgCodes(partnerId, storeId);
// 获取购物车商品
List<CartGoods> cartGoodsList = assortmentSdkService.getShoppingCartForCoupon(partnerId, requestVo.getStoreId(), userId, "", shoppingCartBaseService);
if (grayPush(partnerId,storeId,"2")) {
CalculationSharingDiscountResponseDto.CalculationDiscountResult discountResult = sharingDiscountService.getCalculationSharingDiscountResult(menuType
, partnerId
, storeId
, userId
, appId
, orderType
, assortmentCustomerInfoVo.isMemberPaid()
, cartGoodsList
, new ArrayList<>() //券
, null //加价购商品
, 0L
, null);
couponAvailableCartInfo = activityAdapter.convert2CouponAvailableCartInfoSharing(partnerId,storeId,discountResult,orgCodes);
}else {
// 获取优惠信息
ActivityCalculationDiscountResponseDto.CalculationDiscountResult calculationDiscountResult = getCalculationDiscountResult(menuType,partnerId,storeId,userId,appId,assortmentCustomerInfoVo.getWxAppId(),orderType,assortmentCustomerInfoVo.isMemberPaid(),cartGoodsList,new ArrayList<>(),null,null,0L);
couponAvailableCartInfo = activityAdapter.convert2CouponAvailableCartInfo(partnerId,storeId,calculationDiscountResult,orgCodes);
}
return ResponseUtil.success(couponAvailableCartInfo);
}
} }
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