提交 037472e6 authored 作者: zgy's avatar zgy

代码优化

上级 38ecd31c
...@@ -29,7 +29,6 @@ import org.springframework.beans.BeanUtils; ...@@ -29,7 +29,6 @@ import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import sun.net.www.http.HttpClient;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.io.IOException; import java.io.IOException;
...@@ -57,6 +56,7 @@ public class FlutterWaveServiceImpl implements FlutterWaveService { ...@@ -57,6 +56,7 @@ public class FlutterWaveServiceImpl implements FlutterWaveService {
private RedisCache<Object> orderRedisCache; private RedisCache<Object> orderRedisCache;
private static Logger logger = LoggerFactory.getLogger(FlutterWaveServiceImpl.class); private static Logger logger = LoggerFactory.getLogger(FlutterWaveServiceImpl.class);
//退款API
private String FLUTTERWAVE_REFUND_URL = "https://api.ravepay.co/gpx/merchant/transactions/refund"; private String FLUTTERWAVE_REFUND_URL = "https://api.ravepay.co/gpx/merchant/transactions/refund";
/** /**
...@@ -73,6 +73,13 @@ public class FlutterWaveServiceImpl implements FlutterWaveService { ...@@ -73,6 +73,13 @@ public class FlutterWaveServiceImpl implements FlutterWaveService {
RaveConstant.ENVIRONMENT = Environment.STAGING; //or live RaveConstant.ENVIRONMENT = Environment.STAGING; //or live
Result result = new Result(); Result result = new Result();
TbCfOrderVo tbCfOrderVo = (TbCfOrderVo) orderRedisCache.get(KeyConstant.ORDER_DET + orderId); TbCfOrderVo tbCfOrderVo = (TbCfOrderVo) orderRedisCache.get(KeyConstant.ORDER_DET + orderId);
TbCfOrderEntity orderEntity = tbCfOrderDao.queryObject(orderId);
//判断这个订单是否已支付
if (orderEntity != null && OrderStatusEnum.PAID.getValue().equals(orderEntity.getPayStatus())) {
result.setMessage("Order paid");
result.setCode(ResultCodeEnum.ORDER_PAY_ERROR.getCode());
return result;
}
if (tbCfOrderVo != null) { if (tbCfOrderVo != null) {
try { try {
String orderPrice = tbCfOrderVo.getRealityPay().toString(); String orderPrice = tbCfOrderVo.getRealityPay().toString();
...@@ -89,10 +96,10 @@ public class FlutterWaveServiceImpl implements FlutterWaveService { ...@@ -89,10 +96,10 @@ public class FlutterWaveServiceImpl implements FlutterWaveService {
JSONObject chargevisa = ch.chargeVisaAndIntl(); JSONObject chargevisa = ch.chargeVisaAndIntl();
//if timeout, poll //if timeout, poll
//JSONObject pollvisa = ch.chargeVisaAndIntl(true); //JSONObject pollvisa = ch.chargeVisaAndIntl(true);
System.out.println(chargevisa); //System.out.println(chargevisa);
net.sf.json.JSONObject object = net.sf.json.JSONObject.fromObject(chargevisa.toString()); net.sf.json.JSONObject object = net.sf.json.JSONObject.fromObject(chargevisa.toString());
String status = object.getString("status"); String status = object.getString("status");
System.out.println("========>>>" + status); //System.out.println("========>>>" + status);
if ("success".equals(status)) { if ("success".equals(status)) {
net.sf.json.JSONObject data = object.getJSONObject("data"); net.sf.json.JSONObject data = object.getJSONObject("data");
String paymentId = data.getString("paymentId"); String paymentId = data.getString("paymentId");
...@@ -107,15 +114,14 @@ public class FlutterWaveServiceImpl implements FlutterWaveService { ...@@ -107,15 +114,14 @@ public class FlutterWaveServiceImpl implements FlutterWaveService {
TbCfFinanceEntity finance = createFinance(paymentId, url, tbCfOrderVo); TbCfFinanceEntity finance = createFinance(paymentId, url, tbCfOrderVo);
TbCfFinanceVo tbCfFinanceVo = new TbCfFinanceVo(); TbCfFinanceVo tbCfFinanceVo = new TbCfFinanceVo();
BeanUtils.copyProperties(finance, tbCfFinanceVo); BeanUtils.copyProperties(finance, tbCfFinanceVo);
//清除订单
result.setData(chargevisa).setMessage("Pay for success!"); result.setData(chargevisa).setMessage("Pay for success!");
logger.info(tbCfOrderVo.getUserName() + ":Pay for success! The order number is:" + tbCfOrderVo.getOrderId()); logger.info(tbCfOrderVo.getUserName() + ":Pay for success! The order number is:" + tbCfOrderVo.getOrderId());
//清除订单
removeRedisCache(tbCfOrderVo); removeRedisCache(tbCfOrderVo);
} else { } else {
result.setCode(ResultCodeEnum.ORDER_PAY_ERROR.getCode()).setMessage("payment failure!"); result.setCode(ResultCodeEnum.ORDER_PAY_ERROR.getCode()).setMessage("payment failure!");
logger.error(tbCfOrderVo.getUserName() + ":payment failure! The order number is:" + tbCfOrderVo.getOrderId()); logger.error(tbCfOrderVo.getUserName() + ":payment failure! The order number is:" + tbCfOrderVo.getOrderId());
} }
} catch (Exception e) { } catch (Exception e) {
result.setCode(ResultCodeEnum.ORDER_PAY_ERROR.getCode()).setMessage(e.getMessage()); result.setCode(ResultCodeEnum.ORDER_PAY_ERROR.getCode()).setMessage(e.getMessage());
logger.error(e.getMessage(), e); logger.error(e.getMessage(), e);
......
...@@ -76,6 +76,7 @@ public class PayPalServiceImpl implements PayPalService { ...@@ -76,6 +76,7 @@ public class PayPalServiceImpl implements PayPalService {
PayService service = new PayPalPayService(storage); PayService service = new PayPalPayService(storage);
TbCfOrderVo tbCfOrderVo = (TbCfOrderVo) orderRedisCache.get(KeyConstant.ORDER_DET + orderId); TbCfOrderVo tbCfOrderVo = (TbCfOrderVo) orderRedisCache.get(KeyConstant.ORDER_DET + orderId);
TbCfOrderEntity orderEntity = tbCfOrderDao.queryObject(orderId); TbCfOrderEntity orderEntity = tbCfOrderDao.queryObject(orderId);
//判断这个订单是否已支付
if (orderEntity != null && OrderStatusEnum.PAID.getValue().equals(orderEntity.getPayStatus())) { if (orderEntity != null && OrderStatusEnum.PAID.getValue().equals(orderEntity.getPayStatus())) {
result.setMessage("Order paid"); result.setMessage("Order paid");
result.setCode(ResultCodeEnum.ORDER_PAY_ERROR.getCode()); result.setCode(ResultCodeEnum.ORDER_PAY_ERROR.getCode());
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论