记得上下班打卡 | git大法好,push需谨慎

Commit eed02880 authored by jiangxiulong's avatar jiangxiulong

order苹果支付 services调用

parent 90cdf281
package com.liquidnet.service.order.service.impl;
import com.fasterxml.jackson.core.type.TypeReference;
import com.liquidnet.commons.lang.util.*;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.goblin.dto.vo.GoblinApplePayInnerResultVo;
import com.liquidnet.service.goblin.dto.vo.GoblinGoodsSkuInfoVo;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.StringUtil;
import com.liquidnet.service.dragon.dto.DragonPayBaseReqDto;
import com.liquidnet.service.dragon.dto.DragonPayBaseRespDto;
import com.liquidnet.service.dragon.service.IDragonOrdersService;
import com.liquidnet.service.goblin.dto.vo.GoblinNftOrderVo;
import com.liquidnet.service.goblin.param.GoblinNftOrderPayCallbackParam;
import com.liquidnet.service.order.utils.GoblinNftOrderUtils;
import com.liquidnet.service.order.utils.GoblinRedisUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.util.LinkedMultiValueMap;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
......@@ -29,9 +28,11 @@ public class OrderApplePayServiceImpl {
@Autowired
private GoblinNftOrderServiceImpl goblinNftOrderService;
@Autowired
private IDragonOrdersService dragonOrdersService;
@Value("${liquidnet.service.order.url-pay.applePay}")
private String payUrl;
/*@Value("${liquidnet.service.order.url-pay.applePay}")
private String payUrl;*/
public boolean pay(String orderId, String type, String receiptData, String transactionId) {
try {
......@@ -41,7 +42,7 @@ public class OrderApplePayServiceImpl {
log.info("未找到该订单 [orderId:{}]", orderId);
return false;
}
LinkedMultiValueMap<String, String> httpData = CollectionUtil.linkedMultiValueMapStringString();
/*LinkedMultiValueMap<String, String> httpData = CollectionUtil.linkedMultiValueMapStringString();
httpData.add("type", type);
httpData.add("price", nftOrder.getPriceActual().toString());
httpData.add("name", nftOrder.getStoreName());
......@@ -67,13 +68,40 @@ public class OrderApplePayServiceImpl {
log.info("苹果支付调用DRAGON结果 = " + returnData);
ResponseDto<GoblinApplePayInnerResultVo> dto = JsonUtils.fromJson(returnData, new TypeReference<ResponseDto<GoblinApplePayInnerResultVo>>() {
});
GoblinApplePayInnerResultVo dtoData = dto.getData();
if (null == dtoData || dtoData.getStatus() != 0) {
GoblinApplePayInnerResultVo dtoData = dto.getData();*/
DragonPayBaseReqDto dragonPayBaseReqDto = DragonPayBaseReqDto.getNew();
dragonPayBaseReqDto.setPayType(nftOrder.getPayType());
dragonPayBaseReqDto.setDeviceFrom(nftOrder.getDeviceFrom());
dragonPayBaseReqDto.setType(type);
dragonPayBaseReqDto.setPrice(nftOrder.getPriceActual());
String storeName = nftOrder.getStoreName();
if (StringUtil.isNotNull(storeName) && storeName.length() >= 32) {
storeName = storeName.substring(0, 32);
}
dragonPayBaseReqDto.setName(storeName);
dragonPayBaseReqDto.setDetail("正在现场");
dragonPayBaseReqDto.setOrderCode(nftOrder.getOrderCode());
if (nftOrder.getOrderId() != null) {
dragonPayBaseReqDto.setOrderId(nftOrder.getOrderId());
}
dragonPayBaseReqDto.setClientIp(CurrentUtil.getCliIpAddr());
dragonPayBaseReqDto.setNotifyUrl("");
dragonPayBaseReqDto.setReturnUrl("");
dragonPayBaseReqDto.setShowUrl("");
dragonPayBaseReqDto.setCreateDate(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
dragonPayBaseReqDto.setExpireTime("5");
dragonPayBaseReqDto.setReceiptData(receiptData);
dragonPayBaseReqDto.setTransactionId(transactionId);
//调用苹果
DragonPayBaseRespDto dragonPayBaseRespDto = dragonOrdersService.dragonNotifyApple(dragonPayBaseReqDto);
if (null == dragonPayBaseRespDto || dragonPayBaseRespDto.getStatus() != 0) {
return false;
} else {
// 支付成功
GoblinNftOrderPayCallbackParam NftOrderPayCallbackParam = GoblinNftOrderPayCallbackParam.getNew();
NftOrderPayCallbackParam.setCode(dtoData.getCode());
NftOrderPayCallbackParam.setCode(dragonPayBaseRespDto.getCode());
NftOrderPayCallbackParam.setOrderCode(nftOrder.getOrderCode());
NftOrderPayCallbackParam.setPaymentAt(DateUtil.format(LocalDateTime.now(), DateUtil.Formatter.yyyyMMddHHmmss));
NftOrderPayCallbackParam.setPrice(nftOrder.getPriceActual());
......
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