diff --git a/api-web/api-interface/src/main/java/com/heyu/api/controller/mm/AdminOrderController.java b/api-web/api-interface/src/main/java/com/heyu/api/controller/mm/AdminOrderController.java index fc87744..51e3649 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/controller/mm/AdminOrderController.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/controller/mm/AdminOrderController.java @@ -353,6 +353,7 @@ public class AdminOrderController { reverseOrderEntity.setWeixinTransactionId(refund.getTransactionId()); reverseOrderEntity.setUserEceivedAccount(refund.getUserReceivedAccount()); reverseOrderEntity.setPreRefundInfo(JSON.toJSONString(refund)); + reverseOrderEntity.setGmtPreRefund(new Date()); vvReverseOrderDao.updateVvReverseOrderById(reverseOrderEntity); } return r; diff --git a/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppWeiXinRefundNotifyController.java b/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppWeiXinRefundNotifyController.java index 85a5bb4..4f01007 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppWeiXinRefundNotifyController.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppWeiXinRefundNotifyController.java @@ -56,6 +56,7 @@ public class AppWeiXinRefundNotifyController { @PostMapping("/refundNotifyUrl") @Transactional public Object refundNotifyUrl(@RequestBody String jsonData) throws Exception { + log.info("AppWeiXinRefundNotifyController refundNotifyUrl jsonData = " + jsonData); //转为map格式 Map jsonMap = JSONObject.parseObject(jsonData, Map.class); //退款成功后返回一个加密字段resource,以下为解密 @@ -64,7 +65,6 @@ public class AppWeiXinRefundNotifyController { */ String resource = JSONObject.toJSONString(jsonMap.get("resource")); JSONObject object = JSONObject.parseObject(resource); - String ciphertext = String.valueOf(object.get("ciphertext")); String nonce = String.valueOf(object.get("nonce")); @@ -72,25 +72,27 @@ public class AppWeiXinRefundNotifyController { String associated_data = String.valueOf(object.get("associated_data")); String resultStr = decryptToString(associated_data.getBytes("UTF-8"), nonce.getBytes("UTF-8"), ciphertext); - log.info("AppWeiXinRefundNotifyController refundNotifyUrl resultStr = " + resultStr); + Map reqInfo = JSONObject.parseObject(resultStr, Map.class); + String refund_status = reqInfo.get("refund_status");//退款状态 String out_trade_no = reqInfo.get("out_trade_no"); //订单号 + log.info("AppWeiXinRefundNotifyController refundNotifyUrl out_trade_no:{} refund_status:{} resultStr :{} " ,out_trade_no,refund_status,resultStr); + Map parm = new HashMap<>(); if (!StringUtils.isEmpty(refund_status) && "SUCCESS".equals(refund_status)) { VvReverseOrderEntity vvReverseOrderEntity = reverseOrderDao.selectVvReverseOrderByTradeOrderId(NumberUtil.objToLong(out_trade_no)); vvReverseOrderEntity.setGmtRefunded(new Date()); vvReverseOrderEntity.setStatus(ReverseStatusEnums.refunded.getStatus()); + vvReverseOrderEntity.setGmtRefundNotify(new Date()); reverseOrderDao.updateVvReverseOrderById(vvReverseOrderEntity); List vvTradeOrderLineEntityList = vvTradeOrderLineDao.selectVvTradeOrderLineByTradeOrderId(NumberUtil.objToLong(out_trade_no)); - for (VvTradeOrderLineEntity vvTradeOrderLineEntity : vvTradeOrderLineEntityList) { vvTradeOrderLineEntity.setReverseStatus(ReverseStatusEnums.refunded.getStatus()); vvTradeOrderLineDao.updateVvTradeOrderLineById(vvTradeOrderLineEntity); } - //你自己的业务 parm.put("code", "SUCCESS"); parm.put("message", "成功");