Skip to content

Commit 3e50d87

Browse files
committed
【vivo】feature: 账号服务api
1 parent 508fe2c commit 3e50d87

21 files changed

+1906
-13
lines changed

code-generators/vivo-code-generator/src/main/java/com/hyq0719/mktapi/generator/vivo/handler/CodeGenerator.java

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -283,6 +283,7 @@ private static Map<String, String> getTypeMap() {
283283
map.put("double", "Double");
284284
map.put("Double", "Double");
285285
map.put("file", "File");
286+
map.put("Decimal", "BigDecimal");
286287

287288
// 集合
288289
map.put("number[]", "List<Long>");
@@ -318,6 +319,7 @@ private static Set<String> getObjectTypeSet() {
318319
set.add("list");
319320
set.add("List");
320321
set.add("对象列表");
322+
set.add("PageInfo");
321323
return set;
322324
}
323325

@@ -338,22 +340,30 @@ private static void addImportList(BaseEntity entity, SingleFileEntity sfe) {
338340
if (importList == null) {
339341
importList = new ArrayList<>();
340342
}
341-
if (importList.contains("import java.util.List")) {
342-
return;
343+
if (!importList.contains("import java.util.List")) {
344+
importList.add("import java.util.List");
345+
sfe.importList(importList);
343346
}
344-
importList.add("import java.util.List");
345-
sfe.importList(importList);
346347
}
347348
if (entity.getType().contains("file")) {
348349
List<String> importList = sfe.getImportList();
349350
if (importList == null) {
350351
importList = new ArrayList<>();
351352
}
352-
if (importList.contains("import java.io.File")) {
353-
return;
353+
if (!importList.contains("import java.io.File")) {
354+
importList.add("import java.io.File");
355+
sfe.importList(importList);
356+
}
357+
}
358+
if (entity.getType().contains("Decimal")) {
359+
List<String> importList = sfe.getImportList();
360+
if (importList == null) {
361+
importList = new ArrayList<>();
362+
}
363+
if (!importList.contains("import java.math.BigDecimal")) {
364+
importList.add("import java.math.BigDecimal;");
365+
sfe.importList(importList);
354366
}
355-
importList.add("import java.io.File");
356-
sfe.importList(importList);
357367
}
358368
}
359369

code-generators/vivo-code-generator/src/main/java/com/hyq0719/mktapi/generator/vivo/handler/EntityTableHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ public static CrawlerResult handleRequestAndResponse(WebDriver driver) {
4848
crawlerResult.setClassPrefix(entityPrefix);
4949

5050
List<WebElement> tableElements = driver.findElements(By.tagName("table"));
51-
if (tableElements.size() < 2) {
51+
if (tableElements.size() < Math.max(requestTableLoc, responseTableLoc)) {
5252
throw new RuntimeException("Crawler <table> size error");
5353
}
5454
if (requestTableLoc != -1) {
Lines changed: 200 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,200 @@
1+
package com.hyq0719.mktapi.vivo.api;
2+
3+
import com.hyq0719.mktapi.common.ApiClient;
4+
import com.hyq0719.mktapi.common.RetryStrategy;
5+
import com.hyq0719.mktapi.common.annotation.ApiRequestMapping;
6+
import com.hyq0719.mktapi.common.constant.RequestConstants;
7+
import com.hyq0719.mktapi.common.executor.parameter.Pair;
8+
import com.hyq0719.mktapi.vivo.VivoApiRequest;
9+
import com.hyq0719.mktapi.vivo.bean.acoountService.*;
10+
import com.hyq0719.mktapi.vivo.bean.common.VivoResponse;
11+
12+
import java.util.List;
13+
14+
public class AccountServiceApi extends AbstractVivoApi {
15+
private volatile AccountFetch accountFetch;
16+
private volatile AccountFetchAccount accountFetchAccount;
17+
private volatile AccountAdvertiserQuery accountAdvertiserQuery;
18+
private volatile AccountBalanceQuery accountBalanceQuery;
19+
private volatile FinanceUpdateDailyBudget financeUpdateDailyBudget;
20+
private volatile FinanceFundsQueryFounds financeFundsQueryFounds;
21+
private volatile FinanceTransferQueryTransfers financeTransferQueryTransfers;
22+
23+
public AccountServiceApi(ApiClient apiClient, RetryStrategy retryStrategy) {
24+
super(apiClient, retryStrategy);
25+
}
26+
27+
public AccountFetch accountFetch() {
28+
if (accountFetch == null) {
29+
synchronized (AccountFetch.class) {
30+
if (accountFetch == null) {
31+
accountFetch = (AccountFetch) init(AccountFetch.class);
32+
}
33+
}
34+
}
35+
return accountFetch;
36+
}
37+
38+
public AccountFetchAccount accountFetchAccount() {
39+
if (accountFetchAccount == null) {
40+
synchronized (AccountFetchAccount.class) {
41+
if (accountFetchAccount == null) {
42+
accountFetchAccount = (AccountFetchAccount) init(AccountFetchAccount.class);
43+
}
44+
}
45+
}
46+
return accountFetchAccount;
47+
}
48+
49+
public AccountAdvertiserQuery accountAdvertiserQuery() {
50+
if (accountAdvertiserQuery == null) {
51+
synchronized (AccountAdvertiserQuery.class) {
52+
if (accountAdvertiserQuery == null) {
53+
accountAdvertiserQuery = (AccountAdvertiserQuery) init(AccountAdvertiserQuery.class);
54+
}
55+
}
56+
}
57+
return accountAdvertiserQuery;
58+
}
59+
60+
public AccountBalanceQuery accountBalanceQuery() {
61+
if (accountBalanceQuery == null) {
62+
synchronized (AccountBalanceQuery.class) {
63+
if (accountBalanceQuery == null) {
64+
accountBalanceQuery = (AccountBalanceQuery) init(AccountBalanceQuery.class);
65+
}
66+
}
67+
}
68+
return accountBalanceQuery;
69+
}
70+
71+
public FinanceUpdateDailyBudget financeUpdateDailyBudget() {
72+
if (financeUpdateDailyBudget == null) {
73+
synchronized (FinanceUpdateDailyBudget.class) {
74+
if (financeUpdateDailyBudget == null) {
75+
financeUpdateDailyBudget = (FinanceUpdateDailyBudget) init(FinanceUpdateDailyBudget.class);
76+
}
77+
}
78+
}
79+
return financeUpdateDailyBudget;
80+
}
81+
82+
public FinanceFundsQueryFounds financeFundsQueryFounds() {
83+
if (financeFundsQueryFounds == null) {
84+
synchronized (FinanceFundsQueryFounds.class) {
85+
if (financeFundsQueryFounds == null) {
86+
financeFundsQueryFounds = (FinanceFundsQueryFounds) init(FinanceFundsQueryFounds.class);
87+
}
88+
}
89+
}
90+
return financeFundsQueryFounds;
91+
}
92+
93+
public FinanceTransferQueryTransfers financeTransferQueryTransfers() {
94+
if (financeTransferQueryTransfers == null) {
95+
synchronized (FinanceTransferQueryTransfers.class) {
96+
if (financeTransferQueryTransfers == null) {
97+
financeTransferQueryTransfers = (FinanceTransferQueryTransfers) init(FinanceTransferQueryTransfers.class);
98+
}
99+
}
100+
}
101+
return financeTransferQueryTransfers;
102+
}
103+
104+
@ApiRequestMapping(value = "/account/fetch", method = RequestConstants.GET, usePostBody =
105+
false, contentTypes = {RequestConstants.CONTENT_TYPE_TEXT_PLAIN})
106+
public class AccountFetch extends VivoApiRequest<AccountFetchRequest, VivoResponse<AccountFetchResponseData>> {
107+
@Override
108+
public void setRequestParam(List<Pair> localVarQueryParams, List<Pair> localVarCollectionQueryParams,
109+
AccountFetchRequest request) {
110+
String advertiserId = request.getAdvertiserId();
111+
if (advertiserId != null) {
112+
localVarQueryParams.addAll(parameterToPair(ADVERTISER_ID, advertiserId));
113+
}
114+
}
115+
}
116+
117+
@ApiRequestMapping(value = "/account/fetch/account", method = RequestConstants.GET, usePostBody =
118+
false, contentTypes = {RequestConstants.CONTENT_TYPE_TEXT_PLAIN})
119+
public class AccountFetchAccount extends VivoApiRequest<AccountFetchAccountRequest,
120+
VivoResponse<AccountFetchAccountResponseData>> {
121+
@Override
122+
public void setRequestParam(List<Pair> localVarQueryParams, List<Pair> localVarCollectionQueryParams,
123+
AccountFetchAccountRequest request) {
124+
String advertiserId = request.getAdvertiserId();
125+
if (advertiserId != null) {
126+
localVarQueryParams.addAll(parameterToPair(ADVERTISER_ID, advertiserId));
127+
}
128+
}
129+
}
130+
131+
@ApiRequestMapping(value = "/account/advertiser/query", method = RequestConstants.POST, contentTypes = {
132+
RequestConstants.CONTENT_TYPE_JSON})
133+
public class AccountAdvertiserQuery extends VivoApiRequest<AccountAdvertiserQueryRequest,
134+
VivoResponse<AccountAdvertiserQueryResponseData>> {
135+
@Override
136+
public void setRequestParam(List<Pair> localVarQueryParams, List<Pair> localVarCollectionQueryParams,
137+
AccountAdvertiserQueryRequest request) {
138+
String advertiserId = request.getAdvertiserId();
139+
if (advertiserId != null) {
140+
localVarQueryParams.addAll(parameterToPair(ADVERTISER_ID, advertiserId));
141+
}
142+
}
143+
}
144+
145+
@ApiRequestMapping(value = "/account/balance/query", method = RequestConstants.GET, usePostBody =
146+
false, contentTypes = {RequestConstants.CONTENT_TYPE_TEXT_PLAIN})
147+
public class AccountBalanceQuery extends VivoApiRequest<AccountBalanceQueryRequest,
148+
VivoResponse<AccountBalanceQueryResponseData>> {
149+
@Override
150+
public void setRequestParam(List<Pair> localVarQueryParams, List<Pair> localVarCollectionQueryParams,
151+
AccountBalanceQueryRequest request) {
152+
String advertiserId = request.getAdvertiserId();
153+
if (advertiserId != null) {
154+
localVarQueryParams.addAll(parameterToPair(ADVERTISER_ID, advertiserId));
155+
}
156+
}
157+
}
158+
159+
@ApiRequestMapping(value = "/finance/update/dailyBudget", method = RequestConstants.POST, contentTypes = {
160+
RequestConstants.CONTENT_TYPE_JSON})
161+
public class FinanceUpdateDailyBudget extends VivoApiRequest<FinanceUpdateDailyBudgetRequest,
162+
VivoResponse<String>> {
163+
@Override
164+
public void setRequestParam(List<Pair> localVarQueryParams, List<Pair> localVarCollectionQueryParams,
165+
FinanceUpdateDailyBudgetRequest request) {
166+
String advertiserId = request.getAdvertiserId();
167+
if (advertiserId != null) {
168+
localVarQueryParams.addAll(parameterToPair(ADVERTISER_ID, advertiserId));
169+
}
170+
}
171+
}
172+
173+
@ApiRequestMapping(value = "/finance/transfer/queryTransfers", method = RequestConstants.POST, contentTypes = {
174+
RequestConstants.CONTENT_TYPE_JSON})
175+
public class FinanceFundsQueryFounds extends VivoApiRequest<FinanceFundsQueryFoundsRequest,
176+
VivoResponse<FinanceFundsQueryFoundsResponseData>> {
177+
@Override
178+
public void setRequestParam(List<Pair> localVarQueryParams, List<Pair> localVarCollectionQueryParams,
179+
FinanceFundsQueryFoundsRequest request) {
180+
String advertiserId = request.getAdvertiserId();
181+
if (advertiserId != null) {
182+
localVarQueryParams.addAll(parameterToPair(ADVERTISER_ID, advertiserId));
183+
}
184+
}
185+
}
186+
187+
@ApiRequestMapping(value = "/finance/transfer/queryTransfers", method = RequestConstants.POST, contentTypes = {
188+
RequestConstants.CONTENT_TYPE_JSON})
189+
public class FinanceTransferQueryTransfers extends VivoApiRequest<FinanceTransferQueryTransfersRequest,
190+
VivoResponse<FinanceTransferQueryTransfersResponseData>> {
191+
@Override
192+
public void setRequestParam(List<Pair> localVarQueryParams, List<Pair> localVarCollectionQueryParams,
193+
FinanceTransferQueryTransfersRequest request) {
194+
String advertiserId = request.getAdvertiserId();
195+
if (advertiserId != null) {
196+
localVarQueryParams.addAll(parameterToPair(ADVERTISER_ID, advertiserId));
197+
}
198+
}
199+
}
200+
}
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
/*
2+
* Marketing API Vivo商业开放平台
3+
* Marketing API Vivo商业开放平台
4+
*
5+
* Do not edit the class manually.
6+
*/
7+
package com.hyq0719.mktapi.vivo.bean.acoountService;
8+
9+
import com.google.gson.annotations.SerializedName;
10+
import lombok.Data;
11+
import com.google.gson.Gson;
12+
13+
/**
14+
*
15+
* @author hyq0719
16+
17+
* @date 2022-02-07 23:14:22
18+
*/
19+
@Data
20+
public class AccountAdvertiserQueryListStruct {
21+
22+
/**
23+
* 账号标识(advertise_id):所属广告主,来自商业化账户
24+
*/
25+
@SerializedName("uuid")
26+
private String uuid = null;
27+
28+
/**
29+
* 名称
30+
*/
31+
@SerializedName("name")
32+
private String name = null;
33+
34+
/**
35+
* 状态:0-未完善 1-待审核 2-已通过 3-未通过 4-已注销 5-已冻结 6-资料修改待审核
36+
*/
37+
@SerializedName("status")
38+
private Short status = null;
39+
40+
public AccountAdvertiserQueryListStruct uuid (String uuid) {
41+
this.uuid = uuid;
42+
return this;
43+
}
44+
45+
public AccountAdvertiserQueryListStruct name (String name) {
46+
this.name = name;
47+
return this;
48+
}
49+
50+
public AccountAdvertiserQueryListStruct status (Short status) {
51+
this.status = status;
52+
return this;
53+
}
54+
55+
@Override
56+
public String toString() {
57+
Gson gson = new Gson();
58+
return gson.toJson(this);
59+
}
60+
61+
}
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
/*
2+
* Marketing API Vivo商业开放平台
3+
* Marketing API Vivo商业开放平台
4+
*
5+
* Do not edit the class manually.
6+
*/
7+
package com.hyq0719.mktapi.vivo.bean.acoountService;
8+
9+
import com.google.gson.annotations.SerializedName;
10+
import com.hyq0719.mktapi.vivo.bean.TokenKey;
11+
import lombok.Data;
12+
import com.google.gson.Gson;
13+
14+
/**
15+
*
16+
* @author hyq0719
17+
18+
* @date 2022-02-07 23:14:22
19+
*/
20+
@Data
21+
public class AccountAdvertiserQueryRequest implements TokenKey {
22+
23+
@SerializedName("advertiser_id")
24+
private String advertiserId = null;
25+
26+
/**
27+
* 起始页,默认从第一页开始,不填时默认查询第一页
28+
*/
29+
@SerializedName("pageIndex")
30+
private Integer pageIndex = null;
31+
32+
/**
33+
* 页大小,不填默认size=10,最大固定是100,超过的按照100来返回结果
34+
*/
35+
@SerializedName("pageSize")
36+
private Integer pageSize = null;
37+
38+
public AccountAdvertiserQueryRequest advertiserId(String advertiserId) {
39+
this.advertiserId = advertiserId;
40+
return this;
41+
}
42+
43+
public AccountAdvertiserQueryRequest pageIndex (Integer pageIndex) {
44+
this.pageIndex = pageIndex;
45+
return this;
46+
}
47+
48+
public AccountAdvertiserQueryRequest pageSize (Integer pageSize) {
49+
this.pageSize = pageSize;
50+
return this;
51+
}
52+
53+
@Override
54+
public String toString() {
55+
Gson gson = new Gson();
56+
return gson.toJson(this);
57+
}
58+
59+
@Override
60+
public String getTokenKey() {
61+
return String.valueOf(advertiserId);
62+
}
63+
64+
}

0 commit comments

Comments
 (0)