From eaaa758b02a4a3b2633393322bf4f128edaa6c14 Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期三, 17 八月 2022 15:13:04 +0800
Subject: [PATCH] changes
---
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/C3mOrderController.java | 59 +++++++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 45 insertions(+), 14 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 8e416f1..28da159 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,8 +1,10 @@
package com.sandu.ximon.admin.controller;
+import cn.hutool.core.map.MapUtil;
import com.sandu.common.domain.ResponseVO;
import com.sandu.common.execption.BusinessException;
import com.sandu.common.object.BaseConditionVO;
+import com.sandu.common.security.annotation.AnonymousAccess;
import com.sandu.common.util.ResponseUtil;
import com.sandu.ximon.admin.param.PayParam;
import com.sandu.ximon.admin.pay.alipay.UsrAlipayConfigService;
@@ -11,15 +13,14 @@
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.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 me.chanjar.weixin.common.error.WxErrorException;
import org.springframework.web.bind.annotation.*;
import java.math.BigDecimal;
-import java.util.List;
import java.util.SortedMap;
/**
@@ -45,13 +46,12 @@
*/
@PostMapping("/refond")
public ResponseVO<Object> refond(@RequestBody PayParam params) {
-
- if (params.getOutTradeNo().isEmpty() || params.getRefundAmount() == null) {
+ if (params.getOutTradeNo().isEmpty() || params.getOutTradeNo() == null) {
throw new BusinessException("閫�娆惧弬鏁颁笉鑳戒负绌�");
}
+ // 0.00 鐢ㄤ簬鍗犱綅 娌℃湁瀹為檯鐢ㄥ 閫�娆炬帴鍙eソ鍑犱釜鍦版柟璋冪敤 涓嶅お濂芥敼
return ResponseUtil.success(c3mOrderService.orderRefund(params.getOutTradeNo(),
- params.getRefundAmount()));
-
+ 0.00));
}
/**
@@ -59,10 +59,17 @@
*
* @return
*/
+ @AnonymousAccess
@PostMapping("/advancePay")
- public ResponseVO<Object> advancePayOrder(@RequestBody PayParam param) {
- if (param.getTotalAmount() < 0) {
- throw new BusinessException("閲戦蹇呴』澶т簬0");
+ public ResponseVO<Object> advancePayOrder(@RequestBody PayParam param) throws WxErrorException {
+ if (param.getOpenId().isEmpty()) {
+ throw new BusinessException("寰俊code涓嶈兘涓虹┖");
+ }
+ if (param.getPoleId() == null || param.getSubscribeChargingCapacity() == null) {
+ throw new BusinessException("鍏呯數妗﹊d鎴栧厖鐢靛閲忎笉鑳戒负绌�");
+ }
+ if (param.getSubscribeChargingCapacity() < 1) {
+ throw new BusinessException("鍏呯數瀹归噺涓嶈兘灏忎簬1Kw/h");
}
// C3鍏呯數妗╁疄浣�
C3mCharging c3m = c3mService.getC3mByPoleId(param.getPoleId());
@@ -73,8 +80,9 @@
BigDecimal TotalAmount = c3mChargingChargeService.getCostByC3id(c3m.getC3Id(), param.getSubscribeChargingCapacity());
//杞崲涓篸ouble绫诲瀷
double totalAmount = TotalAmount.doubleValue();
+ //鐢熸垚璁㈠崟
C3mOrder c3mOrderEntity = c3mOrderService.advancePayOrder(param.getPoleId(), c3m, "wxpay"
- , totalAmount, param.getSubscribeChargingCapacity());
+ , totalAmount, param.getSubscribeChargingCapacity(), param.getOpenId());
if (null == c3mOrderEntity) {
throw new BusinessException("璇ュ厖鐢垫々姝h浣跨敤!");
}
@@ -82,7 +90,8 @@
param.setOutTradeNo(c3mOrderEntity.getOutTradeNo());
param.setTotalAmount(c3mOrderEntity.getTotalAmount());
String s = WxFastPayService.parseWxAmount(param.getTotalAmount().toString());
- SortedMap<Object, Object> result = wxPayService.miniAppPay("鎵爜鍏呯數鏀粯(C3鍏呯數妗�)", param.getOutTradeNo(), Integer.valueOf(s), param.getPoleId());
+ //鐢熸垚寰俊棰勪粯璁㈠崟
+ SortedMap<Object, Object> result = wxPayService.miniAppPay("鎵爜鍏呯數鏀粯(C3鍏呯數妗�)", param.getOutTradeNo(), Integer.valueOf(s), param.getPoleId(), param.getOpenId());
return ResponseUtil.success(result);
}
@@ -114,11 +123,33 @@
/**
* 璁㈠崟鍒楄〃
+ *
+ * @param baseConditionVO
+ * @param keyword 鐏潌鍚嶇О
+ * @param orderStatus 璁㈠崟鐘舵�侊細// 鏈敮浠�(0) 宸叉敮浠�(1),閫�娆句腑(2),宸查��娆�(3),璁㈠崟瀹屾垚(4),閫�娆惧け璐�5)
+ * @param timeType 鏃堕棿 1锛氫竴涓湀 2锛氫笁涓湀 3锛氬叚涓湀
+ * @return
*/
@GetMapping("/list")
- public ResponseVO<Object> list(BaseConditionVO baseConditionVO) {
- List<C3mOrderBo> list = c3mOrderService.orderList(baseConditionVO);
- return ResponseUtil.successPage(list);
+ public ResponseVO<Object> list(BaseConditionVO baseConditionVO,
+ @RequestParam(value = "keyword", required = false) String keyword,
+ @RequestParam(value = "orderStatus", required = false) Integer orderStatus,
+ @RequestParam(value = "timeType", required = false) Integer timeType) {
+ return ResponseUtil.successPage(c3mOrderService.orderList(baseConditionVO, keyword, orderStatus, timeType));
+ }
+
+ /**
+ * 鑾峰彇wx鐨刼penid
+ */
+ @AnonymousAccess
+ @PostMapping("/getWxOpenId")
+ public ResponseVO<Object> getWxOpenId(@RequestBody PayParam param) throws WxErrorException {
+ if (param.getWxCode() == null || param.getPoleId() == null || param.getWxCode().isEmpty()) {
+ throw new BusinessException("鍙傛暟涓嶈兘涓虹┖");
+ }
+ String openId = wxPayService.getOpenId(param.getPoleId(), param.getWxCode());
+
+ return ResponseUtil.success(MapUtil.builder().put("openId", openId).build());
}
}
--
Gitblit v1.9.3