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
bltdc
dc-java
Commits
aa919445
Commit
aa919445
authored
Jun 12, 2019
by
wutong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化任务处理
parent
bc6a40b5
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
57 additions
and
30 deletions
+57
-30
AccountSummary.java
...c/main/java/com/bailuntec/domain/pojo/AccountSummary.java
+3
-1
EbayFinanceSyncJob.java
...y/src/main/java/com/bailuntec/job/EbayFinanceSyncJob.java
+37
-29
EbayFinanceSyncJobTest.java
...nc-finance-ebay/src/test/java/EbayFinanceSyncJobTest.java
+17
-0
No files found.
data-base/base-sync-finance-ebay/src/main/java/com/bailuntec/domain/pojo/AccountSummary.java
View file @
aa919445
...
@@ -2,10 +2,12 @@ package com.bailuntec.domain.pojo;
...
@@ -2,10 +2,12 @@ package com.bailuntec.domain.pojo;
import
lombok.Data
;
import
lombok.Data
;
import
java.util.List
;
@Data
@Data
public
class
AccountSummary
{
public
class
AccountSummary
{
private
String
accountState
;
private
String
accountState
;
private
AdditionalAccount
additionalAccount
;
private
List
<
AdditionalAccount
>
additionalAccount
;
private
Currency
amountPastDue
;
private
Currency
amountPastDue
;
private
String
billingCycleDate
;
private
String
billingCycleDate
;
private
Currency
lastAmountPaid
;
private
Currency
lastAmountPaid
;
...
...
data-base/base-sync-finance-ebay/src/main/java/com/bailuntec/job/EbayFinanceSyncJob.java
View file @
aa919445
...
@@ -55,6 +55,7 @@ public class EbayFinanceSyncJob extends PointJob {
...
@@ -55,6 +55,7 @@ public class EbayFinanceSyncJob extends PointJob {
List
<
JobAccountLog
>
listByPage
=
jobAccountLogMapper
.
getListByPage
(
12
,
page
*
jobPointLog
.
getPageSize
(),
jobPointLog
.
getPageSize
());
List
<
JobAccountLog
>
listByPage
=
jobAccountLogMapper
.
getListByPage
(
12
,
page
*
jobPointLog
.
getPageSize
(),
jobPointLog
.
getPageSize
());
if
(
listByPage
!=
null
&&
listByPage
.
size
()
>
0
)
{
if
(
listByPage
!=
null
&&
listByPage
.
size
()
>
0
)
{
for
(
JobAccountLog
jobAccountLog
:
listByPage
)
{
for
(
JobAccountLog
jobAccountLog
:
listByPage
)
{
log
.
warn
(
"分片: "
+
shardingContext
.
getShardingItem
()
+
" 账号: "
+
jobAccountLog
);
if
(
jobAccountLog
.
getId
()
==
null
)
{
//在任务表无记录
if
(
jobAccountLog
.
getId
()
==
null
)
{
//在任务表无记录
BeanUtils
.
copyProperties
(
jobAccountLog
,
jobPointLog
);
BeanUtils
.
copyProperties
(
jobAccountLog
,
jobPointLog
);
jobAccountLog
.
setId
(
null
);
jobAccountLog
.
setId
(
null
);
...
@@ -85,7 +86,7 @@ public class EbayFinanceSyncJob extends PointJob {
...
@@ -85,7 +86,7 @@ public class EbayFinanceSyncJob extends PointJob {
return
l
%
jobPointLog
.
getPageSize
()
==
0
?
l
%
jobPointLog
.
getPageSize
()
:
l
%
jobPointLog
.
getPageSize
()
+
1
;
return
l
%
jobPointLog
.
getPageSize
()
==
0
?
l
%
jobPointLog
.
getPageSize
()
:
l
%
jobPointLog
.
getPageSize
()
+
1
;
}
}
p
rivate
void
callSaasApi
(
JobAccountLog
job
)
{
p
ublic
void
callSaasApi
(
JobAccountLog
job
)
{
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>(
5
);
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>(
5
);
map
.
put
(
"account_id"
,
job
.
getAccountId
());
map
.
put
(
"account_id"
,
job
.
getAccountId
());
map
.
put
(
"AccountEntrySortType"
,
"AccountEntryItemNumberAscending"
);
map
.
put
(
"AccountEntrySortType"
,
"AccountEntryItemNumberAscending"
);
...
@@ -107,44 +108,51 @@ public class EbayFinanceSyncJob extends PointJob {
...
@@ -107,44 +108,51 @@ public class EbayFinanceSyncJob extends PointJob {
.
build
();
.
build
();
response
=
client
.
newCall
(
request
).
execute
();
response
=
client
.
newCall
(
request
).
execute
();
log
.
warn
(
JSON
.
toJSONString
(
map
));
log
.
warn
(
JSON
.
toJSONString
(
map
));
EbayResult
ebayResult
=
JSON
.
parseObject
(
response
.
body
().
byteStream
(),
EbayResult
.
class
);
if
(
response
.
isSuccessful
())
{
AccountEntries
accountEntries
=
ebayResult
.
getAccountEntries
();
EbayResult
ebayResult
=
JSON
.
parseObject
(
response
.
body
().
byteStream
(),
EbayResult
.
class
);
if
(
accountEntries
!=
null
)
{
if
(
ebayResult
!=
null
&&
ebayResult
.
getAck
()
!=
null
&&
ebayResult
.
getAck
().
equals
(
"Success"
))
{
List
<
AccountEntry
>
accountEntryList
=
accountEntries
.
getAccountEntry
();
AccountEntries
accountEntries
=
ebayResult
.
getAccountEntries
();
if
(
accountEntryList
!=
null
&&
accountEntryList
.
size
()
>
0
)
{
if
(
accountEntries
!=
null
)
{
for
(
AccountEntry
accountEntry
:
accountEntryList
)
{
List
<
AccountEntry
>
accountEntryList
=
accountEntries
.
getAccountEntry
();
LocalDateTime
gmt
=
LocalDateTime
.
from
(
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
).
parse
(
accountEntry
.
getGmtDate_
()));
if
(
accountEntryList
!=
null
&&
accountEntryList
.
size
()
>
0
)
{
dcBaseFinanceEbay
.
setGmtDate
(
gmt
);
for
(
AccountEntry
accountEntry
:
accountEntryList
)
{
dcBaseFinanceEbay
.
setBjDate
(
dcBaseFinanceEbay
.
getGmtDate
().
plusHours
(
8
));
LocalDateTime
gmt
=
LocalDateTime
.
from
(
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
).
parse
(
accountEntry
.
getGmtDate_
()));
BeanUtils
.
copyProperties
(
dcBaseFinanceEbay
,
accountEntry
);
dcBaseFinanceEbay
.
setGmtDate
(
gmt
);
if
(
accountEntry
.
getGrossAmount_
()
!=
null
)
{
dcBaseFinanceEbay
.
setBjDate
(
dcBaseFinanceEbay
.
getGmtDate
().
plusHours
(
8
));
dcBaseFinanceEbay
.
setGrossAmount
(
accountEntry
.
getGrossAmount_
().
getValue
());
BeanUtils
.
copyProperties
(
dcBaseFinanceEbay
,
accountEntry
);
dcBaseFinanceEbay
.
setCurrency
(
accountEntry
.
getGrossAmount_
().
getCurrency
());
if
(
accountEntry
.
getGrossAmount_
()
!=
null
)
{
dcBaseFinanceEbay
.
setExchangeRate
(
CallBailunSystem
.
getExchangeRate
(
dcBaseFinanceEbay
.
getCurrency
(),
"CNY"
,
dcBaseFinanceEbay
.
getBjDate
()));
dcBaseFinanceEbay
.
setGrossAmount
(
accountEntry
.
getGrossAmount_
().
getValue
());
}
dcBaseFinanceEbay
.
setCurrency
(
accountEntry
.
getGrossAmount_
().
getCurrency
());
if
(
accountEntry
.
getGrossAmount_
()
!=
null
)
{
dcBaseFinanceEbay
.
setExchangeRate
(
CallBailunSystem
.
getExchangeRate
(
dcBaseFinanceEbay
.
getCurrency
(),
"CNY"
,
dcBaseFinanceEbay
.
getBjDate
()));
dcBaseFinanceEbay
.
setNetAmount
(
accountEntry
.
getNetAmount_
().
getValue
());
}
}
if
(
accountEntry
.
getGrossAmount_
()
!=
null
)
{
dcBaseFinanceEbay
.
setAccountId
(
job
.
getAccountId
());
dcBaseFinanceEbay
.
setNetAmount
(
accountEntry
.
getNetAmount_
().
getValue
());
dcBaseFinanceEbay
.
setCompanyId
(
job
.
getCompanyId
());
}
dcBaseFinanceEbay
.
setBjModified
(
LocalDateTime
.
now
());
dcBaseFinanceEbay
.
setAccountId
(
job
.
getAccountId
());
int
i
=
dcBaseFinanceEbayMapper
.
updateByExampleSelective
(
dcBaseFinanceEbay
,
DcBaseFinanceEbayExample
.
newAndCreateCriteria
().
andAccountIdEqualTo
(
dcBaseFinanceEbay
.
getAccountId
()).
andRefNumberEqualTo
(
dcBaseFinanceEbay
.
getRefNumber
()).
example
());
dcBaseFinanceEbay
.
setCompanyId
(
job
.
getCompanyId
());
if
(
i
==
0
)
{
dcBaseFinanceEbay
.
setBjModified
(
LocalDateTime
.
now
());
dcBaseFinanceEbayMapper
.
insertSelective
(
dcBaseFinanceEbay
);
int
i
=
dcBaseFinanceEbayMapper
.
updateByExampleSelective
(
dcBaseFinanceEbay
,
DcBaseFinanceEbayExample
.
newAndCreateCriteria
().
andAccountIdEqualTo
(
dcBaseFinanceEbay
.
getAccountId
()).
andRefNumberEqualTo
(
dcBaseFinanceEbay
.
getRefNumber
()).
example
());
if
(
i
==
0
)
{
dcBaseFinanceEbayMapper
.
insertSelective
(
dcBaseFinanceEbay
);
}
}
}
}
}
}
pageNumber
=
ebayResult
.
getPageNumber
();
}
else
{
throw
new
RuntimeException
(
"授权错误"
);
}
}
}
else
{
throw
new
RuntimeException
(
"接口调用失败"
);
}
}
pageNumber
=
ebayResult
.
getPageNumber
();
job
.
setPageIndex
(
job
.
getPageIndex
()
+
1
);
job
.
setPageIndex
(
job
.
getPageIndex
()
+
1
);
}
while
(
job
.
getPageIndex
()
<=
pageNumber
);
}
while
(
job
.
getPageIndex
()
<=
pageNumber
);
job
.
setPageIndex
(
1
);
job
.
setPageIndex
(
1
);
job
.
setStartTime
(
job
.
getEndTime
());
job
.
setStartTime
(
job
.
getEndTime
());
job
.
setEndTime
(
job
.
getStartTime
().
plusDays
(
job
.
getIntervalTime
()).
isAfter
(
LocalDateTime
.
now
())
?
LocalDateTime
.
now
()
:
job
.
getEndTime
().
plusDays
(
job
.
getIntervalTime
()));
job
.
setEndTime
(
job
.
getStartTime
().
plusDays
(
job
.
getIntervalTime
()).
isAfter
(
LocalDateTime
.
now
())
?
LocalDateTime
.
now
()
:
job
.
getEndTime
().
plusDays
(
job
.
getIntervalTime
()));
job
.
setMessage
(
"
success
"
);
job
.
setMessage
(
"
执行成功
"
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
job
.
setMessage
(
e
.
getMessage
());
job
.
setMessage
(
e
.
getCause
().
toString
());
}
finally
{
}
finally
{
if
(
response
!=
null
)
{
if
(
response
!=
null
)
{
response
.
close
();
response
.
close
();
...
...
data-base/base-sync-finance-ebay/src/test/java/EbayFinanceSyncJobTest.java
View file @
aa919445
import
com.bailuntec.domain.entity.JobAccountLog
;
import
com.bailuntec.domain.entity.JobPointLog
;
import
com.bailuntec.domain.entity.JobPointLog
;
import
com.bailuntec.job.EbayFinanceSyncJob
;
import
com.bailuntec.job.EbayFinanceSyncJob
;
import
com.dangdang.ddframe.job.api.ShardingContext
;
import
com.dangdang.ddframe.job.api.ShardingContext
;
...
@@ -17,4 +18,20 @@ public class EbayFinanceSyncJobTest {
...
@@ -17,4 +18,20 @@ public class EbayFinanceSyncJobTest {
}
}
@Test
public
void
test1
()
{
EbayFinanceSyncJob
skuSyncJob
=
new
EbayFinanceSyncJob
();
ShardingContext
job
=
new
ShardingContext
(
new
ShardingContexts
(
"1"
,
"job"
,
3
,
""
,
new
HashMap
<>()),
1
);
JobAccountLog
jobAccountLog
=
new
JobAccountLog
();
jobAccountLog
.
setAccountId
(
1861
);
jobAccountLog
.
setStartTime
(
LocalDateTime
.
of
(
2019
,
05
,
01
,
0
,
0
));
jobAccountLog
.
setEndTime
(
LocalDateTime
.
of
(
2019
,
06
,
02
,
0
,
0
));
jobAccountLog
.
setIntervalTime
(
1
);
jobAccountLog
.
setPageIndex
(
1
);
jobAccountLog
.
setPageSize
(
100
);
skuSyncJob
.
callSaasApi
(
jobAccountLog
);
}
}
}
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