提交 8748ff1f authored 作者: zgy's avatar zgy

更改flutter校验接口

上级 94c5ef9f
......@@ -36,14 +36,14 @@ public class FlutterWaveController {
/**
* 验证付款
*
* @param txref
* @param
* @param orderId
* @return
*/
@PostMapping("/verifyPay")
public Result verifyPay(@ApiParam("交易唯一标识") @RequestParam("txref") String txref, @ApiParam("订单ID") @RequestParam("orderId") String orderId) {
public Result verifyPay( @ApiParam("订单ID") @RequestParam("orderId") String orderId) {
return flutterWaveService.verifyPay(txref, orderId);
return flutterWaveService.verifyPay( orderId);
}
......
......@@ -15,7 +15,9 @@ import java.io.IOException;
* @Description:
*/
public interface FlutterWaveService {
public Result payForOrder(String orderId, FlutterWaveCard flutterWaveCard);
Result verifyPay(String txref,String orderId);
public Result refund(FlutterWaveCard flutterWaveCard);
Result payForOrder(String orderId, FlutterWaveCard flutterWaveCard);
Result verifyPay(String orderId);
Result refund(FlutterWaveCard flutterWaveCard);
}
......@@ -67,7 +67,8 @@ public class FlutterWaveServiceImpl implements FlutterWaveService {
//校验API
private String VERIFY_PAY_URL = "https://api.ravepay.co/flwv3-pug/getpaidx/api/v2/verify";
//测试API
//private String VERIFY_PAY_URL = "https://ravesandboxapi.flutterwave.com/flwv3-pug/getpaidx/api/v2/verify";
/**
* 使用卡号支付(预支付)
......@@ -102,7 +103,7 @@ public class FlutterWaveServiceImpl implements FlutterWaveService {
.setExpiryyear(flutterWaveCard.getYear())
.setExpirymonth(flutterWaveCard.getMonth())
.setEmail(flutterWaveCard.getEmail())
.setTxRef("Afri-shop" + new Date().getTime());
.setTxRef(orderId);
JSONObject chargevisa = ch.chargeVisaAndIntl();
result.setData(chargevisa);
} catch (Exception e) {
......@@ -120,17 +121,16 @@ public class FlutterWaveServiceImpl implements FlutterWaveService {
/**
* 校验支付
*
* @param txref
* @param orderId
* @return
*/
@Override
public Result verifyPay(String txref, String orderId) {
public Result verifyPay(String orderId) {
Result result = new Result();
try {
TbCfOrderVo tbCfOrderVo = (TbCfOrderVo) orderRedisCache.get(KeyConstant.ORDER_DET + orderId);
Map<String, Object> map = new HashMap<>();
map.put("txref", txref);
map.put("txref", orderId);
map.put("SECKEY", domainProperties.getProperty("flutterwave.secret.key"));
String data = HttpClientUtil.sendPostWithBodyParameter(VERIFY_PAY_URL, map);
com.alibaba.fastjson.JSONObject object = JSON.parseObject(data);
......@@ -144,25 +144,25 @@ public class FlutterWaveServiceImpl implements FlutterWaveService {
if (tbCfOrderVo != null) {
changeOrderState(paymentid, tbCfOrderVo);
//修改优惠券状态
if (tbCfOrderVo.getCouponId() != null && "20".equals(tbCfOrderVo.getOrderStatus())) {
if (tbCfOrderVo.getCouponId() != null && OrderStatusEnum.PAID.getValue().equals(tbCfOrderVo.getOrderStatus())) {
tbCfToiCouponDao.changeCoupnStatus(tbCfOrderVo.getUserId(), tbCfOrderVo.getCouponId());
}
//生成支付流水
TbCfFinanceEntity finance = createFinance(paymentid, authurl, tbCfOrderVo);
TbCfFinanceVo tbCfFinanceVo = new TbCfFinanceVo();
BeanUtils.copyProperties(finance, tbCfFinanceVo);
logger.info(tbCfOrderVo.getUserName() + ":Pay for success! The order number is:" + tbCfOrderVo.getOrderId());
//清空订单
removeRedisCache(tbCfOrderVo);
}
result.setData(JSON.parseObject(data));
result.setCode(ResultCodeEnum.SUCCESS.getCode()).setMessage("payment success!");
logger.info("payment success! The flutterwave txref is:" + txref);
logger.info(tbCfOrderVo.getUserName() + ":Pay for success! The order number is:" + tbCfOrderVo.getOrderId());
} else {
result.setData(JSON.parseObject(data));
//支付失败
result.setCode(ResultCodeEnum.ORDER_PAY_ERROR.getCode()).setMessage("payment failure!");
logger.error("payment failure! The flutterwave txref is:" + txref);
logger.error(tbCfOrderVo.getUserName() + ":Pay for success! The order number is:" + tbCfOrderVo.getOrderId());
}
} catch (Exception e) {
result.setCode(ResultCodeEnum.VALIDATE_ERROR.getCode()).setMessage(e.getMessage());
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论