ruoyi-api/ruoyi-api-payment/src/main/java/com/ruoyi/payment/api/model/RefundResp.java
@@ -10,7 +10,22 @@ @Data public class RefundResp { /** * 支付宝交易号 * 状态 */ @JsonSetter("code") private String code; /** * 描述 */ @JsonSetter("msg") private String msg; /** * 退款时间 */ @JsonSetter("gmt_refund_pay") private String gmtRefundPay; /** * 支付宝退款交易号 */ @JsonSetter("trade_no") private String tradeNo; ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java
@@ -268,10 +268,14 @@ ShowDeviceResp showDeviceResp = iotInterfaceClient.showDeviceRequest(tChargingPile.getCode()).getData(); if(null != showDeviceResp){ DeleteDeviceResp deleteDeviceResp = iotInterfaceClient.deleteDevice(tChargingPile.getCode()).getData(); if(null == deleteDeviceResp || (deleteDeviceResp.getHttpStatusCode() != 200 && deleteDeviceResp.getHttpStatusCode() != 201 && deleteDeviceResp.getHttpStatusCode() != 204)){ if(null == deleteDeviceResp){ return AjaxResult.error("删除设备异常,请查看华为设备管理"); } } } ShowDeviceResp showDeviceResp = iotInterfaceClient.showDeviceRequest(tChargingPile.getCode()).getData(); if(null == showDeviceResp){ //调用华为Iot创建设备 AddDevice addDevice = new AddDevice(); addDevice.setProductId("66da68d21837002b28b34ec0"); ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
@@ -1147,7 +1147,7 @@ TChargingGun chargingGun = chargingGunClient.getChargingGunByCode(code).getData(); TChargingOrder order = this.getOne(new LambdaQueryWrapper<TChargingOrder>().eq(TChargingOrder::getChargingGunId, chargingGun.getId()) .orderByDesc(TChargingOrder::getEndTime).eq(TChargingOrder::getRechargePaymentStatus, 2).last(" limit 0, 1")); if(null != order && order.getStatus() != 3){ if(null != order && order.getStatus() != 4){ return; } @@ -2283,6 +2283,7 @@ referralReward(chargingOrder); //开始构建退款费用 refundAmount = refundAmount.setScale(2, RoundingMode.HALF_EVEN); if(refundAmount.compareTo(BigDecimal.ZERO) > 0){ Integer rechargePaymentType = chargingOrder.getRechargePaymentType(); //构建退款明细 @@ -2320,15 +2321,13 @@ if(2 == rechargePaymentType){ RefundReq dto = new RefundReq(); dto.setOutTradeNo(chargingOrder.getCode()); dto.setOutRequestNo(chargingOrderRefund.getCode()); dto.setOutRequestNo(chargingOrderRefund.getRefundCode()); dto.setRefundAmount(refundAmount.toString()); dto.setRefundReason("充电完成退款"); RefundResp resp = aliPaymentClient.refund(dto).getData(); if(null != resp){ AjaxResult success = chargingOrderStartupFailureWxRefund(resp.getOutTradeNo(), resp.getTradeNo(), "SUCCESS", null); if(success.isSuccess()){ chargingOrderRefundService.save(chargingOrderRefund); } chargingOrderRefundService.save(chargingOrderRefund); this.chargingOrderStartupFailureWxRefund(chargingOrderRefund.getRefundCode(), resp.getTradeNo(), "SUCCESS", null); } } ruoyi-service/ruoyi-payment/src/main/java/com/ruoyi/payment/ali/v2/AppletPayUtil.java
@@ -1,6 +1,7 @@ package com.ruoyi.payment.ali.v2; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.alipay.api.AlipayClient; import com.alipay.api.AlipayConfig; import com.alipay.api.DefaultAlipayClient; @@ -131,7 +132,9 @@ log.info("请求参数:{}", req); log.info("返回结果:{}", response.getBody()); if (response.isSuccess()) { return JSON.parseObject(response.getBody(), RefundResp.class); JSONObject jsonObject = JSON.parseObject(""); RefundResp alipay_trade_refund_response = jsonObject.getObject("alipay_trade_refund_response", RefundResp.class); return alipay_trade_refund_response; } }catch (Exception e){ e.printStackTrace();