身份验证

idcard
2024-05-05 15:37:42 +08:00
parent 403b4c34c8
commit 399e9bb1c6
3 changed files with 0 additions and 125 deletions

View File

@ -1,60 +0,0 @@
package com.group.order.config;
import cn.hutool.json.JSONObject;
import com.alipay.api.AlipayApiException;
import com.alipay.api.AlipayClient;
import com.alipay.api.request.AlipayTradePagePayRequest;
import com.song.order.entity.PayEntity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
/**
*
*/
@Component
public class AliPay {
@Autowired
private AlipayClient alipayClient;
@Autowired
private AliPayConfig aliPayConfig;
public void pay(PayEntity payEntity, HttpServletResponse response) {
AlipayTradePagePayRequest request = getAlipayTradePagePayRequest(payEntity);
// 执行请求,拿到响应的结果,返回给浏览器
String form = "";
try {
form = alipayClient.pageExecute(request).getBody(); // 调用SDK生成表单
} catch (AlipayApiException e) {
e.printStackTrace();
}
response.setContentType("text/html;charset=" + aliPayConfig.getCharset());
try {
response.getWriter().write(form);// 直接将完整的表单html输出到页面
response.getWriter().flush();
response.getWriter().close();
} catch (IOException e) {
throw new RuntimeException(e);
}
}
private AlipayTradePagePayRequest getAlipayTradePagePayRequest(PayEntity payEntity) {
AlipayTradePagePayRequest request = new AlipayTradePagePayRequest();
request.setNotifyUrl(aliPayConfig.getNotifyUrl());
JSONObject bizContent = new JSONObject();
bizContent.set("out_trade_no", payEntity.getPayId()); // 我们自己生成的订单编号
bizContent.set("total_amount", payEntity.getPrice()); // 订单的总金额
bizContent.set("subject", payEntity.getOrderTitle()); // 支付的名称
bizContent.set("product_code", aliPayConfig.getProductCode());
request.setBizContent(bizContent.toString());
request.setReturnUrl(aliPayConfig.getReturnUrl());// 支付完成后自动跳转到本地页面的路径
return request;
}
}

View File

@ -1,40 +0,0 @@
package com.group.order.config;
import com.alipay.api.AlipayClient;
import com.alipay.api.DefaultAlipayClient;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Component;
@Component
@Data
@ConfigurationProperties(prefix = "alipay")
public class AliPayConfig {
// 支付宝的AppId
private String appId;
// 应用私钥
private String appPrivateKey;
// 支付宝公钥
private String alipayPublicKey;
// 支付宝通知本地的接口完整地址
private String notifyUrl;
//支付宝跳转的地址
private String gatewayUrl ;
private String format;
private String charset;
//签名方式
private String signType;
//回调本地地址
private String returnUrl;
private String productCode;
@Bean
public AlipayClient alipayClient(){
return new DefaultAlipayClient(gatewayUrl,appId,appPrivateKey,format,charset,alipayPublicKey,signType);
}
}

View File

@ -1,25 +0,0 @@
package com.group.order.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;
/**
*
*/
@Configuration
public class CorsConfig {
@Bean
public CorsFilter corsFilter() {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
CorsConfiguration corsConfiguration = new CorsConfiguration();
corsConfiguration.addAllowedOrigin("*"); // 1 设置访问源地址
corsConfiguration.addAllowedHeader("*"); // 2 设置访问源请求头
corsConfiguration.addAllowedMethod("*"); // 3 设置访问源请求方法
source.registerCorsConfiguration("/**", corsConfiguration); // 4 对接口配置跨域设置
return new CorsFilter(source);
}
}