Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
dc-java
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
huluobin
dc-java
Commits
2bbf6387
Commit
2bbf6387
authored
Nov 18, 2020
by
huluobin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update
parent
7be08f88
Show whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
200 additions
and
262 deletions
+200
-262
AmazonAdDownloadReportJobTest.java
...java/com/bailuntec/job/AmazonAdDownloadReportJobTest.java
+0
-1
AmazonAdGenerateReportIdJobTest.java
...va/com/bailuntec/job/AmazonAdGenerateReportIdJobTest.java
+0
-2
EbayFinanceAdSyncJob.java
...src/main/java/com/bailuntec/job/EbayFinanceAdSyncJob.java
+5
-10
EbayFinanceSyncJob.java
...y/src/main/java/com/bailuntec/job/EbayFinanceSyncJob.java
+164
-164
EbayFinanceSyncJobTest.java
...nc-finance-ebay/src/test/java/EbayFinanceSyncJobTest.java
+0
-71
EbayFinanceAdSyncJobTest.java
...test/java/com/bailuntec/job/EbayFinanceAdSyncJobTest.java
+17
-4
DruidDataSourceFactory.java
...in/java/com/bailuntec/support/DruidDataSourceFactory.java
+7
-0
mybatis-config.xml
data-common/src/main/resources/mybatis-config.xml
+1
-1
job.properties
...show/show-auto-turnover/src/main/resources/job.properties
+4
-3
AutoTurnoverTest.java
...ow/show-auto-turnover/src/test/java/AutoTurnoverTest.java
+2
-6
No files found.
data-base/base-sync-amazon-ad/src/test/java/com/bailuntec/job/AmazonAdDownloadReportJobTest.java
View file @
2bbf6387
...
...
@@ -65,5 +65,4 @@ class AmazonAdDownloadReportJobTest {
}
}
data-base/base-sync-amazon-ad/src/test/java/com/bailuntec/job/AmazonAdGenerateReportIdJobTest.java
View file @
2bbf6387
...
...
@@ -20,8 +20,6 @@ public class AmazonAdGenerateReportIdJobTest {
public
void
executeJob
()
{
AmazonAdGenerateReportIdJob
amazonAdGenerateReportIdJob
=
new
AmazonAdGenerateReportIdJob
();
while
(
true
)
{
amazonAdGenerateReportIdJob
.
execute
(
new
ShardingContext
(
new
ShardingContexts
(
"x"
,
"base-amazon-ad-product-generate"
,
1
,
null
,
new
HashMap
<>()),
0
));
}
}
}
data-base/base-sync-finance-ebay/src/main/java/com/bailuntec/job/EbayFinanceAdSyncJob.java
View file @
2bbf6387
...
...
@@ -10,7 +10,6 @@ import com.bailuntec.domain.example.DcBaseFinanceEbayExample;
import
com.bailuntec.mapper.DcBaseCompanyAccountMapper
;
import
com.bailuntec.mapper.DcBaseFinanceEbayMapper
;
import
com.bailuntec.mapper.JobAccountLogMapper
;
import
com.bailuntec.mapper.JobPointLogMapper
;
import
com.bailuntec.support.CallBailunSystem
;
import
com.bailuntec.support.PointJob
;
import
com.bailuntec.utils.SessionUtil
;
...
...
@@ -43,7 +42,6 @@ public class EbayFinanceAdSyncJob extends PointJob {
try
{
JobAccountLogMapper
jobAccountLogMapper
=
SessionUtil
.
getSession
().
getMapper
(
JobAccountLogMapper
.
class
);
JobPointLogMapper
jobPointLogMapper
=
SessionUtil
.
getSession
().
getMapper
(
JobPointLogMapper
.
class
);
DcBaseFinanceEbayMapper
dcBaseFinanceEbayMapper
=
SessionUtil
.
getSession
().
getMapper
(
DcBaseFinanceEbayMapper
.
class
);
//拿到账号集合
...
...
@@ -55,28 +53,25 @@ public class EbayFinanceAdSyncJob extends PointJob {
if
(
startTime
.
toLocalDate
().
compareTo
(
LocalDate
.
now
())
<
0
)
{
for
(
JobAccountLog
jobAccountLog
:
listByPage
)
{
try
{
listByPage
.
parallelStream
().
forEach
(
jobAccountLog
->
{
//先删除再更新
dcBaseFinanceEbayMapper
.
deleteByExample
(
DcBaseFinanceEbayExample
.
newAndCreateCriteria
()
.
andBjDateBetween
(
startTime
,
endTime
)
.
andAccountIdEqualTo
(
jobAccountLog
.
getAccountId
())
.
example
());
}
catch
(
Exception
ex
){
}
jobAccountLog
.
setStartTime
(
startTime
.
plusHours
(
15
));
jobAccountLog
.
setEndTime
(
endTime
.
plusHours
(
15
));
callSaas
Api
(
jobAccountLog
,
shardingContext
);
this
.
callSaaS
Api
(
jobAccountLog
,
shardingContext
);
log
.
info
(
"帐号:{} 日期:{} ebay广告费用同步完成"
,
jobAccountLog
.
getAccountId
(),
startTime
);
}
}
);
jobPointLog
.
setStartTime
(
startTime
.
plusDays
(
1
));
jobPointLog
.
setEndTime
(
endTime
.
plusDays
(
1
));
jobPointLog
.
setGmtModified
(
LocalDateTime
.
now
());
}
}
catch
(
Exception
e
)
{
...
...
@@ -87,7 +82,7 @@ public class EbayFinanceAdSyncJob extends PointJob {
}
public
void
callSaa
s
Api
(
JobAccountLog
jobAccountLog
,
ShardingContext
shardingContext
)
{
public
void
callSaa
S
Api
(
JobAccountLog
jobAccountLog
,
ShardingContext
shardingContext
)
{
try
{
DcBaseCompanyAccount
dcBaseCompanyAccount
=
getToken
(
jobAccountLog
);
...
...
data-base/base-sync-finance-ebay/src/main/java/com/bailuntec/job/EbayFinanceSyncJob.java
View file @
2bbf6387
package
com
.
bailuntec
.
job
;
import
com.alibaba.fastjson.JSON
;
import
com.bailuntec.domain.entity.DcBaseFinanceEbay
;
import
com.bailuntec.domain.entity.JobAccountLog
;
import
com.bailuntec.domain.entity.JobPointLog
;
import
com.bailuntec.domain.enumerate.CurrencyType
;
import
com.bailuntec.domain.example.DcBaseCompanyAccountExample
;
import
com.bailuntec.domain.example.DcBaseFinanceEbayExample
;
import
com.bailuntec.domain.example.JobAccountLogExample
;
import
com.bailuntec.domain.pojo.AccountEntries
;
import
com.bailuntec.domain.pojo.AccountEntry
;
import
com.bailuntec.domain.pojo.EbayResult
;
import
com.bailuntec.mapper.DcBaseCompanyAccountMapper
;
import
com.bailuntec.mapper.DcBaseFinanceEbayMapper
;
import
com.bailuntec.mapper.JobAccountLogMapper
;
import
com.bailuntec.support.CallBailunSystem
;
import
com.bailuntec.support.PointJob
;
import
com.bailuntec.utils.OkHttpUtil
;
import
com.bailuntec.utils.PropertiesUtil
;
import
com.bailuntec.utils.SessionUtil
;
import
com.dangdang.ddframe.job.api.ShardingContext
;
import
lombok.extern.slf4j.Slf4j
;
import
okhttp3.*
;
import
org.apache.commons.beanutils.BeanUtils
;
import
java.time.LocalDateTime
;
import
java.time.format.DateTimeFormatter
;
import
java.util.HashMap
;
import
java.util.List
;
@Slf4j
public
class
EbayFinanceSyncJob
extends
PointJob
{
private
PropertiesUtil
propertiesUtil
=
PropertiesUtil
.
getInstance
(
"const"
);
private
OkHttpClient
client
=
OkHttpUtil
.
getInstance
();
@Override
public
void
executeJob
(
ShardingContext
shardingContext
,
JobPointLog
jobPointLog
)
{
int
totalPage
=
getCount
(
jobPointLog
);
//分片即将处理的账号总数
try
{
JobAccountLogMapper
jobAccountLogMapper
=
SessionUtil
.
getSession
().
getMapper
(
JobAccountLogMapper
.
class
);
/*
* 根据不同分片
* 再分页去拿不同的账号执行任务
*/
int
pageSize
=
totalPage
%
shardingContext
.
getShardingTotalCount
()
==
0
?
totalPage
/
shardingContext
.
getShardingTotalCount
()
:
totalPage
/
shardingContext
.
getShardingTotalCount
()
+
1
;
//拿到账号集合
List
<
JobAccountLog
>
listByPage
=
jobAccountLogMapper
.
getListByPage
(
12
,
pageSize
*
shardingContext
.
getShardingItem
(),
pageSize
);
if
(
listByPage
!=
null
&&
listByPage
.
size
()
>
0
)
{
for
(
JobAccountLog
jobAccountLog
:
listByPage
)
{
log
.
warn
(
"分片: "
+
shardingContext
.
getShardingItem
()
+
" 账号: "
+
jobAccountLog
);
if
(
jobAccountLog
.
getId
()
==
null
)
{
//在任务表无记录
BeanUtils
.
copyProperties
(
jobAccountLog
,
jobPointLog
);
jobAccountLog
.
setId
(
null
);
}
callSaasApi
(
jobAccountLog
);
if
(
jobAccountLog
.
getId
()
==
null
)
{
//在任务表无记录
jobAccountLogMapper
=
SessionUtil
.
getSession
().
getMapper
(
JobAccountLogMapper
.
class
);
jobAccountLogMapper
.
insertSelective
(
jobAccountLog
);
}
else
{
jobAccountLogMapper
=
SessionUtil
.
getSession
().
getMapper
(
JobAccountLogMapper
.
class
);
jobAccountLog
.
setBjModified
(
LocalDateTime
.
now
());
jobAccountLogMapper
.
updateByExampleSelective
(
jobAccountLog
,
JobAccountLogExample
.
newAndCreateCriteria
().
andAccountIdEqualTo
(
jobAccountLog
.
getAccountId
()).
andJobNameEqualTo
(
jobAccountLog
.
getJobName
()).
example
());
}
}
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
log
.
warn
(
"Ebay定时同步费用接口错误"
,
e
);
}
finally
{
SessionUtil
.
closeSession
();
}
}
private
int
getCount
(
JobPointLog
jobPointLog
)
{
int
i
=
0
;
try
{
DcBaseCompanyAccountMapper
accountMapper
=
SessionUtil
.
getSession
().
getMapper
(
DcBaseCompanyAccountMapper
.
class
);
i
=
(
int
)
accountMapper
.
countByExample
(
DcBaseCompanyAccountExample
.
newAndCreateCriteria
().
andPlatformIdEqualTo
(
12
).
example
());
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
finally
{
SessionUtil
.
closeSession
();
}
return
i
;
}
public
void
callSaasApi
(
JobAccountLog
job
)
{
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>(
5
);
map
.
put
(
"account_id"
,
job
.
getAccountId
());
map
.
put
(
"AccountEntrySortType"
,
"AccountEntryItemNumberAscending"
);
map
.
put
(
"BeginDate"
,
job
.
getStartTime
().
minusHours
(
8
).
minusMinutes
(
2
));
map
.
put
(
"EndDate"
,
job
.
getEndTime
().
minusHours
(
8
));
MediaType
mediaType
=
MediaType
.
parse
(
"application/json"
);
Integer
pageNumber
=
0
;
DcBaseFinanceEbay
dcBaseFinanceEbay
=
new
DcBaseFinanceEbay
();
Response
response
=
null
;
try
{
do
{
map
.
put
(
"PageNumber"
,
job
.
getPageIndex
()
>
0
?
job
.
getPageIndex
()
:
1
);
RequestBody
body
=
RequestBody
.
create
(
mediaType
,
JSON
.
toJSONString
(
map
));
Request
request
=
new
Request
.
Builder
()
.
url
(
propertiesUtil
.
getPropertyAsString
(
"EBAY_FINANCE_URL"
))
.
post
(
body
)
.
addHeader
(
"Content-Type"
,
"application/json"
)
.
build
();
log
.
warn
(
JSON
.
toJSONString
(
map
));
response
=
client
.
newCall
(
request
).
execute
();
log
.
warn
(
JSON
.
toJSONString
(
map
));
if
(
response
.
isSuccessful
())
{
EbayResult
ebayResult
=
JSON
.
parseObject
(
response
.
body
().
byteStream
(),
EbayResult
.
class
);
if
(
ebayResult
!=
null
&&
ebayResult
.
getAck
()
!=
null
&&
ebayResult
.
getAck
().
equals
(
"Success"
))
{
AccountEntries
accountEntries
=
ebayResult
.
getAccountEntries
();
if
(
accountEntries
!=
null
)
{
List
<
AccountEntry
>
accountEntryList
=
accountEntries
.
getAccountEntry
();
if
(
accountEntryList
!=
null
&&
accountEntryList
.
size
()
>
0
)
{
for
(
AccountEntry
accountEntry
:
accountEntryList
)
{
LocalDateTime
gmt
=
LocalDateTime
.
from
(
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
).
parse
(
accountEntry
.
getGmtDate_
()));
dcBaseFinanceEbay
.
setGmtDate
(
gmt
);
dcBaseFinanceEbay
.
setBjDate
(
dcBaseFinanceEbay
.
getGmtDate
().
plusHours
(
8
));
BeanUtils
.
copyProperties
(
dcBaseFinanceEbay
,
accountEntry
);
if
(
accountEntry
.
getGrossAmount_
()
!=
null
)
{
dcBaseFinanceEbay
.
setGrossAmount
(
accountEntry
.
getGrossAmount_
().
getValue
());
dcBaseFinanceEbay
.
setCurrency
(
accountEntry
.
getGrossAmount_
().
getCurrency
());
dcBaseFinanceEbay
.
setExchangeRate
(
CallBailunSystem
.
getExchangeRate
(
dcBaseFinanceEbay
.
getCurrency
(),
CurrencyType
.
CNY
.
value
(),
dcBaseFinanceEbay
.
getBjDate
()));
dcBaseFinanceEbay
.
setExchangeRateUsd
(
CallBailunSystem
.
getExchangeRate
(
dcBaseFinanceEbay
.
getCurrency
(),
CurrencyType
.
USD
.
value
(),
dcBaseFinanceEbay
.
getBjDate
()));
}
if
(
accountEntry
.
getGrossAmount_
()
!=
null
)
{
dcBaseFinanceEbay
.
setNetAmount
(
accountEntry
.
getNetAmount_
().
getValue
());
}
dcBaseFinanceEbay
.
setAccountId
(
job
.
getAccountId
());
dcBaseFinanceEbay
.
setCompanyId
(
job
.
getCompanyId
());
dcBaseFinanceEbay
.
setBjModified
(
LocalDateTime
.
now
());
DcBaseFinanceEbayMapper
dcBaseFinanceEbayMapper
=
SessionUtil
.
getSession
().
getMapper
(
DcBaseFinanceEbayMapper
.
class
);
int
i
=
dcBaseFinanceEbayMapper
.
updateByExampleSelective
(
dcBaseFinanceEbay
,
DcBaseFinanceEbayExample
.
newAndCreateCriteria
().
andRefNumberEqualTo
(
dcBaseFinanceEbay
.
getRefNumber
()
==
null
?
""
:
dcBaseFinanceEbay
.
getRefNumber
()).
andItemIdEqualTo
(
dcBaseFinanceEbay
.
getItemId
()
==
null
?
""
:
dcBaseFinanceEbay
.
getItemId
()).
andAccountEntryTypeEqualTo
(
dcBaseFinanceEbay
.
getAccountEntryType
()
==
null
?
""
:
dcBaseFinanceEbay
.
getAccountEntryType
()).
andGmtDateEqualTo
(
dcBaseFinanceEbay
.
getGmtDate
()).
example
());
if
(
i
==
0
)
{
dcBaseFinanceEbayMapper
.
insertSelective
(
dcBaseFinanceEbay
);
}
}
}
}
pageNumber
=
ebayResult
.
getEntriesPerPage
();
}
else
{
throw
new
RuntimeException
(
"授权错误"
);
}
}
else
{
throw
new
RuntimeException
(
"接口调用失败"
);
}
job
.
setPageIndex
(
job
.
getPageIndex
()
+
1
);
}
while
(!
pageNumber
.
equals
(
0
));
job
.
setPageIndex
(
1
);
job
.
setStartTime
(
job
.
getEndTime
());
job
.
setEndTime
(
job
.
getStartTime
().
plusDays
(
job
.
getIntervalTime
()).
isAfter
(
LocalDateTime
.
now
())
?
LocalDateTime
.
now
()
:
job
.
getEndTime
().
plusDays
(
job
.
getIntervalTime
()));
job
.
setMessage
(
"执行成功"
);
}
catch
(
Exception
e
)
{
job
.
setMessage
(
e
.
getMessage
());
}
finally
{
if
(
response
!=
null
)
{
response
.
close
();
}
}
}
}
//
package com.bailuntec.job;
//
//
import com.alibaba.fastjson.JSON;
//
import com.bailuntec.domain.entity.DcBaseFinanceEbay;
//
import com.bailuntec.domain.entity.JobAccountLog;
//
import com.bailuntec.domain.entity.JobPointLog;
//
import com.bailuntec.domain.enumerate.CurrencyType;
//
import com.bailuntec.domain.example.DcBaseCompanyAccountExample;
//
import com.bailuntec.domain.example.DcBaseFinanceEbayExample;
//
import com.bailuntec.domain.example.JobAccountLogExample;
//
import com.bailuntec.domain.pojo.AccountEntries;
//
import com.bailuntec.domain.pojo.AccountEntry;
//
import com.bailuntec.domain.pojo.EbayResult;
//
import com.bailuntec.mapper.DcBaseCompanyAccountMapper;
//
import com.bailuntec.mapper.DcBaseFinanceEbayMapper;
//
import com.bailuntec.mapper.JobAccountLogMapper;
//
import com.bailuntec.support.CallBailunSystem;
//
import com.bailuntec.support.PointJob;
//
import com.bailuntec.utils.OkHttpUtil;
//
import com.bailuntec.utils.PropertiesUtil;
//
import com.bailuntec.utils.SessionUtil;
//
import com.dangdang.ddframe.job.api.ShardingContext;
//
import lombok.extern.slf4j.Slf4j;
//
import okhttp3.*;
//
import org.apache.commons.beanutils.BeanUtils;
//
//
import java.time.LocalDateTime;
//
import java.time.format.DateTimeFormatter;
//
import java.util.HashMap;
//
import java.util.List;
//
//
@Slf4j
//
public class EbayFinanceSyncJob extends PointJob {
//
private PropertiesUtil propertiesUtil = PropertiesUtil.getInstance("const");
//
private OkHttpClient client = OkHttpUtil.getInstance();
//
//
@Override
//
public void executeJob(ShardingContext shardingContext, JobPointLog jobPointLog) {
//
int totalPage = getCount(jobPointLog);//分片即将处理的账号总数
//
try {
//
JobAccountLogMapper jobAccountLogMapper = SessionUtil.getSession().getMapper(JobAccountLogMapper.class);
//
/*
//
* 根据不同分片
//
* 再分页去拿不同的账号执行任务
//
*/
//
int pageSize = totalPage % shardingContext.getShardingTotalCount() == 0 ? totalPage / shardingContext.getShardingTotalCount() : totalPage / shardingContext.getShardingTotalCount() + 1;
//
//拿到账号集合
//
List<JobAccountLog> listByPage = jobAccountLogMapper.getListByPage(12, pageSize * shardingContext.getShardingItem(), pageSize);
//
if (listByPage != null && listByPage.size() > 0) {
//
for (JobAccountLog jobAccountLog : listByPage) {
//
log.warn("分片: " + shardingContext.getShardingItem() + " 账号: " + jobAccountLog);
//
if (jobAccountLog.getId() == null) { //在任务表无记录
//
BeanUtils.copyProperties(jobAccountLog, jobPointLog);
//
jobAccountLog.setId(null);
//
}
//
callSaasApi(jobAccountLog);
//
if (jobAccountLog.getId() == null) { //在任务表无记录
//
jobAccountLogMapper = SessionUtil.getSession().getMapper(JobAccountLogMapper.class);
//
jobAccountLogMapper.insertSelective(jobAccountLog);
//
} else {
//
jobAccountLogMapper = SessionUtil.getSession().getMapper(JobAccountLogMapper.class);
//
jobAccountLog.setBjModified(LocalDateTime.now());
//
jobAccountLogMapper.updateByExampleSelective(jobAccountLog, JobAccountLogExample.newAndCreateCriteria().andAccountIdEqualTo(jobAccountLog.getAccountId()).andJobNameEqualTo(jobAccountLog.getJobName()).example());
//
}
//
}
//
}
//
} catch (Exception e) {
//
e.printStackTrace();
//
log.warn("Ebay定时同步费用接口错误", e);
//
} finally {
//
SessionUtil.closeSession();
//
}
//
}
//
//
private int getCount(JobPointLog jobPointLog) {
//
int i = 0;
//
try {
//
DcBaseCompanyAccountMapper accountMapper = SessionUtil.getSession().getMapper(DcBaseCompanyAccountMapper.class);
//
i = (int) accountMapper.countByExample(DcBaseCompanyAccountExample.newAndCreateCriteria().andPlatformIdEqualTo(12).example());
//
} catch (Exception e) {
//
e.printStackTrace();
//
} finally {
//
SessionUtil.closeSession();
//
}
//
return i;
//
}
//
//
public void callSaasApi(JobAccountLog job) {
//
HashMap<String, Object> map = new HashMap<>(5);
//
map.put("account_id", job.getAccountId());
//
map.put("AccountEntrySortType", "AccountEntryItemNumberAscending");
//
map.put("BeginDate", job.getStartTime().minusHours(8).minusMinutes(2));
//
map.put("EndDate", job.getEndTime().minusHours(8));
//
MediaType mediaType = MediaType.parse("application/json");
//
Integer pageNumber = 0;
//
DcBaseFinanceEbay dcBaseFinanceEbay = new DcBaseFinanceEbay();
//
Response response = null;
//
try {
//
do {
//
map.put("PageNumber", job.getPageIndex() > 0 ? job.getPageIndex() : 1);
//
RequestBody body = RequestBody.create(mediaType, JSON.toJSONString(map));
//
Request request = new Request.Builder()
//
.url(propertiesUtil.getPropertyAsString("EBAY_FINANCE_URL"))
//
.post(body)
//
.addHeader("Content-Type", "application/json")
//
.build();
//
log.warn(JSON.toJSONString(map));
//
response = client.newCall(request).execute();
//
log.warn(JSON.toJSONString(map));
//
if (response.isSuccessful()) {
//
EbayResult ebayResult = JSON.parseObject(response.body().byteStream(), EbayResult.class);
//
if (ebayResult != null && ebayResult.getAck() != null && ebayResult.getAck().equals("Success")) {
//
AccountEntries accountEntries = ebayResult.getAccountEntries();
//
if (accountEntries != null) {
//
List<AccountEntry> accountEntryList = accountEntries.getAccountEntry();
//
if (accountEntryList != null && accountEntryList.size() > 0) {
//
for (AccountEntry accountEntry : accountEntryList) {
//
LocalDateTime gmt = LocalDateTime.from(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'").parse(accountEntry.getGmtDate_()));
//
dcBaseFinanceEbay.setGmtDate(gmt);
//
dcBaseFinanceEbay.setBjDate(dcBaseFinanceEbay.getGmtDate().plusHours(8));
//
BeanUtils.copyProperties(dcBaseFinanceEbay, accountEntry);
//
if (accountEntry.getGrossAmount_() != null) {
//
dcBaseFinanceEbay.setGrossAmount(accountEntry.getGrossAmount_().getValue());
//
dcBaseFinanceEbay.setCurrency(accountEntry.getGrossAmount_().getCurrency());
//
dcBaseFinanceEbay.setExchangeRate(CallBailunSystem.getExchangeRate(dcBaseFinanceEbay.getCurrency(), CurrencyType.CNY.value(), dcBaseFinanceEbay.getBjDate()));
//
dcBaseFinanceEbay.setExchangeRateUsd(CallBailunSystem.getExchangeRate(dcBaseFinanceEbay.getCurrency(), CurrencyType.USD.value(), dcBaseFinanceEbay.getBjDate()));
//
}
//
if (accountEntry.getGrossAmount_() != null) {
//
dcBaseFinanceEbay.setNetAmount(accountEntry.getNetAmount_().getValue());
//
}
//
dcBaseFinanceEbay.setAccountId(job.getAccountId());
//
dcBaseFinanceEbay.setCompanyId(job.getCompanyId());
//
dcBaseFinanceEbay.setBjModified(LocalDateTime.now());
//
DcBaseFinanceEbayMapper dcBaseFinanceEbayMapper = SessionUtil.getSession().getMapper(DcBaseFinanceEbayMapper.class);
//
int i = dcBaseFinanceEbayMapper.updateByExampleSelective(dcBaseFinanceEbay, DcBaseFinanceEbayExample.newAndCreateCriteria().andRefNumberEqualTo(dcBaseFinanceEbay.getRefNumber() == null ? "" : dcBaseFinanceEbay.getRefNumber()).andItemIdEqualTo(dcBaseFinanceEbay.getItemId() == null ? "" : dcBaseFinanceEbay.getItemId()).andAccountEntryTypeEqualTo(dcBaseFinanceEbay.getAccountEntryType() == null ? "" : dcBaseFinanceEbay.getAccountEntryType()).andGmtDateEqualTo(dcBaseFinanceEbay.getGmtDate()).example());
//
if (i == 0) {
//
dcBaseFinanceEbayMapper.insertSelective(dcBaseFinanceEbay);
//
}
//
}
//
}
//
}
//
pageNumber = ebayResult.getEntriesPerPage();
//
} else {
//
throw new RuntimeException("授权错误");
//
}
//
} else {
//
throw new RuntimeException("接口调用失败");
//
}
//
job.setPageIndex(job.getPageIndex() + 1);
//
} while (!pageNumber.equals(0));
//
job.setPageIndex(1);
//
job.setStartTime(job.getEndTime());
//
job.setEndTime(job.getStartTime().plusDays(job.getIntervalTime()).isAfter(LocalDateTime.now()) ? LocalDateTime.now() : job.getEndTime().plusDays(job.getIntervalTime()));
//
job.setMessage("执行成功");
//
} catch (Exception e) {
//
job.setMessage(e.getMessage());
//
} finally {
//
if (response != null) {
//
response.close();
//
}
//
}
//
}
//
//
}
data-base/base-sync-finance-ebay/src/test/java/EbayFinanceSyncJobTest.java
deleted
100644 → 0
View file @
7be08f88
import
com.bailuntec.domain.entity.JobAccountLog
;
import
com.bailuntec.domain.entity.JobPointLog
;
import
com.bailuntec.job.EbayFinanceAdSyncJob
;
import
com.bailuntec.job.EbayFinanceSyncJob
;
import
com.dangdang.ddframe.job.api.ShardingContext
;
import
com.dangdang.ddframe.job.executor.ShardingContexts
;
import
lombok.extern.slf4j.Slf4j
;
import
org.junit.Test
;
import
java.time.LocalDateTime
;
import
java.time.temporal.ChronoUnit
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.concurrent.ExecutorService
;
import
java.util.concurrent.Executors
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
import
java.util.stream.Stream
;
@Slf4j
public
class
EbayFinanceSyncJobTest
{
@Test
public
void
test3
()
{
EbayFinanceSyncJob
skuSyncJob
=
new
EbayFinanceSyncJob
();
ShardingContext
job
=
new
ShardingContext
(
new
ShardingContexts
(
"1"
,
"job"
,
1
,
""
,
new
HashMap
<>()),
0
);
skuSyncJob
.
executeJob
(
job
,
new
JobPointLog
(
""
,
null
,
100
,
1
,
1
,
LocalDateTime
.
now
().
minusMonths
(
1
),
LocalDateTime
.
now
().
minusDays
(
29
)));
}
@Test
public
void
test1
()
{
ExecutorService
threadPool
=
Executors
.
newFixedThreadPool
(
300
);
//获取时间区间reportDate列表
List
<
LocalDateTime
>
localDateList
=
Stream
.
iterate
(
LocalDateTime
.
of
(
2020
,
9
,
30
,
0
,
0
),
localDate
->
localDate
.
plusDays
(
1
))
.
limit
(
ChronoUnit
.
DAYS
.
between
(
LocalDateTime
.
of
(
2020
,
9
,
30
,
0
,
0
),
LocalDateTime
.
of
(
2020
,
11
,
2
,
0
,
0
))
+
1
)
.
collect
(
Collectors
.
toList
());
localDateList
.
forEach
(
localDateTime
->
{
threadPool
.
execute
(()
->
{
EbayFinanceAdSyncJob
skuSyncJob
=
new
EbayFinanceAdSyncJob
();
JobAccountLog
jobAccountLog
=
new
JobAccountLog
();
jobAccountLog
.
setAccountId
(
314
);
jobAccountLog
.
setStartTime
(
localDateTime
);
jobAccountLog
.
setEndTime
(
localDateTime
.
plusDays
(
1
));
jobAccountLog
.
setIntervalTime
(
1
);
jobAccountLog
.
setPageIndex
(
1
);
jobAccountLog
.
setPageSize
(
100
);
skuSyncJob
.
callSaasApi
(
jobAccountLog
,
null
);
});
});
threadPool
.
shutdown
();
try
{
//等待直到所有任务完成
threadPool
.
awaitTermination
(
Integer
.
MAX_VALUE
,
TimeUnit
.
MINUTES
);
}
catch
(
InterruptedException
e
)
{
e
.
printStackTrace
();
}
}
}
data-base/base-sync-finance-ebay/src/test/java/com/bailuntec/job/EbayFinanceAdSyncJobTest.java
View file @
2bbf6387
...
...
@@ -3,6 +3,7 @@ package com.bailuntec.job;
import
com.alibaba.excel.EasyExcel
;
import
com.bailuntec.domain.entity.DcBaseCompanyAccount
;
import
com.bailuntec.domain.entity.DcBaseFinanceEbay
;
import
com.bailuntec.domain.entity.JobPointLog
;
import
com.bailuntec.domain.example.DcBaseCompanyAccountExample
;
import
com.bailuntec.domain.example.DcBaseFinanceEbayExample
;
import
com.bailuntec.mapper.DcBaseCompanyAccountMapper
;
...
...
@@ -16,10 +17,12 @@ import org.junit.Test;
import
java.time.LocalDateTime
;
import
java.time.format.DateTimeFormatter
;
import
java.time.temporal.ChronoUnit
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
import
java.util.stream.Stream
;
/**
* <p>
...
...
@@ -80,11 +83,21 @@ public class EbayFinanceAdSyncJobTest {
@Test
public
void
testThreadPool
()
{
EbayFinanceAdSyncJob
ebayFinanceAdSyncJob
=
new
EbayFinanceAdSyncJob
();
ShardingContext
shardingContext
=
new
ShardingContext
(
new
ShardingContexts
(
"x"
,
"base-sync-finance-ebay-ad"
,
1
,
null
,
new
HashMap
<>()),
0
);
ebayFinanceAdSyncJob
.
executeJob
(
shardingContext
,
null
);
LocalDateTime
start
=
LocalDateTime
.
of
(
2020
,
10
,
31
,
0
,
0
);
LocalDateTime
end
=
LocalDateTime
.
of
(
2020
,
11
,
16
,
0
,
0
);
List
<
LocalDateTime
>
localDateTimeList
=
Stream
.
iterate
(
start
,
localDateTime
->
localDateTime
.
plusDays
(
1
))
.
limit
(
ChronoUnit
.
DAYS
.
between
(
start
,
end
)
+
1
)
.
collect
(
Collectors
.
toList
());
localDateTimeList
.
parallelStream
().
forEach
(
localDateTime
->
{
JobPointLog
jobPointLog
=
new
JobPointLog
();
jobPointLog
.
setStartTime
(
localDateTime
);
jobPointLog
.
setEndTime
(
localDateTime
.
plusDays
(
1
));
ebayFinanceAdSyncJob
.
executeJob
(
null
,
jobPointLog
);
});
}
}
data-common/src/main/java/com/bailuntec/support/DruidDataSourceFactory.java
View file @
2bbf6387
...
...
@@ -22,6 +22,13 @@ public class DruidDataSourceFactory implements DataSourceFactory {
hikariConfig
.
setJdbcUrl
(
this
.
props
.
getProperty
(
"url"
));
hikariConfig
.
setUsername
(
this
.
props
.
getProperty
(
"username"
));
hikariConfig
.
setPassword
(
this
.
props
.
getProperty
(
"password"
));
hikariConfig
.
setReadOnly
(
false
);
hikariConfig
.
setConnectionTimeout
(
60000L
);
hikariConfig
.
setIdleTimeout
(
60000L
);
hikariConfig
.
setValidationTimeout
(
3000L
);
hikariConfig
.
setMaxLifetime
(
60000L
);
hikariConfig
.
setMaximumPoolSize
(
1000
);
hikariConfig
.
setMinimumIdle
(
10
);
return
new
HikariDataSource
(
hikariConfig
);
}
...
...
data-common/src/main/resources/mybatis-config.xml
View file @
2bbf6387
...
...
@@ -6,7 +6,7 @@
<!--<properties resource="db-tj.properties"/>-->
<properties
resource=
"db-dev.properties"
/>
<!-- <properties resource="db-prod.properties"/>-->
<!-- <properties resource="db-prod.properties"/>-->
<settings>
<setting
name=
"mapUnderscoreToCamelCase"
value=
"true"
/>
</settings>
...
...
data-show/show-auto-turnover/src/main/resources/job.properties
View file @
2bbf6387
...
...
@@ -10,8 +10,9 @@ EVENT_RDB_STORAGE_PASSWORD=#7kfnymAM$Y9-Ntf
ZOOKEEPER_SERVER=172.31.255.120:2181
NAME_SPACE
=
data-center
JOB_NAME
=
show-auto-turnover2
JOB_CRON
=
0 0 3 * * ?
JOB_NAME
=
show-auto-turnover4
#JOB_CRON=0 0 3 * * ?
JOB_CRON
=
0 50 9 * * ?
SHARDING_TOTAL_COUNT
=
8
...
...
@@ -20,6 +21,6 @@ JOB_CRON_NE_NORMAL=0 0 1 ? * MON
JOB_NAME_INCREMENT
=
show-auto-turnover-increment
JOB_CRON_INCREMENT
=
0
52 17
* * ?
JOB_CRON_INCREMENT
=
0
0 14
* * ?
SHARDING_TOTAL_COUNT_INCREMENT
=
8
data-show/show-auto-turnover/src/test/java/AutoTurnoverTest.java
View file @
2bbf6387
...
...
@@ -110,11 +110,6 @@ public class AutoTurnoverTest {
autoTurnoverJob
.
executeJob
(
shardingContext
,
jobPointLog
);
}
// @Test
// public void test5() {
// AutoTurnoverJobListener autoTurnoverJobListener = new AutoTurnoverJobListener();
// autoTurnoverJobListener.afterJobExecuted(null);
// }
@Test
public
void
test55
()
{
...
...
@@ -137,11 +132,12 @@ public class AutoTurnoverTest {
}
//949406801 GZBLWH
@Test
public
void
testXX
()
{
DcBaseStock
dcBaseStock
=
SessionUtil
.
getSession
().
getMapper
(
DcBaseStockMapper
.
class
)
.
selectOneByExample
(
DcBaseStockExample
.
newAndCreateCriteria
()
.
andBailunSkuEqualTo
(
"94
8906502
"
)
.
andBailunSkuEqualTo
(
"94
9406801
"
)
.
andWarehouseCodeEqualTo
(
"GZBLWH"
)
.
example
());
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment