feat:新增万顺清算接口

main
wb2476 2024-12-03 14:47:45 +08:00
parent 8c22636822
commit 84a44dba43
7 changed files with 752 additions and 0 deletions

View File

@ -1,6 +1,12 @@
package com.czcb.scfs.api.service.v2.order;
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.order.model.*;
import static com.czcb.scfs.api.core.Constants.API_VERSION;
import static com.czcb.scfs.api.core.Constants.V_2;
/**
*
@ -16,5 +22,45 @@ public class OrderSettleService {
this.apiClient = apiClient;
}
/**
* 301507-
*
* @author H.T
* @since 2024/12/03
*/
public OrderSettleResponse orderSettle(OrderSettleRequest request) {
String url = "/order/settle";
HttpHeaders headers = new HttpHeaders();
headers.addHeader(API_VERSION, V_2);
HttpResponse<OrderSettleResponse> httpResponse = apiClient.post(url, headers, request.toJsonRequest(), OrderSettleResponse.class);
return httpResponse.getServiceResponse();
}
/**
* 301508-
*
* @author H.T
* @since 2024/12/03
*/
public OrderSettleResultQueryPageResponse orderSettleResultQueryPage(OrderSettleResultQueryPageRequest request) {
String url = "/order/settle/result/query-page";
HttpHeaders headers = new HttpHeaders();
headers.addHeader(API_VERSION, V_2);
HttpResponse<OrderSettleResultQueryPageResponse> httpResponse = apiClient.post(url, headers, request.toJsonRequest(), OrderSettleResultQueryPageResponse.class);
return httpResponse.getServiceResponse();
}
/**
* 301509-
*
* @author H.T
* @since 2024/12/03
*/
public OrderNotSettleStaResponse orderNotSettleSta(OrderNotSettleStaRequest request) {
String url = "/order/not-settle/sta";
HttpHeaders headers = new HttpHeaders();
headers.addHeader(API_VERSION, V_2);
HttpResponse<OrderNotSettleStaResponse> httpResponse = apiClient.post(url, headers, request.toJsonRequest(), OrderNotSettleStaResponse.class);
return httpResponse.getServiceResponse();
}
}

View File

@ -0,0 +1,66 @@
package com.czcb.scfs.api.service.v2.order.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;
/**
* 301509-
*
* @author H.T
* @since 2024-12-03
*/
@Data
@Accessors(chain = true)
@TransType("301509")
public class OrderNotSettleStaRequest 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("merchantid")
private String merchantid;
/**
*
*/
@SerializedName("pay_channel_no")
private String payChannelNo;
/**
*
*/
@SerializedName("pay_channel_merchantid")
private String payChannelMerchantid;
}

View File

@ -0,0 +1,158 @@
package com.czcb.scfs.api.service.v2.order.model;
import com.czcb.scfs.api.core.ApiResponse;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
/**
* 301509-
*
* @author H.T
* @since 2024-10-31
*/
@Data
@Accessors(chain = true)
public class OrderNotSettleStaResponse 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("data")
private List<OrderOppDetailData> data;
@Data
public static class OrderOppDetailData implements Serializable {
/**
*
*/
@SerializedName("req_serial_no")
private String reqSerialNo;
/**
*
*/
@SerializedName("data_sys_serial_no")
private String dataSysSerialNo;
/**
*
*/
@SerializedName("pay_serial_no")
private String paySerialNo;
/**
* e
*/
@SerializedName("merchantid")
private String merchantid;
/**
*
*/
@SerializedName("pay_channel_no")
private String payChannelNo;
/**
*
*/
@SerializedName("pay_channel_merchantid")
private String payChannelMerchantid;
/**
*
*/
@SerializedName("batch_no")
private String batchNo;
/**
*
*/
@SerializedName("order_no")
private String orderNo;
/**
*
*/
@SerializedName("account_no")
private String accountNo;
/**
*
*/
@SerializedName("account_name")
private String accountName;
/**
*
*/
@SerializedName("opp_account_no")
private String oppAccountNo;
/**
*
*/
@SerializedName("opp_account_name")
private String oppAccountName;
/**
*
*/
@SerializedName("opp_bank_no")
private String oppBankNo;
/**
*
*/
@SerializedName("opp_bank_name")
private String oppBankName;
/**
* 1簿 2
*/
@SerializedName("opp_account_type")
private String oppAccountType;
/**
* /退
*/
@SerializedName("opp_amount")
private BigDecimal oppAmount;
/**
*
*/
@SerializedName("remark")
private String remark;
}
}

View File

@ -0,0 +1,66 @@
package com.czcb.scfs.api.service.v2.order.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;
/**
* 301507-
*
* @author H.T
* @since 2024-12-03
*/
@Data
@Accessors(chain = true)
@TransType("301507")
public class OrderSettleRequest 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("merchantid")
private String merchantid;
/**
*
*/
@SerializedName("pay_channel_no")
private String payChannelNo;
/**
*
*/
@SerializedName("pay_channel_merchantid")
private String payChannelMerchantid;
}

View File

@ -0,0 +1,46 @@
package com.czcb.scfs.api.service.v2.order.model;
import com.czcb.scfs.api.core.ApiResponse;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
/**
* 301507-
*
* @author H.T
* @since 2024-12-03
*/
@Data
@Accessors(chain = true)
public class OrderSettleResponse 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;
}

View File

@ -0,0 +1,103 @@
package com.czcb.scfs.api.service.v2.order.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;
/**
* 301508-
*
* @author H.T
* @since 2024-12-03
*/
@Data
@Accessors(chain = true)
@TransType("301508")
public class OrderSettleResultQueryPageRequest 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("settle_serial_no")
private String settleSerialNo;
/**
* e
*/
@SerializedName("merchantid")
private String merchantid;
/**
*
*/
@SerializedName("pay_channel_merchantid")
private String payChannelMerchantid;
/**
*
*/
@SerializedName("settle_type")
private String settleType;
/**
* -
*/
@SerializedName("settle_date_start")
private String settleDateStart;
/**
* -
*/
@SerializedName("settle_date_end")
private String settleDateEnd;
/**
* 1 2
*/
@SerializedName("settle_status")
private String settleStatus;
/**
*
*/
@SerializedName("current_page")
private Long currentPage;
/**
*
*/
@SerializedName("current_rows")
private Long currentRows;
}

View File

@ -0,0 +1,267 @@
package com.czcb.scfs.api.service.v2.order.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;
/**
* 301508-
*
* @author H.T
* @since 2024-12-03
*/
@Data
@Accessors(chain = true)
public class OrderSettleResultQueryPageResponse 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("data")
private List<OrderSettleInfoData> data;
/**
*
*/
@SerializedName("current_page")
private Long currentPage;
/**
*
*/
@SerializedName("total_page")
private Long totalPage;
/**
*
*/
@SerializedName("total_rows")
private Long totalRows;
@Data
public static class OrderSettleInfoData implements Serializable {
/**
*
*/
@SerializedName("req_serial_no")
private String reqSerialNo;
/**
*
*/
@SerializedName("data_sys_serial_no")
private String dataSysSerialNo;
/**
*
*/
@SerializedName("settle_serial_no")
private String settleSerialNo;
/**
* e
*/
@SerializedName("merchantid")
private String merchantid;
/**
*
*/
@SerializedName("pay_channel_merchantid")
private String payChannelMerchantid;
/**
*
*/
@SerializedName("settle_type")
private String settleType;
/**
*
*/
@SerializedName("settle_date")
private Date settleDate;
/**
*
*/
@SerializedName("settle_time")
private Date settleTime;
/**
* 1 2
*/
@SerializedName("settle_status")
private String settleStatus;
/**
*
*/
@SerializedName("settle_result")
private String settleResult;
/**
*
*/
@SerializedName("settle_total_amount")
private BigDecimal settleTotalAmount;
/**
*
*/
@SerializedName("total_fee")
private BigDecimal totalFee;
/**
*
*/
@SerializedName("order_total_amount")
private BigDecimal orderTotalAmount;
/**
*
*/
@SerializedName("remark")
private String remark;
@SerializedName("detail_data")
private List<OrderSettleDetailData> detailData;
}
@Data
public static class OrderSettleDetailData implements Serializable {
/**
*
*/
@SerializedName("req_serial_no")
private String reqSerialNo;
/**
*
*/
@SerializedName("data_sys_serial_no")
private String dataSysSerialNo;
/**
*
*/
@SerializedName("settle_serial_no")
private String settleSerialNo;
/**
* e
*/
@SerializedName("merchantid")
private String merchantid;
/**
*
*/
@SerializedName("pay_channel_merchantid")
private String payChannelMerchantid;
/**
*
*/
@SerializedName("settle_index")
private Integer settleIndex;
/**
*
*/
@SerializedName("settle_type")
private String settleType;
/**
*
*/
@SerializedName("settle_time")
private Date settleTime;
/**
* 1 2
*/
@SerializedName("settle_status")
private String settleStatus;
/**
*
*/
@SerializedName("settle_result")
private String settleResult;
/**
*
*/
@SerializedName("account_no")
private String accountNo;
/**
*
*/
@SerializedName("account_name")
private String accountName;
/**
*
*/
@SerializedName("pay_amount")
private BigDecimal payAmount;
/**
*
*/
@SerializedName("opp_account_no")
private String oppAccountNo;
/**
*
*/
@SerializedName("opp_account_name")
private String oppAccountName;
/**
*
*/
@SerializedName("opp_amount")
private BigDecimal oppAmount;
/**
*
*/
@SerializedName("remark")
private String remark;
}
}