Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
cloud-platform
Project
Project
Details
Activity
Releases
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
youjj
cloud-platform
Commits
1bf8e44e
Commit
1bf8e44e
authored
Oct 18, 2019
by
hanfeng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改订单统计
parent
1e2f0651
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
144 additions
and
42 deletions
+144
-42
DailyMembersOrderStatisticsBiz.java
...fc/platform/order/biz/DailyMembersOrderStatisticsBiz.java
+1
-3
DailyOrderStatisticsBiz.java
.../com/xxfc/platform/order/biz/DailyOrderStatisticsBiz.java
+5
-5
DailyTravelOrderStatisticsBiz.java
...xfc/platform/order/biz/DailyTravelOrderStatisticsBiz.java
+3
-5
DailyVehicleOrderStatisticsBiz.java
...fc/platform/order/biz/DailyVehicleOrderStatisticsBiz.java
+4
-8
OrderAccountBiz.java
...ain/java/com/xxfc/platform/order/biz/OrderAccountBiz.java
+0
-2
BaseOrderStatisticsJobHandler.java
...tform/order/jobhandler/BaseOrderStatisticsJobHandler.java
+99
-18
ServiceTest.java
xx-order/xx-order-server/src/test/java/ServiceTest.java
+32
-1
No files found.
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/DailyMembersOrderStatisticsBiz.java
View file @
1bf8e44e
...
@@ -39,8 +39,6 @@ public class DailyMembersOrderStatisticsBiz extends BaseBiz<DailyMembersOrderSta
...
@@ -39,8 +39,6 @@ public class DailyMembersOrderStatisticsBiz extends BaseBiz<DailyMembersOrderSta
private
final
Integer
headOfficeId
=
1
;
private
final
Integer
headOfficeId
=
1
;
@Value
(
"${order.day}"
)
private
Integer
day
;
/**
/**
* 总公司id默认为1
* 总公司id默认为1
...
@@ -50,7 +48,7 @@ public class DailyMembersOrderStatisticsBiz extends BaseBiz<DailyMembersOrderSta
...
@@ -50,7 +48,7 @@ public class DailyMembersOrderStatisticsBiz extends BaseBiz<DailyMembersOrderSta
private
OrderAccountBiz
accountBiz
;
private
OrderAccountBiz
accountBiz
;
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
boolean
saveDailyMembersOrderRecord
()
{
public
boolean
saveDailyMembersOrderRecord
(
Integer
day
)
{
try
{
try
{
List
<
OrderAccountDTO
>
accountList
=
accountBiz
.
getOrderAccountByOrderType
(
OrderTypeEnum
.
MEMBER
.
getCode
(),
day
);
List
<
OrderAccountDTO
>
accountList
=
accountBiz
.
getOrderAccountByOrderType
(
OrderTypeEnum
.
MEMBER
.
getCode
(),
day
);
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/DailyOrderStatisticsBiz.java
View file @
1bf8e44e
...
@@ -25,11 +25,11 @@ public class DailyOrderStatisticsBiz extends BaseBiz<DailyOrderStatisticsMapper,
...
@@ -25,11 +25,11 @@ public class DailyOrderStatisticsBiz extends BaseBiz<DailyOrderStatisticsMapper,
@Autowired
@Autowired
private
DailyMembersOrderStatisticsBiz
membersStatisticsBiz
;
private
DailyMembersOrderStatisticsBiz
membersStatisticsBiz
;
@Scheduled
(
cron
=
"0 0 2 * * ?"
)
//
@Scheduled(cron = "0 0 2 * * ?")
public
boolean
statisticalOrder
(){
public
boolean
statisticalOrder
(
Integer
day
){
boolean
vehicleFlag
=
vehicleStatisticsBiz
.
saveDailyVehicleOrderRecord
();
boolean
vehicleFlag
=
vehicleStatisticsBiz
.
saveDailyVehicleOrderRecord
(
day
);
boolean
travelFlag
=
travelStatisticsBiz
.
saveDailyTravelOrderRecord
();
boolean
travelFlag
=
travelStatisticsBiz
.
saveDailyTravelOrderRecord
(
day
);
boolean
membersFlag
=
membersStatisticsBiz
.
saveDailyMembersOrderRecord
();
boolean
membersFlag
=
membersStatisticsBiz
.
saveDailyMembersOrderRecord
(
day
);
if
(
vehicleFlag
&&
travelFlag
&&
membersFlag
){
if
(
vehicleFlag
&&
travelFlag
&&
membersFlag
){
log
.
info
(
"----statisticalOrder:成功-----"
);
log
.
info
(
"----statisticalOrder:成功-----"
);
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/DailyTravelOrderStatisticsBiz.java
View file @
1bf8e44e
...
@@ -39,8 +39,6 @@ import java.util.stream.Collectors;
...
@@ -39,8 +39,6 @@ import java.util.stream.Collectors;
@Service
@Service
@Slf4j
@Slf4j
public
class
DailyTravelOrderStatisticsBiz
extends
BaseBiz
<
DailyTravelOrderStatisticsMapper
,
DailyTravelOrderStatistics
>
{
public
class
DailyTravelOrderStatisticsBiz
extends
BaseBiz
<
DailyTravelOrderStatisticsMapper
,
DailyTravelOrderStatistics
>
{
@Value
(
"${order.day}"
)
private
Integer
day
;
@Autowired
@Autowired
...
@@ -108,10 +106,10 @@ public class DailyTravelOrderStatisticsBiz extends BaseBiz<DailyTravelOrderStati
...
@@ -108,10 +106,10 @@ public class DailyTravelOrderStatisticsBiz extends BaseBiz<DailyTravelOrderStati
* @return
* @return
*/
*/
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
boolean
saveDailyTravelOrderRecord
()
{
public
boolean
saveDailyTravelOrderRecord
(
Integer
day
)
{
try
{
try
{
//获取每日订单统计
//获取每日订单统计
List
<
DailyTravelOrderStatistics
>
orderStatistics
=
getDailyTravelOrderStatistics
();
List
<
DailyTravelOrderStatistics
>
orderStatistics
=
getDailyTravelOrderStatistics
(
day
);
log
.
info
(
"Travel:统计完成"
);
log
.
info
(
"Travel:统计完成"
);
if
(
CollectionUtils
.
isNotEmpty
(
orderStatistics
))
{
if
(
CollectionUtils
.
isNotEmpty
(
orderStatistics
))
{
for
(
DailyTravelOrderStatistics
orderStatistic
:
orderStatistics
)
{
for
(
DailyTravelOrderStatistics
orderStatistic
:
orderStatistics
)
{
...
@@ -153,7 +151,7 @@ public class DailyTravelOrderStatisticsBiz extends BaseBiz<DailyTravelOrderStati
...
@@ -153,7 +151,7 @@ public class DailyTravelOrderStatisticsBiz extends BaseBiz<DailyTravelOrderStati
}
}
return
true
;
return
true
;
}
}
private
List
<
DailyTravelOrderStatistics
>
getDailyTravelOrderStatistics
()
{
private
List
<
DailyTravelOrderStatistics
>
getDailyTravelOrderStatistics
(
Integer
day
)
{
//获取当天所有订单账目
//获取当天所有订单账目
List
<
OrderAccountDTO
>
accountList
=
accountBiz
.
getOrderAccountByOrderType
(
OrderTypeEnum
.
TOUR
.
getCode
(),
day
);
List
<
OrderAccountDTO
>
accountList
=
accountBiz
.
getOrderAccountByOrderType
(
OrderTypeEnum
.
TOUR
.
getCode
(),
day
);
if
(
CollectionUtils
.
isEmpty
(
accountList
))
{
if
(
CollectionUtils
.
isEmpty
(
accountList
))
{
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/DailyVehicleOrderStatisticsBiz.java
View file @
1bf8e44e
...
@@ -52,11 +52,6 @@ public class DailyVehicleOrderStatisticsBiz extends BaseBiz<DailyVehicleOrderSta
...
@@ -52,11 +52,6 @@ public class DailyVehicleOrderStatisticsBiz extends BaseBiz<DailyVehicleOrderSta
*/
*/
private
final
Integer
TYPE_OTHER
=
3
;
private
final
Integer
TYPE_OTHER
=
3
;
/**
* 统计几天前的数据
*/
@Value
(
"${order.day}"
)
private
Integer
day
;
@Autowired
@Autowired
...
@@ -246,10 +241,10 @@ public class DailyVehicleOrderStatisticsBiz extends BaseBiz<DailyVehicleOrderSta
...
@@ -246,10 +241,10 @@ public class DailyVehicleOrderStatisticsBiz extends BaseBiz<DailyVehicleOrderSta
* @return
* @return
*/
*/
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
boolean
saveDailyVehicleOrderRecord
()
{
public
boolean
saveDailyVehicleOrderRecord
(
Integer
day
)
{
try
{
try
{
//获取每日订单统计
//获取每日订单统计
List
<
DailyVehicleOrderStatistics
>
orderStatistics
=
getDailyVehicleOrderRecord
();
List
<
DailyVehicleOrderStatistics
>
orderStatistics
=
getDailyVehicleOrderRecord
(
day
);
log
.
info
(
"Vehicle:统计完成"
);
log
.
info
(
"Vehicle:统计完成"
);
if
(
CollectionUtils
.
isNotEmpty
(
orderStatistics
))
{
if
(
CollectionUtils
.
isNotEmpty
(
orderStatistics
))
{
for
(
DailyVehicleOrderStatistics
orderStatistic
:
orderStatistics
)
{
for
(
DailyVehicleOrderStatistics
orderStatistic
:
orderStatistics
)
{
...
@@ -292,8 +287,9 @@ public class DailyVehicleOrderStatisticsBiz extends BaseBiz<DailyVehicleOrderSta
...
@@ -292,8 +287,9 @@ public class DailyVehicleOrderStatisticsBiz extends BaseBiz<DailyVehicleOrderSta
* 获取所有分公司每日统计记录
* 获取所有分公司每日统计记录
*
*
* @return
* @return
* @param day
*/
*/
private
List
<
DailyVehicleOrderStatistics
>
getDailyVehicleOrderRecord
()
{
private
List
<
DailyVehicleOrderStatistics
>
getDailyVehicleOrderRecord
(
Integer
day
)
{
//获取当天所有订单账目
//获取当天所有订单账目
List
<
OrderAccountDTO
>
accountList
=
accountBiz
.
getOrderAccountByOrderType
(
OrderTypeEnum
.
RENT_VEHICLE
.
getCode
(),
day
);
List
<
OrderAccountDTO
>
accountList
=
accountBiz
.
getOrderAccountByOrderType
(
OrderTypeEnum
.
RENT_VEHICLE
.
getCode
(),
day
);
if
(
CollectionUtils
.
isEmpty
(
accountList
))
{
if
(
CollectionUtils
.
isEmpty
(
accountList
))
{
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderAccountBiz.java
View file @
1bf8e44e
...
@@ -516,8 +516,6 @@ public class OrderAccountBiz extends BaseBiz<OrderAccountMapper,OrderAccount> {
...
@@ -516,8 +516,6 @@ public class OrderAccountBiz extends BaseBiz<OrderAccountMapper,OrderAccount> {
* @return
* @return
*/
*/
public
List
<
OrderAccountDTO
>
getOrderAccountByOrderType
(
Integer
code
,
Integer
day
)
{
public
List
<
OrderAccountDTO
>
getOrderAccountByOrderType
(
Integer
code
,
Integer
day
)
{
return
mapper
.
getOrderAccountByOrderType
(
code
,
day
);
return
mapper
.
getOrderAccountByOrderType
(
code
,
day
);
}
}
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/jobhandler/BaseOrderStatisticsJobHandler.java
View file @
1bf8e44e
package
com
.
xxfc
.
platform
.
order
.
jobhandler
;
package
com
.
xxfc
.
platform
.
order
.
jobhandler
;
import
com.xxfc.platform.order.biz.BaseOrderBiz
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
import
com.google.common.collect.Lists
;
import
com.xxfc.platform.order.biz.DailyOrderStatisticsBiz
;
import
com.xxfc.platform.order.biz.DailyOrderStatisticsBiz
;
import
com.xxfc.platform.order.biz.DailyVehicleOrderStatisticsBiz
;
import
com.xxl.job.core.biz.model.ReturnT
;
import
com.xxl.job.core.biz.model.ReturnT
;
import
com.xxl.job.core.handler.IJobHandler
;
import
com.xxl.job.core.handler.IJobHandler
;
import
com.xxl.job.core.handler.annotation.JobHandler
;
import
com.xxl.job.core.handler.annotation.JobHandler
;
import
com.xxl.job.core.log.XxlJobLogger
;
import
com.xxl.job.core.log.XxlJobLogger
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.poi.ss.formula.functions.T
;
import
org.joda.time.DateTime
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
java.text.DateFormat
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
/**
/**
* 每天2定时统计前一天的数据
* 每天2定时统计前一天的数据
*
* @author Administrator
* @author Administrator
*/
*/
@JobHandler
(
value
=
"baseOrderStatisticsHandler"
)
@JobHandler
(
value
=
"baseOrderStatisticsHandler"
)
...
@@ -22,26 +34,95 @@ public class BaseOrderStatisticsJobHandler extends IJobHandler {
...
@@ -22,26 +34,95 @@ public class BaseOrderStatisticsJobHandler extends IJobHandler {
@Autowired
@Autowired
private
DailyOrderStatisticsBiz
statisticsBiz
;
private
DailyOrderStatisticsBiz
statisticsBiz
;
@Value
(
"${order.day:1}"
)
private
Integer
day
;
/**
* 每日定时执行订单统计
*
* @param date 重新统计起止日期.可以为:起止时间(yyyy-MM-dd),开始时间/结束时间(yyyy-MM-dd/yyyy-MM-dd)
* @return
*/
@Override
@Override
public
ReturnT
<
String
>
execute
(
String
s
){
public
ReturnT
<
String
>
execute
(
String
date
)
{
try
{
try
{
ArrayList
<
Integer
>
arrayList
=
Lists
.
newArrayList
();
if
(
StringUtils
.
isBlank
(
date
))
{
arrayList
.
add
(
day
);
}
else
{
arrayList
=
dateDifferenceSet
(
date
);
}
log
.
info
(
"-----定时器进入---baseOrderStatisticsHandler---"
+
date
);
XxlJobLogger
.
log
(
"-----定时器进入---baseOrderStatisticsHandler---"
+
date
);
for
(
Integer
day
:
arrayList
)
{
boolean
flag
=
statisticsBiz
.
statisticalOrder
(
day
);
log
.
info
(
"执行状态"
+
date
+
"="
+
flag
);
XxlJobLogger
.
log
(
"执行状态"
+
date
+
"="
+
flag
);
}
XxlJobLogger
.
log
(
"-----定时器进入---baseOrderStatisticsHandler---"
);
return
ReturnT
.
SUCCESS
;
log
.
info
(
"-----定时器进入---baseOrderStatisticsHandler---"
+
s
);
// boolean flag = statisticsBiz.statisticalOrder();
// if (flag) {
return
ReturnT
.
SUCCESS
;
// }
// else {
// returnT.setCode(500);
// returnT.setMsg("失败");
// return returnT;
// }
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
XxlJobLogger
.
log
(
e
);
XxlJobLogger
.
log
(
e
);
return
FAIL
;
log
.
error
(
e
.
getMessage
());
}
finally
{
return
ReturnT
.
FAIL
;
}
}
private
ArrayList
<
Integer
>
dateDifferenceSet
(
String
date
)
throws
ParseException
{
Long
maxDate
;
Long
minDate
;
Long
currentTime
=
System
.
currentTimeMillis
();
if
(
date
.
contains
(
"/"
))
{
String
[]
dates
=
date
.
split
(
"/"
);
Long
date1
=
getDateByString
(
dates
[
0
]);
Long
date2
=
getDateByString
(
dates
[
1
]);
if
(
date1
<
date2
)
{
maxDate
=
date2
;
minDate
=
date1
;
}
else
{
maxDate
=
date1
;
minDate
=
date2
;
}
if
(
minDate
<
currentTime
&&
maxDate
>
currentTime
){
maxDate
=
currentTime
;
}
else
if
(
minDate
>
currentTime
){
throw
new
BaseException
(
"设置的日期,大于当前日期!"
);
}
}
else
{
Long
dt
=
getDateByString
(
date
);
if
(
dt
>
currentTime
)
{
throw
new
BaseException
(
"设置的日期,大于当前日期!"
);
}
minDate
=
dt
;
maxDate
=
currentTime
;
}
//距离今天的最小天数差
int
minDay
=
(
int
)
((
minDate
-
currentTime
)/(
24
*
60
*
60
*
1000
));
//距离今天的最大天数差
int
maxDay
=
(
int
)
((
maxDate
-
currentTime
)/(
24
*
60
*
60
*
1000
));
return
getListByMinDayAndMaxDay
(
minDay
,
maxDay
);
}
private
Long
getDateByString
(
String
date
)
throws
ParseException
{
SimpleDateFormat
dateFormat
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
return
dateFormat
.
parse
(
date
).
getTime
();
}
private
ArrayList
<
Integer
>
getListByMinDayAndMaxDay
(
int
minDay
,
int
maxDay
){
ArrayList
<
Integer
>
arrayList
=
Lists
.
newArrayList
();
for
(
int
day
=
maxDay
;
day
<=
maxDay
;
day
++){
arrayList
.
add
(
day
);
}
}
return
arrayList
;
}
}
}
}
xx-order/xx-order-server/src/test/java/ServiceTest.java
View file @
1bf8e44e
import
com.xxfc.platform.order.OrderApplication
;
import
com.xxfc.platform.order.OrderApplication
;
import
com.xxfc.platform.order.biz.DailyOrderStatisticsBiz
;
import
com.xxfc.platform.order.biz.DailyOrderStatisticsBiz
;
import
org.joda.time.DateTime
;
import
org.junit.Test
;
import
org.junit.Test
;
import
org.junit.runner.RunWith
;
import
org.junit.runner.RunWith
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.test.context.junit4.SpringJUnit4ClassRunner
;
import
org.springframework.test.context.junit4.SpringJUnit4ClassRunner
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
/**
/**
* @author libin
* @author libin
* @version 1.0
* @version 1.0
...
@@ -23,7 +28,33 @@ public class ServiceTest {
...
@@ -23,7 +28,33 @@ public class ServiceTest {
@Test
@Test
public
void
testSchedu
(){
public
void
testSchedu
(){
dailyOrderStatisticsBiz
.
statisticalOrder
();
dailyOrderStatisticsBiz
.
statisticalOrder
(
1
);
}
@Test
public
void
test
()
throws
ParseException
{
String
d
=
"2019-09-01"
;
SimpleDateFormat
dateFormat
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
Date
parse
=
dateFormat
.
parse
(
d
);
System
.
out
.
println
(
parse
);
}
@Test
public
void
test2
()
{
DateTime
dateTime
=
DateTime
.
parse
(
"2019-10-10"
);
System
.
out
.
println
(
dateTime
);
}
@Test
public
void
test3
()
{
DateTime
dateTime
=
DateTime
.
parse
(
"2019-10-10"
);
Date
date
=
dateTime
.
toDate
();
DateTime
dateTime1
=
DateTime
.
parse
(
"2019-12-10"
);
Date
date1
=
dateTime1
.
toDate
();
System
.
out
.
println
(
date
);
System
.
out
.
println
(
date1
);
System
.
out
.
println
(
date
.
before
(
date1
));
System
.
out
.
println
(
date
.
after
(
date1
));
}
}
}
}
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