Commit 500338b1 by shuhu.hou@freemud.cn

Merge branch 'feature/20200514_支付宝订单上传'

# Conflicts:
#	assortment-ordercenter-sdk/pom.xml
#	order-application-service/pom.xml
#	order-application-service/src/main/java/cn/freemud/adapter/OrderAdapter.java
#	order-application-service/src/main/java/cn/freemud/entities/dto/order/CreatePrepayRequestDto.java
#	order-application-service/src/main/java/cn/freemud/service/impl/OrderCommonService.java
#	ordercenter-sdk/pom.xml
parents 0ee0e4ae 88107041
......@@ -2,16 +2,10 @@ package com.freemud.sdk.api.assortment.order.adapter;
import com.alibaba.fastjson.JSONObject;
import com.freemud.application.sdk.api.membercenter.request.GetMemberLabelsResponse;
import com.freemud.application.sdk.api.membercenter.response.GetMemberExtendInfoResponse;
import com.freemud.application.sdk.api.membercenter.response.GetMemberPaids;
import com.freemud.application.sdk.api.membercenter.response.MemberGradeResponse;
import com.freemud.application.sdk.api.membercenter.response.PaidsResponse;
import com.freemud.application.sdk.api.promotioncenter.request.promotion.CalculationDiscountRequest;
import com.freemud.sdk.api.assortment.order.entities.OrderExtInfoDTO;
import com.freemud.sdk.api.assortment.order.enums.OldOrderAccountType;
import com.freemud.sdk.api.assortment.order.request.order.ActivityCancelStockRequest;
import com.freemud.sdk.api.assortment.order.request.order.ConfirmOrderRequest;
import com.freemud.sdk.api.assortment.order.request.order.CouponCodeVerificationProductRequest;
import com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse;
import com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse.DataBean.OrderBean;
......@@ -19,7 +13,9 @@ import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Component;
import java.util.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
@Component
......
......@@ -20,7 +20,6 @@ import com.freemud.application.sdk.api.util.DateUtil;
import com.freemud.sdk.api.assortment.order.domain.OrderStatesVO;
import com.freemud.sdk.api.assortment.order.domain.ResponseCodeConstant;
import com.freemud.sdk.api.assortment.order.entities.OrderEditInfo;
import com.freemud.sdk.api.assortment.order.entities.OrderExtInfoDTO;
import com.freemud.sdk.api.assortment.order.enums.*;
import com.freemud.sdk.api.assortment.order.request.order.OrderDownloadRequest;
import com.freemud.sdk.api.assortment.order.request.order.*;
......@@ -1455,8 +1454,8 @@ public class OrderSdkAdapter {
/**
* 获取自定义信息
*/
public OrderExtInfoDTO getOrderExtInfo(OrderPayResponse orderPayResponse, OrderEditInfo orderEditInfo) {
OrderExtInfoDTO orderExtInfoDto = new OrderExtInfoDTO();
public OrderExtInfoDto getOrderExtInfo(OrderPayResponse orderPayResponse, OrderEditInfo orderEditInfo) {
OrderExtInfoDto orderExtInfoDto = new OrderExtInfoDto();
orderExtInfoDto.setOpenid(orderPayResponse.getOpenId());
String prepayId = "";
//TODO StringUtils 依赖修改
......
......@@ -9,7 +9,8 @@
* @version V1.0
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
*//*
package com.freemud.sdk.api.assortment.order.entities;
import lombok.Data;
......@@ -23,17 +24,23 @@ public class OrderExtInfoDTO {
private String formId;
private String accessToken;
/**
*/
/**
* 到期时间
*/
*//*
private String expireDate;
/**
*/
/**
* 外卖开始时间
*/
*//*
private String deliveryHoursDayStart;
/**
*/
/**
* 外卖结束时间
*/
*//*
private String deliveryHoursDayEnd;
......@@ -42,50 +49,69 @@ public class OrderExtInfoDTO {
private String appid;
private String appsecret;
/**
*/
/**
* 订单支付时间
*/
*//*
private String payDate;
/**
*/
/**
* 第三方流水号
*/
*//*
private String payTransId;
/**
*/
/**
* sessionId
*/
*//*
private String sessionId;
/**
*/
/**
* 预计送达时间
*/
*//*
private Integer serviceTime;
/**
*/
/**
* 第三方外卖定时推单时间
*/
*//*
private Integer pushOrderTime;
/**
*/
/**
* 版本号
*/
*//*
private String version;
private String trackingNo;
/**
*/
/**
* 会员规则ID
*/
*//*
private String ruleId;
private String memberLevel;
private boolean paidMember;
/**
*/
/**
* 微信上报异常补推使用
*/
*//*
private String sessionKey;
/**
*/
/**
* 来源appId
*/
*//*
private String fromAppId;
private String fmId;
}
*/
......@@ -49,12 +49,20 @@ public class ConfirmOrderRequest extends BaseConfig {
* 自定义字段
*/
private String extInfo;
//操作人
/**
* 操作人
*/
private String operator;
private List<OrderSettlement>orderSettlements;
//用户预约时间,仅为预约单时存放
/**
* 用户预约时间,仅为预约单时存放
*/
private String expectTime;
/**
* 渠道方流水号 (比如扫呗,易宝等) 新支付服务做中转使用
*/
private String endTransId;
@Data
public static class OrderSettlement{
......
......@@ -57,7 +57,6 @@ import com.freemud.application.sdk.api.structure.request.PushMessageNoticeDto;
import com.freemud.application.sdk.api.structure.service.MessageCenterClient;
import com.freemud.sdk.api.assortment.order.adapter.*;
import com.freemud.sdk.api.assortment.order.entities.OrderEditInfo;
import com.freemud.sdk.api.assortment.order.entities.OrderExtInfoDTO;
import com.freemud.sdk.api.assortment.order.enums.*;
import com.freemud.sdk.api.assortment.order.request.order.CreateOrderRequest;
import com.freemud.sdk.api.assortment.order.request.order.OrderDownloadRequest;
......@@ -274,11 +273,12 @@ public class OrderCenterSdkServiceImpl implements OrderCenterSdkService {
extendInfoRequest.setMemberId(orderByIdResponse.getData().getUserId());
extendInfoRequest.setPartnerId(orderByIdResponse.getData().getCompanyId());
extendInfo = memberCenterService.getMemberExtendInfo(extendInfoRequest,confirmOrderRequest.getTrackingNo());
OrderExtInfoDTO extInfoDTO = JSONObject.parseObject(orderByIdResponse.getData().getExtInfo(),OrderExtInfoDTO.class);
OrderExtInfoDto extInfoDTO = JSONObject.parseObject(orderByIdResponse.getData().getExtInfo(),OrderExtInfoDto.class);
extInfoDTO.setMemberLevel(extendInfo.getData().getMemberGrade()!=null?extendInfo.getData().getMemberGrade().getRuleName():"");
extInfoDTO.setPaidMember(CollectionUtils.isNotEmpty(extendInfo.getData().getMemberPaids()));
extInfoDTO.setPayTransId(confirmOrderRequest.getPayTransId());
extInfoDTO.setPayDate(confirmOrderRequest.getPayDate());
extInfoDTO.setEndTransId(confirmOrderRequest.getEndTransId());
request.setExtInfo(JSON.toJSONString(extInfoDTO));
}catch (Exception e){
ErrorLog.printErrorLog("getMemberExtendInfoError",MEMBER_EXTEND_INFO,confirmOrderRequest,e);
......@@ -930,7 +930,7 @@ public class OrderCenterSdkServiceImpl implements OrderCenterSdkService {
*/
public BaseOrderResponse updateOrderInfo(OrderPayResponse orderPayResponse, OrderEditInfo orderEditInfo) {
//TODO 创建自定义信息
OrderExtInfoDTO orderExtInfo = orderSdkAdapter.getOrderExtInfo(orderPayResponse, orderEditInfo);
OrderExtInfoDto orderExtInfo = orderSdkAdapter.getOrderExtInfo(orderPayResponse, orderEditInfo);
OrderEditRequest orderEditRequest = new OrderEditRequest(orderPayResponse.getPayTransId(),
JSONObject.toJSONString(orderExtInfo));
orderEditRequest.setOrderId(orderPayResponse.getOrderId());
......
package cn.freemud.adapter;
import cn.freemud.entities.dto.OrderExtInfoDto;
import cn.freemud.entities.dto.QueryOrdersResponseDto;
import cn.freemud.enums.DeliveryChannelEnum;
import com.alibaba.fastjson.JSONObject;
import com.freemud.application.sdk.api.deliverycenter.dto.CreateDeliveryOrderRequestDto;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto;
import com.freemud.application.sdk.api.storecenter.response.StoreResponse;
import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Component;
......
......@@ -12,10 +12,10 @@
*/
package cn.freemud.adapter;
import cn.freemud.entities.dto.OrderExtInfoDto;
import cn.freemud.entities.dto.PushMessageTokenDto;
import cn.freemud.entities.dto.QueryOrdersResponseDto;
import com.alibaba.fastjson.JSONObject;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto;
import com.freemud.application.sdk.api.structure.request.PushMessageNoticeDto;
import com.freemud.sdk.api.assortment.message.request.MessagePushOrderTemplateRequest;
import com.freemud.sdk.api.assortment.message.request.MessageTemplateRequest;
......
......@@ -43,12 +43,12 @@ import com.freemud.api.assortment.datamanager.enums.IappIdType;
import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.api.assortment.datamanager.manager.cache.CacheOpenPlatformPartnerWxappConfigManager;
import com.freemud.application.sdk.api.ordercenter.enums.*;
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.create.OrderTaskReq;
import com.freemud.application.sdk.api.promotioncenter.dto.promotion.GoodsStockDTO;
import com.freemud.application.sdk.api.promotioncenter.request.promotion.ActivityUpdateStockRequest;
import com.freemud.application.sdk.api.storecenter.response.StoreResponse;
import com.freemud.sdk.api.assortment.order.entities.OrderExtInfoDTO;
import com.freemud.sdk.api.assortment.order.enums.*;
import com.freemud.sdk.api.assortment.order.request.order.*;
import com.freemud.sdk.api.assortment.order.response.order.CreateOrderFlowResponse;
......@@ -1768,7 +1768,7 @@ public class OrderAdapter {
orderPayRefundRequest.setOrgPayFmId(orderBean.getPayVoucher());
orderPayRefundRequest.setRefundAmount(orderBean.getAmount());
orderPayRefundRequest.setRefundId(refundId);
OrderExtInfoDTO orderExtInfoDTO = gson.fromJson(orderBean.getExtInfo(), OrderExtInfoDTO.class);
OrderExtInfoDto orderExtInfoDTO = gson.fromJson(orderBean.getExtInfo(), OrderExtInfoDto.class);
orderPayRefundRequest.setOpenid(orderExtInfoDTO != null ? orderExtInfoDTO.getOpenid() : "");
orderPayRefundRequest.setAppId(orderExtInfoDTO != null ? orderExtInfoDTO.getAppid() : "");
orderPayRefundRequest.setNotifyUrl(refundNotifyCallback);
......@@ -2786,7 +2786,7 @@ public class OrderAdapter {
public CreatePrepayRequestDto convertToCreatePrepayRequestDto(String partnerId, String wxAppId, String openId,
String faceCode, String cardCode, String payCode, QueryOrdersResponse.DataBean.OrderBean fatherOrderBean,
QueryOrdersResponse.DataBean.OrderBean productOrderBean, long totalAmount, int cardAmount, OrderExtInfoDTO orderExtInfoDTO,
QueryOrdersResponse.DataBean.OrderBean productOrderBean, long totalAmount, int cardAmount, OrderExtInfoDto orderExtInfoDTO,
String transId){
CreatePrepayRequestDto requestDto = new CreatePrepayRequestDto();
requestDto.setPartnerId(partnerId);
......@@ -2805,7 +2805,7 @@ public class OrderAdapter {
}
public CreatePrepayRequestDto convertToCreatePrepayRequestDto(AssortmentCustomerInfoVo userLoginInfoDto,CreateOrderVo createOrderVo,
CreateOrderOperateDto createOrderOperateDto, OrderExtInfoDTO orderExtInfoDTO){
CreateOrderOperateDto createOrderOperateDto, OrderExtInfoDto orderExtInfoDTO){
return this.convertToCreatePrepayRequestDto(createOrderVo.getPartnerId(), userLoginInfoDto.getWxAppId(), userLoginInfoDto.getOpenId(),
createOrderVo.getFaceCode(), createOrderVo.getCardCode(), null,
createOrderOperateDto.getFatherOrderBean(), createOrderOperateDto.getProductOrderBean(),
......
......@@ -9,7 +9,8 @@
* @version V1.0
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
*//*
package cn.freemud.entities.dto;
import lombok.Data;
......@@ -20,17 +21,23 @@ public class OrderExtInfoDto {
private String prepayId;
private String accessToken;
/**
*/
/**
* 到期时间
*/
*//*
private String expireDate;
/**
*/
/**
* 外卖开始时间
*/
*//*
private String deliveryHoursDayStart;
/**
*/
/**
* 外卖结束时间
*/
*//*
private String deliveryHoursDayEnd;
......@@ -39,72 +46,105 @@ public class OrderExtInfoDto {
private String appid;
private String appsecret;
/**
*/
/**
* 订单支付时间
*/
*//*
private String payDate;
/**
*/
/**
* 第三方流水号
*/
*//*
private String payTransId;
/**
*/
/**
* sessionId
*/
*//*
private String sessionId;
/**
*/
/**
* 预计送达时间
*/
*//*
private Integer serviceTime;
/**
*/
/**
* 第三方外卖定时推单时间
*/
*//*
private Integer pushOrderTime;
/**
*/
/**
* 版本号
*/
*//*
private String version;
/**
*/
/**
* 会员规则ID
*/
*//*
private String ruleId;
/**
*/
/**
* 预支付 transId
*/
*//*
private String prePayTransId;
/**
*/
/**
* 预支付返回的fmId
*/
*//*
private String fmId;
/**
*/
/**
* 创建预支付订单userId
*/
*//*
private String prePayUserId;
/**
*/
/**
* 用户手机号
*/
*//*
private String phone;
/**
*/
/**
* 平台支付订单号(微信订单号)
*/
*//*
private String paid_no;
/**
*/
/**
* 渠道方流水号 (比如扫呗,易宝等) 新支付服务做中转使用
*/
*//*
private String endTransId;
/**
*/
/**
* 第三方支付商户号 新支付服务做中转使用
*/
*//*
private String platformMchId;
/**
*/
/**
* 扫呗商户号 新支付服务做中转使用
*/
*//*
private String terminalId;
/**
*/
/**
* 微信上报使用的异常补退使用
*/
*//*
private String sessionKey;
}
*/
package cn.freemud.entities.dto.order;
import com.freemud.sdk.api.assortment.order.entities.OrderExtInfoDTO;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto;
import com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse;
import lombok.Data;
......@@ -49,9 +49,9 @@ public class CreatePrepayRequestDto {
/**
* 订单扩展信息
*/
private OrderExtInfoDTO orderExtInfoDTO;
private OrderExtInfoDto orderExtInfoDTO;
/**
* 交易请求号
* 交易请求号
*/
private String transId;
}
......@@ -31,6 +31,7 @@ import com.freemud.application.sdk.api.base.SDKCommonBaseContextWare;
import com.freemud.application.sdk.api.constant.ResponseResultEnum;
import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.ordercenter.enums.AfterSalesType;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto;
import com.freemud.application.sdk.api.paymentcenter.client.request.PaymentCloseUnifiedOrderRequest;
import com.freemud.application.sdk.api.paymentcenter.client.request.PaymentQueryRequest;
import com.freemud.application.sdk.api.paymentcenter.client.response.PaymentCloseUnifiedOrderResponse;
......@@ -43,7 +44,6 @@ import com.freemud.application.sdk.api.productcenter.service.ProductService;
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.sdk.api.assortment.order.entities.OrderExtInfoDTO;
import com.freemud.sdk.api.assortment.order.request.order.CancelOrderRequest;
import com.freemud.sdk.api.assortment.order.request.order.OrderEditRequest;
import com.freemud.sdk.api.assortment.order.request.order.QueryRelatedOrderByCodeRequest;
......@@ -102,7 +102,7 @@ public class AppOrderServiceImpl implements AppOrderService {
Integer pushOrderTime = checkOrder.checkOrderByOrderType(createOrderVo, userLoginInfoDto, storeResponseDto,shoppingCartGoodsDto.getTotalAmount(), trackingNo);
//1.5.4版本,商品库存校验与扣库存
//List<String> stockProductIds = checkOrder.getStockProductIdList(createOrderVo, shoppingCartGoodsDto);
OrderExtInfoDTO extInfo = orderservice.getExtInfo(userLoginInfoDto, storeResponseDto, pushOrderTime, createOrderVo);
OrderExtInfoDto extInfo = orderservice.getExtInfo(userLoginInfoDto, storeResponseDto, pushOrderTime, createOrderVo);
//创建订单
CreateOrderOperateDto createOrderOperateDto = orderservice.sdkCreateOrder(createOrderVo, storeResponseDto, shoppingCartGoodsDto, userLoginInfoDto);
BaseResponse baseResponse = this.updateOrderExtInfo(createOrderOperateDto.getProductOrderBean(), extInfo, trackingNo);
......@@ -121,7 +121,7 @@ public class AppOrderServiceImpl implements AppOrderService {
this.checkOrderBefore(createPrepayVo, productOrderBean);
// 关闭历史预支付订单
this.closeHistoryPrePay(productOrderBean);
OrderExtInfoDTO extInfo = JSONObject.parseObject(productOrderBean.getExtInfo(), OrderExtInfoDTO.class);
OrderExtInfoDto extInfo = JSONObject.parseObject(productOrderBean.getExtInfo(), OrderExtInfoDto.class);
extInfo.setAppid(createPrepayVo.getPayAppId());
extInfo.setOpenid(createPrepayVo.getOpenId());
String faceCode = "";
......@@ -160,7 +160,7 @@ public class AppOrderServiceImpl implements AppOrderService {
Integer pushOrderTime = checkOrder.checkOrderByOrderType(createOrderVo, customerInfo, storeResponse.getBizVO(),shoppingCartGoodsDto.getTotalAmount(), trackingNo);
//1.5.4版本,商品库存校验与扣库存
//List<String> stockProductIds = checkOrder.getStockProductIdList(createOrderVo, shoppingCartGoodsDto);
OrderExtInfoDTO extInfo = orderservice.getExtInfo(customerInfo, storeResponse.getBizVO(), pushOrderTime, createOrderVo);
OrderExtInfoDto extInfo = orderservice.getExtInfo(customerInfo, storeResponse.getBizVO(), pushOrderTime, createOrderVo);
//创建订单
CreateOrderOperateDto createOrderOperateDto = orderservice.sdkCreateOrder(createOrderVo, storeResponse.getBizVO(), shoppingCartGoodsDto, customerInfo);
BaseResponse baseResponse = this.updateOrderExtInfo(createOrderOperateDto.getProductOrderBean(), extInfo, trackingNo);
......@@ -189,7 +189,7 @@ public class AppOrderServiceImpl implements AppOrderService {
if(!PayStatus.NOT_PAY.getCode().equals(orderBean.getPayStatus())){
throw new ServiceException(ResponseResult.ORDER_HAS_PAID);
}
OrderExtInfoDTO extInfo = JSONObject.parseObject(orderBean.getExtInfo(), OrderExtInfoDTO.class);
OrderExtInfoDto extInfo = JSONObject.parseObject(orderBean.getExtInfo(), OrderExtInfoDto.class);
if(extInfo == null || StringUtils.isBlank(extInfo.getSessionId()) || !extInfo.getSessionId().equals(createPrepayVo.getSessionId())) {
throw new ServiceException(ResponseResult.ORDER_OWNER_ERROR);
}
......@@ -198,7 +198,7 @@ public class AppOrderServiceImpl implements AppOrderService {
/**
* 更新订单扩展信息
*/
private BaseResponse updateOrderExtInfo(QueryOrdersResponse.DataBean.OrderBean orderBean, OrderExtInfoDTO orderExtInfo, String trackingNo) {
private BaseResponse updateOrderExtInfo(QueryOrdersResponse.DataBean.OrderBean orderBean, OrderExtInfoDto orderExtInfo, String trackingNo) {
OrderEditRequest orderEditRequest = new OrderEditRequest(orderBean.getOid(), JSONObject.toJSONString(orderExtInfo));
orderEditRequest.setTrackingNo(trackingNo);
BaseOrderResponse baseOrderResponse = orderCenterSdkService.orderEdit(orderEditRequest);
......@@ -242,7 +242,7 @@ public class AppOrderServiceImpl implements AppOrderService {
}
private void closeHistoryPrePay(QueryOrdersResponse.DataBean.OrderBean orderBean) {
OrderExtInfoDTO extInfo = JSONObject.parseObject(orderBean.getExtInfo(), OrderExtInfoDTO.class);
OrderExtInfoDto extInfo = JSONObject.parseObject(orderBean.getExtInfo(), OrderExtInfoDto.class);
//判断当前订单是否存在预支付订单
if(extInfo != null && StringUtils.isNotEmpty(extInfo.getFmId())){
//订单状态未支付且存在预支付订单:
......
......@@ -35,6 +35,7 @@ import com.freemud.application.sdk.api.log.ApiLog;
import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.ordercenter.enums.OrderClientType;
import com.freemud.application.sdk.api.ordercenter.enums.ProductTypeEnum;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto;
import com.freemud.application.sdk.api.paymentcenter.client.request.PaymentCloseUnifiedOrderRequest;
import com.freemud.application.sdk.api.paymentcenter.client.request.PaymentQueryRequest;
import com.freemud.application.sdk.api.paymentcenter.client.response.PaymentCloseUnifiedOrderResponse;
......
......@@ -50,11 +50,11 @@ import com.freemud.application.sdk.api.log.ErrorLog;
import com.freemud.application.sdk.api.log.LogThreadLocal;
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.POSOrderOperationBaseReq;
import com.freemud.application.sdk.api.ordercenter.service.OrderSdkService;
import com.freemud.application.sdk.api.storecenter.response.StoreResponse;
import com.freemud.sdk.api.assortment.order.entities.OrderExtInfoDTO;
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.payment.OrderPayResponse;
......@@ -148,7 +148,7 @@ public class MallOrderServiceImpl implements MallOrderService {
ShoppingCartGoodsDto shoppingCartGoodsDto = checkMallOrder.getShoppingCartGoodsDto(createOrderVo);
// 查询商城的配送模板信息,校验订单是否满足配送条件
checkMallOrder.checkOrderByDelivery(createOrderVo, userLoginInfoDto, storeResponseDto, shoppingCartGoodsDto.getTotalAmount(), trackingNo);
OrderExtInfoDTO extInfo = this.getExtInfo(userLoginInfoDto, storeResponseDto, createOrderVo);
OrderExtInfoDto extInfo = this.getExtInfo(userLoginInfoDto, storeResponseDto, createOrderVo);
return this.sdkCreateOrder(createOrderVo, storeResponseDto, shoppingCartGoodsDto, userLoginInfoDto, extInfo);
}
......@@ -229,11 +229,11 @@ public class MallOrderServiceImpl implements MallOrderService {
createOrderVo.setShopId(virtualBindStoreResponse.getResult().getStoreId());
}
private OrderExtInfoDTO getExtInfo(AssortmentCustomerInfoVo userLoginInfoDto, StoreResponse.BizVO storeResponseDto, CreateOrderVo createOrderVo) {
private OrderExtInfoDto getExtInfo(AssortmentCustomerInfoVo userLoginInfoDto, StoreResponse.BizVO storeResponseDto, CreateOrderVo createOrderVo) {
String sessionId = createOrderVo.getSessionId();
String version = createOrderVo.getVersion();
OrderExtInfoDTO orderExtInfoDto = new OrderExtInfoDTO();
OrderExtInfoDto orderExtInfoDto = new OrderExtInfoDto();
orderExtInfoDto.setOpenid(userLoginInfoDto.getOpenId());
orderExtInfoDto.setAppid(userLoginInfoDto.getWxAppId());
orderExtInfoDto.setSessionId(sessionId);
......@@ -241,7 +241,7 @@ public class MallOrderServiceImpl implements MallOrderService {
return orderExtInfoDto;
}
private BaseResponse sdkCreateOrder(CreateOrderVo createOrderVo, StoreResponse.BizVO storeResponseDto, ShoppingCartGoodsDto shoppingCartGoodsDto, AssortmentCustomerInfoVo userLoginInfoDto, OrderExtInfoDTO orderExtInfoDTO) {
private BaseResponse sdkCreateOrder(CreateOrderVo createOrderVo, StoreResponse.BizVO storeResponseDto, ShoppingCartGoodsDto shoppingCartGoodsDto, AssortmentCustomerInfoVo userLoginInfoDto, OrderExtInfoDto orderExtInfoDTO) {
OrderExtendedReq orderExtendedReq = orderAdapter.saveStoreInfo(storeResponseDto);
//创建普通订单
Function<Object, CreateOrderResponse> createOrder = (var -> {
......@@ -359,7 +359,7 @@ public class MallOrderServiceImpl implements MallOrderService {
/**
* 编辑订单,保持预支付信息
*/
public BaseResponse updateOrderInfo(OrderPayResponse orderPayResponse, OrderExtInfoDTO orderExtInfo
public BaseResponse updateOrderInfo(OrderPayResponse orderPayResponse, OrderExtInfoDto orderExtInfo
, QueryOrdersResponse.DataBean.OrderBean orderBean, String trackingNo) {
// orderExtInfo = orderAdapter.getOrderExtInfo(orderPayResponse, orderExtInfo);
orderExtInfo.setOpenid(orderPayResponse.getOpenId());
......
......@@ -7,7 +7,6 @@ import cn.freemud.base.util.DateUtil;
import cn.freemud.constant.RedisKeyConstant;
import cn.freemud.constant.ResponseCodeConstant;
import cn.freemud.entities.dto.ConfirmOrderDto;
import cn.freemud.entities.dto.OrderExtInfoDto;
import cn.freemud.entities.dto.QueryOrdersResponseDto;
import cn.freemud.entities.dto.ShoppingCartBaseResponse;
import cn.freemud.entities.dto.shoppingCart.NewShoppingCartClearDto;
......@@ -35,6 +34,7 @@ import com.freemud.application.sdk.api.log.ApiLog;
import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.ordercenter.enums.OrderClientType;
import com.freemud.application.sdk.api.ordercenter.enums.ProductTypeEnum;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto;
import com.freemud.application.sdk.api.storecenter.request.ChangeTableOrderStateRequest;
import com.freemud.application.sdk.api.storecenter.service.StoreCenterService;
import com.freemud.application.sdk.api.structure.request.PushMessageNoticeDto;
......
......@@ -72,6 +72,7 @@ import com.freemud.application.sdk.api.log.ErrorLog;
import com.freemud.application.sdk.api.log.LogThreadLocal;
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.paymentcenter.client.request.CodePayRequest;
import com.freemud.application.sdk.api.paymentcenter.client.request.SVCCardAmountRequest;
......@@ -93,7 +94,6 @@ import com.freemud.sdk.api.assortment.message.request.MessagePushOrderTemplateRe
import com.freemud.sdk.api.assortment.message.request.MessageTemplateRequest;
import com.freemud.sdk.api.assortment.message.service.IMessageTemplatePushService;
import com.freemud.sdk.api.assortment.order.adapter.ActivitySdkAdapter;
import com.freemud.sdk.api.assortment.order.entities.OrderExtInfoDTO;
import com.freemud.sdk.api.assortment.order.enums.OldOrderStatus;
import com.freemud.sdk.api.assortment.order.request.order.*;
import com.freemud.sdk.api.assortment.order.response.order.*;
......@@ -279,7 +279,7 @@ public class OrderServiceImpl implements Orderservice {
Integer pushOrderTime = checkOrder.checkOrderByOrderType(createOrderVo, userLoginInfoDto, storeResponseDto,shoppingCartGoodsDto.getTotalAmount(), trackingNo);
//1.5.4版本,商品库存校验与扣库存
//List<String> stockProductIds = checkOrder.getStockProductIdList(createOrderVo, shoppingCartGoodsDto);
OrderExtInfoDTO extInfo = getExtInfo(userLoginInfoDto, storeResponseDto, pushOrderTime, createOrderVo);
OrderExtInfoDto extInfo = getExtInfo(userLoginInfoDto, storeResponseDto, pushOrderTime, createOrderVo);
//1.9.2套餐需求同步优化创建订单代码
CreateOrderOperateDto createOrderOperateDto = this.sdkCreateOrder(createOrderVo, storeResponseDto, shoppingCartGoodsDto, userLoginInfoDto);
......@@ -304,7 +304,7 @@ public class OrderServiceImpl implements Orderservice {
Integer pushOrderTime = checkOrder.checkOrderByOrderType(createOrderVo, userLoginInfoDto, storeResponseDto,shoppingCartGoodsDto.getTotalAmount(), trackingNo);
//1.5.4版本,商品库存校验与扣库存
//List<String> stockProductIds = checkOrder.getStockProductIdList(createOrderVo, shoppingCartGoodsDto);
OrderExtInfoDTO extInfo = getExtInfo(userLoginInfoDto, storeResponseDto, pushOrderTime, createOrderVo);
OrderExtInfoDto extInfo = getExtInfo(userLoginInfoDto, storeResponseDto, pushOrderTime, createOrderVo);
//下单并支付
return this.createOrderAndPay(createOrderVo, storeResponseDto, shoppingCartGoodsDto, userLoginInfoDto, extInfo);
}
......@@ -374,6 +374,7 @@ public class OrderServiceImpl implements Orderservice {
var1.setPayDate(DateUtil.convert2String(new Date(), "yyyy-MM-dd HH:mm:ss"));
var1.setPayTransId(message.getOut_trade_no());
var1.setOperator(orderBean.getUserName());
var1.setEndTransId(message.getEndTransId());
if(orderBean.getGmtExpect() != null && orderBean.getGmtExpect() != 0){
var1.setExpectTime(DateUtil.convert2String(new Date(orderBean.getGmtExpect()),DateUtil.FORMAT_YYYY_MM_DD_HHMMSS));
}
......@@ -1977,7 +1978,7 @@ public class OrderServiceImpl implements Orderservice {
return paymentRequest;
}
public OrderExtInfoDTO getExtInfo(AssortmentCustomerInfoVo userLoginInfoDto, StoreResponse.BizVO storeResponseDto,
public OrderExtInfoDto getExtInfo(AssortmentCustomerInfoVo userLoginInfoDto, StoreResponse.BizVO storeResponseDto,
Integer pushOrderTime, CreateOrderVo createOrderVo) {
Integer serviceTime = storeResponseDto.getServiceTime();
......@@ -1995,7 +1996,7 @@ public class OrderServiceImpl implements Orderservice {
}
}
OrderExtInfoDTO orderExtInfoDto = new OrderExtInfoDTO();
OrderExtInfoDto orderExtInfoDto = new OrderExtInfoDto();
orderExtInfoDto.setDeliveryHoursDayStart(deliveryHoursDayStart);
orderExtInfoDto.setDeliveryHoursDayEnd(deliveryHoursDayEnd);
orderExtInfoDto.setOpenid(userLoginInfoDto.getOpenId());
......@@ -2072,7 +2073,7 @@ public class OrderServiceImpl implements Orderservice {
/**
* 编辑订单,保持预支付信息
*/
public BaseResponse updateOrderInfo(OrderPayResponse orderPayResponse, OrderExtInfoDTO orderExtInfo
public BaseResponse updateOrderInfo(OrderPayResponse orderPayResponse, OrderExtInfoDto orderExtInfo
, QueryOrdersResponse.DataBean.OrderBean orderBean, String trackingNo) {
// orderExtInfo = orderAdapter.getOrderExtInfo(orderPayResponse, orderExtInfo);
orderExtInfo.setOpenid(orderPayResponse.getOpenId());
......@@ -2214,7 +2215,7 @@ public class OrderServiceImpl implements Orderservice {
* 下单支付
*/
private BaseResponse createOrderAndPay(CreateOrderVo createOrderVo, StoreResponse.BizVO storeResponseDto, ShoppingCartGoodsDto shoppingCartGoodsDto,
AssortmentCustomerInfoVo userLoginInfoDto, OrderExtInfoDTO orderExtInfoDTO) {
AssortmentCustomerInfoVo userLoginInfoDto, OrderExtInfoDto orderExtInfoDTO) {
//创建订单--包括下单购买会员卡创建父子订单
CreateOrderOperateDto operateDto = createOrderForFace(createOrderVo, storeResponseDto, shoppingCartGoodsDto,userLoginInfoDto.getWxAppId());
long totalAmount = operateDto.getTotalAmount();
......
......@@ -14,7 +14,6 @@ package cn.freemud.service;
import cn.freemud.adapter.OrderAdapter;
import cn.freemud.base.entity.BaseResponse;
import cn.freemud.entities.dto.OrderExtInfoDto;
import cn.freemud.entities.dto.OrderRefundDto;
import cn.freemud.entities.dto.QueryOrderByIdResponseDto;
import cn.freemud.entities.dto.QueryOrdersResponseDto;
......@@ -29,6 +28,7 @@ import cn.freemud.service.thirdparty.PaymentClient;
import cn.freemud.utils.ValidationCode;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto;
import com.freemud.sdk.api.assortment.order.request.order.*;
import com.freemud.sdk.api.assortment.order.response.order.AssortmentAffirmGroupOrderResponse;
import com.freemud.sdk.api.assortment.order.response.order.CreateOrderResponse;
......
......@@ -52,7 +52,7 @@
<dependency>
<groupId>cn.freemud</groupId>
<artifactId>assortment-ordercenter-sdk</artifactId>
<version>1.3.9.RELEASE</version>
<version>1.4.2.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
......
......@@ -19,6 +19,9 @@ public class OrderExtInfoDto {
private String prepayId;
/**
* 支付宝小程序订单特定模板消息需要
*/
private String formId;
private String accessToken;
......@@ -65,9 +68,55 @@ public class OrderExtInfoDto {
* 版本号
*/
private String version;
private String trackingNo;
/**
* 会员规则ID
*/
private String ruleId;
/**
* 预支付 transId
*/
private String prePayTransId;
private String memberLevel;
private boolean paidMember;
/**
* 微信上报异常补推使用
*/
private String sessionKey;
/**
* 来源appId
*/
private String fromAppId;
private String fmId;
/**
* 创建预支付订单userId
*/
private String prePayUserId;
/**
* 用户手机号
*/
private String phone;
/**
* 平台支付订单号(微信订单号)
*/
private String paid_no;
/**
* 渠道方流水号 (比如扫呗,易宝等) 新支付服务做中转使用
*/
private String endTransId;
/**
* 第三方支付商户号 新支付服务做中转使用
*/
private String platformMchId;
/**
* 扫呗商户号 新支付服务做中转使用
*/
private String terminalId;
}
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