feat:新增万顺融资支付接口

main
wb2476 2024-12-03 15:43:44 +08:00
parent 8e69b9c752
commit 4c9cd1803b
9 changed files with 1075 additions and 0 deletions

View File

@ -1,6 +1,12 @@
package com.czcb.scfs.api.service.v2.loan;
import com.czcb.scfs.api.core.ApiClient;
import com.czcb.scfs.api.core.http.HttpHeaders;
import com.czcb.scfs.api.core.http.HttpResponse;
import com.czcb.scfs.api.service.v2.loan.model.*;
import static com.czcb.scfs.api.core.Constants.API_VERSION;
import static com.czcb.scfs.api.core.Constants.V_2;
/**
*
@ -16,4 +22,59 @@ public class CreditPayService {
this.apiClient = apiClient;
}
/**
* 301907-
*
* @author H.T
* @since 2024/12/03
*/
public CreditPayLoanResponse creditPayLoan(CreditPayLoanRequest request) {
String url = "/credit-pay/loan";
HttpHeaders headers = new HttpHeaders();
headers.addHeader(API_VERSION, V_2);
HttpResponse<CreditPayLoanResponse> httpResponse = apiClient.post(url, headers, request.toJsonRequest(), CreditPayLoanResponse.class);
return httpResponse.getServiceResponse();
}
/**
* 301909-
*
* @author H.T
* @since 2024/12/03
*/
public CreditPayLoanInfoPageQueryResponse creditPayLoanQueryPage(CreditPayLoanInfoPageQueryRequest request) {
String url = "/credit-pay/loan/query-page";
HttpHeaders headers = new HttpHeaders();
headers.addHeader(API_VERSION, V_2);
HttpResponse<CreditPayLoanInfoPageQueryResponse> httpResponse = apiClient.post(url, headers, request.toJsonRequest(), CreditPayLoanInfoPageQueryResponse.class);
return httpResponse.getServiceResponse();
}
/**
* 302007-
*
* @author H.T
* @since 2024/12/03
*/
public CreditPayRepayResponse creditPayRepay(CreditPayRepayRequest request) {
String url = "/credit-pay/repay";
HttpHeaders headers = new HttpHeaders();
headers.addHeader(API_VERSION, V_2);
HttpResponse<CreditPayRepayResponse> httpResponse = apiClient.post(url, headers, request.toJsonRequest(), CreditPayRepayResponse.class);
return httpResponse.getServiceResponse();
}
/**
* 302008-
*
* @author H.T
* @since 2024/12/03
*/
public CreditPayRepayInfoPageQueryResponse creditPayRepayQueryPage(CreditPayRepayInfoPageQueryRequest request) {
String url = "/credit-pay/repay/query-page";
HttpHeaders headers = new HttpHeaders();
headers.addHeader(API_VERSION, V_2);
HttpResponse<CreditPayRepayInfoPageQueryResponse> httpResponse = apiClient.post(url, headers, request.toJsonRequest(), CreditPayRepayInfoPageQueryResponse.class);
return httpResponse.getServiceResponse();
}
}

View File

@ -0,0 +1,157 @@
package com.czcb.scfs.api.service.v2.loan.model;
import com.czcb.scfs.api.core.PageApiRequest;
import com.czcb.scfs.api.core.agrs.TransType;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.ToString;
import lombok.experimental.Accessors;
/**
* 301909-
*
* @author H.T
* @since 2024-11-20
*/
@Data
@Accessors(chain = true)
@TransType("301909")
public class CreditPayLoanInfoPageQueryRequest implements PageApiRequest {
/**
*
*/
@SerializedName("channel_no")
private String channelNo;
/**
*
*/
@SerializedName("app_no")
private String appNo;
/**
*
*/
@SerializedName("serial_no")
private String serialNo;
/**
*
*/
@SerializedName("trans_date")
private String transDate;
/**
*
*/
@SerializedName("trans_tradetime")
private String transTradeTime;
/**
*
*/
@SerializedName("req_serial_no")
private String reqSerialNo;
/**
*
*/
@SerializedName("sys_serial_no")
private String sysSerialNo;
/**
*
*/
@SerializedName("project_no")
private String projectNo;
/**
*
*/
@SerializedName("contract_no")
private String contractNo;
/**
*
*/
@SerializedName("apply_account_no")
private String applyAccountNo;
/**
*
*/
@SerializedName("apply_account_name")
private String applyAccountName;
/**
*
*/
@SerializedName("opp_account_no")
private String oppAccountNo;
/**
*
*/
@SerializedName("opp_account_name")
private String oppAccountName;
/**
*
*/
@SerializedName("st_opp_account_no")
private String stOppAccountNo;
/**
*
*/
@SerializedName("st_opp_account_name")
private String stOppAccountName;
/**
*
*/
@SerializedName("loan_acc_no")
private String loanAccNo;
/**
*
*/
@SerializedName("loan_acc_seq_no")
private String loanAccSeqNo;
/**
* 0 1 2
*/
@SerializedName("repay_status")
private String repayStatus;
/**
* -
*/
@SerializedName("trans_date_start")
private String transDateStart;
/**
* -
*/
@SerializedName("trans_date_end")
private String transDateEnd;
/**
* 0- 1- 2-
*/
@SerializedName("trans_status")
private String transStatus;
/**
*
*/
@SerializedName("current_page")
private Long currentPage;
/**
*
*/
@SerializedName("current_rows")
private Long currentRows;
}

View File

@ -0,0 +1,255 @@
package com.czcb.scfs.api.service.v2.loan.model;
import com.czcb.scfs.api.core.PageApiResponse;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* 301909-
*
* @author H.T
* @since 2024-12-03
*/
@Data
@Accessors(chain = true)
public class CreditPayLoanInfoPageQueryResponse implements PageApiResponse {
/**
* 000000
*/
@SerializedName("recode")
private String recode;
/**
*
*/
@SerializedName("recode_info")
private String recodeInfo;
/**
*
*/
@SerializedName("sys_serial_no")
private String sysSerialNo;
/**
* YYYY-MM-DD
*/
@SerializedName("sys_date")
private String sysDate;
/**
* YYYY-MM-DD hh:mm:ss
*/
@SerializedName("sys_time")
private String sysTime;
/**
*
*/
@SerializedName("current_page")
private Long currentPage;
/**
*
*/
@SerializedName("total_page")
private Long totalPage;
/**
*
*/
@SerializedName("total_rows")
private Long totalRows;
/**
* List
*/
@SerializedName("data")
private List<CreditPayLoanInfoPageQueryDTO> data;
/**
*
*/
@Data
public static class CreditPayLoanInfoPageQueryDTO implements Serializable {
/**
*
*/
@SerializedName("req_serial_no")
private String reqSerialNo;
/**
*
*/
@SerializedName("data_sys_serial_no")
private String dataSysSerialNo;
/**
*
*/
@SerializedName("project_no")
private String projectNo;
/**
*
*/
@SerializedName("contract_no")
private String contractNo;
/**
*
*/
@SerializedName("apply_account_no")
private String applyAccountNo;
/**
*
*/
@SerializedName("apply_account_name")
private String applyAccountName;
/**
*
*/
@SerializedName("apply_loan_amount")
private BigDecimal applyLoanAmount;
/**
*
*/
@SerializedName("opp_account_no")
private String oppAccountNo;
/**
*
*/
@SerializedName("opp_account_name")
private String oppAccountName;
/**
*
*/
@SerializedName("st_opp_account_no")
private String stOppAccountNo;
/**
*
*/
@SerializedName("st_opp_account_name")
private String stOppAccountName;
/**
*
*/
@SerializedName("loan_acc_no")
private String loanAccNo;
/**
*
*/
@SerializedName("loan_acc_seq_no")
private String loanAccSeqNo;
/**
* =*
*/
@SerializedName("loan_amount")
private BigDecimal loanAmount;
/**
*
*/
@SerializedName("loan_ratio")
private BigDecimal loanRatio;
/**
*
*/
@SerializedName("loan_deal_end_date")
private Date loanDealEndDate;
/**
* 0 1 2
*/
@SerializedName("repay_status")
private String repayStatus;
/**
*
*/
@SerializedName("repay_amount_total")
private BigDecimal repayAmountTotal;
/**
*
*/
@SerializedName("repay_amount_bj_total")
private BigDecimal repayAmountBjTotal;
/**
*
*/
@SerializedName("repay_amount_lx_total")
private BigDecimal repayAmountLxTotal;
/**
*
*/
@SerializedName("last_repay_amount")
private BigDecimal lastRepayAmount;
/**
*
*/
@SerializedName("last_repay_amount_bj")
private BigDecimal lastRepayAmountBj;
/**
*
*/
@SerializedName("last_repay_amount_lx")
private BigDecimal lastRepayAmountLx;
/**
* yyyy-MM-dd hh:mm:ss
*/
@SerializedName("last_repay_time")
private Date lastRepayTime;
/**
*
*/
@SerializedName("trans_date")
private Date transDate;
/**
*
*/
@SerializedName("trans_time")
private Date transTime;
/**
* 0- 1- 2-
*/
@SerializedName("trans_status")
private String transStatus;
/**
*
*/
@SerializedName("trans_result")
private String transResult;
/**
*
*/
@SerializedName("remark")
private String remark;
}
}

View File

@ -0,0 +1,106 @@
package com.czcb.scfs.api.service.v2.loan.model;
import com.czcb.scfs.api.core.ApiRequest;
import com.czcb.scfs.api.core.agrs.TransType;
import com.czcb.scfs.api.service.v2.file.model.FileMaterial;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
import java.math.BigDecimal;
import java.util.List;
/**
* 301907-
*
* @author H.T
* @since 2024-11-20
*/
@Data
@Accessors(chain = true)
@TransType("301907")
public class CreditPayLoanRequest implements ApiRequest {
/**
*
*/
@SerializedName("channel_no")
private String channelNo;
/**
*
*/
@SerializedName("app_no")
private String appNo;
/**
*
*/
@SerializedName("serial_no")
private String serialNo;
/**
*
*/
@SerializedName("trans_date")
private String transDate;
/**
*
*/
@SerializedName("trans_tradetime")
private String transTradeTime;
/**
*
*/
@SerializedName("apply_account_no")
private String applyAccountNo;
/**
*
*/
@SerializedName("apply_account_name")
private String applyAccountName;
/**
*
*/
@SerializedName("trans_amount")
private BigDecimal transAmount;
/**
*
*/
@SerializedName("contract_no")
private String contractNo;
/**
*
*/
@SerializedName("verify_code")
private String verifyCode;
/**
*
*/
@SerializedName("st_opp_account_no")
private String stOppAccountNo;
/**
*
*/
@SerializedName("st_opp_account_name")
private String stOppAccountName;
/**
*
*/
@SerializedName("period")
private String period;
/**
*
*/
@SerializedName("file_list")
private List<FileMaterial> fileList;
}

View File

@ -0,0 +1,58 @@
package com.czcb.scfs.api.service.v2.loan.model;
import com.czcb.scfs.api.core.ApiResponse;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
/**
* 302007-
*
* @author H.T
* @since 2024-11-20
*/
@Data
@Accessors(chain = true)
public class CreditPayLoanResponse implements ApiResponse {
/**
* 000000
*/
@SerializedName("recode")
private String recode;
/**
*
*/
@SerializedName("recode_info")
private String recodeInfo;
/**
*
*/
@SerializedName("sys_serial_no")
private String sysSerialNo;
/**
* YYYY-MM-DD
*/
@SerializedName("sys_date")
private String sysDate;
/**
* YYYY-MM-DD hh:mm:ss
*/
@SerializedName("sys_time")
private String sysTime;
/**
*
*/
@SerializedName("loan_acct_no")
private String loanAcctNo;
/**
*
*/
@SerializedName("loan_acc_seq_no")
private String loanAccSeqNo;
}

View File

@ -0,0 +1,126 @@
package com.czcb.scfs.api.service.v2.loan.model;
import com.czcb.scfs.api.core.PageApiRequest;
import com.czcb.scfs.api.core.agrs.TransType;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
/**
* 302008-
*
* @author H.T
* @since 2024-12-03
*/
@Data
@Accessors(chain = true)
@TransType("302008")
public class CreditPayRepayInfoPageQueryRequest implements PageApiRequest {
/**
*
*/
@SerializedName("channel_no")
private String channelNo;
/**
*
*/
@SerializedName("app_no")
private String appNo;
/**
*
*/
@SerializedName("serial_no")
private String serialNo;
/**
*
*/
@SerializedName("trans_date")
private String transDate;
/**
*
*/
@SerializedName("trans_tradetime")
private String transTradeTime;
/**
*
*/
@SerializedName("req_serial_no")
private String reqSerialNo;
/**
*
*/
@SerializedName("sys_serial_no")
private String sysSerialNo;
/**
*
*/
@SerializedName("contract_no")
private String contractNo;
/**
*
*/
@SerializedName("apply_account_no")
private String applyAccountNo;
/**
*
*/
@SerializedName("apply_account_name")
private String applyAccountName;
/**
* 0 1
*/
@SerializedName("repay_way")
private String repayWay;
/**
*
*/
@SerializedName("loan_acc_no")
private String loanAccNo;
/**
*
*/
@SerializedName("loan_acc_seq_no")
private String loanAccSeqNo;
/**
* -
*/
@SerializedName("trans_date_start")
private String transDateStart;
/**
* -
*/
@SerializedName("trans_date_end")
private String transDateEnd;
/**
* 0- 1- 2-
*/
@SerializedName("trans_status")
private String transStatus;
/**
*
*/
@SerializedName("current_page")
private Long currentPage;
/**
*
*/
@SerializedName("current_rows")
private Long currentRows;
}

View File

@ -0,0 +1,174 @@
package com.czcb.scfs.api.service.v2.loan.model;
import com.czcb.scfs.api.core.PageApiResponse;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* 302008-
*
* @author H.T
* @since 2024-12-03
*/
@Data
@Accessors(chain = true)
public class CreditPayRepayInfoPageQueryResponse implements PageApiResponse {
/**
* 000000
*/
@SerializedName("recode")
private String recode;
/**
*
*/
@SerializedName("recode_info")
private String recodeInfo;
/**
*
*/
@SerializedName("sys_serial_no")
private String sysSerialNo;
/**
* YYYY-MM-DD
*/
@SerializedName("sys_date")
private String sysDate;
/**
* YYYY-MM-DD hh:mm:ss
*/
@SerializedName("sys_time")
private String sysTime;
/**
*
*/
@SerializedName("current_page")
private Long currentPage;
/**
*
*/
@SerializedName("total_page")
private Long totalPage;
/**
*
*/
@SerializedName("total_rows")
private Long totalRows;
/**
* List
*/
@SerializedName("data")
private List<CreditPayRepayInfoPageQueryDTO> data;
@Data
public static class CreditPayRepayInfoPageQueryDTO implements Serializable {
/**
*
*/
@SerializedName("req_serial_no")
private String reqSerialNo;
/**
*
*/
@SerializedName("data_sys_serial_no")
private String dataSysSerialNo;
/**
*
*/
@SerializedName("contract_no")
private String contractNo;
/**
*
*/
@SerializedName("apply_account_no")
private String applyAccountNo;
/**
*
*/
@SerializedName("apply_account_name")
private String applyAccountName;
/**
*
*/
@SerializedName("repay_amount")
private BigDecimal repayAmount;
/**
* 0 1
*/
@SerializedName("repay_way")
private String repayWay;
/**
*
*/
@SerializedName("loan_acc_no")
private String loanAccNo;
/**
*
*/
@SerializedName("loan_acc_seq_no")
private String loanAccSeqNo;
/**
*
*/
@SerializedName("repay_amount_bj")
private BigDecimal repayAmountBj;
/**
*
*/
@SerializedName("repay_amount_lx")
private BigDecimal repayAmountLx;
/**
*
*/
@SerializedName("trans_date")
private Date transDate;
/**
*
*/
@SerializedName("trans_time")
private Date transTime;
/**
*
*/
@SerializedName("trans_status")
private String transStatus;
/**
*
*/
@SerializedName("trans_result")
private String transResult;
/**
*
*/
@SerializedName("remark")
private String remark;
}
}

View File

@ -0,0 +1,92 @@
package com.czcb.scfs.api.service.v2.loan.model;
import com.czcb.scfs.api.core.ApiRequest;
import com.czcb.scfs.api.core.agrs.TransType;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
import java.math.BigDecimal;
/**
* 302007-
*
* @author H.T
* @since 2024-12-03
*/
@Data
@Accessors(chain = true)
@TransType("302007")
public class CreditPayRepayRequest implements ApiRequest {
/**
*
*/
@SerializedName("channel_no")
private String channelNo;
/**
*
*/
@SerializedName("app_no")
private String appNo;
/**
*
*/
@SerializedName("serial_no")
private String serialNo;
/**
*
*/
@SerializedName("trans_date")
private String transDate;
/**
*
*/
@SerializedName("trans_tradetime")
private String transTradeTime;
/**
*
*/
@SerializedName("apply_account_no")
private String applyAccountNo;
/**
*
*/
@SerializedName("apply_account_name")
private String applyAccountName;
/**
*
*/
@SerializedName("trans_amount")
private BigDecimal transAmount;
/**
*
*/
@SerializedName("contract_no")
private String contractNo;
/**
*
*/
@SerializedName("verify_code")
private String verifyCode;
/**
*
*/
@SerializedName("loan_acct_no")
private String loanAcctNo;
/**
*
*/
@SerializedName("loan_acc_seq_no")
private String loanAccSeqNo;
}

View File

@ -0,0 +1,46 @@
package com.czcb.scfs.api.service.v2.loan.model;
import com.czcb.scfs.api.core.ApiResponse;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
/**
* 302007-
*
* @author H.T
* @since 2024-12-03
*/
@Data
@Accessors(chain = true)
public class CreditPayRepayResponse implements ApiResponse {
/**
* 000000
*/
@SerializedName("recode")
private String recode;
/**
*
*/
@SerializedName("recode_info")
private String recodeInfo;
/**
*
*/
@SerializedName("sys_serial_no")
private String sysSerialNo;
/**
* YYYY-MM-DD
*/
@SerializedName("sys_date")
private String sysDate;
/**
* YYYY-MM-DD hh:mm:ss
*/
@SerializedName("sys_time")
private String sysTime;
}