From 9c3b7a36bae52bc97ef06c03178b862f5166866b Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期三, 08 十一月 2023 14:28:42 +0800 Subject: [PATCH] a --- server/services/src/main/java/com/doumee/core/wx/WxMiniUtilService.java | 34 ++++++++++++++++++++++++++++------ 1 files changed, 28 insertions(+), 6 deletions(-) diff --git a/server/services/src/main/java/com/doumee/core/wx/WxMiniUtilService.java b/server/services/src/main/java/com/doumee/core/wx/WxMiniUtilService.java index 295eb7e..aec7924 100644 --- a/server/services/src/main/java/com/doumee/core/wx/WxMiniUtilService.java +++ b/server/services/src/main/java/com/doumee/core/wx/WxMiniUtilService.java @@ -38,7 +38,7 @@ private TransactionsMapper transactionsMapper; - @Transactional(rollbackFor = Exception.class) + @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public Refund wxRefund(RefundDTO refundDTO) { try { // 鍙戦�侀��娆捐姹� @@ -46,35 +46,57 @@ WxPayRefundRequest request = new WxPayRefundRequest(); request.setOutTradeNo(refundDTO.getOrderId()); request.setOutRefundNo(refNum); - request.setTotalFee(BaseWxPayRequest.yuanToFen(refundDTO.getTotalAmount().toString())); - request.setRefundFee(BaseWxPayRequest.yuanToFen(refundDTO.getRefundAmount().toString())); + request.setTotalFee(refundDTO.getTotalAmount().intValue()); + request.setRefundFee(refundDTO.getRefundAmount().intValue()); + System.out.println("瀹為檯鎬婚噾棰�" + refundDTO.getTotalAmount()); + System.out.println("瀹為檯閫�娆鹃噾棰�" + refundDTO.getRefundAmount()); +// request.setTotalFee(1); +// request.setRefundFee(1); WxPayRefundResult response = WxMiniConfig.wxPayService.refund(request); if ("SUCCESS".equals(response.getReturnCode()) && "SUCCESS".equals(response.getResultCode())) { //瀛樺偍閫�娆捐褰� 涓� 娴佹按璁板綍 Refund refund = new Refund(); + refund.setId(Constants.getUUID()); refund.setCreateDate(new Date()); refund.setMemberId(refundDTO.getMemberId()); refund.setMoney(refundDTO.getRefundAmount()); refund.setOnlineOrderid(refNum); refund.setPayWay(Constants.ZERO); + refund.setStatus(Constants.TWO); refund.setDoneDate(new Date()); + refund.setCreator(refundDTO.getCreator()); refund.setType(refundDTO.getType()); refund.setObjId(refundDTO.getOrderId()); refund.setReason(refundDTO.getReason()); + refund.setCanBalance(refundDTO.getCanBalance()); refundMapper.insert(refund); //瀛樺偍浜ゆ槗娴佹按琛� Transactions transactions = new Transactions(); + transactions.setId(Constants.getUUID()); transactions.setMemberId(refundDTO.getMemberId()); transactions.setCreateDate(new Date()); transactions.setIsdeleted(Constants.ZERO); transactions.setOrderId(refundDTO.getOrderId()); transactions.setMoney(refundDTO.getRefundAmount()); - transactions.setType(refundDTO.getType()==Constants.transactionsType.refund?Constants.transactionsType.platformRefund:Constants.transactionsType.refund); transactions.setPreOrderid(refundDTO.getOrderId()); transactions.setOnlineOrderid(refNum); transactions.setDoneDate(new Date()); - transactions.setTitle("閫�娆�"); - transactions.setContent(refundDTO.getType()==Constants.transactionsType.refund?"骞冲彴閫�娆�":"缁撶畻閫�娆�"); + if(refund.getType().equals(Constants.REFUND_TYPE.PLAT_AUTO.getKey())||refund.getType().equals(Constants.REFUND_TYPE.PLAT_FORCE.getKey())){ + //骞冲彴鑷姩閫�娆� 鎴� 寮哄埗閫�娆� + transactions.setType(Constants.TRANSACTIONS_TYPE.REFUND.getKey()); + transactions.setTitle(Constants.REFUND_TYPE.PLAT_AUTO.getInfo()); + transactions.setContent(Constants.REFUND_TYPE.PLAT_AUTO.getInfo()); + }else if(refund.getType().equals(Constants.REFUND_TYPE.NORMAL.getKey())){ + //鐢ㄦ埛涓诲姩閫�娆� + transactions.setType(Constants.TRANSACTIONS_TYPE.REFUND.getKey()); + transactions.setTitle(Constants.REFUND_TYPE.NORMAL.getInfo()); + transactions.setContent(Constants.REFUND_TYPE.NORMAL.getInfo()); + }else if(refund.getType().equals(Constants.REFUND_TYPE.BACK.getKey())){ + //缁撶畻鍚庨��娆� + transactions.setType(Constants.TRANSACTIONS_TYPE.REFUND.getKey()); + transactions.setTitle(Constants.REFUND_TYPE.BACK.getInfo()); + transactions.setContent(Constants.REFUND_TYPE.BACK.getInfo()); + } transactions.setBalance(BigDecimal.ZERO); transactions.setObjId(refund.getId()); transactions.setObjType(Constants.ONE); -- Gitblit v1.9.3