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
5007b006
Commit
5007b006
authored
Dec 30, 2019
by
libin
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'order_received_statistics'
parents
66cad7eb
7b3f25e6
Changes
12
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
162 additions
and
36 deletions
+162
-36
StaffStatisticsAdminController.java
...rity/admin/rest/admin/StaffStatisticsAdminController.java
+4
-5
CompanyPerformanceBo.java
...java/com/xxfc/platform/order/bo/CompanyPerformanceBo.java
+4
-0
OrderMemberReceivedStatisticsSignEnum.java
...tant/enumerate/OrderMemberReceivedStatisticsSignEnum.java
+24
-0
OrderReceivedStatisticsSignEnum.java
...er/contant/enumerate/OrderReceivedStatisticsSignEnum.java
+24
-0
OrderRentVehicleReceivedStatisticsSignEnum.java
...enumerate/OrderRentVehicleReceivedStatisticsSignEnum.java
+25
-1
OrderTourReceivedStatisticsSignEnum.java
...ontant/enumerate/OrderTourReceivedStatisticsSignEnum.java
+23
-0
OrderReceivedStatisticsBiz.java
...m/xxfc/platform/order/biz/OrderReceivedStatisticsBiz.java
+9
-12
OrderMemberController.java
...a/com/xxfc/platform/order/rest/OrderMemberController.java
+0
-1
CompanyOrderReceivedStatiscsAdminController.java
...ckground/CompanyOrderReceivedStatiscsAdminController.java
+17
-7
OrderReceivedStatisticsAdminController.java
...st/background/OrderReceivedStatisticsAdminController.java
+14
-6
StaffStatisticsAdminController.java
...order/rest/background/StaffStatisticsAdminController.java
+3
-1
OrderReceivedStatisticsMapper.xml
...c/main/resources/mapper/OrderReceivedStatisticsMapper.xml
+15
-3
No files found.
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/rest/admin/StaffStatisticsAdminController.java
View file @
5007b006
...
...
@@ -5,10 +5,8 @@ import com.github.wxiaoqi.security.admin.dto.StaffStatisticsFindDTO;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.beans.factory.annotation.Autowired
;
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.RestController
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.web.bind.annotation.*
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
import
javax.servlet.ServletOutputStream
;
import
javax.servlet.http.HttpServletResponse
;
...
...
@@ -22,7 +20,7 @@ import java.util.Map;
* @description
* @data 2019/11/26 16:59
*/
@
Rest
Controller
@Controller
@RequestMapping
(
"/staff_statistics"
)
@RequiredArgsConstructor
(
onConstructor
=
@__
(
@Autowired
))
public
class
StaffStatisticsAdminController
{
...
...
@@ -30,6 +28,7 @@ public class StaffStatisticsAdminController {
private
final
StaffStatisticsBiz
staffStatisticsBiz
;
@PostMapping
(
"/page"
)
@ResponseBody
public
ObjectRestResponse
<
Map
<
String
,
Object
>>
lisetStaffStatisticsWithPage
(
@RequestBody
StaffStatisticsFindDTO
staffStatisticsFindDTO
){
Map
<
String
,
Object
>
result
=
staffStatisticsBiz
.
listStaffStatisticsWithPage
(
staffStatisticsFindDTO
);
return
ObjectRestResponse
.
succ
(
result
);
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/bo/CompanyPerformanceBo.java
View file @
5007b006
...
...
@@ -31,6 +31,7 @@ public class CompanyPerformanceBo {
private
BigDecimal
travelAmount
;
private
BigDecimal
noDeductibleAmount
;
private
BigDecimal
depositAmount
;
private
BigDecimal
depositRefundAmount
;
private
Integer
rentDays
;
private
BigDecimal
extralAmount
;
private
Integer
departureNum
;
...
...
@@ -38,6 +39,9 @@ public class CompanyPerformanceBo {
private
String
startDate
;
private
String
endDate
;
private
String
dateStr
;
private
BigDecimal
lossSpecifiedAmount
;
private
BigDecimal
lateFeeAmount
;
public
BigDecimal
getMemberAmount
()
{
return
memberAmount
==
null
?
BigDecimal
.
ZERO
:
memberAmount
;
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/contant/enumerate/OrderMemberReceivedStatisticsSignEnum.java
View file @
5007b006
...
...
@@ -5,7 +5,9 @@ import com.xxfc.platform.order.entity.OrderReceivedStatisticsBase;
import
com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo
;
import
java.math.BigDecimal
;
import
java.math.RoundingMode
;
import
java.util.*
;
import
java.util.concurrent.atomic.AtomicReference
;
import
java.util.function.Function
;
import
java.util.stream.Collectors
;
...
...
@@ -127,6 +129,28 @@ public enum OrderMemberReceivedStatisticsSignEnum{
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
MEMBER_AVG_AMOUNT
(
"dh_mavga"
,
"会员订单金额arpu"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
AtomicReference
<
Integer
>
divisorAtomicReference
=
new
AtomicReference
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderMemberReceivedStatistics
>
orderMemberReceivedStatisticsList
=
ReceivedStatisticsEnum
.
convertToTargetBean
(
V
);
Integer
divisor
=
divisorAtomicReference
.
get
();
if
(
Objects
.
isNull
(
divisor
)){
divisor
=
orderMemberReceivedStatisticsList
.
get
(
0
).
getDivisor
();
divisorAtomicReference
.
set
(
divisor
);
}
BigDecimal
avgAmount
=
orderMemberReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalAmount
()).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
).
divide
(
new
BigDecimal
(
divisor
),
2
,
RoundingMode
.
HALF_UP
);
OrderMemberReceivedStatistics
orderMemberReceivedStatistics
=
orderMemberReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderMemberReceivedStatistics
,
avgAmount
,
null
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
};
private
String
sign
;
private
String
desc
;
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/contant/enumerate/OrderReceivedStatisticsSignEnum.java
View file @
5007b006
...
...
@@ -5,7 +5,9 @@ import com.xxfc.platform.order.entity.OrderReceivedStatisticsBase;
import
com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo
;
import
java.math.BigDecimal
;
import
java.math.RoundingMode
;
import
java.util.*
;
import
java.util.concurrent.atomic.AtomicReference
;
import
java.util.function.Function
;
import
java.util.stream.Collectors
;
...
...
@@ -63,6 +65,28 @@ public enum OrderReceivedStatisticsSignEnum {
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
ORDER_AVG_AMOUNT
(
"ad_oavga"
,
"订单金额arpu"
){
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
AtomicReference
<
Integer
>
divisorAtomicReference
=
new
AtomicReference
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderReceivedStatistics
>
orderReceivedStatisticsList
=
ReceivedStatisticsEnum
.
convertToTargetBean
(
V
);
Integer
divisor
=
divisorAtomicReference
.
get
();
if
(
Objects
.
isNull
(
divisor
)){
divisor
=
orderReceivedStatisticsList
.
get
(
0
).
getDivisor
();
divisorAtomicReference
.
set
(
divisor
);
}
BigDecimal
avgAmount
=
orderReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalAmount
()).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
).
divide
(
new
BigDecimal
(
divisor
),
2
,
RoundingMode
.
HALF_UP
);
OrderReceivedStatistics
orderReceivedStatistics
=
orderReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
avgAmount
,
null
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
};
private
String
sign
;
private
String
desc
;
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/contant/enumerate/OrderRentVehicleReceivedStatisticsSignEnum.java
View file @
5007b006
...
...
@@ -5,6 +5,7 @@ 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.*
;
import
java.util.concurrent.atomic.AtomicReference
;
import
java.util.function.Function
;
...
...
@@ -70,7 +71,30 @@ public enum OrderRentVehicleReceivedStatisticsSignEnum{
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
RENT_VEHICLE_AVG_AMOUNT
(
"bd_rvavga"
,
"租车金额arpu"
)
{
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
AtomicReference
<
Integer
>
divisorAtomicReference
=
new
AtomicReference
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)->{
List
<
OrderRentVehicleReceivedStatistics
>
orderRentVehicleReceivedStatisticsList
=
ReceivedStatisticsEnum
.
convertToTargetBean
(
V
);
Integer
divisor
=
divisorAtomicReference
.
get
();
if
(
Objects
.
isNull
(
divisor
)){
divisor
=
orderRentVehicleReceivedStatisticsList
.
get
(
0
).
getDivisor
();
divisorAtomicReference
.
set
(
divisor
);
}
BigDecimal
avgAmount
=
orderRentVehicleReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalAmount
()).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
).
divide
(
new
BigDecimal
(
divisor
),
2
,
RoundingMode
.
HALF_UP
);
OrderRentVehicleReceivedStatistics
orderReceivedStatistics
=
orderRentVehicleReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
avgAmount
,
null
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
};
private
String
sign
;
private
String
desc
;
private
static
Map
<
String
,
OrderRentVehicleReceivedStatisticsSignEnum
>
orderRentVehicleReceivedStatisticsSignEnumMap
;
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/contant/enumerate/OrderTourReceivedStatisticsSignEnum.java
View file @
5007b006
...
...
@@ -5,6 +5,7 @@ import com.xxfc.platform.order.entity.OrderTourReceivedStatistics;
import
com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo
;
import
java.math.BigDecimal
;
import
java.math.RoundingMode
;
import
java.util.*
;
import
java.util.concurrent.atomic.AtomicReference
;
import
java.util.function.Function
;
...
...
@@ -70,6 +71,28 @@ public enum OrderTourReceivedStatisticsSignEnum {
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
},
TOUR_AVG_AMOUNT
(
"ce_tavga"
,
"旅游金额arpu"
)
{
@Override
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
wrapToMap
(
Map
<
Object
,
List
<
OrderReceivedStatisticsBase
>>
orderMap
)
{
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
resultMap
=
new
HashMap
<>();
AtomicReference
<
Integer
>
divisorAtomicReference
=
new
AtomicReference
<>();
List
<
OrderReceivedStatisticsVo
>
orderReceivedStatisticsVos
=
new
ArrayList
<>();
orderMap
.
forEach
((
K
,
V
)
->
{
List
<
OrderTourReceivedStatistics
>
orderTourReceivedStatisticsList
=
ReceivedStatisticsEnum
.
convertToTargetBean
(
V
);
Integer
divisor
=
divisorAtomicReference
.
get
();
if
(
Objects
.
isNull
(
divisor
)){
divisor
=
orderTourReceivedStatisticsList
.
get
(
0
).
getDivisor
();
divisorAtomicReference
.
set
(
divisor
);
}
BigDecimal
avgAmount
=
orderTourReceivedStatisticsList
.
stream
().
map
(
x
->
x
.
getTotalAmount
()).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
).
divide
(
new
BigDecimal
(
divisor
),
2
,
RoundingMode
.
HALF_UP
);
OrderTourReceivedStatistics
orderReceivedStatistics
=
orderTourReceivedStatisticsList
.
get
(
0
);
OrderReceivedStatisticsVo
receivedStatisticsVo
=
ReceivedStatisticsEnum
.
createOrderReceivedStatistics
(
orderReceivedStatistics
,
avgAmount
,
null
);
orderReceivedStatisticsVos
.
add
(
receivedStatisticsVo
);
});
resultMap
.
put
(
getSign
(),
orderReceivedStatisticsVos
);
return
resultMap
;
}
};
private
String
sign
;
private
String
desc
;
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderReceivedStatisticsBiz.java
View file @
5007b006
...
...
@@ -30,8 +30,6 @@ import org.springframework.transaction.annotation.Transactional;
import
javax.servlet.ServletOutputStream
;
import
java.io.IOException
;
import
java.math.BigDecimal
;
import
java.time.LocalDate
;
import
java.time.format.DateTimeFormatter
;
import
java.util.*
;
import
java.util.concurrent.CountDownLatch
;
import
java.util.stream.Collectors
;
...
...
@@ -57,7 +55,6 @@ public class OrderReceivedStatisticsBiz extends BaseBiz<OrderReceivedStatisticsM
private
List
<
String
>
orderRentVehicleSigns
;
private
List
<
String
>
orderTourSigns
;
private
Map
<
String
,
String
>
signAndDescMap
;
private
DateTimeFormatter
dateTimeFormatter
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd"
);
private
final
ThreadPoolTaskExecutor
executor
;
...
...
@@ -184,15 +181,15 @@ public class OrderReceivedStatisticsBiz extends BaseBiz<OrderReceivedStatisticsM
firstCell
.
setCellValue
(
DateUtil
.
format
(
orderReceivedStatisticsVo
.
getDate
(),
"yyyy.MM.dd"
));
}
if
(
ReceivedStatisticsEnum
.
WEEK
.
getWayCode
()
==
statisticalWay
)
{
LocalDate
localDate
=
LocalDate
.
of
(
Integer
.
valueOf
(
orderReceivedStatisticsVo
.
getYear
()),
Integer
.
valueOf
(
orderReceivedStatisticsVo
.
getMonth
().
replace
(
orderReceivedStatisticsVo
.
getYear
(),
""
)),
1
);
int
dayOfYear
=
localDate
.
getDayOfYear
(
);
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
));
Calendar
cal
=
Calendar
.
getInstance
(
);
cal
.
setFirstDayOfWeek
(
Calendar
.
MONDAY
);
cal
.
set
(
Calendar
.
YEAR
,
Integer
.
valueOf
(
orderReceivedStatisticsVo
.
getYear
()))
;
cal
.
set
(
Calendar
.
WEEK_OF_YEAR
,
Integer
.
valueOf
(
orderReceivedStatisticsVo
.
getWeekOfYear
().
replace
(
""
+
orderReceivedStatisticsVo
.
getYear
(),
""
)))
;
cal
.
set
(
Calendar
.
DAY_OF_WEEK
,
cal
.
getFirstDayOfWeek
()
);
Date
startDate
=
cal
.
getTime
(
);
cal
.
add
(
Calendar
.
DAY_OF_WEEK
,
6
);
Date
endDate
=
cal
.
getTime
(
);
firstCell
.
setCellValue
(
String
.
format
(
"%s~%s"
,
DateUtil
.
format
(
startDate
,
"yyyy-MM-dd"
),
DateUtil
.
format
(
endDate
,
"yyyy-MM-dd"
)
));
}
if
(
ReceivedStatisticsEnum
.
MONTH
.
getWayCode
()
==
statisticalWay
)
{
StringBuilder
sb
=
new
StringBuilder
(
orderReceivedStatisticsVo
.
getMonth
());
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/OrderMemberController.java
View file @
5007b006
...
...
@@ -76,7 +76,6 @@ public class OrderMemberController extends BaseController<OrderMemberDetailBiz,
}
@PostMapping
(
"/export"
)
@ResponseBody
public
void
exportMemberOrders
(
@RequestBody
MemberOrderFindDTO
memberOrderFindDTO
,
HttpServletResponse
response
){
try
{
String
name
=
DateTimeFormatter
.
ofPattern
(
"YYYYMMddHHmmss"
).
format
(
LocalDateTime
.
now
());
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/background/CompanyOrderReceivedStatiscsAdminController.java
View file @
5007b006
package
com
.
xxfc
.
platform
.
order
.
rest
.
background
;
import
cn.hutool.core.date.DateUtil
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.vo.PageDataVO
;
import
com.xxfc.platform.order.biz.CompanyPerformanceBiz
;
import
com.xxfc.platform.order.pojo.dto.CompanyPerformanceFindDTO
;
import
com.xxfc.platform.order.bo.CompanyPerformanceBo
;
import
com.xxfc.platform.order.pojo.dto.CompanyPerformanceFindDTO
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.RequiredArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
import
org.springframework.beans.factory.annotation.Autowired
;
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.RestController
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.web.bind.annotation.*
;
import
javax.servlet.ServletOutputStream
;
import
javax.servlet.http.HttpServletResponse
;
import
java.time.LocalDateTime
;
import
java.time.format.DateTimeFormatter
;
import
java.util.Date
;
/**
* @author libin
...
...
@@ -27,7 +27,7 @@ import java.time.format.DateTimeFormatter;
* @data 2019/11/23 14:32
*/
@Slf4j
@
Rest
Controller
@Controller
@RequestMapping
(
"/statistics"
)
@RequiredArgsConstructor
(
onConstructor
=
@__
(
@Autowired
))
public
class
CompanyOrderReceivedStatiscsAdminController
{
...
...
@@ -35,7 +35,15 @@ public class CompanyOrderReceivedStatiscsAdminController {
private
final
CompanyPerformanceBiz
companyPerformanceBiz
;
@PostMapping
(
"/company_performance"
)
@ResponseBody
public
ObjectRestResponse
<
PageDataVO
<
CompanyPerformanceBo
>>
companyPerformance
(
@RequestBody
CompanyPerformanceFindDTO
companyPerformanceFindDTO
){
if
(
companyPerformanceFindDTO
.
getStartDate
()
==
null
&&
companyPerformanceFindDTO
.
getEndDate
()==
null
){
Date
date
=
new
Date
();
Date
startDate
=
DateUtil
.
beginOfMonth
(
date
).
toJdkDate
();
Date
endDate
=
DateUtil
.
endOfMonth
(
date
).
toJdkDate
();
companyPerformanceFindDTO
.
setStartDate
(
startDate
);
companyPerformanceFindDTO
.
setEndDate
(
endDate
);
}
PageDataVO
<
CompanyPerformanceBo
>
dataVO
=
companyPerformanceBiz
.
selectCompanyPerformancePage
(
companyPerformanceFindDTO
);
return
ObjectRestResponse
.
succ
(
dataVO
);
}
...
...
@@ -45,6 +53,8 @@ public class CompanyOrderReceivedStatiscsAdminController {
public
void
exportCompanyPerformance
(
@RequestBody
CompanyPerformanceFindDTO
companyPerformanceFindDTO
,
HttpServletResponse
response
){
try
{
companyPerformanceFindDTO
.
setLimit
(
null
);
companyPerformanceFindDTO
.
setPage
(
null
);
String
name
=
DateTimeFormatter
.
ofPattern
(
"YYYYMMddHHmmss"
).
format
(
LocalDateTime
.
now
());
response
.
setContentType
(
"application/vnd.ms-excel;charset=utf-8"
);
String
filename
=
String
.
format
(
"%s-company-statistics.xlsx"
,
name
);
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/background/OrderReceivedStatisticsAdminController.java
View file @
5007b006
package
com
.
xxfc
.
platform
.
order
.
rest
.
background
;
import
cn.hutool.core.date.DateUtil
;
import
com.github.wxiaoqi.security.admin.feign.dto.UserDTO
;
import
com.github.wxiaoqi.security.common.annotation.BeanValid
;
import
com.github.wxiaoqi.security.common.annotation.SimpleValid
;
...
...
@@ -14,16 +15,15 @@ import lombok.RequiredArgsConstructor;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.MediaType
;
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.RestController
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.web.bind.annotation.*
;
import
javax.servlet.ServletOutputStream
;
import
javax.servlet.http.HttpServletResponse
;
import
java.time.LocalDateTime
;
import
java.time.format.DateTimeFormatter
;
import
java.util.Arrays
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -35,7 +35,7 @@ import java.util.Map;
*/
@Slf4j
@Api
(
tags
=
"订单统计"
)
@
Rest
Controller
@Controller
@RequestMapping
(
"admin/order/received_statistics"
)
@RequiredArgsConstructor
(
onConstructor
=
@__
(
@Autowired
))
public
class
OrderReceivedStatisticsAdminController
{
...
...
@@ -43,14 +43,22 @@ public class OrderReceivedStatisticsAdminController {
@ApiOperation
(
"订单统计"
)
@PostMapping
(
""
)
@ResponseBody
public
ObjectRestResponse
<
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>>
orderReceivedStatistics
(
@RequestBody
@SimpleValid
OrderReceivedStatisticsFindDTO
orderReceivedStatisticsFindDTO
,
UserDTO
userDTO
){
orderReceivedStatisticsFindDTO
.
setCompanyId
(
Arrays
.
asList
(
userDTO
.
getCompanyId
()));
if
(
orderReceivedStatisticsFindDTO
.
getStartDate
()==
null
&&
orderReceivedStatisticsFindDTO
.
getEndDate
()==
null
){
Date
date
=
new
Date
();
Date
startDate
=
DateUtil
.
beginOfMonth
(
date
).
toJdkDate
();
Date
endDate
=
DateUtil
.
endOfMonth
(
date
).
toJdkDate
();
orderReceivedStatisticsFindDTO
.
setStartDate
(
startDate
);
orderReceivedStatisticsFindDTO
.
setEndDate
(
endDate
);
}
Map
<
String
,
List
<
OrderReceivedStatisticsVo
>>
orderReceivedStatisticsPageVo
=
orderReceivedStatisticsBiz
.
getOrderReceivedStatisticsResult
(
orderReceivedStatisticsFindDTO
);
return
ObjectRestResponse
.
succ
(
orderReceivedStatisticsPageVo
);
}
@ApiOperation
(
"订单统计excel导出下载"
)
@PostMapping
(
value
=
"/export"
,
consumes
=
MediaType
.
APPLICATION_JSON_UTF8
_VALUE
)
@PostMapping
(
value
=
"/export"
,
produces
=
MediaType
.
APPLICATION_OCTET_STREAM
_VALUE
)
public
ObjectRestResponse
<
Void
>
exportOrderReceivedStatistics
(
@RequestBody
@BeanValid
OrderReceivedStatisticsFindDTO
orderReceivedStatisticsFindDTO
,
UserDTO
userDTO
,
HttpServletResponse
response
){
try
{
orderReceivedStatisticsFindDTO
.
setCompanyId
(
Arrays
.
asList
(
userDTO
.
getCompanyId
()));
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/background/StaffStatisticsAdminController.java
View file @
5007b006
...
...
@@ -8,6 +8,7 @@ import com.xxfc.platform.order.pojo.bo.StaffStatisticsTotalBo;
import
com.xxfc.platform.order.pojo.vo.StaffStatisticsVo
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.web.bind.annotation.*
;
/**
...
...
@@ -16,7 +17,7 @@ import org.springframework.web.bind.annotation.*;
* @description
* @data 2019/11/25 12:39
*/
@
Rest
Controller
@Controller
@RequestMapping
(
"/admin/staff_statistics"
)
@RequiredArgsConstructor
(
onConstructor
=
@__
(
@Autowired
))
public
class
StaffStatisticsAdminController
{
...
...
@@ -24,6 +25,7 @@ public class StaffStatisticsAdminController {
private
final
StaffStatisticsBiz
staffStatisticsBiz
;
@PostMapping
(
"/total_statistics"
)
@ResponseBody
public
ObjectRestResponse
<
StaffStatisticsTotalBo
>
staffStatisticsWithTotal
(
@RequestBody
StaffStatisticsFindDTO
staffStatisticsFindDTO
)
{
StaffStatisticsTotalBo
staffStatisticsTotalVo
=
staffStatisticsBiz
.
staffStatisticsWithTotal
(
staffStatisticsFindDTO
);
return
ObjectRestResponse
.
succ
(
staffStatisticsTotalVo
);
...
...
xx-order/xx-order-server/src/main/resources/mapper/OrderReceivedStatisticsMapper.xml
View file @
5007b006
...
...
@@ -141,7 +141,10 @@
SUM(`travel_amount`-`travel_refund_amount` ) AS `travelAmount`,
SUM(`rent_vehicle_amount`-`rent_vehicle_refund_amount`) AS `rentVehilceAmount`,
SUM(`no_deductible_amount` - `no_deductible_refund_amount`) as `noDeductibleAmount`,
SUM(`deposit_amount` - `deposit_refund_amount`) as `depositAmount`
SUM(`deposit_amount` - `deposit_refund_amount`) as `depositAmount`,
SUM(`deposit_refund_amount`) as `depositRefundAmount`,
SUM(`loss_specified_amount`) as `lossSpecifiedAmount`,
SUM(`late_fee_amount`) as `lateFeeAmount`
FROM
`order_received_statistics` WHERE `has_pay`=1
<if
test=
"companyName!=null and companyName!=''"
>
...
...
@@ -169,6 +172,7 @@
`company_id` ,
`year`,
`date`
order by `company_id`,`date` desc
<if
test=
"page!=null and limit!=null"
>
limit #{startIndex},#{endInex}
</if>
...
...
@@ -226,7 +230,10 @@
SUM(`travel_amount`-`travel_refund_amount` ) AS `travelAmount`,
SUM(`rent_vehicle_amount`-`rent_vehicle_refund_amount`) AS `rentVehilceAmount`,
SUM(`no_deductible_amount` - `no_deductible_refund_amount`) as `noDeductibleAmount`,
SUM(`deposit_amount` - `deposit_refund_amount`) as `depositAmount`
SUM(`deposit_amount` - `deposit_refund_amount`) as `depositAmount`,
SUM(`deposit_refund_amount`) as `depositRefundAmount`,
SUM(`loss_specified_amount`) as `lossSpecifiedAmount`,
SUM(`late_fee_amount`) as `lateFeeAmount`
FROM
`order_received_statistics` WHERE `has_pay`=1
<if
test=
"companyName!=null and companyName!=''"
>
...
...
@@ -254,6 +261,7 @@
company_id,
`year`,
`month`
order by `company_id`, `month` desc
<if
test=
"page!=null and limit!=null"
>
limit #{startIndex},#{endInex}
</if>
...
...
@@ -310,7 +318,10 @@
SUM(`travel_amount`-`travel_refund_amount` ) AS `travelAmount`,
SUM(`rent_vehicle_amount`-`rent_vehicle_refund_amount`) AS `rentVehilceAmount`,
SUM(`no_deductible_amount` - `no_deductible_refund_amount`) as `noDeductibleAmount`,
SUM(`deposit_amount` - `deposit_refund_amount`) as `depositAmount`
SUM(`deposit_amount` - `deposit_refund_amount`) as `depositAmount`,
SUM(`deposit_refund_amount`) as `depositRefundAmount`,
SUM(`loss_specified_amount`) as `lossSpecifiedAmount`,
SUM(`late_fee_amount`) as `lateFeeAmount`
FROM
`order_received_statistics` WHERE `has_pay`=1
<if
test=
"companyName!=null and companyName!=''"
>
...
...
@@ -338,6 +349,7 @@
company_id,
`year`,
`week_of_year`
order by `company_id`,`week_of_year` desc
<if
test=
"page!=null and limit!=null"
>
limit #{startIndex},#{endInex}
</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