停止充电增加订单号
This commit is contained in:
parent
e16a5a3f99
commit
05bd28159e
@ -190,6 +190,8 @@ public class XhpcChargeOrderServiceImpl implements IXhpcChargeOrderService {
|
||||
if(number !=0){
|
||||
startChargingData.setSoc(number);
|
||||
}
|
||||
logger.info("<<<<<<<<<<<<<<<<<<<<<<<<number>>>>>>>>>>>>>>>>>:"+number);
|
||||
logger.info("<<<<<<<<<<<<<<<<<<<<<<<<Soc>>>>>>>>>>>>>>>>>:"+startChargingData.getSoc());
|
||||
|
||||
R r1 = powerPileService.startCharging(startChargingData);
|
||||
logger.info("<<<<<<<<<<<<<<<<<<<<<<<<充电返回>>>>>>>>>>>>>>>>>");
|
||||
@ -247,8 +249,11 @@ public class XhpcChargeOrderServiceImpl implements IXhpcChargeOrderService {
|
||||
if(xhpcChargingPileById.get("communicationProtocolVersion")!=null && !"".equals(xhpcChargingPileById.get("communicationProtocolVersion").toString())){
|
||||
version=xhpcChargingPileById.get("communicationProtocolVersion").toString();
|
||||
}
|
||||
//获取充电订单号
|
||||
XhpcChargeOrder order = xhpcChargeOrderMapper.getChargingOrderId(chargingOrderId);
|
||||
|
||||
R oa = powerPileService.stopCharging(xhpcTerminal.getPileSerialNumber(), xhpcTerminal.getSerialNumber().substring(14), version);
|
||||
|
||||
R oa = powerPileService.stopCharging(order.getSerialNumber(),xhpcTerminal.getPileSerialNumber(), xhpcTerminal.getSerialNumber().substring(14), version);
|
||||
logger.info("<<<<<<<<<<<<<<<<<<<<<<<<停止充电返回>>>>>>>>>>>>>>>>>");
|
||||
logger.info("<<<<<<<<<<<<<<<<<<<<<<<<"+oa.getCode()+">>>>>>>>>>>>>>>>>");
|
||||
logger.info("<<<<<<<<<<<<<<<<<<<<<<<<"+oa.getMsg()+">>>>>>>>>>>>>>>>>");
|
||||
|
||||
@ -1,36 +1,35 @@
|
||||
package com.xhpc.payment.controller;
|
||||
|
||||
import cn.hutool.core.map.MapUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.alipay.api.AlipayApiException;
|
||||
import com.alipay.api.AlipayClient;
|
||||
import com.alipay.api.DefaultAlipayClient;
|
||||
import com.alipay.api.domain.AlipayTradeAppPayModel;
|
||||
import com.alipay.api.internal.util.AlipaySignature;
|
||||
import com.alipay.api.request.AlipayTradeCreateRequest;
|
||||
import com.alipay.api.response.AlipayTradeAppPayResponse;
|
||||
import com.alipay.api.response.AlipayTradeCreateResponse;
|
||||
import com.xhpc.common.core.constant.HttpStatus;
|
||||
import com.xhpc.common.core.constant.StatusConstants;
|
||||
import com.xhpc.common.core.utils.StringUtils;
|
||||
import com.xhpc.common.core.web.domain.AjaxResult;
|
||||
import com.xhpc.payment.domain.XhpcRechargeOrder;
|
||||
import com.xhpc.payment.mapper.XhpcUserAccountStatementMapper;
|
||||
import com.xhpc.payment.service.IXhpcRechargeOrderService;
|
||||
import com.xhpc.payment.service.IXhpcRefundOrderService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.core.env.Environment;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
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 javax.servlet.http.HttpServletRequest;
|
||||
import java.math.BigDecimal;
|
||||
import java.net.URLEncoder;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
|
||||
@RestController
|
||||
@ -44,7 +43,7 @@ public class AlipayPaymentController {
|
||||
private IXhpcRechargeOrderService iXhpcRechargeOrderService;
|
||||
//@Autowired
|
||||
//private XhpcUserAccountStatementMapper xhpcUserAccountStatementMapper;
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(AlipayPaymentController.class);
|
||||
@Autowired
|
||||
private IXhpcRefundOrderService iXhpcRefundOrderService;
|
||||
|
||||
@ -60,9 +59,9 @@ public class AlipayPaymentController {
|
||||
if (StringUtils.isEmpty(amount)) {
|
||||
return AjaxResult.error(HttpStatus.NOT_NULL, "充值金额不能为空");
|
||||
}else{
|
||||
if(new BigDecimal(5).compareTo(new BigDecimal(amount))==1){
|
||||
return AjaxResult.error(HttpStatus.NOT_NULL, "充值金额不能少于5元");
|
||||
}
|
||||
// if(new BigDecimal(5).compareTo(new BigDecimal(amount))==1){
|
||||
// return AjaxResult.error(HttpStatus.NOT_NULL, "充值金额不能少于5元");
|
||||
// }
|
||||
}
|
||||
//用户信息id
|
||||
String userId = StringUtils.valueOf(map.get("userId"));
|
||||
@ -78,18 +77,17 @@ public class AlipayPaymentController {
|
||||
//生成充值订单
|
||||
XhpcRechargeOrder xhpcRechargeOrder = iXhpcRechargeOrderService.addRechargeOrder(userId, BigDecimal.valueOf(Double.parseDouble(amount)), "2", orderNumber);
|
||||
String attach = attachYu(StringUtils.valueOf(xhpcRechargeOrder.getRechargeOrderId()), StringUtils.valueOf(amount), null, orderNumber);
|
||||
|
||||
AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do", environment.getProperty("ALIPAYAPPID"), environment.getProperty("ALIPAYPRIVATEKEY"), "json", "utf-8", environment.getProperty("ALIPAYPUBLICKEY"), "RSA2");
|
||||
AlipayTradeCreateRequest request = new AlipayTradeCreateRequest();
|
||||
|
||||
request.setBizContent("{" +
|
||||
"\"out_trade_no\":\""+orderNumber+"\"," +
|
||||
String encode = URLEncoder.encode(attach);
|
||||
System.out.println("encode :"+encode);
|
||||
request.setBizContent("{" + "\"out_trade_no\":\""+orderNumber+"\"," +
|
||||
"\"total_amount\":"+amount+"," +
|
||||
"\"subject\":\"小华充电\"," +
|
||||
"\"timeout_express\":\"30m\"," +
|
||||
"\"passback_params\":\""+encode+"\"," +
|
||||
"\"buyer_id\":\""+openid+"\"" +
|
||||
"}");
|
||||
//"\"passback_params\":\""+attach+"\"," +
|
||||
request.setNotifyUrl(environment.getProperty("ALIPAYPSERVERDOMAIN"));
|
||||
try {
|
||||
//这里和普通的接口调用不同,使用的是sdkExecute
|
||||
@ -132,12 +130,15 @@ public class AlipayPaymentController {
|
||||
valueStr = new String(valueStr.getBytes("ISO-8859-1"), "utf-8");
|
||||
params.put(name, valueStr);
|
||||
}
|
||||
logger.info("支付宝回调接口1111>>>>>:"+params.toString());
|
||||
//调用SDK验证签名
|
||||
boolean signVerified = AlipaySignature.rsaCheckV1(params, environment.getProperty("ALIPAYPUBLICKEY"), "utf-8", "RSA2");
|
||||
//boolean类型signVerified为true时 则验证成功
|
||||
if (signVerified) {
|
||||
//获取到支付的状态 TRADE_SUCCESS则支付成功
|
||||
String trade_status = request.getParameter("trade_status");
|
||||
Map<String, String> yu = convertRequestParamsToMap(request);
|
||||
logger.info("支付宝回调接口>>>>>:"+yu.toString());
|
||||
if (trade_status.equals("TRADE_SUCCESS")) {
|
||||
System.out.println("支付成功");
|
||||
} else {
|
||||
@ -146,6 +147,7 @@ public class AlipayPaymentController {
|
||||
}
|
||||
//签名验证失败
|
||||
else {
|
||||
logger.info("签名验证失败>>>>>:"+params.toString());
|
||||
System.out.println(AlipaySignature.getSignCheckContentV1(params));
|
||||
}
|
||||
}
|
||||
@ -161,4 +163,28 @@ public class AlipayPaymentController {
|
||||
String attach = attachSB.substring(1);
|
||||
return attach;
|
||||
}
|
||||
|
||||
|
||||
// 将request中的参数转换成Map
|
||||
private Map<String, String> convertRequestParamsToMap(HttpServletRequest request) {
|
||||
Map<String, String> retMap = new HashMap<String, String>();
|
||||
Set<Map.Entry<String, String[]>> entrySet = request.getParameterMap().entrySet();
|
||||
for (Map.Entry<String, String[]> entry : entrySet) {
|
||||
String name = entry.getKey();
|
||||
String[] values = entry.getValue();
|
||||
int valLen = values.length;
|
||||
if (valLen == 1) {
|
||||
retMap.put(name, values[0]);
|
||||
} else if (valLen > 1) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (String val : values) {
|
||||
sb.append(",").append(val);
|
||||
}
|
||||
retMap.put(name, sb.toString().substring(1));
|
||||
} else {
|
||||
retMap.put(name, "");
|
||||
}
|
||||
}
|
||||
return retMap;
|
||||
}
|
||||
}
|
||||
|
||||
@ -43,7 +43,7 @@ SERVERDOMAIN: "http://xhpc.scxhua.com/prod-api/xhpc-payment/wx/paymentCallback"
|
||||
WXTRANSFERS: "https://api.mch.weixin.qq.com/mmpaymkttransfers/promotion/transfers"
|
||||
|
||||
#支付宝支付回调地址
|
||||
ALIPAYPSERVERDOMAIN: "https://xhpc.scxhua.com/prod-api/alipay/notifyUrl"
|
||||
ALIPAYPSERVERDOMAIN: "https://xhpc.scxhua.com/prod-api/xhpc-payment/alipay/notifyUrl"
|
||||
#支付宝公钥
|
||||
ALIPAYPUBLICKEY: "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAjHDksTgZTpf0wh7oeTVRp0h3SqzTM2smjEJnx9jF1+q3WSXLRB4OzSzq7VsJ/szcyK10ZGO5PxeQ4u9GAG/U+7xhs7ei1cJB/Er55Sg9SbjfkTpwlDv181UJCRJJ/IAcqyqezwTpB8e2trYmHKovUdt0KR9/tVkGa7hsNd5GfxTOUaAFc3zADqRVM+wGimtG0NYfOF2f8tkmBEAiMMLKq5pbAnHU723a1cm/nfVp7gvXfsnO0k2GvRuHzb8mxIhWLiAnwdK9gEu5za/jWxo/xIvf2sdJPYdWj+yfyzA2e1fJkx4uRUzX31CXxZvP2/tfEcnTdI0gxN+OH2eAMiPVswIDAQAB"
|
||||
#应用私钥
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user