部分支付宝

This commit is contained in:
gong
2025-12-29 15:30:35 +08:00
parent 38ea1478cb
commit 8a8cef3005
5 changed files with 132 additions and 0 deletions

View File

@@ -43,6 +43,7 @@
<IJPay.version>2.9.10</IJPay.version>
<netty.version>4.1.128.Final</netty.version>
<wechatpay.version>0.2.17</wechatpay.version>
<apipay-v3.version>3.1.65.ALL</apipay-v3.version>
</properties>
<dependencyManagement>
@@ -275,6 +276,12 @@
<artifactId>wechatpay-java</artifactId>
<version>${wechatpay.version}</version>
</dependency>
<dependency>
<groupId>com.alipay.sdk</groupId>
<artifactId>alipay-sdk-java-v3</artifactId>
<version>${apipay-v3.version}</version>
</dependency>
</dependencies>
</dependencyManagement>

View File

@@ -25,6 +25,11 @@
<groupId>com.github.wechatpay-apiv3</groupId>
<artifactId>wechatpay-java</artifactId>
</dependency>
<dependency>
<groupId>com.alipay.sdk</groupId>
<artifactId>alipay-sdk-java-v3</artifactId>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,49 @@
package com.czg.alipay;
import com.alipay.v3.ApiClient;
import com.alipay.v3.ApiException;
import com.alipay.v3.Configuration;
import com.alipay.v3.api.AlipayOpenAgentApi;
import com.alipay.v3.model.AlipayOpenAgentCreateDefaultResponse;
import com.alipay.v3.model.AlipayOpenAgentCreateModel;
import com.alipay.v3.model.AlipayOpenAgentCreateResponseModel;
import com.alipay.v3.model.ContactModel;
import com.alipay.v3.util.model.AlipayConfig;
/**
* 支付宝进件管理
*
* <a href="https://opendocs.alipay.com/open-v3/b4c46445_alipay.open.agent.create">...</a>
* @author yjjie
* @date 2025/12/29 14:11
*/
public class AlipayEntryManager {
public static void main(String[] args) throws ApiException {
ApiClient defaultClient = Configuration.getDefaultApiClient();
// 初始化alipay参数全局设置一次
AlipayConfig alipayConfig = new AlipayConfig();
alipayConfig.setServerUrl("https://openapi.alipay.com");
alipayConfig.setAppId("2021004174605036");
alipayConfig.setAlipayPublicKey("MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAiQkrz+emAuS1mB3KKDOMmAZRd/BlPbh7fAIHAqAj1+QCZNcV3o2BTLIIqnuKpSlFXDG3uDzp2VsBxcizXuBbFyPGylnD9CgCj5abyh3+FIHPAZ2IM3TtpqImZ0TSPGXrMli4Nir7MvZktgccCqQKCC4o6iaDGz+UwWwJUIPna8fm2tiTZ+KH150CZbKVj4ZGNpBh5XSV/1dRgyQIV9D/EwSbkZ0n6VgKQLJBi0C2UE3QB17aL1Ir6+gDXIDbknN8O7GUD3aMGdThYdSRUb5wp9CZ5qfV7vCS/CgaRo38nhH3NOzkTL+7v0m1ZDHPmqEkn9VzZN6sCQdL7PoAOjHOCwIDAQAB");
alipayConfig.setPrivateKey("MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQD48HaUoV7OH7os+9L01kHgxzwIhJick4OkFq4aHsntsXEJ J3gedhuEZtV8oHKZ30DPW12IJ4S8NXtpr8OWaqrAPFonf4wVaRY1d0yIAea57kfLEn9oOEEy4FzARgMNDkyxC+/3OUdGbLHpTjfVX3gusXsEhUDy1/WewihAkoNYF37+W3W/uVLzeWoPq0EcUbRv/G/t/p6gL69ltsMAiVFG4Q/Yk24YAN6lYgBPNLXUEwQ1Q+T+1omjfavHgvarKOp33z3JOUH+aGOmDsJ5Y9gyGtJzOCipAd8Zcv+T1ygsEzZYO1/gzcbPnfO1ShqStCHzssuw8FBVx2JdfQKXKMMNAgMBAAECggEAVTrO/pg5Q00titU1Jspsh67u6OOs9H605Ws2dI7yB8VmtAGlaJh7V1t14FN2qSP8poHbhhAxq9aLyGV7C3a9u09udnN+3J28EtYjh7VO732bavWMVXxdJjQWzWWrCb9JlpxFrlkYBA6W4w/6ob0sAqCVQ7jzwbEa0R4cde8ztOa5nysKSfr4YTSs0gqvoiC6fmg8eiRJraEQBoYz9VkKFtOhhh/4w5FhVcYQ2gQvZ3kK3QVuD1eJIQKlCtz8qaox9lXKDiZT4SCmnKshdUL0u5TYIcYeBjZmhJz0Q50KHcpZrCs5y7I0+vRBH3hU+TKSQt7ureymwhbwWMHScLV2gQKBgQD+58SHXhr5M8NGagAmTdsgmCnNv2kOYMd4STyPMY10SVwCv1Bk808ZuP+7e558J1b5/OuDLI5dLq6xrZ/1wLv1G++XqxI00hlFuWS5mUGJVcXotT1mw20rVeUILc7Qe3mLvbMGgfyKf4A7Qa5SSZ4bDeDTJYaFxyiQ281hMzDuPQKBgQD6AiL/Na2/uPH4CG6juwpjYvYVUcjK+7gbRwf3wWsWMpk90Z4ju2iUiP5c1J/oK9P+1T3PIr6M4Xjza8JJj+r9KC/PVB0gBv6vVM96cDpKUEy/UMpcn/T81vqj/Z+WEOODU8Ms6NiTTm+u9ldvpCjbu0u8M+9c0JeIyadJvSTFEQKBgQCsxmFyM3nq8YfpgU2qqNjfBeRH3faSVUy+nj1a/YZYjKS+A/i1BCnYUImeBVNN6chNV342ggvY4xxruDiU9Vcw8wd58O09Oi8BEIFSP6upL6cebUI6Fjo3xlegLJRiwV6INkNTJOYM5hD/mSxUACwXQFfkJipBINXBIgraWD1RLQKBgQCj49axWq0F6+WjZVOyPaD3uh37p9trRUxRhWTxw3fB23WdktaKMgbCqHOmwzP4bRLSEVQtf2dOz1gMqu14b8HqJvgAf/F/11YJ9hz09LEhmjZVjE68HZfqT7uK2W5OX8/lfXmK7TFcj6SjG5YB96lZMhTZ0WnufEd6QkdKDZYXIQKBgQD9GDTcIMbFwbEaKHnfZaTD3f876EGRgsgrCxwdEk7LBCRPwWo7yI929M4psIlpNwNeiyjBkBunWIVkpznp6qPtJqagIPUYesU4f5v6/okq5wcpaNKSkWbIvWVLaLGOiA1aeGJtbpMpyClbSr52puHpRRdvAiIEQ74yYh0JX8q96g==");
defaultClient.setAlipayConfig(alipayConfig);
AlipayOpenAgentApi api = new AlipayOpenAgentApi();
AlipayOpenAgentCreateModel data = new AlipayOpenAgentCreateModel();
ContactModel contactInfo = new ContactModel();
contactInfo.setContactEmail("zhangsan@alipy.com");
contactInfo.setContactName("张三");
contactInfo.setContactMobile("18866668888");
data.setContactInfo(contactInfo);
data.setOrderTicket("00ee2d475f374ad097ee0f1ac223fX00");
data.setAccount("test@alipay.com");
try {
AlipayOpenAgentCreateResponseModel response = api.create(data);
System.out.println(response);
} catch (ApiException e) {
AlipayOpenAgentCreateDefaultResponse errorObject = (AlipayOpenAgentCreateDefaultResponse) e.getErrorObject();
System.out.println("调用失败:" + errorObject);
System.out.println("调用失败:" + e.getMessage());
}
}
}

View File

@@ -0,0 +1,34 @@
package com.czg.alipay.dto;
import com.alibaba.fastjson2.annotation.JSONField;
import lombok.Data;
/**
* 联系人信息
* @author yjjie
* @date 2025/12/29 14:21
*/
@Data
public class AlipayCreateContactInfoDto {
/**
* 【必填】
* 联系人名称
*/
@JSONField(name = "contact_name")
private String contactName;
/**
* 【必填】
* 联系人手机号
*/
@JSONField(name = "contact_mobile")
private String contactMobile;
/**
* 【选填】
* 联系人邮箱
*/
@JSONField(name = "contact_email")
private String contactEmail;
}

View File

@@ -0,0 +1,37 @@
package com.czg.alipay.dto;
import com.alibaba.fastjson2.annotation.JSONField;
import lombok.Data;
/**
* 开启代商户签约、创建应用事务
* 在 ISV 代商户进行应用创建、产品签约时,用于开启一个操作事务,必须是第一个调用的接口。
* 场景1ISV 代商户进行应用创建、产品签约,最后提交事务后需要商户确认才能完成流程;
* 场景2服务市场订购及授权使用订单授权凭证order_ticket开启预授权模式该模式下提交事务后无需商户确认。
* @author yjjie
* @date 2025/12/29 14:19
*/
@Data
public class AlipayCreateDto {
/**
* 【必填】
* isv代操作的商户账号可以是支付宝账号也可以是pid2088开头
*/
@JSONField(name = "account")
private String account;
/**
* 【必填】
* 商户联系人信息,包含联系人名称、手机、邮箱信息。联系人信息将用于接受签约后的重要通知,如确认协议、到期提醒等。
*/
@JSONField(name = "contact_info")
private AlipayCreateContactInfoDto contactInfo;
/**
* 【选填】
* 订单授权凭证。若传入本参数,则对应事务提交后进入预授权模式。
*/
@JSONField(name = "order_ticket")
private String orderTicket;
}