test:订单清算管理

main
wb2476 2024-12-04 09:52:40 +08:00
parent be7ed3a0d8
commit 1ac2131ffc
3 changed files with 354 additions and 1 deletions

View File

@ -51,7 +51,7 @@ public class OrderManageService {
}
/**
* 301010-
* 301010-
*
* @author H.T
* @since 2024/12/03

View File

@ -36,4 +36,32 @@ public class OrderSettleService {
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,325 @@
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.core.http.RequestBody;
import com.czcb.scfs.api.core.util.Json;
import com.czcb.scfs.api.service.MockHttpResponse;
import com.czcb.scfs.api.service.v2.order.model.*;
import org.assertj.core.util.Lists;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.jupiter.MockitoExtension;
import java.math.BigDecimal;
@ExtendWith(MockitoExtension.class)
class OrderSettleServiceTest {
@InjectMocks
private OrderSettleService service;
@Mock
private ApiClient apiClient;
@Test
void orderSettleResultQueryPageTest() {
OrderSettleResultQueryPageRequest request = new OrderSettleResultQueryPageRequest();
extractedOrderSettleResultQueryPageRequestParams(request);
extractedOrderSettleResultQueryPageRequestAssertions(request);
System.out.println(Json.toJson(request));
String requestJson = Json.toJson(request);
Assertions.assertEquals("{\"channel_no\":\"setChannelNo\",\"app_no\":\"setAppNo\",\"serial_no\":\"setSerialNo\",\"trans_date\":\"setTransDate\",\"trans_tradetime\":\"setTransTradeTime\",\"settle_serial_no\":\"setSettleSerialNo\",\"merchantid\":\"setMerchantid\",\"pay_channel_merchantid\":\"setPayChannelMerchantid\",\"settle_type\":\"setSettleType\",\"settle_date_start\":\"setSettleDateStart\",\"settle_date_end\":\"setSettleDateEnd\",\"settle_status\":\"setSettleStatus\",\"current_page\":1,\"current_rows\":1}", requestJson);
OrderSettleResultQueryPageResponse response = new OrderSettleResultQueryPageResponse();
extractedOrderSettleResultQueryPageResponseParams(response);
extractedOrderSettleResultQueryPageResponseAssertions(response);
System.out.println(Json.toJson(response));
String responseJson = Json.toJson(response);
Assertions.assertEquals("{\"recode\":\"setRecode\",\"recode_info\":\"setRecodeInfo\",\"sys_serial_no\":\"setSysSerialNo\",\"sys_date\":\"setSysDate\",\"sys_time\":\"setSysTime\",\"data\":[{\"req_serial_no\":\"setReqSerialNo\",\"data_sys_serial_no\":\"setDataSysSerialNo\",\"settle_serial_no\":\"setSettleSerialNo\",\"merchantid\":\"setMerchantid\",\"pay_channel_merchantid\":\"setPayChannelMerchantid\",\"settle_type\":\"setSettleType\",\"settle_status\":\"setSettleStatus\",\"settle_result\":\"setSettleResult\",\"settle_total_amount\":100.0,\"total_fee\":100.0,\"order_total_amount\":100.0,\"remark\":\"setRemark\",\"detail_data\":[]}],\"current_page\":1,\"total_page\":1,\"total_rows\":1}", responseJson);
HttpResponse<OrderSettleResultQueryPageResponse> httpResponse = MockHttpResponse.create("orderSettleResultQueryPage", response, OrderSettleResultQueryPageResponse.class);
Mockito.when(apiClient.post(
Mockito.eq("/order/settle/result/query-page"),
Mockito.any(HttpHeaders.class),
Mockito.any(RequestBody.class),
Mockito.eq(OrderSettleResultQueryPageResponse.class)))
.thenReturn(httpResponse);
OrderSettleResultQueryPageResponse result = service.orderSettleResultQueryPage(request);
System.out.println(Json.toJson(result));
String resultJson = Json.toJson(result);
Assertions.assertEquals("{\"recode\":\"setRecode\",\"recode_info\":\"setRecodeInfo\",\"sys_serial_no\":\"setSysSerialNo\",\"sys_date\":\"setSysDate\",\"sys_time\":\"setSysTime\",\"data\":[{\"req_serial_no\":\"setReqSerialNo\",\"data_sys_serial_no\":\"setDataSysSerialNo\",\"settle_serial_no\":\"setSettleSerialNo\",\"merchantid\":\"setMerchantid\",\"pay_channel_merchantid\":\"setPayChannelMerchantid\",\"settle_type\":\"setSettleType\",\"settle_status\":\"setSettleStatus\",\"settle_result\":\"setSettleResult\",\"settle_total_amount\":100.0,\"total_fee\":100.0,\"order_total_amount\":100.0,\"remark\":\"setRemark\",\"detail_data\":[]}],\"current_page\":1,\"total_page\":1,\"total_rows\":1}", resultJson);
}
void extractedOrderSettleResultQueryPageRequestParams(OrderSettleResultQueryPageRequest request) {
request.setTransTradeTime("setTransTradeTime");
request.setPayChannelMerchantid("setPayChannelMerchantid");
request.setSettleDateStart("setSettleDateStart");
request.setSettleSerialNo("setSettleSerialNo");
request.setAppNo("setAppNo");
request.setTransDate("setTransDate");
request.setSettleType("setSettleType");
request.setCurrentRows(1L);
request.setMerchantid("setMerchantid");
request.setSerialNo("setSerialNo");
request.setCurrentPage(1L);
request.setChannelNo("setChannelNo");
request.setSettleStatus("setSettleStatus");
request.setSettleDateEnd("setSettleDateEnd");
}
void extractedOrderSettleResultQueryPageRequestAssertions(OrderSettleResultQueryPageRequest request) {
Assertions.assertEquals("setTransTradeTime", request.getTransTradeTime());
Assertions.assertEquals("setPayChannelMerchantid", request.getPayChannelMerchantid());
Assertions.assertEquals("setSettleDateStart", request.getSettleDateStart());
Assertions.assertEquals("setSettleSerialNo", request.getSettleSerialNo());
Assertions.assertEquals("setAppNo", request.getAppNo());
Assertions.assertEquals("setTransDate", request.getTransDate());
Assertions.assertEquals("setSettleType", request.getSettleType());
Assertions.assertEquals(1L, request.getCurrentRows());
Assertions.assertEquals("setMerchantid", request.getMerchantid());
Assertions.assertEquals("setSerialNo", request.getSerialNo());
Assertions.assertEquals(1L, request.getCurrentPage());
Assertions.assertEquals("setChannelNo", request.getChannelNo());
Assertions.assertEquals("setSettleStatus", request.getSettleStatus());
Assertions.assertEquals("setSettleDateEnd", request.getSettleDateEnd());
}
void extractedOrderSettleResultQueryPageResponseParams(OrderSettleResultQueryPageResponse response) {
response.setCurrentPage(1L);
response.setRecodeInfo("setRecodeInfo");
OrderSettleResultQueryPageResponse.OrderSettleInfoData ordersettleinfodata = new OrderSettleResultQueryPageResponse.OrderSettleInfoData();
extractedOrderSettleResultQueryPageResponseOrderSettleInfoDataNestParams(ordersettleinfodata);
response.setData(Lists.list(ordersettleinfodata));
response.setTotalPage(1L);
response.setRecode("setRecode");
response.setSysTime("setSysTime");
response.setSysSerialNo("setSysSerialNo");
response.setSysDate("setSysDate");
response.setTotalRows(1L);
}
void extractedOrderSettleResultQueryPageResponseOrderSettleInfoDataNestParams(OrderSettleResultQueryPageResponse.OrderSettleInfoData nest) {
nest.setReqSerialNo("setReqSerialNo");
nest.setDetailData(Lists.list());
nest.setRemark("setRemark");
nest.setSettleResult("setSettleResult");
nest.setTotalFee(BigDecimal.valueOf(100.00));
nest.setPayChannelMerchantid("setPayChannelMerchantid");
nest.setSettleSerialNo("setSettleSerialNo");
nest.setSettleTotalAmount(BigDecimal.valueOf(100.00));
nest.setDataSysSerialNo("setDataSysSerialNo");
nest.setOrderTotalAmount(BigDecimal.valueOf(100.00));
nest.setSettleType("setSettleType");
nest.setMerchantid("setMerchantid");
nest.setSettleStatus("setSettleStatus");
}
void extractedOrderSettleResultQueryPageResponseOrderSettleInfoDataNestAssertions(OrderSettleResultQueryPageResponse.OrderSettleInfoData nest) {
Assertions.assertEquals("setReqSerialNo", nest.getReqSerialNo());
Assertions.assertNotNull(nest.getDetailData());
Assertions.assertEquals("setRemark", nest.getRemark());
Assertions.assertEquals("setSettleResult", nest.getSettleResult());
Assertions.assertEquals(BigDecimal.valueOf(100.00), nest.getTotalFee());
Assertions.assertEquals("setPayChannelMerchantid", nest.getPayChannelMerchantid());
Assertions.assertEquals("setSettleSerialNo", nest.getSettleSerialNo());
Assertions.assertEquals(BigDecimal.valueOf(100.00), nest.getSettleTotalAmount());
Assertions.assertEquals("setDataSysSerialNo", nest.getDataSysSerialNo());
Assertions.assertEquals(BigDecimal.valueOf(100.00), nest.getOrderTotalAmount());
Assertions.assertEquals("setSettleType", nest.getSettleType());
Assertions.assertEquals("setMerchantid", nest.getMerchantid());
Assertions.assertEquals("setSettleStatus", nest.getSettleStatus());
}
void extractedOrderSettleResultQueryPageResponseAssertions(OrderSettleResultQueryPageResponse response) {
Assertions.assertEquals(1L, response.getCurrentPage());
Assertions.assertEquals("setRecodeInfo", response.getRecodeInfo());
for (OrderSettleResultQueryPageResponse.OrderSettleInfoData ordersettleinfodata : response.getData()) {
extractedOrderSettleResultQueryPageResponseOrderSettleInfoDataNestAssertions(ordersettleinfodata);
}
Assertions.assertEquals(1L, response.getTotalPage());
Assertions.assertEquals("setRecode", response.getRecode());
Assertions.assertEquals("setSysTime", response.getSysTime());
Assertions.assertEquals("setSysSerialNo", response.getSysSerialNo());
Assertions.assertEquals("setSysDate", response.getSysDate());
Assertions.assertEquals(1L, response.getTotalRows());
}
@Test
void orderNotSettleStaTest() {
OrderNotSettleStaRequest request = new OrderNotSettleStaRequest();
extractedOrderNotSettleStaRequestParams(request);
extractedOrderNotSettleStaRequestAssertions(request);
System.out.println(Json.toJson(request));
String requestJson = Json.toJson(request);
Assertions.assertEquals("{\"channel_no\":\"setChannelNo\",\"app_no\":\"setAppNo\",\"serial_no\":\"setSerialNo\",\"trans_date\":\"setTransDate\",\"trans_tradetime\":\"setTransTradeTime\",\"merchantid\":\"setMerchantid\",\"pay_channel_no\":\"setPayChannelNo\",\"pay_channel_merchantid\":\"setPayChannelMerchantid\"}", requestJson);
OrderNotSettleStaResponse response = new OrderNotSettleStaResponse();
extractedOrderNotSettleStaResponseParams(response);
extractedOrderNotSettleStaResponseAssertions(response);
System.out.println(Json.toJson(response));
String responseJson = Json.toJson(response);
Assertions.assertEquals("{\"recode\":\"setRecode\",\"recode_info\":\"setRecodeInfo\",\"sys_serial_no\":\"setSysSerialNo\",\"sys_date\":\"setSysDate\",\"sys_time\":\"setSysTime\",\"data\":[{\"req_serial_no\":\"setReqSerialNo\",\"data_sys_serial_no\":\"setDataSysSerialNo\",\"pay_serial_no\":\"setPaySerialNo\",\"merchantid\":\"setMerchantid\",\"pay_channel_no\":\"setPayChannelNo\",\"pay_channel_merchantid\":\"setPayChannelMerchantid\",\"batch_no\":\"setBatchNo\",\"order_no\":\"setOrderNo\",\"account_no\":\"setAccountNo\",\"account_name\":\"setAccountName\",\"opp_account_no\":\"setOppAccountNo\",\"opp_account_name\":\"setOppAccountName\",\"opp_bank_no\":\"setOppBankNo\",\"opp_bank_name\":\"setOppBankName\",\"opp_account_type\":\"setOppAccountType\",\"opp_amount\":100.0,\"remark\":\"setRemark\"}]}", responseJson);
HttpResponse<OrderNotSettleStaResponse> httpResponse = MockHttpResponse.create("orderNotSettleSta", response, OrderNotSettleStaResponse.class);
Mockito.when(apiClient.post(
Mockito.eq("/order/not-settle/sta"),
Mockito.any(HttpHeaders.class),
Mockito.any(RequestBody.class),
Mockito.eq(OrderNotSettleStaResponse.class)))
.thenReturn(httpResponse);
OrderNotSettleStaResponse result = service.orderNotSettleSta(request);
System.out.println(Json.toJson(result));
String resultJson = Json.toJson(result);
Assertions.assertEquals("{\"recode\":\"setRecode\",\"recode_info\":\"setRecodeInfo\",\"sys_serial_no\":\"setSysSerialNo\",\"sys_date\":\"setSysDate\",\"sys_time\":\"setSysTime\",\"data\":[{\"req_serial_no\":\"setReqSerialNo\",\"data_sys_serial_no\":\"setDataSysSerialNo\",\"pay_serial_no\":\"setPaySerialNo\",\"merchantid\":\"setMerchantid\",\"pay_channel_no\":\"setPayChannelNo\",\"pay_channel_merchantid\":\"setPayChannelMerchantid\",\"batch_no\":\"setBatchNo\",\"order_no\":\"setOrderNo\",\"account_no\":\"setAccountNo\",\"account_name\":\"setAccountName\",\"opp_account_no\":\"setOppAccountNo\",\"opp_account_name\":\"setOppAccountName\",\"opp_bank_no\":\"setOppBankNo\",\"opp_bank_name\":\"setOppBankName\",\"opp_account_type\":\"setOppAccountType\",\"opp_amount\":100.0,\"remark\":\"setRemark\"}]}", resultJson);
}
void extractedOrderNotSettleStaRequestParams(OrderNotSettleStaRequest request) {
request.setTransTradeTime("setTransTradeTime");
request.setPayChannelMerchantid("setPayChannelMerchantid");
request.setPayChannelNo("setPayChannelNo");
request.setAppNo("setAppNo");
request.setTransDate("setTransDate");
request.setMerchantid("setMerchantid");
request.setSerialNo("setSerialNo");
request.setChannelNo("setChannelNo");
}
void extractedOrderNotSettleStaRequestAssertions(OrderNotSettleStaRequest request) {
Assertions.assertEquals("setTransTradeTime", request.getTransTradeTime());
Assertions.assertEquals("setPayChannelMerchantid", request.getPayChannelMerchantid());
Assertions.assertEquals("setPayChannelNo", request.getPayChannelNo());
Assertions.assertEquals("setAppNo", request.getAppNo());
Assertions.assertEquals("setTransDate", request.getTransDate());
Assertions.assertEquals("setMerchantid", request.getMerchantid());
Assertions.assertEquals("setSerialNo", request.getSerialNo());
Assertions.assertEquals("setChannelNo", request.getChannelNo());
}
void extractedOrderNotSettleStaResponseParams(OrderNotSettleStaResponse response) {
response.setRecodeInfo("setRecodeInfo");
OrderNotSettleStaResponse.OrderOppDetailData orderoppdetaildata = new OrderNotSettleStaResponse.OrderOppDetailData();
extractedOrderNotSettleStaResponseOrderOppDetailDataNestParams(orderoppdetaildata);
response.setData(Lists.list(orderoppdetaildata));
response.setRecode("setRecode");
response.setSysTime("setSysTime");
response.setSysSerialNo("setSysSerialNo");
response.setSysDate("setSysDate");
}
void extractedOrderNotSettleStaResponseOrderOppDetailDataNestParams(OrderNotSettleStaResponse.OrderOppDetailData nest) {
nest.setReqSerialNo("setReqSerialNo");
nest.setRemark("setRemark");
nest.setOppAmount(BigDecimal.valueOf(100.00));
nest.setAccountName("setAccountName");
nest.setBatchNo("setBatchNo");
nest.setOppBankName("setOppBankName");
nest.setOppAccountNo("setOppAccountNo");
nest.setOrderNo("setOrderNo");
nest.setPaySerialNo("setPaySerialNo");
nest.setAccountNo("setAccountNo");
nest.setOppBankNo("setOppBankNo");
nest.setPayChannelMerchantid("setPayChannelMerchantid");
nest.setOppAccountType("setOppAccountType");
nest.setOppAccountName("setOppAccountName");
nest.setDataSysSerialNo("setDataSysSerialNo");
nest.setPayChannelNo("setPayChannelNo");
nest.setMerchantid("setMerchantid");
}
void extractedOrderNotSettleStaResponseOrderOppDetailDataNestAssertions(OrderNotSettleStaResponse.OrderOppDetailData nest) {
Assertions.assertEquals("setReqSerialNo", nest.getReqSerialNo());
Assertions.assertEquals("setRemark", nest.getRemark());
Assertions.assertEquals(BigDecimal.valueOf(100.00), nest.getOppAmount());
Assertions.assertEquals("setAccountName", nest.getAccountName());
Assertions.assertEquals("setBatchNo", nest.getBatchNo());
Assertions.assertEquals("setOppBankName", nest.getOppBankName());
Assertions.assertEquals("setOppAccountNo", nest.getOppAccountNo());
Assertions.assertEquals("setOrderNo", nest.getOrderNo());
Assertions.assertEquals("setPaySerialNo", nest.getPaySerialNo());
Assertions.assertEquals("setAccountNo", nest.getAccountNo());
Assertions.assertEquals("setOppBankNo", nest.getOppBankNo());
Assertions.assertEquals("setPayChannelMerchantid", nest.getPayChannelMerchantid());
Assertions.assertEquals("setOppAccountType", nest.getOppAccountType());
Assertions.assertEquals("setOppAccountName", nest.getOppAccountName());
Assertions.assertEquals("setDataSysSerialNo", nest.getDataSysSerialNo());
Assertions.assertEquals("setPayChannelNo", nest.getPayChannelNo());
Assertions.assertEquals("setMerchantid", nest.getMerchantid());
}
void extractedOrderNotSettleStaResponseAssertions(OrderNotSettleStaResponse response) {
Assertions.assertEquals("setRecodeInfo", response.getRecodeInfo());
for (OrderNotSettleStaResponse.OrderOppDetailData orderoppdetaildata : response.getData()) {
extractedOrderNotSettleStaResponseOrderOppDetailDataNestAssertions(orderoppdetaildata);
}
Assertions.assertEquals("setRecode", response.getRecode());
Assertions.assertEquals("setSysTime", response.getSysTime());
Assertions.assertEquals("setSysSerialNo", response.getSysSerialNo());
Assertions.assertEquals("setSysDate", response.getSysDate());
}
@Test
void orderSettleTest() {
OrderSettleRequest request = new OrderSettleRequest();
extractedOrderSettleRequestParams(request);
extractedOrderSettleRequestAssertions(request);
System.out.println(Json.toJson(request));
String requestJson = Json.toJson(request);
Assertions.assertEquals("{\"channel_no\":\"setChannelNo\",\"app_no\":\"setAppNo\",\"serial_no\":\"setSerialNo\",\"trans_date\":\"setTransDate\",\"trans_tradetime\":\"setTransTradeTime\",\"merchantid\":\"setMerchantid\",\"pay_channel_no\":\"setPayChannelNo\",\"pay_channel_merchantid\":\"setPayChannelMerchantid\"}", requestJson);
OrderSettleResponse response = new OrderSettleResponse();
extractedOrderSettleResponseParams(response);
extractedOrderSettleResponseAssertions(response);
System.out.println(Json.toJson(response));
String responseJson = Json.toJson(response);
Assertions.assertEquals("{\"recode\":\"setRecode\",\"recode_info\":\"setRecodeInfo\",\"sys_serial_no\":\"setSysSerialNo\",\"sys_date\":\"setSysDate\",\"sys_time\":\"setSysTime\"}", responseJson);
HttpResponse<OrderSettleResponse> httpResponse = MockHttpResponse.create("orderSettle", response, OrderSettleResponse.class);
Mockito.when(apiClient.post(
Mockito.eq("/order/settle"),
Mockito.any(HttpHeaders.class),
Mockito.any(RequestBody.class),
Mockito.eq(OrderSettleResponse.class)))
.thenReturn(httpResponse);
OrderSettleResponse result = service.orderSettle(request);
System.out.println(Json.toJson(result));
String resultJson = Json.toJson(result);
Assertions.assertEquals("{\"recode\":\"setRecode\",\"recode_info\":\"setRecodeInfo\",\"sys_serial_no\":\"setSysSerialNo\",\"sys_date\":\"setSysDate\",\"sys_time\":\"setSysTime\"}", resultJson);
}
void extractedOrderSettleRequestParams(OrderSettleRequest request) {
request.setTransTradeTime("setTransTradeTime");
request.setPayChannelMerchantid("setPayChannelMerchantid");
request.setPayChannelNo("setPayChannelNo");
request.setAppNo("setAppNo");
request.setTransDate("setTransDate");
request.setMerchantid("setMerchantid");
request.setSerialNo("setSerialNo");
request.setChannelNo("setChannelNo");
}
void extractedOrderSettleRequestAssertions(OrderSettleRequest request) {
Assertions.assertEquals("setTransTradeTime", request.getTransTradeTime());
Assertions.assertEquals("setPayChannelMerchantid", request.getPayChannelMerchantid());
Assertions.assertEquals("setPayChannelNo", request.getPayChannelNo());
Assertions.assertEquals("setAppNo", request.getAppNo());
Assertions.assertEquals("setTransDate", request.getTransDate());
Assertions.assertEquals("setMerchantid", request.getMerchantid());
Assertions.assertEquals("setSerialNo", request.getSerialNo());
Assertions.assertEquals("setChannelNo", request.getChannelNo());
}
void extractedOrderSettleResponseParams(OrderSettleResponse response) {
response.setRecodeInfo("setRecodeInfo");
response.setRecode("setRecode");
response.setSysTime("setSysTime");
response.setSysSerialNo("setSysSerialNo");
response.setSysDate("setSysDate");
}
void extractedOrderSettleResponseAssertions(OrderSettleResponse response) {
Assertions.assertEquals("setRecodeInfo", response.getRecodeInfo());
Assertions.assertEquals("setRecode", response.getRecode());
Assertions.assertEquals("setSysTime", response.getSysTime());
Assertions.assertEquals("setSysSerialNo", response.getSysSerialNo());
Assertions.assertEquals("setSysDate", response.getSysDate());
}
}