Commit 00a7d00d by 徐康

麦咖啡申请退款

parent 4f2e0986
......@@ -2687,6 +2687,9 @@ public class OrderSdkAdapter {
if (StringUtils.isNotBlank(product.getCategory())){
extInfo.setThirdCensusCategoryId(product.getCategory());
}
if (0 != product.getTax()){
extInfo.setTax(product.getTax());
}
extInfo.setStapleFood(product.getStapleFood());
//if (product.getStapleFood()!=null && product.getStapleFood()>0) {
// extInfo.setStapleFood(1);
......
......@@ -164,4 +164,7 @@ public class CreateOrderProductRequest extends BaseConfig {
/** 商品统计分类编号**/
private String category;
/** 商品税率**/
private double tax;
}
......@@ -61,4 +61,6 @@ public class OrderProductAddInfoDto extends BaseConfig {
* 商品统计分类编号
*/
private String thirdCensusCategoryId;
private double tax;
}
......@@ -1919,6 +1919,7 @@ public class OrderAdapter {
createOrderProductDemoDto.setUnit(cartGoodsDetailDto.getUnit());
createOrderProductDemoDto.setStapleFood(0);
createOrderProductDemoDto.setCategory(cartGoodsDetailDto.getClassificationId());
createOrderProductDemoDto.setTax(cartGoodsDetailDto.getTax());
return createOrderProductDemoDto;
}
......
package cn.freemud.entities.dto;
import lombok.Builder;
import lombok.Data;
@Data
@Builder
public class CancelDeliveryRequest {
private String displayOrderId;
private String orderId;
private String orderCancelCode;
private String orderCancelDescription;
private String receiveOrderType;
private String storeId;
}
......@@ -124,6 +124,10 @@ public class QueryOrdersResponseDto {
* 订单ID
*/
private String oid;
/**
* 下游订单号
*/
private String downstreamThirdOrderCode;
private Integer orderType;
/**
* 取餐码
......
......@@ -200,6 +200,11 @@ public class ShoppingCartGoodsDto {
private String unit;
/**
* 费率
*/
private double tax;
/**
* 配料或属性
*/
private List<CartGoodsDetailDto.CartGoodsExtra> extraList = new ArrayList<>(0);
......
package cn.freemud.enums;
public enum ReceiveOrderEnum {
NOT_RECEIVE_ORDER(0,"notReceiveOrder"),
RECEIVED_ORDER(1,"receivedOrder"),
;
private Integer code;
private String desc;
ReceiveOrderEnum(Integer code, String desc) {
this.code = code;
this.desc = desc;
}
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
public String getDesc() {
return desc;
}
public void setDesc(String desc) {
this.desc = desc;
}
}
......@@ -505,47 +505,48 @@ public class CheckMCCafeOrder {
requestDto.setShoppingCartInfoRequestVo(shoppingCartInfoRequestVo);
//加价购商品 校验放购物车校验
requestDto.setPremiumExchangeActivity(createOrderVo.getPremiumExchangeActivity());
cn.freemud.base.entity.BaseResponse<ShoppingCartGoodsDto> apportionResponse = shoppingCartClient.getMCCafeShoppingCartGoodsApportionNew(requestDto);
// cn.freemud.base.entity.BaseResponse<ShoppingCartGoodsDto> apportionResponse = shoppingCartClient.getMCCafeShoppingCartGoodsApportionNew(requestDto);
//暂时写死测试数据
// cn.freemud.base.entity.BaseResponse<ShoppingCartGoodsDto> apportionResponse = JSON.parseObject(
// "{\n" +
// " \"code\": \"100\",\n" +
// " \"message\": \"success\",\n" +
// " \"result\": {\n" +
// " \"activityDiscountsDtos\": [],\n" +
// " \"isDiscountDelivery\": false,\n" +
// " \"originalTotalAmount\": 1,\n" +
// " \"products\": [\n" +
// " {\n" +
// " \"activityDiscountsDtos\": [],\n" +
// " \"attributeNames\": \"{\\\"attributeNames\\\":\\\"\\\"}\",\n" +
// " \"categoryName\": \"鞍山市\",\n" +
// " \"classificationId\": \"\",\n" +
// " \"customerCode\": \"4095\",\n" +
// " \"extraList\": [],\n" +
// " \"hasProductCoupon\": false,\n" +
// " \"materialList\": [],\n" +
// " \"originalPrice\": 1,\n" +
// " \"picture\": \"https://img10.sandload.cn/zfd0x0.jpg?timestamp=1593831027040\",\n" +
// " \"qty\": 1,\n" +
// " \"skuId\": \"162535232231270663\",\n" +
// " \"skuName\": \"鱿鱼须把把串\",\n" +
// " \"spuId\": \"162535232231270663\",\n" +
// " \"spuName\": \"鱿鱼须把把串\",\n" +
// " \"stockLimit\": false,\n" +
// " \"totalDiscountAmount\": 0,\n" +
// " \"unit\": \"g\",\n" +
// " \"weight\": 0\n" +
// " }\n" +
// " ],\n" +
// " \"reduceScore\": 0,\n" +
// " \"scoreReduceAmount\": 0,\n" +
// " \"totalAmount\": 1,\n" +
// " \"totalDiscountAmount\": 0\n" +
// " },\n" +
// " \"ver\": \"1\"\n" +
// "}", new TypeReference<cn.freemud.base.entity.BaseResponse<ShoppingCartGoodsDto>>(){}
// );
cn.freemud.base.entity.BaseResponse<ShoppingCartGoodsDto> apportionResponse = JSON.parseObject(
"{\n" +
" \"code\": \"100\",\n" +
" \"message\": \"success\",\n" +
" \"result\": {\n" +
" \"activityDiscountsDtos\": [],\n" +
" \"isDiscountDelivery\": false,\n" +
" \"originalTotalAmount\": 1,\n" +
" \"products\": [\n" +
" {\n" +
" \"activityDiscountsDtos\": [],\n" +
" \"attributeNames\": \"{\\\"attributeNames\\\":\\\"\\\"}\",\n" +
" \"categoryName\": \"鞍山市\",\n" +
" \"classificationId\": \"\",\n" +
" \"customerCode\": \"4095\",\n" +
" \"extraList\": [],\n" +
" \"hasProductCoupon\": false,\n" +
" \"materialList\": [],\n" +
" \"originalPrice\": 1,\n" +
" \"picture\": \"https://img10.sandload.cn/zfd0x0.jpg?timestamp=1593831027040\",\n" +
" \"qty\": 1,\n" +
" \"skuId\": \"162535232231270663\",\n" +
" \"skuName\": \"鱿鱼须把把串\",\n" +
" \"spuId\": \"162535232231270663\",\n" +
" \"spuName\": \"鱿鱼须把把串\",\n" +
" \"stockLimit\": false,\n" +
" \"totalDiscountAmount\": 0,\n" +
" \"unit\": \"g\",\n" +
" \"weight\": 0,\n" +
" \"tax\": 10\n" +
" }\n" +
" ],\n" +
" \"reduceScore\": 0,\n" +
" \"scoreReduceAmount\": 0,\n" +
" \"totalAmount\": 1,\n" +
" \"totalDiscountAmount\": 0\n" +
" },\n" +
" \"ver\": \"1\"\n" +
"}", new TypeReference<cn.freemud.base.entity.BaseResponse<ShoppingCartGoodsDto>>(){}
);
if (!ObjectUtils.equals(ResponseCodeConstant.RESPONSE_SUCCESS_STR, apportionResponse.getCode())) {
ResponseResult responseResult = ResponseResult.getResponseResult(apportionResponse.getCode());
throw new ServiceException(responseResult != null ? responseResult : ResponseResult.SHOPPING_CART_GETINFO_ERROR );
......
......@@ -37,8 +37,10 @@ import cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto;
import cn.freemud.entities.vo.*;
import cn.freemud.enums.*;
import cn.freemud.interceptor.ServiceException;
import cn.freemud.management.entities.dto.request.order.OrderManagerRequest;
import cn.freemud.redis.RedisCache;
import cn.freemud.service.*;
import cn.freemud.service.mccafe.thirdparty.DeliveryFeiginMCCafeClient;
import cn.freemud.service.thirdparty.*;
import cn.freemud.utils.LogUtil;
import cn.freemud.utils.ResponseUtil;
......@@ -56,6 +58,8 @@ import com.freemud.application.sdk.api.constant.ResponseConstant;
import com.freemud.application.sdk.api.constant.ResponseResultEnum;
import com.freemud.application.sdk.api.couponcenter.offline.response.CouponBaseResponse;
import com.freemud.application.sdk.api.couponcenter.offline.response.CouponRedeemResponse;
import com.freemud.application.sdk.api.deliverycenter.dto.CancelDeliveryOrderRequestDto;
import com.freemud.application.sdk.api.deliverycenter.response.DeliveryResponseDto;
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;
......@@ -63,6 +67,8 @@ import com.freemud.application.sdk.api.ordercenter.enums.AfterSalesType;
import com.freemud.application.sdk.api.ordercenter.enums.OrderClientType;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtendedReq;
import com.freemud.application.sdk.api.ordercenter.request.UpdateDownstreamOrderCodeReq;
import com.freemud.application.sdk.api.ordercenter.service.OrderSdkService;
import com.freemud.application.sdk.api.paymentcenter.client.request.CodePayRequest;
import com.freemud.application.sdk.api.paymentcenter.client.request.SVCCardAmountRequest;
import com.freemud.application.sdk.api.paymentcenter.client.response.CodePayResponse;
......@@ -103,6 +109,7 @@ import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.ObjectUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.bouncycastle.cert.ocsp.Req;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
......@@ -208,6 +215,10 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
private AssortmentOpenPlatformPartnerManager assortmentOpenPlatformPartnerManager;
@Autowired
private CouponClientService couponClientService;
@Autowired
private DeliveryFeiginMCCafeClient deliveryFeiginMCCafeClient;
@Autowired
private OrderSdkService orderSdkService;
@Override
public BaseResponse createMCCafeOrder(CreateOrderVo createOrderVo) {
......@@ -864,6 +875,12 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
if (CollectionUtils.isNotEmpty(couponRedeemResponseList)){
// TODO 记录一下核销失败的券
}
//调用基础订单接口更新信息
UpdateDownstreamOrderCodeReq updateDownstreamOrderCodeReq = new UpdateDownstreamOrderCodeReq();
updateDownstreamOrderCodeReq.setOrderCode(orderBean.getOid());
orderSdkService.updateDownstreamThirdOrderCode(updateDownstreamOrderCodeReq, LogThreadLocal.getTrackingNo());
} else if(OldOrderType.COLLECT_GOODS.getCode().equals(orderBean.getType()) || OldOrderType.EAT_IN.getCode().equals(orderBean.getType())) {
List<CouponBaseResponse> couponBaseResponseList = couponClientService.lockBatch(orderBean);
......@@ -1004,6 +1021,9 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
if (OrderStatus.CALCEL.getCode().equals(orderBean.getStatus())) {
return ResponseUtil.error(ResponseResult.ORDER__ERRORREFUND.getCode(), "订单已取消,无法退款");
}
if (OrderStatus.COMPLETE.getCode().equals(orderBean.getStatus())) {
return ResponseUtil.error(ResponseResult.ORDER__ERRORREFUND.getCode(), "订单已完成,无法退款");
}
if(OldOrderType.COLLECT_GOODS.getCode().equals(orderBean.getOrderType()) || OldOrderType.EAT_IN.getCode().equals(orderBean.getOrderType())) {
return ResponseUtil.error(ResponseResult.ORDER__ERRORREFUND.getCode(), "麦咖啡到店订单不支持退款");
}
......@@ -1021,8 +1041,8 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
OrderStatus.TAKE_ORDER.getCode(),
OrderStatus.RECEIPT.getCode(),
OrderStatus.COMPLETE_MAKE.getCode(),
OrderStatus.DISTRIBUTION.getCode(),
OrderStatus.COMPLETE.getCode()
OrderStatus.DISTRIBUTION.getCode()
// ,OrderStatus.COMPLETE.getCode()
));
if (enableRefundCodes.contains(orderBean.getStatus()) && PayStatus.HAVE_PAID.getCode().equals(orderBean.getPayStatus())) {
......@@ -1061,8 +1081,11 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
backOrdersStatusChange(orderBean.getOid(), orderBean.getStatus());
} else {
//TODO 申请取消配送单
//申请取消配送单
BaseResponseDto deliveryBaseResponse = cancelDelivery(orderBean, ReceiveOrderEnum.RECEIVED_ORDER.getDesc());
if(!ResponseConstant.SUCCESS_RESPONSE_CODE_STR.equals(deliveryBaseResponse)) {
return ResponseUtil.error(ResponseResult.ORDER__ERRORREFUND.getCode(), "申请取消配送单失败,退款失败");
}
CancelOrderRequest cancelOrderRequest = new CancelOrderRequest();
cancelOrderRequest.setPartnerId(orderBean.getCompanyId());
......@@ -1106,9 +1129,11 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
String partnerId = orderBean.getCompanyId();
int state = PayRefundStatus.SUCCESS.getCode();
//TODO 取消配送单
//取消配送单
BaseResponseDto deliveryBaseResponse = cancelDelivery(orderBean, ReceiveOrderEnum.NOT_RECEIVE_ORDER.getDesc());
if(!ResponseConstant.SUCCESS_RESPONSE_CODE.equals(deliveryBaseResponse.getErrcode())) {
return ResponseUtil.error(ResponseResult.ORDER__ERRORREFUND.getCode(), "申请取消配送单失败,退款失败");
}
if (orderBean.getAmount() != 0) {
//调用支付退款
......@@ -1124,10 +1149,7 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
partnerId, afterSalesType, orderRefundVo.getReason(), LogTreadLocal.getTrackingNo(), refundId.toString());
cancelOrderRequest.setOperator(orderBean.getUserName());
cancelOrderRequest.setPartnerId(orderBean.getCompanyId());
if (PayRefundStatus.RUNNING.getCode().intValue() == state) {
// 退款中
cancelOrderRequest.setCreateEvent(AfterSalesOrderCreateEventEnum.RETURN_COMPLETE.getCreateEvent());
} else if (PayRefundStatus.SUCCESS.getCode().intValue() == state) {
if (PayRefundStatus.SUCCESS.getCode().intValue() == state) {
//退款成功
cancelOrderRequest.setCreateEvent(AfterSalesOrderCreateEventEnum.REFUND_COMPLETE.getCreateEvent());
}
......@@ -1141,6 +1163,45 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
}
/**
* 取消配送
*
* @param orderBean
* @param receiveOrderType
* @return
*/
public BaseResponseDto cancelDelivery(OrderBean orderBean, String receiveOrderType) {
BaseResponseDto baseResponseDto = new BaseResponseDto();
baseResponseDto.setErrcode(100);
if (orderBean.getType() == 1 && orderBean.getAddInfo() != null) {
Integer deliverStatus = orderBean.getDeliverStatus();
if (ObjectUtils.equals(cn.freemud.management.enums.DeliveryStatus.DELIVERYERROR.getCode(), deliverStatus)
|| ObjectUtils.equals(cn.freemud.management.enums.DeliveryStatus.DELIVERYCANCEL.getCode(), deliverStatus)
|| ObjectUtils.equals(cn.freemud.management.enums.DeliveryStatus.DELIVERYARRIVED.getCode(), deliverStatus)) {
return baseResponseDto;
}
CancelDeliveryRequest cancelDeliveryRequest = CancelDeliveryRequest.builder()
.displayOrderId(orderBean.getDownstreamThirdOrderCode())
.orderId(orderBean.getOid())
.orderCancelCode("4")
.orderCancelDescription("用户申请退款")
.storeId(orderBean.getShopId())
.receiveOrderType(receiveOrderType).build();
BaseResponseDto deliveryBaseResponse = deliveryFeiginMCCafeClient.cancelRequest(cancelDeliveryRequest);
if (deliveryBaseResponse == null || !ResponseConstant.SUCCESS_RESPONSE_CODE.equals(deliveryBaseResponse.getErrcode())) {
LogUtil.error("申请取消配送单失败", cancelDeliveryRequest, deliveryBaseResponse);
baseResponseDto.setErrcode(100);
baseResponseDto.setErrcode(baseResponseDto.getErrcode());
baseResponseDto.setErrmsg(baseResponseDto.getErrmsg());
return baseResponseDto;
// return cn.freemud.management.util.ResponseUtil.error(cn.freemud.management.enums.ResponseResult.DELIVERY_CANCEL_ORDER_ERROR);
}
}
return baseResponseDto;
}
/**
* 发送pos端消息
*/
public void sendPosMessage(String partnerId, String storeId) {
......
......@@ -3,6 +3,7 @@ package cn.freemud.service.mccafe.impl;
import cn.freemud.adapter.CouponAdapter;
import cn.freemud.adapter.OrderAdapter;
import cn.freemud.base.constant.Version;
import cn.freemud.base.log.LogTreadLocal;
import cn.freemud.constant.ResponseCodeConstant;
import cn.freemud.entities.dto.QueryOrdersResponseDto;
import cn.freemud.entities.dto.coupon.MCCafeCouponRequest;
......@@ -14,6 +15,8 @@ import cn.freemud.enums.MCCafeChannelEnum;
import cn.freemud.enums.OrderAccountType;
import cn.freemud.service.mccafe.CouponClientService;
import cn.freemud.service.mccafe.thirdparty.CouponOfflineMCCafeClient;
import cn.freemud.utils.LogUtil;
import com.alibaba.fastjson.JSON;
import com.freemud.application.sdk.api.couponcenter.offline.response.CouponBaseResponse;
import com.freemud.application.sdk.api.couponcenter.offline.response.CouponQueryResponse;
import com.freemud.application.sdk.api.couponcenter.offline.response.CouponRedeemResponse;
......@@ -160,6 +163,7 @@ public class CouponClientServiceImpl implements CouponClientService {
accountList.stream().map(accountBean -> couponAdapter.convert2MCCafeCouponRequest(orderBean, accountBean)).collect(Collectors.toList());
List<CouponRedeemResponse> couponRedeemResponseList = new ArrayList<>();
List<CouponRedeemResponse> couponRedeemResponseListAll = new ArrayList<>();
redeem:
for (MCCafeCouponRequest request : list) {
CouponRedeemResponse couponRedeemResponse = null;
......@@ -167,10 +171,16 @@ public class CouponClientServiceImpl implements CouponClientService {
for(int i=0;i<3;i++) {
couponRedeemResponse = redeem(request);
if(ResponseCodeConstant.RESPONSE_SUCCESS_STR.equals(couponRedeemResponse.getStatusCode())) {
couponRedeemResponseListAll.add(couponRedeemResponse);
continue redeem;
}
}
couponRedeemResponseList.add(couponRedeemResponse);
couponRedeemResponseListAll.add(couponRedeemResponse);
}
if(CollectionUtils.isNotEmpty(couponRedeemResponseList)) {
LogUtil.info(LogTreadLocal.getTrackingNo(), "麦咖啡核销券失败",
JSON.toJSONString(list), JSON.toJSONString(couponRedeemResponseListAll));
}
return couponRedeemResponseList;
......@@ -272,6 +282,7 @@ public class CouponClientServiceImpl implements CouponClientService {
accountList.stream().map(accountBean -> couponAdapter.convert2MCCafeCouponLockRequest(orderBean, accountBean)).collect(Collectors.toList());
List<CouponBaseResponse> baseResponseList = new ArrayList<>();
List<CouponBaseResponse> baseResponseListAll = new ArrayList<>();
lock:
for (MCCafeCouponLockRequest request : list) {
CouponBaseResponse baseResponse = null;
......@@ -279,10 +290,17 @@ public class CouponClientServiceImpl implements CouponClientService {
for(int i=0;i<3;i++) {
baseResponse = lock(request);
if(ResponseCodeConstant.RESPONSE_SUCCESS_STR.equals(baseResponse.getStatusCode())) {
baseResponseListAll.add(baseResponse);
continue lock;
}
}
baseResponseList.add(baseResponse);
baseResponseListAll.add(baseResponse);
}
if(CollectionUtils.isNotEmpty(baseResponseList)) {
LogUtil.info(LogTreadLocal.getTrackingNo(), "麦咖啡冻结券失败",
JSON.toJSONString(list), JSON.toJSONString(baseResponseListAll));
}
return baseResponseList;
......
......@@ -9,7 +9,7 @@ import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@FeignClient(name = "COUPONMCCafe",url="http://coupon-api-gateway-koderover-dev-coupon.api-ingress.sandload.cn")
@FeignClient(name = "COUPONMCCafe",url="${saas.couponofflineclient.feign.url}")
@RequestMapping(produces = {"application/json;charset=UTF-8"})
public interface CouponOfflineMCCafeClient {
......
package cn.freemud.service.mccafe.thirdparty;
import cn.freemud.entities.dto.BaseResponseDto;
import cn.freemud.entities.dto.CancelDeliveryRequest;
import cn.freemud.entities.dto.delivery.QueryDeliveryAmountRequestDto;
import cn.freemud.entities.dto.delivery.QueryDeliveryAmountResponseDto;
import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@FeignClient(name = "DELIVERYCENTER", url = "${delivery.center.baseUrl}")
public interface DeliveryFeiginMCCafeClient {
@PostMapping("/delivery/cancelRequest")
BaseResponseDto cancelRequest(@RequestBody CancelDeliveryRequest request);
}
......@@ -2,16 +2,25 @@ package cn.freemud.service;
import cn.freemud.OrderApplication;
import cn.freemud.base.constant.Version;
import cn.freemud.base.log.LogTreadLocal;
import cn.freemud.entities.dto.BaseResponseDto;
import cn.freemud.entities.dto.QueryOrderByIdResponseDto;
import cn.freemud.entities.dto.coupon.MCCafeCouponRequest;
import cn.freemud.entities.dto.coupon.MCCafeCouponLockRequest;
import cn.freemud.entities.dto.coupon.MCCafeProductRedeemVo;
import cn.freemud.entities.dto.coupon.MCCafeTransactionVo;
import cn.freemud.enums.ReceiveOrderEnum;
import cn.freemud.service.impl.MCCafeOrderServiceImpl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.freemud.application.sdk.api.couponcenter.offline.response.CouponBaseResponse;
import com.freemud.application.sdk.api.couponcenter.offline.response.CouponQueryResponse;
import com.freemud.application.sdk.api.couponcenter.offline.response.CouponRedeemResponse;
import cn.freemud.enums.CouponReqTypeEnum;
import cn.freemud.service.mccafe.thirdparty.CouponOfflineMCCafeClient;
import com.freemud.sdk.api.assortment.order.request.order.BaseQueryOrderRequest;
import com.freemud.sdk.api.assortment.order.response.order.QueryOrderByIdResponse;
import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -28,12 +37,18 @@ public class CouponActivityServiceTest {
@Autowired
private CouponOfflineMCCafeClient offlineMCCafeClient;
@Autowired
private MCCafeOrderServiceImpl mcCafeOrderService;
@Autowired
private OrderCenterSdkService orderCenterSdkService;
@Test
public void redeemTest() {
MCCafeCouponRequest couponCodeVerificationDto = new MCCafeCouponRequest();
couponCodeVerificationDto.setVer(Integer.valueOf(Version.VERSION_1));
couponCodeVerificationDto.setReqtype(CouponReqTypeEnum.REDEEM.getCode());
couponCodeVerificationDto.setPartnerId(1205);
couponCodeVerificationDto.setPartnerId(1206);
couponCodeVerificationDto.setStore_id("khl-12345");
couponCodeVerificationDto.setStation_id("1");
couponCodeVerificationDto.setOperator_id("1");
......@@ -66,7 +81,7 @@ public class CouponActivityServiceTest {
MCCafeCouponRequest couponCodeVerificationDto = new MCCafeCouponRequest();
couponCodeVerificationDto.setVer(Integer.valueOf(Version.VERSION_1));
couponCodeVerificationDto.setReqtype(CouponReqTypeEnum.CANCEL_REDEEM.getCode());
couponCodeVerificationDto.setPartnerId(1205);
couponCodeVerificationDto.setPartnerId(1206);
couponCodeVerificationDto.setStore_id("khl-12345");
couponCodeVerificationDto.setStation_id("1");
couponCodeVerificationDto.setOperator_id("1");
......@@ -99,7 +114,7 @@ public class CouponActivityServiceTest {
MCCafeCouponRequest couponCodeVerificationDto = new MCCafeCouponRequest();
couponCodeVerificationDto.setVer(Integer.valueOf(Version.VERSION_1));
couponCodeVerificationDto.setReqtype(CouponReqTypeEnum.QUERY.getCode());
couponCodeVerificationDto.setPartnerId(1205);
couponCodeVerificationDto.setPartnerId(1206);
couponCodeVerificationDto.setStore_id("khl-12345");
couponCodeVerificationDto.setStation_id("1");
couponCodeVerificationDto.setOperator_id("1");
......@@ -117,7 +132,7 @@ public class CouponActivityServiceTest {
MCCafeCouponLockRequest couponCodeVerificationDto = new MCCafeCouponLockRequest();
couponCodeVerificationDto.setVer(Integer.valueOf(Version.VERSION_1));
couponCodeVerificationDto.setReqType(89);
couponCodeVerificationDto.setPartnerId("1205");
couponCodeVerificationDto.setPartnerId("1206");
couponCodeVerificationDto.setStoreId("99992");
// 订单号
couponCodeVerificationDto.setTransId("00000002");
......@@ -139,7 +154,7 @@ public class CouponActivityServiceTest {
MCCafeCouponLockRequest couponCodeVerificationDto = new MCCafeCouponLockRequest();
couponCodeVerificationDto.setVer(Integer.valueOf(Version.VERSION_1));
couponCodeVerificationDto.setReqType(90);
couponCodeVerificationDto.setPartnerId("1205");
couponCodeVerificationDto.setPartnerId("1206");
couponCodeVerificationDto.setStoreId("khl-12345");
// 订单号
couponCodeVerificationDto.setTransId("00000002");
......@@ -155,4 +170,18 @@ public class CouponActivityServiceTest {
CouponBaseResponse couponCodeResponseDto = offlineMCCafeClient.unlock(couponCodeVerificationDto);
System.out.println(couponCodeResponseDto);
}
@Test
public void cancelDelivery() {
BaseQueryOrderRequest baseQueryOrderRequest = new BaseQueryOrderRequest();
baseQueryOrderRequest.setOrderId("18551043261893838300001");
baseQueryOrderRequest.setTrackingNo(LogTreadLocal.getTrackingNo());
QueryOrderByIdResponse queryOrderByIdResponse = orderCenterSdkService.queryOrderById(baseQueryOrderRequest);
String string = JSONObject.toJSONString(queryOrderByIdResponse);
JSONObject jsonObject = JSONObject.parseObject(string);
QueryOrderByIdResponseDto orderByIdResponseDto = jsonObject.toJavaObject(QueryOrderByIdResponseDto.class);
BaseResponseDto baseResponseDto = mcCafeOrderService.cancelDelivery(orderByIdResponseDto.getData(), ReceiveOrderEnum.NOT_RECEIVE_ORDER.getDesc());
System.out.println(JSON.toJSONString(baseResponseDto));
}
}
\ No newline at end of file
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