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
bd42e8b1
Commit
bd42e8b1
authored
Nov 12, 2019
by
libin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
订单统计
parent
8f4562f8
Changes
15
Show whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
922 additions
and
268 deletions
+922
-268
OrderMemberReceivedStatisticsSignEnum.java
...tant/enumerate/OrderMemberReceivedStatisticsSignEnum.java
+161
-0
OrderReceivedStatisticsSignEnum.java
...er/contant/enumerate/OrderReceivedStatisticsSignEnum.java
+131
-0
OrderRentVehicleReceivedStatisticsSignEnum.java
...enumerate/OrderRentVehicleReceivedStatisticsSignEnum.java
+133
-0
OrderTourReceivedStatisticsSignEnum.java
...ontant/enumerate/OrderTourReceivedStatisticsSignEnum.java
+98
-0
ReceivedStatisticsEnum.java
...tform/order/contant/enumerate/ReceivedStatisticsEnum.java
+73
-0
OrderMemberReceivedStatistics.java
.../platform/order/entity/OrderMemberReceivedStatistics.java
+59
-86
OrderReceivedStatistics.java
...m/xxfc/platform/order/entity/OrderReceivedStatistics.java
+1
-29
OrderReceivedStatisticsBase.java
...fc/platform/order/entity/OrderReceivedStatisticsBase.java
+44
-0
OrderRentVehicleReceivedStatistics.java
...form/order/entity/OrderRentVehicleReceivedStatistics.java
+51
-78
OrderTourReceivedStatistics.java
...fc/platform/order/entity/OrderTourReceivedStatistics.java
+43
-70
OrderReceivedStatisticsFindDTO.java
...atform/order/pojo/dto/OrderReceivedStatisticsFindDTO.java
+36
-0
OrderReceivedStatisticsVo.java
...xfc/platform/order/pojo/vo/OrderReceivedStatisticsVo.java
+33
-0
OrderReceivedStatisticsBiz.java
...m/xxfc/platform/order/biz/OrderReceivedStatisticsBiz.java
+9
-0
OrderReceivedStatisticsJobHandler.java
...m/order/jobhandler/OrderReceivedStatisticsJobHandler.java
+38
-0
OrderReceivedStatisticsAdminController.java
...st/background/OrderReceivedStatisticsAdminController.java
+12
-5
No files found.
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/contant/enumerate/OrderMemberReceivedStatisticsSignEnum.java
0 → 100644
View file @
bd42e8b1
package
com
.
xxfc
.
platform
.
order
.
contant
.
enumerate
;
import
com.xxfc.platform.order.entity.OrderMemberReceivedStatistics
;
import
com.xxfc.platform.order.entity.OrderReceivedStatisticsBase
;
import
com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo
;
import
java.math.BigDecimal
;
import
java.util.*
;
import
java.util.stream.Collectors
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/11/11 10:36
*/
public
enum
OrderMemberReceivedStatisticsSignEnum
{
MEMBER_TOTAL_AMOUNT
(
"mta"
,
"会员订单总额"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderMemberReceivedStatistics
>
orderMemberReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderMemberReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
BigDecimal
totalAmount
=
orderMemberReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalAmount
()).
reduce
(
BigDecimal
.
ZERO
,
(
x
,
y
)
->
x
.
add
(
y
));
OrderMemberReceivedStatistics
orderMemberReceivedStatistics
=
orderMemberReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderMemberReceivedStatistics
,
totalAmount
,
null
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
COMMON__MEMBER_TOTAL_AMOUNT
(
"cmta"
,
"普通会员订单总额"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderMemberReceivedStatistics
>
orderMemberReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderMemberReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
BigDecimal
totalAmount
=
orderMemberReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getToalCommonAmmount
()).
reduce
(
BigDecimal
.
ZERO
,
(
x
,
y
)
->
x
.
add
(
y
));
OrderMemberReceivedStatistics
orderMemberReceivedStatistics
=
orderMemberReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderMemberReceivedStatistics
,
totalAmount
,
null
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
MEMBER_TOTAL_QUANTITY
(
"cmtq"
,
"普通会员订单量"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderMemberReceivedStatistics
>
orderMemberReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderMemberReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
Integer
totalQuantity
=
orderMemberReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalCommonQuantity
()).
reduce
(
0
,
(
x
,
y
)
->
x
+
y
);
OrderMemberReceivedStatistics
orderMemberReceivedStatistics
=
orderMemberReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderMemberReceivedStatistics
,
null
,
totalQuantity
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
GOLD_MEMBER_TOTAL_AMOUNT
(
"gmta"
,
"黄金会员订单总额"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderMemberReceivedStatistics
>
orderMemberReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderMemberReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
BigDecimal
totalAmount
=
orderMemberReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalGoldAmount
()).
reduce
(
BigDecimal
.
ZERO
,
(
x
,
y
)
->
x
.
add
(
y
));
OrderMemberReceivedStatistics
orderMemberReceivedStatistics
=
orderMemberReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderMemberReceivedStatistics
,
totalAmount
,
null
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
GOLD_MEMBER_TOTAL_QUANTITY
(
"mgtq"
,
"黄金会员订单量"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderMemberReceivedStatistics
>
orderMemberReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderMemberReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
Integer
totalQuantity
=
orderMemberReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalGoldQuantity
()).
reduce
(
0
,
(
x
,
y
)
->
x
+
y
);
OrderMemberReceivedStatistics
orderMemberReceivedStatistics
=
orderMemberReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderMemberReceivedStatistics
,
null
,
totalQuantity
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
DIAMOND_MEMBER_TOTAL_AMOUNT
(
"dmta"
,
"钻石会员订单总额"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderMemberReceivedStatistics
>
orderMemberReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderMemberReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
BigDecimal
totalAmount
=
orderMemberReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalDiamondAmmount
()).
reduce
(
BigDecimal
.
ZERO
,
(
x
,
y
)
->
x
.
add
(
y
));
OrderMemberReceivedStatistics
orderMemberReceivedStatistics
=
orderMemberReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderMemberReceivedStatistics
,
totalAmount
,
null
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
DIAMOND_MEMBER_TOTAL_QUANTITY
(
"dmtq"
,
"钻石会员订单量"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderMemberReceivedStatistics
>
orderMemberReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderMemberReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
Integer
totalQuantity
=
orderMemberReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalDiamondQuantity
()).
reduce
(
0
,
(
x
,
y
)
->
x
+
y
);
OrderMemberReceivedStatistics
orderMemberReceivedStatistics
=
orderMemberReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderMemberReceivedStatistics
,
null
,
totalQuantity
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
};
private
String
sign
;
private
String
desc
;
OrderMemberReceivedStatisticsSignEnum
(
String
sign
,
String
desc
)
{
this
.
sign
=
sign
;
this
.
desc
=
desc
;
}
/**
* 统计项
* @param orderMap
* @return
*/
abstract
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
);
public
String
getSign
()
{
return
sign
;
}
public
void
setSign
(
String
sign
)
{
this
.
sign
=
sign
;
}
public
String
getDesc
()
{
return
desc
;
}
public
void
setDesc
(
String
desc
)
{
this
.
desc
=
desc
;
}
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/contant/enumerate/OrderReceivedStatisticsSignEnum.java
0 → 100644
View file @
bd42e8b1
package
com
.
xxfc
.
platform
.
order
.
contant
.
enumerate
;
import
com.xxfc.platform.order.entity.OrderReceivedStatistics
;
import
com.xxfc.platform.order.entity.OrderReceivedStatisticsBase
;
import
com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo
;
import
java.math.BigDecimal
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/11/11 10:36
*/
public
enum
OrderReceivedStatisticsSignEnum
{
ORDER_TOTAL_AMOUNT
(
"ota"
,
"订单总额"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderReceivedStatistics
>
orderReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
BigDecimal
totalAmount
=
orderReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalAmount
()).
reduce
(
BigDecimal
.
ZERO
,
(
x
,
y
)
->
x
.
add
(
y
));
OrderReceivedStatistics
orderReceivedStatistics
=
orderReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
totalAmount
,
null
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
ORDER_TOTAL_QUANTITY
(
"otq"
,
"订单量"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderReceivedStatistics
>
orderReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
Integer
totalQuantity
=
orderReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalQuantity
()).
reduce
(
0
,
(
x
,
y
)
->
x
+
y
);
OrderReceivedStatistics
orderReceivedStatistics
=
orderReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
null
,
totalQuantity
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
ORDER_AVG_QUANTITY
(
"oavgq"
,
"订单平均量"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderReceivedStatistics
>
orderReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
Integer
avgQuantity
=
orderReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getAvgQuantity
()).
reduce
(
0
,
(
x
,
y
)
->
x
+
y
)/
V
.
size
();
OrderReceivedStatistics
orderReceivedStatistics
=
orderReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
null
,
avgQuantity
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
ORDER_TOTAL_REAL_AMOUNT
(
"otra"
,
"订单实际总额"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderReceivedStatistics
>
orderReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
BigDecimal
realAmount
=
orderReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getRealAmount
()).
reduce
(
BigDecimal
.
ZERO
,
(
x
,
y
)
->
x
.
add
(
y
));
OrderReceivedStatistics
orderReceivedStatistics
=
orderReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
realAmount
,
null
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
ORDER_REAL_AVG_AMOUNT
(
"oravga"
,
"订单实际平均总额"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderReceivedStatistics
>
orderReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
BigDecimal
realAvgAmount
=
orderReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getRealAvgAmount
()).
reduce
(
BigDecimal
.
ZERO
,
(
x
,
y
)
->
x
.
add
(
y
)).
divide
(
new
BigDecimal
(
V
.
size
()));
OrderReceivedStatistics
orderReceivedStatistics
=
orderReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
realAvgAmount
,
null
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
};
private
String
sign
;
private
String
desc
;
OrderReceivedStatisticsSignEnum
(
String
sign
,
String
desc
)
{
this
.
sign
=
sign
;
this
.
desc
=
desc
;
}
/**
* 统计项
* @param orderMap
* @return
*/
abstract
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
);
public
String
getSign
()
{
return
sign
;
}
public
void
setSign
(
String
sign
)
{
this
.
sign
=
sign
;
}
public
String
getDesc
()
{
return
desc
;
}
public
void
setDesc
(
String
desc
)
{
this
.
desc
=
desc
;
}
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/contant/enumerate/OrderRentVehicleReceivedStatisticsSignEnum.java
0 → 100644
View file @
bd42e8b1
package
com
.
xxfc
.
platform
.
order
.
contant
.
enumerate
;
import
com.xxfc.platform.order.entity.OrderReceivedStatisticsBase
;
import
com.xxfc.platform.order.entity.OrderRentVehicleReceivedStatistics
;
import
com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo
;
import
java.math.BigDecimal
;
import
java.math.RoundingMode
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/11/11 10:36
*/
public
enum
OrderRentVehicleReceivedStatisticsSignEnum
{
RENT_VEHICLE_TOTAL_AMOUNT
(
"rvta"
,
"租车订单总额"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderRentVehicleReceivedStatistics
>
orderRentVehicleReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderRentVehicleReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
BigDecimal
totalAmount
=
orderRentVehicleReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalAmount
()).
reduce
(
BigDecimal
.
ZERO
,
(
x
,
y
)
->
x
.
add
(
y
));
OrderRentVehicleReceivedStatistics
orderReceivedStatistics
=
orderRentVehicleReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
totalAmount
,
null
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
RENT_VEHICLE_TOTAL_QUANTITY
(
"rvtq"
,
"租车订单量"
)
{
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderRentVehicleReceivedStatistics
>
orderRentVehicleReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderRentVehicleReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
Integer
totalQuantity
=
orderRentVehicleReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalQuantity
()).
reduce
(
0
,
(
x
,
y
)
->
x
+
y
);
OrderRentVehicleReceivedStatistics
orderReceivedStatistics
=
orderRentVehicleReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
null
,
totalQuantity
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
RENT_VEHICLE_AVG_QUANTITY
(
"rvaq"
,
"租车订单平均量"
)
{
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderRentVehicleReceivedStatistics
>
orderRentVehicleReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderRentVehicleReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
Integer
avgQuantity
=
orderRentVehicleReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getAvgQuantity
()).
reduce
(
0
,
(
x
,
y
)
->
x
+
y
)/
V
.
size
();
OrderRentVehicleReceivedStatistics
orderReceivedStatistics
=
orderRentVehicleReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
null
,
avgQuantity
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
RENT_VEHICLE_REAL_TOTAL_AMOUNT
(
"rvrta"
,
"实际租车金额"
)
{
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderRentVehicleReceivedStatistics
>
orderRentVehicleReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderRentVehicleReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
BigDecimal
realAmount
=
orderRentVehicleReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getRealAmount
()).
reduce
(
BigDecimal
.
ZERO
,
(
x
,
y
)
->
x
.
add
(
y
));
OrderRentVehicleReceivedStatistics
orderReceivedStatistics
=
orderRentVehicleReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
realAmount
,
null
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
RENT_VEHICLE_REAL_AVG_AMOUNT
(
"rvraa"
,
"实际租车平均金额"
)
{
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderRentVehicleReceivedStatistics
>
orderRentVehicleReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderRentVehicleReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
BigDecimal
realAvgAmount
=
orderRentVehicleReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getRealAvgAmount
()).
reduce
(
BigDecimal
.
ZERO
,
(
x
,
y
)
->
x
.
add
(
y
)).
divide
(
new
BigDecimal
(
V
.
size
()),
RoundingMode
.
HALF_UP
);
OrderRentVehicleReceivedStatistics
orderReceivedStatistics
=
orderRentVehicleReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
realAvgAmount
,
null
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
};
private
String
sign
;
private
String
desc
;
OrderRentVehicleReceivedStatisticsSignEnum
(
String
sign
,
String
desc
)
{
this
.
sign
=
sign
;
this
.
desc
=
desc
;
}
/**
* 统计项
* @param orderMap
* @return
*/
abstract
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
);
public
String
getSign
()
{
return
sign
;
}
public
void
setSign
(
String
sign
)
{
this
.
sign
=
sign
;
}
public
String
getDesc
()
{
return
desc
;
}
public
void
setDesc
(
String
desc
)
{
this
.
desc
=
desc
;
}
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/contant/enumerate/OrderTourReceivedStatisticsSignEnum.java
0 → 100644
View file @
bd42e8b1
package
com
.
xxfc
.
platform
.
order
.
contant
.
enumerate
;
import
com.xxfc.platform.order.entity.OrderReceivedStatisticsBase
;
import
com.xxfc.platform.order.entity.OrderTourReceivedStatistics
;
import
com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo
;
import
java.math.BigDecimal
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/11/11 10:36
*/
public
enum
OrderTourReceivedStatisticsSignEnum
{
TOUR_TOTAL_AMOUNT
(
"tta"
,
"旅游订单总额"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderTourReceivedStatistics
>
orderTourReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderTourReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
BigDecimal
totalAmount
=
orderTourReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalAmount
()).
reduce
(
BigDecimal
.
ZERO
,
(
x
,
y
)
->
x
.
add
(
y
));
OrderTourReceivedStatistics
orderReceivedStatistics
=
orderTourReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
totalAmount
,
null
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
TOUR_TOTAL_QUANTITY
(
"ttq"
,
"旅游订单量"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderTourReceivedStatistics
>
orderTourReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderTourReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
Integer
totalQuantity
=
orderTourReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalQuantity
()).
reduce
(
0
,
(
x
,
y
)
->
x
+
y
);
OrderTourReceivedStatistics
orderReceivedStatistics
=
orderTourReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
null
,
totalQuantity
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
TOUR_AVG_QUANTITY
(
"tavgq"
,
"旅游订单平均量"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderTourReceivedStatistics
>
orderTourReceivedStatisticsList
=
V
.
stream
().
map
(
x
->
(
OrderTourReceivedStatistics
)
x
).
collect
(
Collectors
.
toList
());
Integer
avgQuantity
=
orderTourReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getAvgQuantity
()).
reduce
(
0
,
(
x
,
y
)
->
x
+
y
)/
V
.
size
();
OrderTourReceivedStatistics
orderReceivedStatistics
=
orderTourReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
null
,
avgQuantity
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
};
private
String
sign
;
private
String
desc
;
OrderTourReceivedStatisticsSignEnum
(
String
sign
,
String
desc
)
{
this
.
sign
=
sign
;
this
.
desc
=
desc
;
}
/**
* 统计项
* @param orderMap
* @return
*/
abstract
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
);
public
String
getSign
()
{
return
sign
;
}
public
void
setSign
(
String
sign
)
{
this
.
sign
=
sign
;
}
public
String
getDesc
()
{
return
desc
;
}
public
void
setDesc
(
String
desc
)
{
this
.
desc
=
desc
;
}
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/contant/enumerate/ReceivedStatisticsEnum.java
0 → 100644
View file @
bd42e8b1
package
com
.
xxfc
.
platform
.
order
.
contant
.
enumerate
;
import
com.xxfc.platform.order.entity.OrderReceivedStatisticsBase
;
import
com.xxfc.platform.order.entity.OrderRentVehicleReceivedStatistics
;
import
com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo
;
import
org.springframework.util.CollectionUtils
;
import
java.math.BigDecimal
;
import
java.math.RoundingMode
;
import
java.util.*
;
import
java.util.stream.Collectors
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/11/11 15:25
*/
public
enum
ReceivedStatisticsEnum
{
DAY
(
1
,
"按日统计"
)
{
@Override
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
wrapMap
(
List
<
OrderReceivedStatisticsBase
>
orderReceivedStatisticsBases
)
{
if
(
CollectionUtils
.
isEmpty
(
orderReceivedStatisticsBases
))
{
return
Collections
.
EMPTY_MAP
;
}
return
orderReceivedStatisticsBases
.
stream
().
collect
(
Collectors
.
groupingBy
(
OrderReceivedStatisticsBase:
:
getDate
,
Collectors
.
toList
()));
}
},
WEEK
(
2
,
"按周统计"
)
{
@Override
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
wrapMap
(
List
<
OrderReceivedStatisticsBase
>
orderReceivedStatisticsBases
)
{
if
(
CollectionUtils
.
isEmpty
(
orderReceivedStatisticsBases
))
{
return
Collections
.
EMPTY_MAP
;
}
return
orderReceivedStatisticsBases
.
stream
().
collect
(
Collectors
.
groupingBy
(
OrderReceivedStatisticsBase:
:
getWeekOfYear
,
Collectors
.
toList
()));
}
},
MONTH
(
3
,
"按月统计"
)
{
@Override
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
wrapMap
(
List
<
OrderReceivedStatisticsBase
>
orderReceivedStatisticsBases
)
{
if
(
CollectionUtils
.
isEmpty
(
orderReceivedStatisticsBases
))
{
return
Collections
.
EMPTY_MAP
;
}
return
orderReceivedStatisticsBases
.
stream
().
collect
(
Collectors
.
groupingBy
(
OrderReceivedStatisticsBase:
:
getMonth
,
Collectors
.
toList
()));
}
};
private
int
wayCode
;
private
String
value
;
ReceivedStatisticsEnum
(
int
wayCode
,
String
value
)
{
this
.
wayCode
=
wayCode
;
this
.
value
=
value
;
}
/**
* 统计方式
* @param orderReceivedStatisticsBases
* @return
*/
abstract
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
wrapMap
(
List
<
OrderReceivedStatisticsBase
>
orderReceivedStatisticsBases
);
public
static
OrderReceivedStatisticsVo
createOrderReceivedStatistics
(
OrderReceivedStatisticsBase
orderReceivedStatisticsBase
,
BigDecimal
amount
,
Integer
quantity
){
return
OrderReceivedStatisticsVo
.
builder
()
.
date
(
orderReceivedStatisticsBase
.
getDate
())
.
month
(
orderReceivedStatisticsBase
.
getMonth
())
.
weekOfYear
(
orderReceivedStatisticsBase
.
getWeekOfYear
())
.
weekOfYear
(
orderReceivedStatisticsBase
.
getYear
())
.
orderNum
(
quantity
)
.
orderAmount
(
amount
)
.
build
();
}
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderMemberReceivedStatistics.java
View file @
bd42e8b1
...
@@ -4,6 +4,7 @@ import java.io.Serializable;
...
@@ -4,6 +4,7 @@ import java.io.Serializable;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.Date
;
import
javax.persistence.*
;
import
javax.persistence.*
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.Data
;
...
@@ -17,7 +18,7 @@ import lombok.Data;
...
@@ -17,7 +18,7 @@ import lombok.Data;
*/
*/
@Data
@Data
@Table
(
name
=
"order_member_received_statistics"
)
@Table
(
name
=
"order_member_received_statistics"
)
public
class
OrderMemberReceivedStatistics
implements
Serializable
{
public
class
OrderMemberReceivedStatistics
extends
OrderReceivedStatisticsBase
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
static
final
long
serialVersionUID
=
1L
;
/**
/**
...
@@ -28,34 +29,6 @@ public class OrderMemberReceivedStatistics implements Serializable {
...
@@ -28,34 +29,6 @@ public class OrderMemberReceivedStatistics implements Serializable {
@ApiModelProperty
(
""
)
@ApiModelProperty
(
""
)
private
Long
id
;
private
Long
id
;
/**
* 年份
*/
@Column
(
name
=
"year"
)
@ApiModelProperty
(
value
=
"年份"
)
private
Integer
year
;
/**
* 月份
*/
@Column
(
name
=
"month"
)
@ApiModelProperty
(
value
=
"月份"
)
private
Integer
month
;
/**
* 年月日
*/
@Column
(
name
=
"date"
)
@ApiModelProperty
(
value
=
"年月日"
)
private
Date
date
;
/**
* 1周年的第几周
*/
@Column
(
name
=
"week_of_year"
)
@ApiModelProperty
(
value
=
"1周年的第几周"
)
private
Integer
weekOfYear
;
/**
/**
* 订单总额
* 订单总额
*/
*/
...
@@ -137,7 +110,7 @@ public class OrderMemberReceivedStatistics implements Serializable {
...
@@ -137,7 +110,7 @@ public class OrderMemberReceivedStatistics implements Serializable {
* 创建时间
* 创建时间
*/
*/
@Column
(
name
=
"crt_time"
)
@Column
(
name
=
"crt_time"
)
@ApiModelProperty
(
value
=
"创建时间"
,
hidden
=
true
)
@ApiModelProperty
(
value
=
"创建时间"
,
hidden
=
true
)
private
Date
crtTime
;
private
Date
crtTime
;
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderReceivedStatistics.java
View file @
bd42e8b1
...
@@ -17,7 +17,7 @@ import lombok.Data;
...
@@ -17,7 +17,7 @@ import lombok.Data;
*/
*/
@Data
@Data
@Table
(
name
=
"order_received_statistics"
)
@Table
(
name
=
"order_received_statistics"
)
public
class
OrderReceivedStatistics
implements
Serializable
{
public
class
OrderReceivedStatistics
extends
OrderReceivedStatisticsBase
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
static
final
long
serialVersionUID
=
1L
;
/**
/**
...
@@ -28,34 +28,6 @@ public class OrderReceivedStatistics implements Serializable {
...
@@ -28,34 +28,6 @@ public class OrderReceivedStatistics implements Serializable {
@ApiModelProperty
(
""
)
@ApiModelProperty
(
""
)
private
Long
id
;
private
Long
id
;
/**
* 年份
*/
@Column
(
name
=
"year"
)
@ApiModelProperty
(
value
=
"年份"
)
private
Integer
year
;
/**
* 月份
*/
@Column
(
name
=
"month"
)
@ApiModelProperty
(
value
=
"月份"
)
private
Integer
month
;
/**
* 年月日
*/
@Column
(
name
=
"date"
)
@ApiModelProperty
(
value
=
"年月日"
)
private
Date
date
;
/**
* 1周年的第几周
*/
@Column
(
name
=
"week_of_year"
)
@ApiModelProperty
(
value
=
"1周年的第几周"
)
private
Integer
weekOfYear
;
/**
/**
* 订单总额
* 订单总额
*/
*/
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderReceivedStatisticsBase.java
0 → 100644
View file @
bd42e8b1
package
com
.
xxfc
.
platform
.
order
.
entity
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.persistence.Column
;
import
java.util.Date
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/11/11 15:49
*/
@Data
public
class
OrderReceivedStatisticsBase
{
/**
* 年份
*/
@Column
(
name
=
"year"
)
@ApiModelProperty
(
value
=
"年份"
)
protected
Integer
year
;
/**
* 月份
*/
@Column
(
name
=
"month"
)
@ApiModelProperty
(
value
=
"月份"
)
protected
Integer
month
;
/**
* 年月日
*/
@Column
(
name
=
"date"
)
@ApiModelProperty
(
value
=
"年月日"
)
protected
Date
date
;
/**
* 1周年的第几周
*/
@Column
(
name
=
"week_of_year"
)
@ApiModelProperty
(
value
=
"1周年的第几周"
)
protected
Integer
weekOfYear
;
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderRentVehicleReceivedStatistics.java
View file @
bd42e8b1
...
@@ -4,6 +4,7 @@ import java.io.Serializable;
...
@@ -4,6 +4,7 @@ import java.io.Serializable;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.Date
;
import
javax.persistence.*
;
import
javax.persistence.*
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.Data
;
...
@@ -17,7 +18,7 @@ import lombok.Data;
...
@@ -17,7 +18,7 @@ import lombok.Data;
*/
*/
@Data
@Data
@Table
(
name
=
"order_rent_vehicle_received_statistics"
)
@Table
(
name
=
"order_rent_vehicle_received_statistics"
)
public
class
OrderRentVehicleReceivedStatistics
implements
Serializable
{
public
class
OrderRentVehicleReceivedStatistics
extends
OrderReceivedStatisticsBase
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
static
final
long
serialVersionUID
=
1L
;
/**
/**
...
@@ -28,34 +29,6 @@ public class OrderRentVehicleReceivedStatistics implements Serializable {
...
@@ -28,34 +29,6 @@ public class OrderRentVehicleReceivedStatistics implements Serializable {
@ApiModelProperty
(
""
)
@ApiModelProperty
(
""
)
private
Long
id
;
private
Long
id
;
/**
* 年份
*/
@Column
(
name
=
"year"
)
@ApiModelProperty
(
value
=
"年份"
)
private
Integer
year
;
/**
* 月份
*/
@Column
(
name
=
"month"
)
@ApiModelProperty
(
value
=
"月份"
)
private
Integer
month
;
/**
* 年月日
*/
@Column
(
name
=
"date"
)
@ApiModelProperty
(
value
=
"年月日"
)
private
Date
date
;
/**
* 1周年的第几周
*/
@Column
(
name
=
"week_of_year"
)
@ApiModelProperty
(
value
=
"1周年的第几周"
)
private
Integer
weekOfYear
;
/**
/**
* 订单总额
* 订单总额
*/
*/
...
@@ -123,7 +96,7 @@ public class OrderRentVehicleReceivedStatistics implements Serializable {
...
@@ -123,7 +96,7 @@ public class OrderRentVehicleReceivedStatistics implements Serializable {
* 创建时间
* 创建时间
*/
*/
@Column
(
name
=
"crt_time"
)
@Column
(
name
=
"crt_time"
)
@ApiModelProperty
(
value
=
"创建时间"
,
hidden
=
true
)
@ApiModelProperty
(
value
=
"创建时间"
,
hidden
=
true
)
private
Date
crtTime
;
private
Date
crtTime
;
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderTourReceivedStatistics.java
View file @
bd42e8b1
...
@@ -4,6 +4,7 @@ import java.io.Serializable;
...
@@ -4,6 +4,7 @@ import java.io.Serializable;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.Date
;
import
javax.persistence.*
;
import
javax.persistence.*
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.Data
;
...
@@ -17,7 +18,7 @@ import lombok.Data;
...
@@ -17,7 +18,7 @@ import lombok.Data;
*/
*/
@Data
@Data
@Table
(
name
=
"order_tour_received_statistics"
)
@Table
(
name
=
"order_tour_received_statistics"
)
public
class
OrderTourReceivedStatistics
implements
Serializable
{
public
class
OrderTourReceivedStatistics
extends
OrderReceivedStatisticsBase
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
static
final
long
serialVersionUID
=
1L
;
/**
/**
...
@@ -28,34 +29,6 @@ public class OrderTourReceivedStatistics implements Serializable {
...
@@ -28,34 +29,6 @@ public class OrderTourReceivedStatistics implements Serializable {
@ApiModelProperty
(
""
)
@ApiModelProperty
(
""
)
private
Long
id
;
private
Long
id
;
/**
* 年份
*/
@Column
(
name
=
"year"
)
@ApiModelProperty
(
value
=
"年份"
)
private
Integer
year
;
/**
* 月份
*/
@Column
(
name
=
"month"
)
@ApiModelProperty
(
value
=
"月份"
)
private
Integer
month
;
/**
* 年月日
*/
@Column
(
name
=
"date"
)
@ApiModelProperty
(
value
=
"年月日"
)
private
Date
date
;
/**
* 1周年的第几周
*/
@Column
(
name
=
"week_of_year"
)
@ApiModelProperty
(
value
=
"1周年的第几周"
)
private
Integer
weekOfYear
;
/**
/**
* 订单总额
* 订单总额
*/
*/
...
@@ -109,7 +82,7 @@ public class OrderTourReceivedStatistics implements Serializable {
...
@@ -109,7 +82,7 @@ public class OrderTourReceivedStatistics implements Serializable {
* 创建时间
* 创建时间
*/
*/
@Column
(
name
=
"crt_time"
)
@Column
(
name
=
"crt_time"
)
@ApiModelProperty
(
value
=
"创建时间"
,
hidden
=
true
)
@ApiModelProperty
(
value
=
"创建时间"
,
hidden
=
true
)
private
Date
crtTime
;
private
Date
crtTime
;
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/dto/OrderReceivedStatisticsFindDTO.java
0 → 100644
View file @
bd42e8b1
package
com
.
xxfc
.
platform
.
order
.
pojo
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.validation.constraints.NotNull
;
import
java.util.Date
;
import
java.util.List
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/11/11 9:49
*/
@Data
@ApiModel
(
"统计查询"
)
public
class
OrderReceivedStatisticsFindDTO
{
@ApiModelProperty
(
"统计的开始时间 yyyy-MM-dd"
)
private
Date
startDate
;
@ApiModelProperty
(
"统计的结束时间 yyyy-MM-dd"
)
private
Date
endDate
;
@ApiModelProperty
(
"统计方式 1:日 2:周 3:周"
)
@NotNull
(
message
=
"统计方式不能为null"
)
private
Integer
statisticalWay
;
@ApiModelProperty
(
"订单状态 0:未完成 1:已完成"
)
private
Integer
orderState
;
@ApiModelProperty
(
"订单来源 1:app 2:小程序 3:后台"
)
private
Integer
orderOrigin
;
@ApiModelProperty
(
"支付方式 1:微信公众号支付 2:支付宝即时到账,3:银联"
)
private
Integer
payWay
;
@ApiModelProperty
(
"统计项标识"
)
@NotNull
(
message
=
"统计标识不能为null"
)
private
List
<
Integer
>
statisticalSigns
;
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/vo/OrderReceivedStatisticsVo.java
0 → 100644
View file @
bd42e8b1
package
com
.
xxfc
.
platform
.
order
.
pojo
.
vo
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.math.BigDecimal
;
import
java.util.Date
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/11/11 10:09
*/
@Data
@Builder
(
toBuilder
=
true
)
@AllArgsConstructor
@NoArgsConstructor
public
class
OrderReceivedStatisticsVo
{
@ApiModelProperty
(
"日期-->日统计方式"
)
private
Date
date
;
@ApiModelProperty
(
"第几周---->周统计方式"
)
private
Integer
weekOfYear
;
@ApiModelProperty
(
"月统计"
)
private
Integer
month
;
@ApiModelProperty
(
"订单总额|实际收入|平均收入"
)
private
BigDecimal
orderAmount
;
@ApiModelProperty
(
"订单总量|订单平均量"
)
private
Integer
orderNum
;
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderReceivedStatisticsBiz.java
View file @
bd42e8b1
package
com
.
xxfc
.
platform
.
order
.
biz
;
package
com
.
xxfc
.
platform
.
order
.
biz
;
import
com.xxfc.platform.order.pojo.dto.OrderReceivedStatisticsFindDTO
;
import
com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo
;
import
lombok.RequiredArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -9,6 +11,10 @@ import com.xxfc.platform.order.mapper.OrderReceivedStatisticsMapper;
...
@@ -9,6 +11,10 @@ import com.xxfc.platform.order.mapper.OrderReceivedStatisticsMapper;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.Collections
;
import
java.util.List
;
import
java.util.Map
;
/**
/**
* 全部订单统计
* 全部订单统计
*
*
...
@@ -24,4 +30,7 @@ public class OrderReceivedStatisticsBiz extends BaseBiz<OrderReceivedStatisticsM
...
@@ -24,4 +30,7 @@ public class OrderReceivedStatisticsBiz extends BaseBiz<OrderReceivedStatisticsM
private
final
OrderTourReceivedStatisticsBiz
orderTourReceivedStatisticsBiz
;
private
final
OrderTourReceivedStatisticsBiz
orderTourReceivedStatisticsBiz
;
private
final
OrderMemberReceivedStatisticsBiz
orderMemberReceivedStatisticsBiz
;
private
final
OrderMemberReceivedStatisticsBiz
orderMemberReceivedStatisticsBiz
;
public
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
getOrderReceivedStatisticsResult
(
OrderReceivedStatisticsFindDTO
orderReceivedStatisticsFindDTO
)
{
return
Collections
.
EMPTY_MAP
;
}
}
}
\ No newline at end of file
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/jobhandler/OrderReceivedStatisticsJobHandler.java
0 → 100644
View file @
bd42e8b1
package
com
.
xxfc
.
platform
.
order
.
jobhandler
;
import
com.xxfc.platform.order.biz.*
;
import
com.xxl.job.core.biz.model.ReturnT
;
import
com.xxl.job.core.handler.IJobHandler
;
import
com.xxl.job.core.handler.annotation.JobHandler
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.beans.factory.annotation.Autowired
;
/**
* @author libin
* @version 1.0
* @description 订单统计 定时任务
* @data 2019/11/11 11:09
*/
@JobHandler
(
value
=
"orderReceivedStatisticsJobHandler"
)
@RequiredArgsConstructor
(
onConstructor
=
@__
(
@Autowired
))
public
class
OrderReceivedStatisticsJobHandler
extends
IJobHandler
{
private
final
BaseOrderBiz
baseOrderBiz
;
private
final
OrderRentVehicleBiz
orderRentVehicleBiz
;
private
final
OrderTourDetailBiz
orderTourDetailBiz
;
private
final
OrderMemberDetailBiz
orderMemberDetailBiz
;
private
final
OrderReceivedStatisticsBiz
orderReceivedStatisticsBiz
;
private
final
OrderRentVehicleReceivedStatisticsBiz
orderRentVehicleReceivedStatisticsBiz
;
private
final
OrderTourReceivedStatisticsBiz
orderTourReceivedStatisticsBiz
;
private
final
OrderMemberReceivedStatisticsBiz
orderMemberReceivedStatisticsBiz
;
@Override
public
ReturnT
<
String
>
execute
(
String
s
)
throws
Exception
{
//订单
//租车订单
//旅游订单
//会员订单
return
null
;
}
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/background/OrderReceivedStatisticsAdminController.java
View file @
bd42e8b1
package
com
.
xxfc
.
platform
.
order
.
rest
.
background
;
package
com
.
xxfc
.
platform
.
order
.
rest
.
background
;
import
com.github.wxiaoqi.security.common.annotation.SimpleValid
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.xxfc.platform.order.biz.OrderReceivedStatisticsBiz
;
import
com.xxfc.platform.order.biz.OrderReceivedStatisticsBiz
;
import
com.xxfc.platform.order.pojo.dto.OrderReceivedStatisticsFindDTO
;
import
com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.RequiredArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.List
;
import
java.util.Map
;
/**
/**
* @author libin
* @author libin
* @version 1.0
* @version 1.0
...
@@ -23,10 +30,10 @@ import org.springframework.web.bind.annotation.RestController;
...
@@ -23,10 +30,10 @@ import org.springframework.web.bind.annotation.RestController;
public
class
OrderReceivedStatisticsAdminController
{
public
class
OrderReceivedStatisticsAdminController
{
private
final
OrderReceivedStatisticsBiz
orderReceivedStatisticsBiz
;
private
final
OrderReceivedStatisticsBiz
orderReceivedStatisticsBiz
;
/*
@ApiOperation("订单统计")
@ApiOperation
(
"订单统计"
)
@PostMapping
(
""
)
@PostMapping
(
""
)
public ObjectRestResponse
orderReceivedStatistics(
){
public
ObjectRestResponse
<
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>>
orderReceivedStatistics
(
@RequestBody
@SimpleValid
OrderReceivedStatisticsFindDTO
orderReceivedStatisticsFindDTO
){
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
orderReceivedStatisticsPageVo
=
orderReceivedStatisticsBiz
.
getOrderReceivedStatisticsResult
(
orderReceivedStatisticsFindDTO
);
return ObjectRestResponse.succ();
return
ObjectRestResponse
.
succ
(
orderReceivedStatisticsPageVo
);
}
*/
}
}
}
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