解决同步订单时,每次只同步固定90条的问题
This commit is contained in:
@@ -49,7 +49,17 @@ public class HxrAdminOrderSelectService {
|
||||
*/
|
||||
public Optional<HxrOrderSelectResponse> fetchOrderSelect(
|
||||
String buyTimeStart, String buyTimeEnd, Integer isResell) throws Exception {
|
||||
return fetchOrderSelectInternal(buildOrderSelectUrl(buyTimeStart, buyTimeEnd, isResell));
|
||||
return fetchOrderSelect(buyTimeStart, buyTimeEnd, isResell, 1);
|
||||
}
|
||||
|
||||
/**
|
||||
* 按购买时间区间、转卖状态及页码拉取订单列表。
|
||||
*
|
||||
* @param page 页码,从 1 开始;与配置 URL 中的 {@code limit} 配合分页
|
||||
*/
|
||||
public Optional<HxrOrderSelectResponse> fetchOrderSelect(
|
||||
String buyTimeStart, String buyTimeEnd, Integer isResell, int page) throws Exception {
|
||||
return fetchOrderSelectInternal(buildOrderSelectUrl(buyTimeStart, buyTimeEnd, isResell, page));
|
||||
}
|
||||
|
||||
private Optional<HxrOrderSelectResponse> fetchOrderSelectInternal(String requestUri) throws Exception {
|
||||
@@ -94,13 +104,14 @@ public class HxrAdminOrderSelectService {
|
||||
/**
|
||||
* 在 {@link HxrAdminProperties#getOrderSelectUrl()} 上覆盖 {@code buy_time[0]}、{@code buy_time[1]}、{@code is_resell}。
|
||||
*/
|
||||
private String buildOrderSelectUrl(String buyTimeStart, String buyTimeEnd, Integer isResell) {
|
||||
private String buildOrderSelectUrl(String buyTimeStart, String buyTimeEnd, Integer isResell, int page) {
|
||||
UriComponentsBuilder b = UriComponentsBuilder.fromUriString(properties.getOrderSelectUrl());
|
||||
b.replaceQueryParam("buy_time[0]", buyTimeStart == null ? "" : buyTimeStart);
|
||||
b.replaceQueryParam("buy_time[1]", buyTimeEnd == null ? "" : buyTimeEnd);
|
||||
if (isResell != null) {
|
||||
b.replaceQueryParam("is_resell", isResell);
|
||||
}
|
||||
b.replaceQueryParam("page", Math.max(1, page));
|
||||
return b.build().encode().toUriString();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user