From 3c88ed137df2428dd43a405336cbd79011345efd Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期二, 28 六月 2022 16:22:02 +0800
Subject: [PATCH] 支付配置
---
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/C3mOrderController.java | 127 +++++++++++-------------------------------
1 files changed, 34 insertions(+), 93 deletions(-)
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/C3mOrderController.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/C3mOrderController.java
index 5b4fbc9..8e416f1 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/C3mOrderController.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/C3mOrderController.java
@@ -1,34 +1,25 @@
package com.sandu.ximon.admin.controller;
-import com.alipay.api.AlipayClient;
-import com.alipay.api.DefaultAlipayClient;
-import com.alipay.api.domain.AlipayTradeWapPayModel;
-import com.alipay.api.request.AlipayTradeWapPayRequest;
import com.sandu.common.domain.ResponseVO;
import com.sandu.common.execption.BusinessException;
+import com.sandu.common.object.BaseConditionVO;
import com.sandu.common.util.ResponseUtil;
-import com.sandu.ximon.admin.config.AlipayConfig;
import com.sandu.ximon.admin.param.PayParam;
import com.sandu.ximon.admin.pay.alipay.UsrAlipayConfigService;
import com.sandu.ximon.admin.pay.wx.WxFastPayService;
import com.sandu.ximon.admin.service.C3ChargingService;
+import com.sandu.ximon.admin.service.C3mChargingChargeService;
import com.sandu.ximon.admin.service.C3mOrderService;
import com.sandu.ximon.admin.utils.AliPayUtils;
-import com.sandu.ximon.admin.utils.ConfigCheckUtils;
-import com.sandu.ximon.dao.domain.AliConfigEntity;
+import com.sandu.ximon.dao.bo.C3mOrderBo;
import com.sandu.ximon.dao.domain.C3mCharging;
import com.sandu.ximon.dao.domain.C3mOrder;
import com.sandu.ximon.dao.enums.OrderType;
import lombok.AllArgsConstructor;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
-import java.util.Date;
-import java.util.Map;
+import java.math.BigDecimal;
+import java.util.List;
import java.util.SortedMap;
/**
@@ -44,6 +35,7 @@
private final C3ChargingService c3mService;
private final UsrAlipayConfigService alipayConfigService;
private final WxFastPayService wxPayService;
+ private final C3mChargingChargeService c3mChargingChargeService;
/**
@@ -52,11 +44,13 @@
* @return
*/
@PostMapping("/refond")
- public ResponseVO<Object> refond(@RequestBody Map params) {
-// c3mOrderService.orderRefund( (String)params.get("outTradeNo"),
-// (Double)params.get("refundAmount"));
- return ResponseUtil.success(c3mOrderService.orderRefund((String) params.get("outTradeNo"),
- (Double) params.get("refundAmount")));
+ public ResponseVO<Object> refond(@RequestBody PayParam params) {
+
+ if (params.getOutTradeNo().isEmpty() || params.getRefundAmount() == null) {
+ throw new BusinessException("閫�娆惧弬鏁颁笉鑳戒负绌�");
+ }
+ return ResponseUtil.success(c3mOrderService.orderRefund(params.getOutTradeNo(),
+ params.getRefundAmount()));
}
@@ -75,13 +69,15 @@
if (null == c3m) {
throw new BusinessException("鏈壘鍒板綋鍓嶅厖鐢垫々");
}
+ //鑾峰彇棰勪粯閲戦
+ BigDecimal TotalAmount = c3mChargingChargeService.getCostByC3id(c3m.getC3Id(), param.getSubscribeChargingCapacity());
+ //杞崲涓篸ouble绫诲瀷
+ double totalAmount = TotalAmount.doubleValue();
C3mOrder c3mOrderEntity = c3mOrderService.advancePayOrder(param.getPoleId(), c3m, "wxpay"
- , param.getTotalAmount(), param.getSubscribeChargingCapacity());
+ , totalAmount, param.getSubscribeChargingCapacity());
if (null == c3mOrderEntity) {
throw new BusinessException("璇ュ厖鐢垫々姝h浣跨敤!");
}
-// return R.ok().put("outTradeNo",c3mOrderEntity.getOutTradeNo())
-// .put("totalAmount",totalAmount);
param.setOutTradeNo(c3mOrderEntity.getOutTradeNo());
param.setTotalAmount(c3mOrderEntity.getTotalAmount());
@@ -91,76 +87,12 @@
}
- @PostMapping("/aliPay")
- public ResponseVO<Object> c3AliPay(@RequestBody PayParam param, HttpServletResponse response) {
- // 鍟嗘埛璁㈠崟鍙凤紝鍟嗘埛缃戠珯璁㈠崟绯荤粺涓敮涓�璁㈠崟鍙凤紝蹇呭~
- String out_trade_no = param.getOutTradeNo();
- System.out.println("璁㈠崟鍙�:" + out_trade_no);
- // 璁㈠崟鍚嶇О锛屽繀濉�
- String subject = "鎵爜鍏呯數鏀粯(C3鍏呯數妗�)";
- // 浠樻閲戦锛屽繀濉紝鍗曚綅涓哄厓锛岀簿纭埌灏忔暟鐐瑰悗涓や綅锛屽彇鍊艰寖鍥碵0.01,100000000]
- String total_amount = param.getTotalAmount().toString();
- // 鍟嗗搧鎻忚堪锛屽彲绌�
- String body = "璇峰嬁浠樻锛屾祴璇曠敤";
- // 瓒呮椂鏃堕棿 鍙┖
- String timeout_express = "5m";
- // 閿�鍞骇鍝佺爜 蹇呭~
- String product_code = "QUICK_WAP_WAY";
- /**********************/
- AliConfigEntity alipayConfigEntity = alipayConfigService.getConfigByPoleId(param.getPoleId());
- String checkStr = ConfigCheckUtils.checkAlipayConfig(alipayConfigEntity);
- if (checkStr != null) {
- try {
- response.getWriter().write(checkStr);
- return ResponseUtil.fail("鏀粯瀹屾垚澶辫触");
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- //璋冪敤RSA绛惧悕鏂瑰紡
- AlipayClient client = new DefaultAlipayClient(AlipayConfig.gatewayUrl, alipayConfigEntity.getAppId(), alipayConfigEntity.getPrivateKey(), AlipayConfig.format, AlipayConfig.charset, alipayConfigEntity.getPublicKey(), AlipayConfig.sign_type);
- AlipayTradeWapPayRequest alipay_request = new AlipayTradeWapPayRequest();
-
- // 灏佽璇锋眰鏀粯淇℃伅
- AlipayTradeWapPayModel model = new AlipayTradeWapPayModel();
- model.setOutTradeNo(out_trade_no);
- model.setSubject(subject);
- model.setTotalAmount(total_amount);
- model.setBody(body);
- model.setTimeoutExpress(timeout_express);
- model.setProductCode(product_code);
- model.setQuitUrl(C3mOrder.REQUEST_URL + param.getPoleId() + "/" + new Date().getTime());
- alipay_request.setBizModel(model);
- // 璁剧疆寮傛閫氱煡鍦板潃
- alipay_request.setNotifyUrl(C3mOrder.REQUEST_URL + param.getPoleId() + "/" + new Date().getTime());
- // 璁剧疆鍚屾鍦板潃
- alipay_request.setReturnUrl(C3mOrder.REQUEST_URL + param.getPoleId() + "/" + new Date().getTime());
-
- // form琛ㄥ崟鐢熶骇
- String form = "";
- try {
- // 璋冪敤SDK鐢熸垚琛ㄥ崟
- form = client.pageExecute(alipay_request).getBody();
- response.setContentType("text/html;charset=" + AlipayConfig.charset);
- response.getWriter().write(form);//鐩存帴灏嗗畬鏁寸殑琛ㄥ崟html杈撳嚭鍒伴〉闈�
- response.getWriter().flush();
- response.getWriter().close();
- } catch (Exception e) {
- e.printStackTrace();
- }
- return ResponseUtil.success("鏀粯瀹屾垚");
- }
-
-// @RequestMapping("/wxpay")
-// public ResponseVO<Object> c3Wxpay(@RequestBody PayParam param) {
-//
-// //String result = wxPayService.miniAppPay(outTradeNo, totalAmount, streetlightId);
-// SortedMap<Object, Object> result = wxPayService.appPay("鎵爜鍏呯數鏀粯(C3鍏呯數妗�)", param.getOutTradeNo(), param.getWxPayTotalAmount(), param.getPoleId(),c3mOrderEntity);
-//
-// return ResponseUtil.success(result);
-// }
-
-
+ /**
+ * 璁㈠崟鐘舵�佹煡璇� 寰俊鏀粯
+ *
+ * @param param
+ * @return
+ */
@RequestMapping("/queryOrder")
public ResponseVO<Object> queryOrder(@RequestBody PayParam param) {
if (param.getOrderId() == null) {
@@ -180,4 +112,13 @@
}
+ /**
+ * 璁㈠崟鍒楄〃
+ */
+ @GetMapping("/list")
+ public ResponseVO<Object> list(BaseConditionVO baseConditionVO) {
+ List<C3mOrderBo> list = c3mOrderService.orderList(baseConditionVO);
+ return ResponseUtil.successPage(list);
+ }
+
}
--
Gitblit v1.9.3