Commit fbc288ca by 胡超

Merge remote-tracking branch 'remotes/origin/master' into feature/2020323_1.9.17_rocketmq

parents 7159ffb8 33a2c878
......@@ -10,7 +10,7 @@
<modelVersion>4.0.0</modelVersion>
<artifactId>assortment-ordercenter-sdk</artifactId>
<version>1.3.5.RELEASE</version>
<version>1.3.6.RELEASE</version>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
......
......@@ -9,7 +9,8 @@
| 1.1.3.RELEASE| 1.9.10需求打包release版本(thirdCateId) | 胡超 | 20200113 |
| 1.1.4.RELEASE| 农工商submit接口 | 侯书虎 | 2020-01-13 |
| 1.1.5.RELEASE| 农工商submit接口(del thirdCateId) | 胡超 | 2020-01-13 |
| 1.1.6-SNAPSHOT| 1.9.11商品组 | 胡超 | 2020-02-05 |
| 1.1.6.SNAPSHOT| 1.9.11商品组 | 胡超 | 2020-02-05 |
| 1.1.7.SNAPSHOT| 核销流程更改 | 侯书虎 | 2020-02-10 |
| 1.1.7.RELEASE| 1.9.11商品组 | 胡超 | 2020-02-13 |
| 1.1.9.RELEASE| pos渠道 | 丁凯 | 2020-02-22 |
| 1.2.0.RELEASE| 开放平台创建订单 | 姜海波 | 2020-02-24 |
......@@ -29,4 +30,5 @@
| 1.3.2.RELEASE | ext_info 增加stapleFood主食设置 | 李小二 | 2020-04-20 |
| 1.3.3.RELEASE | 第三方外卖单配送费类型与新用户立减类型重复区分 | wuping | 2020-04-21 |
| 1.3.4.RELEASE | 记录真实配送费 | 海波 | 2020-04-27 |
| 1.3.5.RELEASE | oms正向履单流程 | 侯书虎 | 2020-04-27 |
\ No newline at end of file
| 1.3.5.RELEASE | oms正向履单流程 | 侯书虎 | 2020-04-27 |
| 1.3.6.RELEASE | 蜜雪 | 丁凯 | 2020-04-27 |
\ No newline at end of file
......@@ -138,6 +138,7 @@ public class OrderSdkAdapter {
//用户在界面上看到的支付金额
request.setSettlementAmount(requestVO.getAmount());
//实际支付现金金额,扣除支付自生优惠,单位分
request.setActualPayAmount(requestVO.getAmount());
if(requestVO.getOrderClient() != null){
request.setOrderClient(requestVO.getOrderClient().getIndex());
}else {
......@@ -431,6 +432,9 @@ public class OrderSdkAdapter {
if ("saasmall".equals(queryOrdersRequest.getSource()[i])) {
orderClients.add(OrderClientType.SAASMALL.getIndex());
}
if ("app".equals(queryOrdersRequest.getSource()[i])) {
orderClients.add(OrderClientType.APP.getIndex());
}
}
orderClients.add(OrderClientType.ALIPAY.getIndex());
orderConditionsReq.setOrderClients(orderClients);
......@@ -1231,6 +1235,9 @@ public class OrderSdkAdapter {
case "saasmall":
orderClientType = 23;
break;
case "app":
orderClientType = 12;
break;
default:
orderClientType = OrderClientType.SAAS.getIndex();
break;
......
......@@ -37,6 +37,8 @@ public enum OrderSourceType {
ALIPAY("alipay", "支付宝"),
SAASMALL("saasmall", "微商城"),
APP("app", "APP"),
;
private String code;
......
......@@ -14,4 +14,6 @@ public class PaymentRequest extends BaseConfig {
private String reverseNotifyiDcUrl;
private String payCode;
}
......@@ -40,7 +40,7 @@
<dependency>
<groupId>cn.freemud</groupId>
<artifactId>assortment-ordercenter-sdk</artifactId>
<version>1.3.5.RELEASE</version>
<version>1.3.6.RELEASE</version>
</dependency>
<dependency>
<groupId>com.freemud.application.service.sdk</groupId>
......
......@@ -796,6 +796,8 @@ public class OrderAdapter {
queryOrdersDto.setSource(new String[]{"meals"});
} else if(OrderChannelType.SAASMALL.getCode().equals(channelType)) {
queryOrdersDto.setSource(new String[]{"saasmall"});
} else if(OrderChannelType.APP.getCode().equals(channelType)){
queryOrdersDto.setSource(new String[]{"app"});
} else {
queryOrdersDto.setSource(new String[]{"saas"});
}
......@@ -2245,6 +2247,7 @@ public class OrderAdapter {
});
}
orderPayDto.setProducts(productBeans);
//orderPayDto.setPayCode(paymentRequest.getPayCode());
return orderPayDto;
}
......@@ -2742,7 +2745,7 @@ public class OrderAdapter {
public CreatePrepayRequestDto convertToCreatePrepayRequestDto(String partnerId, String wxAppId, String openId,
String faceCode, String cardCode, QueryOrdersResponse.DataBean.OrderBean fatherOrderBean,
String faceCode, String cardCode, String payCode, QueryOrdersResponse.DataBean.OrderBean fatherOrderBean,
QueryOrdersResponse.DataBean.OrderBean productOrderBean, long totalAmount, int cardAmount, OrderExtInfoDTO orderExtInfoDTO){
CreatePrepayRequestDto requestDto = new CreatePrepayRequestDto();
requestDto.setPartnerId(partnerId);
......@@ -2750,6 +2753,7 @@ public class OrderAdapter {
requestDto.setOpenId(openId);
requestDto.setFaceCode(faceCode);
requestDto.setCardCode(cardCode);
requestDto.setPayCode(payCode);
requestDto.setFatherOrderBean(fatherOrderBean);
requestDto.setProductOrderBean(productOrderBean);
requestDto.setTotalAmount(totalAmount);
......@@ -2761,7 +2765,8 @@ public class OrderAdapter {
public CreatePrepayRequestDto convertToCreatePrepayRequestDto(AssortmentCustomerInfoVo userLoginInfoDto,CreateOrderVo createOrderVo,
CreateOrderOperateDto createOrderOperateDto, OrderExtInfoDTO orderExtInfoDTO){
return this.convertToCreatePrepayRequestDto(createOrderVo.getPartnerId(), userLoginInfoDto.getWxAppId(), userLoginInfoDto.getOpenId(),
createOrderVo.getFaceCode(), createOrderVo.getCardCode(), createOrderOperateDto.getFatherOrderBean(), createOrderOperateDto.getProductOrderBean(),
createOrderVo.getFaceCode(), createOrderVo.getCardCode(), null,
createOrderOperateDto.getFatherOrderBean(), createOrderOperateDto.getProductOrderBean(),
createOrderOperateDto.getTotalAmount() == null ? 0 : createOrderOperateDto.getTotalAmount(),
createOrderOperateDto.getCardAmount() == null ? 0 : createOrderOperateDto.getCardAmount(), orderExtInfoDTO);
}
......
......@@ -11,6 +11,7 @@ public class CreatePrepayRequestDto {
private String openId;
private String faceCode;
private String cardCode;
private String payCode;
private QueryOrdersResponse.DataBean.OrderBean fatherOrderBean;
private QueryOrdersResponse.DataBean.OrderBean productOrderBean;
private long totalAmount;
......
......@@ -39,4 +39,7 @@ public class CreatePrepayVo {
@ApiModelProperty(value = "微信openId")
private String openId;
@ApiModelProperty(value = "支付渠道编号(参考支付组payment_platform)")
private String payCode;
}
......@@ -20,7 +20,9 @@ public enum OrderChannelType {
IWC("iwc","i围餐"),
SAASMALL("saasmall", "微商城");
SAASMALL("saasmall", "微商城"),
APP("app", "APP");
private String code;
......
......@@ -92,10 +92,12 @@ public class AppOrderServiceImpl implements AppOrderService {
// 关闭历史预支付订单
this.closeHistoryPrePay(productOrderBean);
OrderExtInfoDTO extInfo = JSONObject.parseObject(productOrderBean.getExtInfo(), OrderExtInfoDTO.class);
extInfo.setAppid(createPrepayVo.getPayAppId());
extInfo.setOpenid(createPrepayVo.getOpenId());
String faceCode = "";
String cardCode = "";
CreatePrepayRequestDto createPrepayRequestDto = orderAdapter.convertToCreatePrepayRequestDto(createPrepayVo.getPartnerId(), createPrepayVo.getPayAppId(), createPrepayVo.getOpenId(), faceCode,
cardCode, createOrderOperateDto.getFatherOrderBean(), createOrderOperateDto.getProductOrderBean(), createOrderOperateDto.getTotalAmount(),
cardCode, createPrepayVo.getPayCode(), createOrderOperateDto.getFatherOrderBean(), createOrderOperateDto.getProductOrderBean(), createOrderOperateDto.getTotalAmount(),
createOrderOperateDto.getCardAmount(), extInfo);
return orderservice.createPrepayOrder(createPrepayRequestDto);
}
......@@ -105,7 +107,7 @@ public class AppOrderServiceImpl implements AppOrderService {
throw new ServiceException(ResponseResult.ORDER_HAS_PAID);
}
OrderExtInfoDTO extInfo = JSONObject.parseObject(orderBean.getExtInfo(), OrderExtInfoDTO.class);
if(extInfo == null || StringUtils.isBlank(extInfo.getSessionId()) || extInfo.getSessionId().equals(createPrepayVo.getSessionId())) {
if(extInfo == null || StringUtils.isBlank(extInfo.getSessionId()) || !extInfo.getSessionId().equals(createPrepayVo.getSessionId())) {
throw new ServiceException(ResponseResult.ORDER_OWNER_ERROR);
}
}
......
......@@ -1780,7 +1780,7 @@ public class OrderServiceImpl implements Orderservice {
CreateOrderResponseVo createOrderResponse;
OrderPayResponse orderPayResponse = null;
PaymentRequest paymentRequest = orderBodyConvertToPaymentBody(createPrepayRequestDto.getOpenId(), createPrepayRequestDto.getPartnerId(), createPrepayRequestDto.getWxAppId());
PaymentRequest paymentRequest = orderBodyConvertToPaymentBody(createPrepayRequestDto.getOpenId(), createPrepayRequestDto.getPartnerId(), createPrepayRequestDto.getWxAppId(), createPrepayRequestDto.getPayCode());
long totalAmount = createPrepayRequestDto.getTotalAmount();
String cardCode = createPrepayRequestDto.getCardCode();
if (totalAmount < 0) {
......@@ -1888,6 +1888,7 @@ public class OrderServiceImpl implements Orderservice {
UnifiedOrderRequest request = orderAdapter.convent2UnifiedOrderRequest(orderBean, paymentRequest, orderBean.getAmount(), cardAmount);
com.freemud.application.sdk.api.base.BaseResponse<UnifiedOrderResponse> responseBase = standardPaymentService.unifiedOrder(request, trackingNo);
if (!ResponseCodeConstant.RESPONSE_SUCCESS_STR.equals(responseBase.getCode())) {
log.error("支付SDK返回信息错误,trackingNo:{} request:{} response:{}", trackingNo, JSONObject.toJSONString(request), JSONObject.toJSONString(responseBase));
return null;
}
putDelMq(request.getPartnerId(), request.getStoreId(), responseBase.getData().getFmId(), orderBean.getOid());
......@@ -1948,7 +1949,7 @@ public class OrderServiceImpl implements Orderservice {
return orderPayResponse;
}
private PaymentRequest orderBodyConvertToPaymentBody(String openId, String partnerId,String appId) {
private PaymentRequest orderBodyConvertToPaymentBody(String openId, String partnerId,String appId, String payCode) {
// String wxAppId = userLoginInfoDto.getWxAppId();
//设置支付信息
PaymentRequest paymentRequest = new PaymentRequest();
......@@ -1961,6 +1962,7 @@ public class OrderServiceImpl implements Orderservice {
}
paymentRequest.setPrincipalName(principalName);
paymentRequest.setReverseNotifyiDcUrl(reverseNotifyiDcUrl);
paymentRequest.setPayCode(payCode);
return paymentRequest;
}
......@@ -2064,6 +2066,7 @@ public class OrderServiceImpl implements Orderservice {
// orderExtInfo = orderAdapter.getOrderExtInfo(orderPayResponse, orderExtInfo);
orderExtInfo.setOpenid(orderPayResponse.getOpenId());
orderExtInfo.setFmId(orderPayResponse.getFmId());
orderExtInfo.setAppid(orderPayResponse.getWxAppid());
String prepayId = "";
OrderPayResponse.PayOrderBean payOrder = orderPayResponse.getPayOrder();
// StringUtils 依赖修改
......@@ -2331,7 +2334,7 @@ public class OrderServiceImpl implements Orderservice {
//<!---创建订单公共方法执行逻辑--->
OrderPayResponse orderPayResponse = null;
String appId = userLoginInfoDto.getWxAppId();
PaymentRequest paymentRequest = orderBodyConvertToPaymentBody(userLoginInfoDto.getOpenId(), createOrderVo.getPartnerId(),appId);
PaymentRequest paymentRequest = orderBodyConvertToPaymentBody(userLoginInfoDto.getOpenId(), createOrderVo.getPartnerId(),appId, null);
//支付金额异常
if (totalAmount < 0) {
throw new ServiceException(ResponseResult.PAY_AMOUNT_ERROR);
......@@ -2415,6 +2418,8 @@ public class OrderServiceImpl implements Orderservice {
channelType = OrderChannelType.IWC.getCode();
} else if(OrderChannelType.SAASMALL.getCode().equals(queryOrderVo.getChannelType())) {
channelType = OrderChannelType.SAASMALL.getCode();
} else if(UserLoginChannelEnum.APP.getCode().equals(userLoginInfoDto.getChannel())) {
channelType = OrderChannelType.APP.getCode();
}
return channelType;
}
......
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