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
92091d49
Commit
92091d49
authored
Nov 13, 2019
by
libin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
订单统计添加分公司
parent
0a88c199
Changes
13
Show whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
97 additions
and
41 deletions
+97
-41
OrderReceivedStatisticsSignEnum.java
...er/contant/enumerate/OrderReceivedStatisticsSignEnum.java
+9
-1
OrderRentVehicleReceivedStatisticsSignEnum.java
...enumerate/OrderRentVehicleReceivedStatisticsSignEnum.java
+16
-2
OrderTourReceivedStatisticsSignEnum.java
...ontant/enumerate/OrderTourReceivedStatisticsSignEnum.java
+8
-1
ReceivedStatisticsEnum.java
...tform/order/contant/enumerate/ReceivedStatisticsEnum.java
+10
-2
BaseOrder.java
...c/main/java/com/xxfc/platform/order/entity/BaseOrder.java
+8
-6
OrderMemberReceivedStatistics.java
.../platform/order/entity/OrderMemberReceivedStatistics.java
+0
-7
OrderReceivedStatisticsBase.java
...fc/platform/order/entity/OrderReceivedStatisticsBase.java
+12
-5
OrderRentVehicleReceivedStatistics.java
...form/order/entity/OrderRentVehicleReceivedStatistics.java
+1
-6
OrderReceivedStatisticsFindDTO.java
...atform/order/pojo/dto/OrderReceivedStatisticsFindDTO.java
+1
-0
OrderMemberReceivedStatisticsBiz.java
.../platform/order/biz/OrderMemberReceivedStatisticsBiz.java
+13
-1
OrderReceivedStatisticsBiz.java
...m/xxfc/platform/order/biz/OrderReceivedStatisticsBiz.java
+11
-8
OrderReceivedStatisticsAdminController.java
...st/background/OrderReceivedStatisticsAdminController.java
+6
-2
OrderReceivedStatisticsMapper.xml
...c/main/resources/mapper/OrderReceivedStatisticsMapper.xml
+2
-0
No files found.
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/contant/enumerate/OrderReceivedStatisticsSignEnum.java
View file @
92091d49
...
@@ -6,6 +6,7 @@ import com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo;
...
@@ -6,6 +6,7 @@ import com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.*
;
import
java.util.*
;
import
java.util.concurrent.atomic.AtomicReference
;
import
java.util.function.Function
;
import
java.util.function.Function
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
...
@@ -84,10 +85,17 @@ public enum OrderReceivedStatisticsSignEnum {
...
@@ -84,10 +85,17 @@ public enum OrderReceivedStatisticsSignEnum {
@Override
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
AtomicReference
<
BigDecimal
>
divisorAtomicReference
=
new
AtomicReference
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderReceivedStatistics
>
orderReceivedStatisticsList
=
ReceivedStatisticsEnum
.
convertToTargetBean
(
V
);
List
<
OrderReceivedStatistics
>
orderReceivedStatisticsList
=
ReceivedStatisticsEnum
.
convertToTargetBean
(
V
);
BigDecimal
realAvgAmount
=
orderReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getRealAmount
()).
reduce
(
BigDecimal
.
ZERO
,
(
x
,
y
)
->
x
.
add
(
y
)).
divide
(
new
BigDecimal
(
V
.
size
()));
BigDecimal
divisor
=
divisorAtomicReference
.
get
();
if
(
Objects
.
isNull
(
divisor
)){
Integer
divi
=
orderReceivedStatisticsList
.
get
(
0
).
getDivisor
();
divisor
=
new
BigDecimal
(
divi
);
divisorAtomicReference
.
set
(
divisor
);
}
BigDecimal
realAvgAmount
=
orderReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getRealAmount
()).
reduce
(
BigDecimal
.
ZERO
,
(
x
,
y
)
->
x
.
add
(
y
)).
divide
(
divisor
);
OrderReceivedStatistics
orderReceivedStatistics
=
orderReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatistics
orderReceivedStatistics
=
orderReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
realAvgAmount
,
null
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
realAvgAmount
,
null
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/contant/enumerate/OrderRentVehicleReceivedStatisticsSignEnum.java
View file @
92091d49
...
@@ -7,6 +7,7 @@ import com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo;
...
@@ -7,6 +7,7 @@ import com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.math.RoundingMode
;
import
java.math.RoundingMode
;
import
java.util.*
;
import
java.util.*
;
import
java.util.concurrent.atomic.AtomicReference
;
import
java.util.function.Function
;
import
java.util.function.Function
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
...
@@ -53,10 +54,16 @@ public enum OrderRentVehicleReceivedStatisticsSignEnum{
...
@@ -53,10 +54,16 @@ public enum OrderRentVehicleReceivedStatisticsSignEnum{
@Override
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
AtomicReference
<
Integer
>
divisorAtomicReference
=
new
AtomicReference
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderRentVehicleReceivedStatistics
>
orderRentVehicleReceivedStatisticsList
=
ReceivedStatisticsEnum
.
convertToTargetBean
(
V
);
List
<
OrderRentVehicleReceivedStatistics
>
orderRentVehicleReceivedStatisticsList
=
ReceivedStatisticsEnum
.
convertToTargetBean
(
V
);
Integer
avgQuantity
=
orderRentVehicleReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalQuantity
()).
reduce
(
0
,
(
x
,
y
)
->
x
+
y
)/
V
.
size
();
Integer
divisor
=
divisorAtomicReference
.
get
();
if
(
Objects
.
isNull
(
divisor
)){
divisor
=
orderRentVehicleReceivedStatisticsList
.
get
(
0
).
getDivisor
();
divisorAtomicReference
.
set
(
divisor
);
}
Integer
avgQuantity
=
orderRentVehicleReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalQuantity
()).
reduce
(
0
,
(
x
,
y
)
->
x
+
y
)/
divisor
;
OrderRentVehicleReceivedStatistics
orderReceivedStatistics
=
orderRentVehicleReceivedStatisticsList
.
get
(
0
);
OrderRentVehicleReceivedStatistics
orderReceivedStatistics
=
orderRentVehicleReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
null
,
avgQuantity
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
null
,
avgQuantity
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
...
@@ -85,10 +92,17 @@ public enum OrderRentVehicleReceivedStatisticsSignEnum{
...
@@ -85,10 +92,17 @@ public enum OrderRentVehicleReceivedStatisticsSignEnum{
@Override
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
AtomicReference
<
BigDecimal
>
divisorAtomicReference
=
new
AtomicReference
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderRentVehicleReceivedStatistics
>
orderRentVehicleReceivedStatisticsList
=
ReceivedStatisticsEnum
.
convertToTargetBean
(
V
);
List
<
OrderRentVehicleReceivedStatistics
>
orderRentVehicleReceivedStatisticsList
=
ReceivedStatisticsEnum
.
convertToTargetBean
(
V
);
BigDecimal
realAvgAmount
=
orderRentVehicleReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getRealAmount
()).
reduce
(
BigDecimal
.
ZERO
,
(
x
,
y
)
->
x
.
add
(
y
)).
divide
(
new
BigDecimal
(
V
.
size
()),
RoundingMode
.
HALF_UP
);
BigDecimal
divisor
=
divisorAtomicReference
.
get
();
if
(
Objects
.
isNull
(
divisor
)){
Integer
divi
=
orderRentVehicleReceivedStatisticsList
.
get
(
0
).
getDivisor
();
divisor
=
new
BigDecimal
(
divi
);
divisorAtomicReference
.
set
(
divisor
);
}
BigDecimal
realAvgAmount
=
orderRentVehicleReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getRealAmount
()).
reduce
(
BigDecimal
.
ZERO
,
(
x
,
y
)
->
x
.
add
(
y
)).
divide
(
divisor
,
RoundingMode
.
HALF_UP
);
OrderRentVehicleReceivedStatistics
orderReceivedStatistics
=
orderRentVehicleReceivedStatisticsList
.
get
(
0
);
OrderRentVehicleReceivedStatistics
orderReceivedStatistics
=
orderRentVehicleReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
realAvgAmount
,
null
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
realAvgAmount
,
null
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/contant/enumerate/OrderTourReceivedStatisticsSignEnum.java
View file @
92091d49
...
@@ -6,6 +6,7 @@ import com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo;
...
@@ -6,6 +6,7 @@ import com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.*
;
import
java.util.*
;
import
java.util.concurrent.atomic.AtomicReference
;
import
java.util.function.Function
;
import
java.util.function.Function
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
...
@@ -52,10 +53,16 @@ public enum OrderTourReceivedStatisticsSignEnum {
...
@@ -52,10 +53,16 @@ public enum OrderTourReceivedStatisticsSignEnum {
@Override
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
AtomicReference
<
Integer
>
divisorAtomicReference
=
new
AtomicReference
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)
->
{
orderMap
.
forEach
((
K
,
V
)
->
{
List
<
OrderTourReceivedStatistics
>
orderTourReceivedStatisticsList
=
ReceivedStatisticsEnum
.
convertToTargetBean
(
V
);
List
<
OrderTourReceivedStatistics
>
orderTourReceivedStatisticsList
=
ReceivedStatisticsEnum
.
convertToTargetBean
(
V
);
Integer
avgQuantity
=
orderTourReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalQuantity
()).
reduce
(
0
,
(
x
,
y
)
->
x
+
y
)
/
V
.
size
();
Integer
divisor
=
divisorAtomicReference
.
get
();
if
(
Objects
.
isNull
(
divisor
)){
divisor
=
orderTourReceivedStatisticsList
.
get
(
0
).
getDivisor
();
divisorAtomicReference
.
set
(
divisor
);
}
Integer
avgQuantity
=
orderTourReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalQuantity
()).
reduce
(
0
,
(
x
,
y
)
->
x
+
y
)
/
divisor
;
OrderTourReceivedStatistics
orderReceivedStatistics
=
orderTourReceivedStatisticsList
.
get
(
0
);
OrderTourReceivedStatistics
orderReceivedStatistics
=
orderTourReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
null
,
avgQuantity
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
null
,
avgQuantity
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/contant/enumerate/ReceivedStatisticsEnum.java
View file @
92091d49
...
@@ -5,6 +5,8 @@ import com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo;
...
@@ -5,6 +5,8 @@ import com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.CollectionUtils
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.time.LocalDate
;
import
java.time.temporal.TemporalAdjusters
;
import
java.util.Collections
;
import
java.util.Collections
;
import
java.util.EnumSet
;
import
java.util.EnumSet
;
import
java.util.List
;
import
java.util.List
;
...
@@ -25,7 +27,9 @@ public enum ReceivedStatisticsEnum {
...
@@ -25,7 +27,9 @@ public enum ReceivedStatisticsEnum {
if
(
CollectionUtils
.
isEmpty
(
orderReceivedStatisticsBases
))
{
if
(
CollectionUtils
.
isEmpty
(
orderReceivedStatisticsBases
))
{
return
Collections
.
EMPTY_MAP
;
return
Collections
.
EMPTY_MAP
;
}
}
return
orderReceivedStatisticsBases
.
stream
().
collect
(
Collectors
.
groupingBy
(
OrderReceivedStatisticsBase:
:
getDate
,
Collectors
.
toList
()));
return
orderReceivedStatisticsBases
.
stream
().
peek
(
x
->
{
((
OrderReceivedStatisticsBase
)
x
).
setDivisor
(
1
);
}).
collect
(
Collectors
.
groupingBy
(
OrderReceivedStatisticsBase:
:
getDate
,
Collectors
.
toList
()));
}
}
},
},
WEEK
(
2
,
"按周统计"
)
{
WEEK
(
2
,
"按周统计"
)
{
...
@@ -34,7 +38,7 @@ public enum ReceivedStatisticsEnum {
...
@@ -34,7 +38,7 @@ public enum ReceivedStatisticsEnum {
if
(
CollectionUtils
.
isEmpty
(
orderReceivedStatisticsBases
))
{
if
(
CollectionUtils
.
isEmpty
(
orderReceivedStatisticsBases
))
{
return
Collections
.
EMPTY_MAP
;
return
Collections
.
EMPTY_MAP
;
}
}
return
orderReceivedStatisticsBases
.
stream
().
collect
(
Collectors
.
groupingBy
(
OrderReceivedStatisticsBase:
:
getWeekOfYear
,
Collectors
.
toList
()));
return
orderReceivedStatisticsBases
.
stream
().
peek
(
x
->
((
OrderReceivedStatisticsBase
)
x
).
setDivisor
(
7
)).
collect
(
Collectors
.
groupingBy
(
OrderReceivedStatisticsBase:
:
getWeekOfYear
,
Collectors
.
toList
()));
}
}
},
},
MONTH
(
3
,
"按月统计"
)
{
MONTH
(
3
,
"按月统计"
)
{
...
@@ -47,6 +51,10 @@ public enum ReceivedStatisticsEnum {
...
@@ -47,6 +51,10 @@ public enum ReceivedStatisticsEnum {
OrderReceivedStatisticsBase
orderReceivedStatisticsBase
=
(
OrderReceivedStatisticsBase
)
x
;
OrderReceivedStatisticsBase
orderReceivedStatisticsBase
=
(
OrderReceivedStatisticsBase
)
x
;
orderReceivedStatisticsBase
.
setDate
(
null
);
orderReceivedStatisticsBase
.
setDate
(
null
);
orderReceivedStatisticsBase
.
setWeekOfYear
(
null
);
orderReceivedStatisticsBase
.
setWeekOfYear
(
null
);
LocalDate
localDate
=
LocalDate
.
of
(
Integer
.
valueOf
(
orderReceivedStatisticsBase
.
getYear
()),
Integer
.
valueOf
(
orderReceivedStatisticsBase
.
getMonth
().
replace
(
orderReceivedStatisticsBase
.
getYear
(),
""
)),
1
);
int
lastDay
=
localDate
.
with
(
TemporalAdjusters
.
lastDayOfMonth
()).
getDayOfMonth
();
orderReceivedStatisticsBase
.
setDivisor
(
lastDay
);
}).
collect
(
Collectors
.
groupingBy
(
OrderReceivedStatisticsBase:
:
getMonth
,
Collectors
.
toList
()));
}).
collect
(
Collectors
.
groupingBy
(
OrderReceivedStatisticsBase:
:
getMonth
,
Collectors
.
toList
()));
}
}
};
};
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/BaseOrder.java
View file @
92091d49
package
com
.
xxfc
.
platform
.
order
.
entity
;
package
com
.
xxfc
.
platform
.
order
.
entity
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.List
;
import
javax.persistence.*
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.Data
;
import
org.assertj.core.util.Lists
;
import
tk.mybatis.mapper.annotation.Version
;
import
tk.mybatis.mapper.annotation.Version
;
import
javax.persistence.Column
;
import
javax.persistence.GeneratedValue
;
import
javax.persistence.Id
;
import
javax.persistence.Table
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
/**
/**
*
*
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderMemberReceivedStatistics.java
View file @
92091d49
...
@@ -63,13 +63,6 @@ public class OrderMemberReceivedStatistics extends OrderReceivedStatisticsBase i
...
@@ -63,13 +63,6 @@ public class OrderMemberReceivedStatistics extends OrderReceivedStatisticsBase i
@ApiModelProperty
(
value
=
"钻石会员订单总量"
)
@ApiModelProperty
(
value
=
"钻石会员订单总量"
)
private
Integer
totalDiamondQuantity
;
private
Integer
totalDiamondQuantity
;
/**
* 公司id
*/
@Column
(
name
=
"company_id"
)
@ApiModelProperty
(
value
=
"公司id"
)
private
Integer
companyId
;
/**
/**
* 创建时间
* 创建时间
*/
*/
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderReceivedStatisticsBase.java
View file @
92091d49
...
@@ -6,6 +6,7 @@ import lombok.Data;
...
@@ -6,6 +6,7 @@ import lombok.Data;
import
javax.persistence.Column
;
import
javax.persistence.Column
;
import
javax.persistence.GeneratedValue
;
import
javax.persistence.GeneratedValue
;
import
javax.persistence.Id
;
import
javax.persistence.Id
;
import
javax.persistence.Transient
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.Date
;
...
@@ -61,7 +62,6 @@ public class OrderReceivedStatisticsBase {
...
@@ -61,7 +62,6 @@ public class OrderReceivedStatisticsBase {
@ApiModelProperty
(
value
=
"订单总额"
)
@ApiModelProperty
(
value
=
"订单总额"
)
protected
BigDecimal
totalAmount
;
protected
BigDecimal
totalAmount
;
/**
/**
* 是否完成 1 完成 0 未完成
* 是否完成 1 完成 0 未完成
*/
*/
...
@@ -82,4 +82,11 @@ public class OrderReceivedStatisticsBase {
...
@@ -82,4 +82,11 @@ public class OrderReceivedStatisticsBase {
@Column
(
name
=
"pay_way"
)
@Column
(
name
=
"pay_way"
)
@ApiModelProperty
(
value
=
"支付方式 '1:微信公众号支付 2.支付宝即时到账,3,银联'"
)
@ApiModelProperty
(
value
=
"支付方式 '1:微信公众号支付 2.支付宝即时到账,3,银联'"
)
protected
Integer
payWay
;
protected
Integer
payWay
;
@Column
(
name
=
"company_id"
)
@ApiModelProperty
(
value
=
"分公司id"
)
protected
Integer
companyId
;
@Transient
protected
Integer
divisor
;
}
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderRentVehicleReceivedStatistics.java
View file @
92091d49
...
@@ -35,12 +35,7 @@ public class OrderRentVehicleReceivedStatistics extends OrderReceivedStatisticsB
...
@@ -35,12 +35,7 @@ public class OrderRentVehicleReceivedStatistics extends OrderReceivedStatisticsB
@ApiModelProperty
(
value
=
"实际收入"
)
@ApiModelProperty
(
value
=
"实际收入"
)
private
BigDecimal
realAmount
;
private
BigDecimal
realAmount
;
/**
* 公司id
*/
@Column
(
name
=
"company_id"
)
@ApiModelProperty
(
value
=
"公司id"
)
private
Integer
companyId
;
/**
/**
* 创建时间
* 创建时间
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/dto/OrderReceivedStatisticsFindDTO.java
View file @
92091d49
...
@@ -33,4 +33,5 @@ public class OrderReceivedStatisticsFindDTO {
...
@@ -33,4 +33,5 @@ public class OrderReceivedStatisticsFindDTO {
@ApiModelProperty
(
"统计项标识"
)
@ApiModelProperty
(
"统计项标识"
)
@NotNull
(
message
=
"统计标识不能为null"
)
@NotNull
(
message
=
"统计标识不能为null"
)
private
List
<
String
>
statisticalSigns
;
private
List
<
String
>
statisticalSigns
;
private
List
<
Integer
>
companyId
;
}
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderMemberReceivedStatisticsBiz.java
View file @
92091d49
package
com
.
xxfc
.
platform
.
order
.
biz
;
package
com
.
xxfc
.
platform
.
order
.
biz
;
import
cn.hutool.core.date.DateTime
;
import
cn.hutool.core.date.DateUtil
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
com.xxfc.platform.order.entity.OrderMemberReceivedStatistics
;
import
com.xxfc.platform.order.entity.OrderMemberReceivedStatistics
;
import
com.xxfc.platform.order.mapper.OrderMemberReceivedStatisticsMapper
;
import
com.xxfc.platform.order.mapper.OrderMemberReceivedStatisticsMapper
;
import
com.xxfc.platform.order.pojo.dto.OrderReceivedStatisticsFindDTO
;
import
com.xxfc.platform.order.pojo.dto.OrderReceivedStatisticsFindDTO
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
com.xxfc.platform.order.entity.BaseOrder
;
import
java.util.List
;
import
java.util.List
;
/**
/**
...
@@ -18,8 +22,16 @@ import java.util.List;
...
@@ -18,8 +22,16 @@ import java.util.List;
*/
*/
@Service
@Service
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
@RequiredArgsConstructor
(
onConstructor
=
@__
(
@Autowired
))
public
class
OrderMemberReceivedStatisticsBiz
extends
BaseBiz
<
OrderMemberReceivedStatisticsMapper
,
OrderMemberReceivedStatistics
>
{
public
class
OrderMemberReceivedStatisticsBiz
extends
BaseBiz
<
OrderMemberReceivedStatisticsMapper
,
OrderMemberReceivedStatistics
>
{
private
final
BaseOrderBiz
baseOrderBiz
;
public
List
<
OrderMemberReceivedStatistics
>
selectOrderReceivedStatistics
(
OrderReceivedStatisticsFindDTO
orderReceivedStatisticsFindDTO
)
{
public
List
<
OrderMemberReceivedStatistics
>
selectOrderReceivedStatistics
(
OrderReceivedStatisticsFindDTO
orderReceivedStatisticsFindDTO
)
{
return
mapper
.
selectOrderMemberReceivedStatistics
(
orderReceivedStatisticsFindDTO
);
return
mapper
.
selectOrderMemberReceivedStatistics
(
orderReceivedStatisticsFindDTO
);
}
}
public
void
orderMemberReceivedStatistics
(){
DateTime
yesterday
=
DateUtil
.
yesterday
();
// List<BaseOrder> baseOrders = baseOrderBiz.selectOrdersByTypeAndTime(3);
}
}
}
\ No newline at end of file
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderReceivedStatisticsBiz.java
View file @
92091d49
package
com
.
xxfc
.
platform
.
order
.
biz
;
package
com
.
xxfc
.
platform
.
order
.
biz
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.date.DateField
;
import
cn.hutool.core.date.DateTime
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.core.date.DateUtil
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
com.github.wxiaoqi.security.common.util.excel.ExcelExport
;
import
com.google.common.collect.Lists
;
import
com.google.common.collect.Lists
;
import
com.xxfc.platform.order.contant.enumerate.*
;
import
com.xxfc.platform.order.contant.enumerate.*
;
import
com.xxfc.platform.order.entity.*
;
import
com.xxfc.platform.order.entity.*
;
...
@@ -15,7 +12,6 @@ import com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo;
...
@@ -15,7 +12,6 @@ import com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo;
import
lombok.RequiredArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.poi.ss.usermodel.*
;
import
org.apache.poi.ss.usermodel.*
;
import
org.apache.poi.xssf.usermodel.XSSFFont
;
import
org.apache.poi.xssf.usermodel.XSSFWorkbook
;
import
org.apache.poi.xssf.usermodel.XSSFWorkbook
;
import
org.springframework.beans.factory.InitializingBean
;
import
org.springframework.beans.factory.InitializingBean
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
@@ -24,8 +20,9 @@ import org.springframework.transaction.annotation.Transactional;
...
@@ -24,8 +20,9 @@ import org.springframework.transaction.annotation.Transactional;
import
javax.servlet.ServletOutputStream
;
import
javax.servlet.ServletOutputStream
;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.time.LocalDate
;
import
java.time.format.DateTimeFormatter
;
import
java.util.*
;
import
java.util.*
;
import
java.util.function.Predicate
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
/**
/**
...
@@ -48,6 +45,7 @@ public class OrderReceivedStatisticsBiz extends BaseBiz<OrderReceivedStatisticsM
...
@@ -48,6 +45,7 @@ public class OrderReceivedStatisticsBiz extends BaseBiz<OrderReceivedStatisticsM
private
List
<
String
>
orderRentVehicleSigns
;
private
List
<
String
>
orderRentVehicleSigns
;
private
List
<
String
>
orderTourSigns
;
private
List
<
String
>
orderTourSigns
;
private
Map
<
String
,
String
>
signAndDescMap
;
private
Map
<
String
,
String
>
signAndDescMap
;
private
DateTimeFormatter
dateTimeFormatter
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd"
);
/**
/**
...
@@ -101,9 +99,14 @@ public class OrderReceivedStatisticsBiz extends BaseBiz<OrderReceivedStatisticsM
...
@@ -101,9 +99,14 @@ public class OrderReceivedStatisticsBiz extends BaseBiz<OrderReceivedStatisticsM
firstCell
.
setCellValue
(
DateUtil
.
format
(
orderReceivedStatisticsVo
.
getDate
(),
"yyyy.MM.dd"
));
firstCell
.
setCellValue
(
DateUtil
.
format
(
orderReceivedStatisticsVo
.
getDate
(),
"yyyy.MM.dd"
));
}
}
if
(
ReceivedStatisticsEnum
.
WEEK
.
getWayCode
()==
statisticalWay
){
if
(
ReceivedStatisticsEnum
.
WEEK
.
getWayCode
()==
statisticalWay
){
Date
startDate
=
orderReceivedStatisticsVo
.
getDate
();
LocalDate
localDate
=
LocalDate
.
of
(
Integer
.
valueOf
(
orderReceivedStatisticsVo
.
getYear
()),
Integer
.
valueOf
(
orderReceivedStatisticsVo
.
getMonth
().
replace
(
orderReceivedStatisticsVo
.
getYear
(),
""
)),
1
);
String
startDateStr
=
DateUtil
.
format
(
startDate
,
"yyyy-MM-dd"
);
int
dayOfYear
=
localDate
.
getDayOfYear
();
String
endDateStr
=
DateUtil
.
offset
(
startDate
,
DateField
.
DAY_OF_MONTH
,
6
).
toDateStr
();
int
days
=
Integer
.
valueOf
(
orderReceivedStatisticsVo
.
getWeekOfYear
().
replace
(
orderReceivedStatisticsVo
.
getYear
(),
""
))*
7
;
int
betweenDays
=
days
-
dayOfYear
;
LocalDate
endLocalDate
=
localDate
.
withDayOfMonth
(
betweenDays
);
LocalDate
startLocalDate
=
endLocalDate
.
minusDays
(
6
);
String
startDateStr
=
startLocalDate
.
format
(
dateTimeFormatter
);
String
endDateStr
=
endLocalDate
.
format
(
dateTimeFormatter
);
firstCell
.
setCellValue
(
String
.
format
(
"%s~%s"
,
startDateStr
,
endDateStr
));
firstCell
.
setCellValue
(
String
.
format
(
"%s~%s"
,
startDateStr
,
endDateStr
));
}
}
if
(
ReceivedStatisticsEnum
.
MONTH
.
getWayCode
()==
statisticalWay
){
if
(
ReceivedStatisticsEnum
.
MONTH
.
getWayCode
()==
statisticalWay
){
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/background/OrderReceivedStatisticsAdminController.java
View file @
92091d49
package
com
.
xxfc
.
platform
.
order
.
rest
.
background
;
package
com
.
xxfc
.
platform
.
order
.
rest
.
background
;
import
com.github.wxiaoqi.security.admin.feign.dto.UserDTO
;
import
com.github.wxiaoqi.security.common.annotation.BeanValid
;
import
com.github.wxiaoqi.security.common.annotation.BeanValid
;
import
com.github.wxiaoqi.security.common.annotation.SimpleValid
;
import
com.github.wxiaoqi.security.common.annotation.SimpleValid
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
...
@@ -22,6 +23,7 @@ import javax.servlet.ServletOutputStream;
...
@@ -22,6 +23,7 @@ import javax.servlet.ServletOutputStream;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.time.format.DateTimeFormatter
;
import
java.time.format.DateTimeFormatter
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
...
@@ -41,15 +43,17 @@ public class OrderReceivedStatisticsAdminController {
...
@@ -41,15 +43,17 @@ public class OrderReceivedStatisticsAdminController {
@ApiOperation
(
"订单统计"
)
@ApiOperation
(
"订单统计"
)
@PostMapping
(
""
)
@PostMapping
(
""
)
public
ObjectRestResponse
<
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>>
orderReceivedStatistics
(
@RequestBody
@SimpleValid
OrderReceivedStatisticsFindDTO
orderReceivedStatisticsFindDTO
){
public
ObjectRestResponse
<
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>>
orderReceivedStatistics
(
@RequestBody
@SimpleValid
OrderReceivedStatisticsFindDTO
orderReceivedStatisticsFindDTO
,
UserDTO
userDTO
){
orderReceivedStatisticsFindDTO
.
setCompanyId
(
Arrays
.
asList
(
userDTO
.
getCompanyId
()));
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
orderReceivedStatisticsPageVo
=
orderReceivedStatisticsBiz
.
getOrderReceivedStatisticsResult
(
orderReceivedStatisticsFindDTO
);
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
orderReceivedStatisticsPageVo
=
orderReceivedStatisticsBiz
.
getOrderReceivedStatisticsResult
(
orderReceivedStatisticsFindDTO
);
return
ObjectRestResponse
.
succ
(
orderReceivedStatisticsPageVo
);
return
ObjectRestResponse
.
succ
(
orderReceivedStatisticsPageVo
);
}
}
@ApiOperation
(
"订单统计excel导出下载"
)
@ApiOperation
(
"订单统计excel导出下载"
)
@PostMapping
(
value
=
"/export"
,
consumes
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
)
@PostMapping
(
value
=
"/export"
,
consumes
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
)
public
ObjectRestResponse
<
Void
>
exportOrderReceivedStatistics
(
@RequestBody
@BeanValid
OrderReceivedStatisticsFindDTO
orderReceivedStatisticsFindDTO
,
HttpServletResponse
response
){
public
ObjectRestResponse
<
Void
>
exportOrderReceivedStatistics
(
@RequestBody
@BeanValid
OrderReceivedStatisticsFindDTO
orderReceivedStatisticsFindDTO
,
UserDTO
userDTO
,
HttpServletResponse
response
){
try
{
try
{
orderReceivedStatisticsFindDTO
.
setCompanyId
(
Arrays
.
asList
(
userDTO
.
getCompanyId
()));
String
name
=
DateTimeFormatter
.
ofPattern
(
"YYYYMMddHHmmss"
).
format
(
LocalDateTime
.
now
());
String
name
=
DateTimeFormatter
.
ofPattern
(
"YYYYMMddHHmmss"
).
format
(
LocalDateTime
.
now
());
response
.
setContentType
(
"application/vnd.ms-excel;charset=utf-8"
);
response
.
setContentType
(
"application/vnd.ms-excel;charset=utf-8"
);
String
filename
=
String
.
format
(
"%s-OrderReceivedStatistics.xlsx"
,
name
);
String
filename
=
String
.
format
(
"%s-OrderReceivedStatistics.xlsx"
,
name
);
...
...
xx-order/xx-order-server/src/main/resources/mapper/OrderReceivedStatisticsMapper.xml
View file @
92091d49
...
@@ -16,6 +16,7 @@
...
@@ -16,6 +16,7 @@
<result
property=
"isFinish"
column=
"is_finish"
/>
<result
property=
"isFinish"
column=
"is_finish"
/>
<result
property=
"orderOrigin"
column=
"order_origin"
/>
<result
property=
"orderOrigin"
column=
"order_origin"
/>
<result
property=
"payWay"
column=
"pay_way"
/>
<result
property=
"payWay"
column=
"pay_way"
/>
<result
property=
"companyId"
column=
"company_id"
/>
<result
property=
"crtTime"
column=
"crt_time"
/>
<result
property=
"crtTime"
column=
"crt_time"
/>
</resultMap>
</resultMap>
...
@@ -30,6 +31,7 @@
...
@@ -30,6 +31,7 @@
<if
test=
"payWay!=null"
>
<if
test=
"payWay!=null"
>
and `pay_way`=#{payWay}
and `pay_way`=#{payWay}
</if>
</if>
<if
test=
"startDate!=null and endDate!=null"
>
<if
test=
"startDate!=null and endDate!=null"
>
and `date` between #{startDate} and #{endDate}
and `date` between #{startDate} and #{endDate}
</if>
</if>
...
...
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