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
87d6516b
Commit
87d6516b
authored
Nov 19, 2019
by
yong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
跑下周系数
parent
b0e092b1
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
75 additions
and
6 deletions
+75
-6
DcAutoSalesMapper.xml
.../src/main/java/com/bailuntec/mapper/DcAutoSalesMapper.xml
+1
-1
Application.java
...culate-sales/src/main/java/com/bailuntec/Application.java
+9
-0
CalculateWeekJob.java
...les/src/main/java/com/bailuntec/job/CalculateWeekJob.java
+62
-5
job.properties
...mid/mid-calculate-sales/src/main/resources/job.properties
+3
-0
No files found.
data-common/src/main/java/com/bailuntec/mapper/DcAutoSalesMapper.xml
View file @
87d6516b
...
@@ -2673,7 +2673,7 @@
...
@@ -2673,7 +2673,7 @@
sum(case when week(t2.PayTimeUtc) = 51 then t1.QuantityOrdered else 0 end) as 'fiftyOneWeekSales',
sum(case when week(t2.PayTimeUtc) = 51 then t1.QuantityOrdered else 0 end) as 'fiftyOneWeekSales',
sum(case when week(t2.PayTimeUtc) = 52 then t1.QuantityOrdered else 0 end) as 'fiftyTwoWeekSales'
sum(case when week(t2.PayTimeUtc) = 52 then t1.QuantityOrdered else 0 end) as 'fiftyTwoWeekSales'
FROM order_proskuitem t1
FROM order_proskuitem t1
left join bailun_order t2 on t1.BailunOrderId = t2.
BailunOrderNo
left join bailun_order t2 on t1.BailunOrderId = t2.
id
where t2.PayTimeUtc
>
= '2018-01-01 00:00:00'
where t2.PayTimeUtc
>
= '2018-01-01 00:00:00'
and t2.PayTimeUtc
<
= '2018-12-31 23:59:59'
and t2.PayTimeUtc
<
= '2018-12-31 23:59:59'
and t1.SkuNo = #{bailunSku}
and t1.SkuNo = #{bailunSku}
...
...
data-mid/mid-calculate-sales/src/main/java/com/bailuntec/Application.java
View file @
87d6516b
...
@@ -2,6 +2,7 @@ package com.bailuntec;
...
@@ -2,6 +2,7 @@ package com.bailuntec;
import
com.alibaba.druid.pool.DruidDataSource
;
import
com.alibaba.druid.pool.DruidDataSource
;
import
com.bailuntec.job.CalculateSalesJob
;
import
com.bailuntec.job.CalculateSalesJob
;
import
com.bailuntec.job.CalculateWeekJob
;
import
com.bailuntec.listener.CalculateSalesListener
;
import
com.bailuntec.listener.CalculateSalesListener
;
import
com.bailuntec.utils.PropertiesUtil
;
import
com.bailuntec.utils.PropertiesUtil
;
import
com.dangdang.ddframe.job.config.JobCoreConfiguration
;
import
com.dangdang.ddframe.job.config.JobCoreConfiguration
;
...
@@ -26,6 +27,7 @@ public class Application {
...
@@ -26,6 +27,7 @@ public class Application {
private
static
final
String
EVENT_RDB_STORAGE_PASSWORD
=
propertiesUtil
.
getPropertyAsString
(
"EVENT_RDB_STORAGE_PASSWORD"
);
private
static
final
String
EVENT_RDB_STORAGE_PASSWORD
=
propertiesUtil
.
getPropertyAsString
(
"EVENT_RDB_STORAGE_PASSWORD"
);
public
static
void
main
(
String
[]
args
)
{
public
static
void
main
(
String
[]
args
)
{
new
JobScheduler
(
createRegistryCenter
(),
createJobConfiguration
(),
createJobEventConfiguration
(),
new
CalculateSalesListener
()).
init
();
new
JobScheduler
(
createRegistryCenter
(),
createJobConfiguration
(),
createJobEventConfiguration
(),
new
CalculateSalesListener
()).
init
();
new
JobScheduler
(
createRegistryCenter
(),
createJobConfiguration1
(),
createJobEventConfiguration
(),
new
CalculateSalesListener
()).
init
();
}
}
private
static
CoordinatorRegistryCenter
createRegistryCenter
()
{
private
static
CoordinatorRegistryCenter
createRegistryCenter
()
{
...
@@ -41,6 +43,13 @@ public class Application {
...
@@ -41,6 +43,13 @@ public class Application {
return
simpleJobRootConfig
;
return
simpleJobRootConfig
;
}
}
private
static
LiteJobConfiguration
createJobConfiguration1
()
{
JobCoreConfiguration
simpleCoreConfig
=
JobCoreConfiguration
.
newBuilder
(
propertiesUtil
.
getPropertyAsString
(
"JOB_WEEK_NAME"
),
propertiesUtil
.
getPropertyAsString
(
"JOB_WEEK_CRON"
),
propertiesUtil
.
getPropertyAsInt
(
"SHARDING_TOTAL_COUNT"
)).
build
();
SimpleJobConfiguration
simpleJobConfig
=
new
SimpleJobConfiguration
(
simpleCoreConfig
,
CalculateWeekJob
.
class
.
getCanonicalName
());
LiteJobConfiguration
simpleJobRootConfig
=
LiteJobConfiguration
.
newBuilder
(
simpleJobConfig
).
build
();
return
simpleJobRootConfig
;
}
private
static
JobEventConfiguration
createJobEventConfiguration
()
{
private
static
JobEventConfiguration
createJobEventConfiguration
()
{
JobEventConfiguration
jobEventRdbConfig
=
new
JobEventRdbConfiguration
(
setUpEventTraceDataSource
());
JobEventConfiguration
jobEventRdbConfig
=
new
JobEventRdbConfiguration
(
setUpEventTraceDataSource
());
return
jobEventRdbConfig
;
return
jobEventRdbConfig
;
...
...
data-
show/show-auto-turnover/src/main/java/com/bailuntec/job/CalculateWeekService
.java
→
data-
mid/mid-calculate-sales/src/main/java/com/bailuntec/job/CalculateWeekJob
.java
View file @
87d6516b
package
com
.
bailuntec
.
job
;
package
com
.
bailuntec
.
job
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.TypeReference
;
import
com.bailuntec.domain.dto.SalesVolumeWeekDTO
;
import
com.bailuntec.domain.dto.SalesVolumeWeekDTO
;
import
com.bailuntec.domain.entity.DcAutoWeekSales
;
import
com.bailuntec.domain.entity.DcAutoWeekSales
;
import
com.bailuntec.domain.entity.DcBaseStock
;
import
com.bailuntec.domain.entity.DcBaseStock
;
import
com.bailuntec.domain.entity.JobPointLog
;
import
com.bailuntec.domain.example.DcBaseStockExample
;
import
com.bailuntec.domain.example.DcBaseStockExample
;
import
com.bailuntec.mapper.DcAutoSalesMapper
;
import
com.bailuntec.mapper.DcAutoSalesMapper
;
import
com.bailuntec.mapper.DcAutoWeekSalesMapper
;
import
com.bailuntec.mapper.DcAutoWeekSalesMapper
;
import
com.bailuntec.mapper.DcBaseStockMapper
;
import
com.bailuntec.mapper.DcBaseStockMapper
;
import
com.bailuntec.mapper.JobPointLogMapper
;
import
com.bailuntec.support.PointJob
;
import
com.bailuntec.utils.ExceptionUtil
;
import
com.bailuntec.utils.SessionUtil
;
import
com.bailuntec.utils.SessionUtil
;
import
com.dangdang.ddframe.job.api.ShardingContext
;
import
com.dangdang.ddframe.job.api.simple.SimpleJob
;
import
org.apache.commons.beanutils.BeanUtils
;
import
org.apache.commons.beanutils.BeanUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
java.util.Calendar
;
import
java.util.Calendar
;
import
java.util.List
;
import
java.util.List
;
public
class
CalculateWeek
Service
{
public
class
CalculateWeek
Job
extends
PointJob
{
public
void
autoTurnoverFromStock
()
{
/*
public void autoTurnoverFromStock() {
try{
try{
int pageSize = 1000;
int pageSize = 1000;
DcBaseStockMapper baseStockMapper = SessionUtil.getSession().getMapper(DcBaseStockMapper.class);
DcBaseStockMapper baseStockMapper = SessionUtil.getSession().getMapper(DcBaseStockMapper.class);
...
@@ -53,7 +57,7 @@ public class CalculateWeekService {
...
@@ -53,7 +57,7 @@ public class CalculateWeekService {
}finally {
}finally {
SessionUtil.closeSession();
SessionUtil.closeSession();
}
}
}
}
*/
public
void
calculateWeekRate
(
SalesVolumeWeekDTO
salesVolumeWeekDTO
)
{
public
void
calculateWeekRate
(
SalesVolumeWeekDTO
salesVolumeWeekDTO
)
{
try
{
try
{
...
@@ -93,4 +97,57 @@ public class CalculateWeekService {
...
@@ -93,4 +97,57 @@ public class CalculateWeekService {
cal
.
get
(
Calendar
.
DAY_OF_MONTH
);
cal
.
get
(
Calendar
.
DAY_OF_MONTH
);
}
}
@Override
public
void
executeJob
(
ShardingContext
shardingContext
,
JobPointLog
jobPointLog
)
{
try
{
int
pageSize
=
1000
;
DcBaseStockMapper
baseStockMapper
=
SessionUtil
.
getSession
().
getMapper
(
DcBaseStockMapper
.
class
);
long
count
=
baseStockMapper
.
countByExample
(
DcBaseStockExample
.
newAndCreateCriteria
().
andWarehouseCodeEqualTo
(
"GZBLWH"
).
example
());
int
totalPage
=
(
int
)(
count
%
jobPointLog
.
getPageSize
()
==
0
?
count
/
jobPointLog
.
getPageSize
()
:
count
/
jobPointLog
.
getPageSize
()
+
1
);
int
page
=
0
;
do
{
List
<
DcBaseStock
>
dcBaseStockList
=
null
;
//分页查SKU_仓库
if
(
jobPointLog
.
getPageIndex
().
equals
(
0
))
{
jobPointLog
.
setPageIndex
(
totalPage
);
}
try
{
DcBaseStockMapper
baseStockMapperFor
=
SessionUtil
.
getSession
().
getMapper
(
DcBaseStockMapper
.
class
);
dcBaseStockList
=
baseStockMapperFor
.
listStockById
(
page
*
pageSize
,
pageSize
);
DcAutoSalesMapper
autoSalesMapper
=
null
;
if
(
dcBaseStockList
!=
null
&&
dcBaseStockList
.
size
()
>
0
)
{
for
(
DcBaseStock
dcBaseStock
:
dcBaseStockList
)
{
autoSalesMapper
=
SessionUtil
.
getSession
().
getMapper
(
DcAutoSalesMapper
.
class
);
SalesVolumeWeekDTO
salesVolumeWeekDTO
=
autoSalesMapper
.
getSalesVolumeWeekDTO
(
dcBaseStock
.
getBailunSku
(),
dcBaseStock
.
getWarehouseCode
());
if
(
StringUtils
.
isNotEmpty
(
salesVolumeWeekDTO
.
getSalesDetail
().
trim
()))
{
calculateWeekRate
(
salesVolumeWeekDTO
);
}
}
}
}
catch
(
Exception
e
){
e
.
printStackTrace
();
}
finally
{
SessionUtil
.
closeSession
();
}
if
(
jobPointLog
.
getPageIndex
()
%
10
==
0
)
{
try
{
JobPointLogMapper
mapper
=
SessionUtil
.
getSession
().
getMapper
(
JobPointLogMapper
.
class
);
mapper
.
upsertSelective
(
jobPointLog
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
throw
new
RuntimeException
(
ExceptionUtil
.
transform
(
e
),
e
);
}
finally
{
SessionUtil
.
closeSession
();
}
}
jobPointLog
.
setPageIndex
(
jobPointLog
.
getPageIndex
()
-
1
);
}
while
(
0
<
jobPointLog
.
getPageIndex
());
jobPointLog
.
setPageIndex
(
0
);
}
catch
(
Exception
e
){
e
.
printStackTrace
();
}
finally
{
SessionUtil
.
closeSession
();
}
}
}
}
data-mid/mid-calculate-sales/src/main/resources/job.properties
View file @
87d6516b
...
@@ -11,4 +11,6 @@ ZOOKEEPER_SERVER=172.31.255.120:2181
...
@@ -11,4 +11,6 @@ ZOOKEEPER_SERVER=172.31.255.120:2181
NAME_SPACE
=
data-center
NAME_SPACE
=
data-center
JOB_NAME
=
mid-calculate-sales
JOB_NAME
=
mid-calculate-sales
JOB_CRON
=
0 0 1 * * ? *
JOB_CRON
=
0 0 1 * * ? *
JOB_WEEK_NAME
=
mid-calculate-weeksales
JOB_WEEK_CRON
=
0 0 09 20 11 ? 2019
SHARDING_TOTAL_COUNT
=
1
SHARDING_TOTAL_COUNT
=
1
\ No newline at end of file
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