Commit 8a4fdf48 by 张洪旺

订单完成接口使用新的订单状态

parent 60c5c777
...@@ -162,14 +162,15 @@ public class FuYouOrderService { ...@@ -162,14 +162,15 @@ public class FuYouOrderService {
/** /**
* 查询订单详情 * 查询订单详情
*
* @param request * @param request
* @return * @return
*/ */
public BaseResponse detail(OrderDetailRequest request){ public BaseResponse detail(OrderDetailRequest request) {
QueryByCodeResponse orderInfo = orderSdkService.getOrderInfo(request.getOrderClient(), null, QueryByCodeResponse orderInfo = orderSdkService.getOrderInfo(request.getOrderClient(), null,
request.getThirdOrderCode(),null, LogThreadLocal.getTrackingNo()); request.getThirdOrderCode(), null, LogThreadLocal.getTrackingNo());
if (ObjectUtils.notEqual(ResponseConstant.SUCCESS_RESPONSE_CODE, orderInfo.getCode())) { if (ObjectUtils.notEqual(ResponseConstant.SUCCESS_RESPONSE_CODE, orderInfo.getCode())) {
return ResponseUtil.error(orderInfo.getCode(),orderInfo.getMessage()); return ResponseUtil.error(orderInfo.getCode(), orderInfo.getMessage());
} }
return ResponseUtil.success(orderInfo.getResult()); return ResponseUtil.success(orderInfo.getResult());
} }
...@@ -183,9 +184,9 @@ public class FuYouOrderService { ...@@ -183,9 +184,9 @@ public class FuYouOrderService {
*/ */
public BaseResponse refund(RefundRequest req) { public BaseResponse refund(RefundRequest req) {
// 1.退款 // 1.退款
QueryByCodeResponse orderInfo = orderSdkService.getOrderInfo(req.getOrderClient(), null,req.getThirdOrderCode(),null, LogThreadLocal.getTrackingNo()); QueryByCodeResponse orderInfo = orderSdkService.getOrderInfo(req.getOrderClient(), null, req.getThirdOrderCode(), null, LogThreadLocal.getTrackingNo());
if (ObjectUtils.notEqual(ResponseConstant.SUCCESS_RESPONSE_CODE, orderInfo.getCode())) { if (ObjectUtils.notEqual(ResponseConstant.SUCCESS_RESPONSE_CODE, orderInfo.getCode())) {
return ResponseUtil.error(orderInfo.getCode(),orderInfo.getMessage()); return ResponseUtil.error(orderInfo.getCode(), orderInfo.getMessage());
} }
final OrderInfoReqs order = orderInfo.getResult(); final OrderInfoReqs order = orderInfo.getResult();
if (ObjectUtils.notEqual(order.getPayState(), PayStatus.HAVE_PAID.getCode())) { if (ObjectUtils.notEqual(order.getPayState(), PayStatus.HAVE_PAID.getCode())) {
...@@ -199,7 +200,7 @@ public class FuYouOrderService { ...@@ -199,7 +200,7 @@ public class FuYouOrderService {
return baseResponse; return baseResponse;
} }
//3 .退优惠券 //3 .退优惠券
return rectification(order, "商家退款"); return rectification(order, "商家退款");
} }
...@@ -227,8 +228,8 @@ public class FuYouOrderService { ...@@ -227,8 +228,8 @@ public class FuYouOrderService {
return payorderSeetlment; return payorderSeetlment;
} }
private OrderInfoReqs getOrderByThirdOrderCode(String thirdOrderCode,String orderClient) { private OrderInfoReqs getOrderByThirdOrderCode(String thirdOrderCode, String orderClient) {
QueryByCodeResponse orderInfo = orderSdkService.getOrderInfo(orderClient,null,thirdOrderCode, null, LogThreadLocal.getTrackingNo()); QueryByCodeResponse orderInfo = orderSdkService.getOrderInfo(orderClient, null, thirdOrderCode, null, LogThreadLocal.getTrackingNo());
if (ObjectUtils.notEqual(ResponseConstant.SUCCESS_RESPONSE_CODE, orderInfo.getCode())) { if (ObjectUtils.notEqual(ResponseConstant.SUCCESS_RESPONSE_CODE, orderInfo.getCode())) {
throw new RuntimeException(orderInfo.getMessage()); throw new RuntimeException(orderInfo.getMessage());
} }
...@@ -243,11 +244,11 @@ public class FuYouOrderService { ...@@ -243,11 +244,11 @@ public class FuYouOrderService {
public BaseResponse complete(CompleteRequest request) { public BaseResponse complete(CompleteRequest request) {
OrderInfoReqs orderInfoReqs = getOrderByThirdOrderCode(request.getThirdOrderCode(), request.getOrderClient()); OrderInfoReqs orderInfoReqs = getOrderByThirdOrderCode(request.getThirdOrderCode(), request.getOrderClient());
BaseResponse response = new BaseResponse(); BaseResponse response = new BaseResponse();
if(ObjectUtils.notEqual(PayStatus.HAVE_PAID.getCode(),orderInfoReqs.getPayState())){ if (ObjectUtils.notEqual(PayStatus.HAVE_PAID.getCode(), orderInfoReqs.getPayState())) {
return ResponseUtil.error(ORDER_NO_PAU); return ResponseUtil.error(ORDER_NO_PAU);
} }
OrderChangeStateReq req = new OrderChangeStateReq(); OrderChangeStateReq req = new OrderChangeStateReq();
req.setOrderState(OrderStatus.COMPLETE.getCode()); req.setOrderState(NewOrderStatus.COMPLETE.getIndex());
req.setOrderCode(orderInfoReqs.getOrderCode()); req.setOrderCode(orderInfoReqs.getOrderCode());
com.freemud.application.sdk.api.ordercenter.response.BaseResponse baseResponse = orderSdkService.updateOrderState(req, LogThreadLocal.getTrackingNo()); com.freemud.application.sdk.api.ordercenter.response.BaseResponse baseResponse = orderSdkService.updateOrderState(req, LogThreadLocal.getTrackingNo());
response.setCode(baseResponse.getCode()); response.setCode(baseResponse.getCode());
...@@ -259,16 +260,12 @@ public class FuYouOrderService { ...@@ -259,16 +260,12 @@ public class FuYouOrderService {
/*** /***
* 目前支持 优惠券,积分 * 目前支持 优惠券,积分
*
* 冲正 * 冲正
* @return * @return
*/ */
public BaseResponse rectification(OrderInfoReqs order, String reqRemark) { public BaseResponse rectification(OrderInfoReqs order, String reqRemark) {
if (Objects.equals(order.getOrderState(), NewOrderStatus.COMPLETE.getIndex()) || if (Objects.equals(order.getOrderState(), NewOrderStatus.CLOSED.getIndex())) {
Objects.equals(order.getOrderState(), NewOrderStatus.CLOSED.getIndex()) return ResponseUtil.error(ResponseResult.ORDER_QUERYORDER_ERROR.getCode(), "已退款");
) {
log.info("rectification 订单状态已完成,或者已经关闭,不支持冲正");
return ResponseUtil.error(ResponseResult.ORDER_QUERYORDER_ERROR.getCode(),"订单号不存在");
} }
// 2.更改订单 // 2.更改订单
OrderCancelReq orderCancelReq = new OrderCancelReq(); OrderCancelReq orderCancelReq = new OrderCancelReq();
...@@ -279,13 +276,14 @@ public class FuYouOrderService { ...@@ -279,13 +276,14 @@ public class FuYouOrderService {
orderCancelReq.setOrderClient(2); orderCancelReq.setOrderClient(2);
orderCancelReq.setCreateEvent(4); orderCancelReq.setCreateEvent(4);
com.freemud.application.sdk.api.ordercenter.response.BaseResponse cancelOrderResponse = orderSdkService.cancelOrder(orderCancelReq, LogThreadLocal.getTrackingNo()); com.freemud.application.sdk.api.ordercenter.response.BaseResponse cancelOrderResponse = orderSdkService.cancelOrder(orderCancelReq, LogThreadLocal.getTrackingNo());
if (ObjectUtils.notEqual(SUCCESS, cancelOrderResponse.getCode())) { if (ObjectUtils.notEqual(SUCCESS.getCode(), cancelOrderResponse.getCode())) {
log.error("orderSdkService.cancelOrder.error,request:{},response:{}", JSON.toJSONString(orderCancelReq), log.error("orderSdkService.cancelOrder.error,request:{},response:{}", JSON.toJSONString(orderCancelReq),
JSON.toJSONString(cancelOrderResponse)); JSON.toJSONString(cancelOrderResponse));
return ResponseUtil.error(cancelOrderResponse.getCode(),cancelOrderResponse.getMessage()); return ResponseUtil.error(cancelOrderResponse.getCode(), cancelOrderResponse.getMessage());
} }
order.getOrderSettlementDetailList().forEach((OrderSettlementResp obj) -> { order.getOrderSettlementDetailList().forEach((OrderSettlementResp obj) -> {
//优惠券冲正
if (OrderSettlementType.COUPON.getIndex() == obj.getSettlementType().intValue()) { if (OrderSettlementType.COUPON.getIndex() == obj.getSettlementType().intValue()) {
DiscountRequest discountRequest = JSONObject.parseObject(obj.getExtInfo(), DiscountRequest.class); DiscountRequest discountRequest = JSONObject.parseObject(obj.getExtInfo(), DiscountRequest.class);
CouponRequest couponCodeVerificationDto = new CouponRequest(); CouponRequest couponCodeVerificationDto = new CouponRequest();
...@@ -316,6 +314,7 @@ public class FuYouOrderService { ...@@ -316,6 +314,7 @@ public class FuYouOrderService {
JSON.toJSONString(baseResponse)); JSON.toJSONString(baseResponse));
} }
} }
//积分充正
if (OrderSettlementType.POINTS.getIndex() == obj.getSettlementType().intValue()) { if (OrderSettlementType.POINTS.getIndex() == obj.getSettlementType().intValue()) {
ReturnScoreRequest returnScoreRequest = new ReturnScoreRequest(); ReturnScoreRequest returnScoreRequest = new ReturnScoreRequest();
returnScoreRequest.setMemberId(order.getUserId()); returnScoreRequest.setMemberId(order.getUserId());
...@@ -358,7 +357,7 @@ public class FuYouOrderService { ...@@ -358,7 +357,7 @@ public class FuYouOrderService {
case 204: case 204:
case 19: case 19:
//微信,支付宝,svc //微信,支付宝,svc
OrderRefundNewRequest refundRequest = new OrderRefundNewRequest(); OrderRefundNewRequest refundRequest = new OrderRefundNewRequest();
refundRequest.setPartnerId(order.getPartnerId()); refundRequest.setPartnerId(order.getPartnerId());
refundRequest.setVer(2); refundRequest.setVer(2);
refundRequest.setStoreId(order.getStoreId()); refundRequest.setStoreId(order.getStoreId());
...@@ -368,7 +367,7 @@ public class FuYouOrderService { ...@@ -368,7 +367,7 @@ public class FuYouOrderService {
refundRequest.setRefundId(UUID.randomUUID().toString()); refundRequest.setRefundId(UUID.randomUUID().toString());
refundRequest.setTotalAmount(Long.valueOf(payRequest.getPayAmount())); refundRequest.setTotalAmount(Long.valueOf(payRequest.getPayAmount()));
refundRequest.setRefundAmount(Long.valueOf(payRequest.getPayAmount())); refundRequest.setRefundAmount(Long.valueOf(payRequest.getPayAmount()));
final com.freemud.application.sdk.api.base.BaseResponse<RefundNewResponse> refundResponse = paymentNewService.newOrderRefund(refundRequest,LogThreadLocal.getTrackingNo()); final com.freemud.application.sdk.api.base.BaseResponse<RefundNewResponse> refundResponse = paymentNewService.newOrderRefund(refundRequest, LogThreadLocal.getTrackingNo());
if (ObjectUtils.notEqual(refundResponse.getCode(), ResponseResultEnum.SUCCESS.getCode())) { if (ObjectUtils.notEqual(refundResponse.getCode(), ResponseResultEnum.SUCCESS.getCode())) {
return ResponseUtil.error(refundResponse.getCode(), refundResponse.getMessage()); return ResponseUtil.error(refundResponse.getCode(), refundResponse.getMessage());
} }
......
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