feat:电商GMV-汇总订单功能

main
wb2476 2026-03-24 09:36:21 +08:00
parent f5768980c7
commit 6538214d93
10 changed files with 823 additions and 3 deletions

View File

@ -0,0 +1,94 @@
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;
/**
*
*
* @author H.T
* @since 2026-03-23
*/
public class SummaryOrderService {
private final ApiClient apiClient;
public SummaryOrderService(ApiClient apiClient) {
this.apiClient = apiClient;
}
/**
* 310407-
*
* @author H.T
* @since 2026/3/23
*/
public OrderBaseResponse add(SummaryOrderAddRequest request) {
String url = "/summary-order/add";
HttpHeaders headers = new HttpHeaders();
headers.addHeader(API_VERSION, V_2);
HttpResponse<OrderBaseResponse> httpResponse = apiClient.post(url, headers, request.toJsonRequest(), OrderBaseResponse.class);
return httpResponse.getServiceResponse();
}
/**
* 310408-
*
* @author H.T
* @since 2026/3/24
*/
public OrderBaseResponse mod(SummaryOrderModRequest request) {
String url = "/summary-order/mod";
HttpHeaders headers = new HttpHeaders();
headers.addHeader(API_VERSION, V_2);
HttpResponse<OrderBaseResponse> httpResponse = apiClient.post(url, headers, request.toJsonRequest(), OrderBaseResponse.class);
return httpResponse.getServiceResponse();
}
/**
* 310409-
*
* @author H.T
* @since 2026/3/24
*/
public OrderBaseResponse del(SummaryOrderDelRequest request) {
String url = "/summary-order/del";
HttpHeaders headers = new HttpHeaders();
headers.addHeader(API_VERSION, V_2);
HttpResponse<OrderBaseResponse> httpResponse = apiClient.post(url, headers, request.toJsonRequest(), OrderBaseResponse.class);
return httpResponse.getServiceResponse();
}
/**
* 310410-
*
* @author H.T
* @since 2026/3/24
*/
public SummaryOrderQueryPageResponse page(SummaryOrderQueryPageRequest request) {
String url = "/summary-order/query-page";
HttpHeaders headers = new HttpHeaders();
headers.addHeader(API_VERSION, V_2);
HttpResponse<SummaryOrderQueryPageResponse> httpResponse = apiClient.post(url, headers, request.toJsonRequest(), SummaryOrderQueryPageResponse.class);
return httpResponse.getServiceResponse();
}
/**
* 310411-
*
* @author H.T
* @since 2026/3/24
*/
public SummaryOrderQueryDetailResponse detail(SummaryOrderQueryDetailRequest request) {
String url = "/summary-order/query-detail";
HttpHeaders headers = new HttpHeaders();
headers.addHeader(API_VERSION, V_2);
HttpResponse<SummaryOrderQueryDetailResponse> httpResponse = apiClient.post(url, headers, request.toJsonRequest(), SummaryOrderQueryDetailResponse.class);
return httpResponse.getServiceResponse();
}
}

View File

@ -0,0 +1,81 @@
package com.czcb.scfs.api.service.v2.order.model;
import com.czcb.scfs.api.core.agrs.TransType;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* 310407-
*
* @author H.T
* @since 2026-03-23
*/
@Data
@Accessors(chain = true)
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
@TransType("310407")
public class SummaryOrderAddRequest extends OrderBaseRequest implements Serializable {
/**
*
*/
@SerializedName("mch_no")
private String mchNo;
/**
*
*/
@SerializedName("mch_name")
private String mchName;
/**
*
*/
@SerializedName("order_no")
private String orderNo;
/**
* yyyy-MM-dd
*/
@SerializedName("order_date")
private String orderDate;
/**
*
*/
@SerializedName("order_amount")
private BigDecimal orderAmount;
/**
*
*/
@SerializedName("order_amount_1")
private BigDecimal orderAmount1;
/**
* 退
*/
@SerializedName("order_amount_2")
private BigDecimal orderAmount2;
/**
*
*/
@SerializedName("order_amount_3")
private BigDecimal orderAmount3;
/**
* 退
*/
@SerializedName("order_amount_4")
private BigDecimal orderAmount4;
/**
* *0.75
*/
@SerializedName("credit_limit")
private BigDecimal creditLimit;
/**
*
* PS
*/
@SerializedName("remark")
private String remark;
}

View File

@ -0,0 +1,29 @@
package com.czcb.scfs.api.service.v2.order.model;
import com.czcb.scfs.api.core.agrs.TransType;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
* 310409-
*
* @author H.T
* @since 2026-03-12
*/
@Data
@Accessors(chain = true)
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
@TransType("310409")
public class SummaryOrderDelRequest extends OrderBaseRequest implements Serializable {
/**
*
*/
@SerializedName("order_no")
private String orderNo;
}

View File

@ -0,0 +1,50 @@
package com.czcb.scfs.api.service.v2.order.model;
import com.czcb.scfs.api.core.agrs.TransType;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* 310408-
*
* @author H.T
* @since 2026-03-11
*/
@Data
@Accessors(chain = true)
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
@TransType("310407")
public class SummaryOrderModRequest extends OrderBaseRequest implements Serializable {
/**
*
*/
@SerializedName("order_no")
private String orderNo;
/**
*
*/
@SerializedName("order_amount_1")
private BigDecimal orderAmount1;
/**
*
*/
@SerializedName("order_amount_3")
private BigDecimal orderAmount3;
/**
* 退
*/
@SerializedName("order_amount_4")
private BigDecimal orderAmount4;
/**
* *0.75
*/
@SerializedName("credit_limit")
private BigDecimal creditLimit;
}

View File

@ -0,0 +1,29 @@
package com.czcb.scfs.api.service.v2.order.model;
import com.czcb.scfs.api.core.agrs.TransType;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
* 310411-
*
* @author H.T
* @since 2026-03-23
*/
@Data
@Accessors(chain = true)
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
@TransType("310407")
public class SummaryOrderQueryDetailRequest extends OrderBaseRequest implements Serializable {
/**
*
*/
@SerializedName("order_no")
private String orderNo;
}

View File

@ -0,0 +1,284 @@
package com.czcb.scfs.api.service.v2.order.model;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
/**
* 310411-
*
* @author H.T
* @since 2026-03-23
*/
@Data
@ToString(callSuper = true)
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = true)
public class SummaryOrderQueryDetailResponse extends OrderBaseResponse implements Serializable {
/**
*
*/
@SerializedName("mch_no")
private String mchNo;
/**
*
*/
@SerializedName("mch_name")
private String mchName;
/**
*
*/
@SerializedName("order_no")
private String orderNo;
/**
* yyyy-MM-dd
*/
@SerializedName("order_date")
private String orderDate;
/**
*
*/
@SerializedName("order_amount")
private BigDecimal orderAmount;
/**
*
*/
@SerializedName("order_amount_1")
private BigDecimal orderAmount1;
/**
* 退
*/
@SerializedName("order_amount_2")
private BigDecimal orderAmount2;
/**
*
*/
@SerializedName("order_amount_3")
private BigDecimal orderAmount3;
/**
* 退
*/
@SerializedName("order_amount_4")
private BigDecimal orderAmount4;
/**
*
*/
@SerializedName("credit_limit")
private BigDecimal creditLimit;
/**
*
*/
@SerializedName("loan_amount_sum")
private BigDecimal loanAmountSum;
/**
*
*/
@SerializedName("sup_diff_amount")
private BigDecimal supDiffAmount;
/**
*
*/
@SerializedName("remark")
private String remark;
/**
* 0 1
*/
@SerializedName("order_status")
private String orderStatus;
/**
*
*/
@SerializedName("settle_serial_no")
private String settleSerialNo;
/**
* 0: 1
*/
@SerializedName("settle_status")
private String settleStatus;
/**
*
*/
@SerializedName("settle_time")
private String settleTime;
/**
*
*/
@SerializedName("settle_remark")
private String settleRemark;
/**
*
*/
@SerializedName("create_time")
private String createTime;
/**
*
*/
@SerializedName("update_time")
private String updateTime;
/**
*
*/
@SerializedName("settle_amount_total")
private BigDecimal settleAmountTotal;
/**
*
*/
@SerializedName("deduct_amount_total")
private BigDecimal deductAmountTotal;
/**
*
*/
@SerializedName("unfreeze_amount_total")
private BigDecimal unfreezeAmountTotal;
/**
*
*/
@SerializedName("repay_amount_bj_total")
private BigDecimal repayAmountBjTotal;
/**
*
*/
@SerializedName("repay_amount_lx_total")
private BigDecimal repayAmountLxTotal;
/**
*
*/
@SerializedName("pay_fee_total")
private BigDecimal payFeeTotal;
/**
*
*/
@SerializedName("credit_data")
private List<OrderLiveCreditInfoData> data;
@Data
public static class OrderLiveCreditInfoData implements Serializable {
/**
*
*/
@SerializedName("mch_no")
private String mchNo;
/**
*
*/
@SerializedName("mch_name")
private String mchName;
/**
*
*/
@SerializedName("order_no")
private String orderNo;
/**
*
*/
@SerializedName("product_id")
private String productId;
/**
*
*/
@SerializedName("contract_no")
private String contractNo;
/**
*
*/
@SerializedName("account_no")
private String accountNo;
/**
*
*/
@SerializedName("account_name")
private String accountName;
/**
*
*/
@SerializedName("loanacctno")
private String loanAcctNo;
/**
*
*/
@SerializedName("acctseqno")
private String acctSeqNo;
/**
*
*/
@SerializedName("loan_amount")
private BigDecimal loanAmount;
/**
* yyyy-MM-dd
*/
@SerializedName("loan_date")
private String loanDate;
/**
* yyyy-MM-dd hh:mm:ss
*/
@SerializedName("loan_time")
private String loanTime;
/**
*
*/
@SerializedName("sys_serial_no")
private String sysSerialNo;
/**
*
*/
@SerializedName("core_serial_no")
private String coreSerialNo;
/**
*
*/
@SerializedName("remark")
private String remark;
/**
*
*/
@SerializedName("repay_serial_no")
private String repaySerialNo;
/**
* 0 1 2
*/
@SerializedName("repay_status")
private String repayStatus;
/**
*
*/
@SerializedName("repay_fail_msg")
private String repayFailMsg;
/**
*
*/
@SerializedName("repay_amount_bj")
private BigDecimal repayAmountBj;
/**
*
*/
@SerializedName("repay_amount_lx")
private BigDecimal repayAmountLx;
/**
* yyyy-MM-dd hh:mm:ss
*/
@SerializedName("repay_time")
private String repayTime;
/**
*
*/
@SerializedName("repay_remark")
private String repayRemark;
/**
*
*/
@SerializedName("create_time")
private String createTime;
/**
*
*/
@SerializedName("update_time")
private String updateTime;
}
}

View File

@ -0,0 +1,82 @@
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.ToString;
import lombok.experimental.Accessors;
/**
* 310410-
*
* @author H.T
* @since 2026-03-23
*/
@Data
@Accessors(chain = true)
@ToString(callSuper = true)
@TransType("310410")
public class SummaryOrderQueryPageRequest 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("mch_no")
private String mchNo;
/**
*
*/
@SerializedName("mch_name")
private String mchName;
/**
*
*/
@SerializedName("order_no")
private String orderNo;
/**
*
*/
@SerializedName("order_status")
private String orderStatus;
/**
*
*/
@SerializedName("settle_status")
private String settleStatus;
/**
* -
*/
@SerializedName("order_date_start")
private String orderDateStart;
/**
* -
*/
@SerializedName("order_date_end")
private String orderDateEnd;
}

View File

@ -0,0 +1,163 @@
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.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
/**
* 310410-
*
* @author H.T
* @since 2026-03-23
*/
@Data
@ToString(callSuper = true)
@Accessors(chain = true)
public class SummaryOrderQueryPageResponse implements PageApiResponse {
/**
*
*/
@SerializedName("data")
private List<OrderLiveInfoData> data;
@Data
public static class OrderLiveInfoData implements Serializable {
/**
*
*/
@SerializedName("mch_no")
private String mchNo;
/**
*
*/
@SerializedName("mch_name")
private String mchName;
/**
*
*/
@SerializedName("order_no")
private String orderNo;
/**
* yyyy-MM-dd
*/
@SerializedName("order_date")
private String orderDate;
/**
*
*/
@SerializedName("order_amount")
private BigDecimal orderAmount;
/**
*
*/
@SerializedName("order_amount_1")
private BigDecimal orderAmount1;
/**
* 退
*/
@SerializedName("order_amount_2")
private BigDecimal orderAmount2;
/**
*
*/
@SerializedName("order_amount_3")
private BigDecimal orderAmount3;
/**
* 退
*/
@SerializedName("order_amount_4")
private BigDecimal orderAmount4;
/**
*
*/
@SerializedName("credit_limit")
private BigDecimal creditLimit;
/**
*
*/
@SerializedName("loan_amount_sum")
private BigDecimal loanAmountSum;
/**
*
*/
@SerializedName("sup_diff_amount")
private BigDecimal supDiffAmount;
/**
*
*/
@SerializedName("settle_amount_total")
private BigDecimal settleAmountTotal;
/**
*
*/
@SerializedName("deduct_amount_total")
private BigDecimal deductAmountTotal;
/**
*
*/
@SerializedName("unfreeze_amount_total")
private BigDecimal unfreezeAmountTotal;
/**
*
*/
@SerializedName("repay_amount_bj_total")
private BigDecimal repayAmountBjTotal;
/**
*
*/
@SerializedName("repay_amount_lx_total")
private BigDecimal repayAmountLxTotal;
/**
*
*/
@SerializedName("pay_fee_total")
private BigDecimal payFeeTotal;
/**
*
*/
@SerializedName("remark")
private String remark;
/**
* 0 1
*/
@SerializedName("order_status")
private String orderStatus;
/**
*
*/
@SerializedName("settle_serial_no")
private String settleSerialNo;
/**
* 0: 1
*/
@SerializedName("settle_status")
private String settleStatus;
/**
*
*/
@SerializedName("settle_time")
private String settleTime;
/**
*
*/
@SerializedName("settle_remark")
private String settleRemark;
/**
*
*/
@SerializedName("create_time")
private String createTime;
/**
*
*/
@SerializedName("update_time")
private String updateTime;
}
}

View File

@ -339,5 +339,13 @@ public class ScfsAutoConfiguration {
return new CreditContractService(apiClient); return new CreditContractService(apiClient);
} }
/**
*
*/
@Bean
@ConditionalOnMissingBean
@ConditionalOnClass(SummaryOrderService.class)
public SummaryOrderService summaryOrderService(ApiClient apiClient) {
return new SummaryOrderService(apiClient);
}
} }

View File

@ -1,7 +1,7 @@
scfs.api-gateway.online=false scfs.api-gateway.online=false
# 外网地址 # \u5916\u7F51\u5730\u5740
#scfs.api-gateway.host=http://124.160.111.105:29080/api-gateway #scfs.api-gateway.host=http://124.160.111.105:29080/api-gateway
# 内网地址 # \u5185\u7F51\u5730\u5740
#scfs.api-gateway.host=http://10.133.91.109:9080/api-gateway #scfs.api-gateway.host=http://10.133.91.109:9080/api-gateway
scfs.api-gateway.host=http://127.0.0.1:8088/api-gateway scfs.api-gateway.host=http://127.0.0.1:8088/api-gateway
scfs.api-gateway.channel.channel-no=1039 scfs.api-gateway.channel.channel-no=1039