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
2406200c
Commit
2406200c
authored
Aug 09, 2019
by
hanfeng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改统计
parent
cdc6b446
Changes
15
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
394 additions
and
134 deletions
+394
-134
DailyOrderStatistics.java
.../com/xxfc/platform/order/entity/DailyOrderStatistics.java
+7
-0
DailyVehicleOrderStatistics.java
...fc/platform/order/entity/DailyVehicleOrderStatistics.java
+5
-5
OrderStatistics.java
.../java/com/xxfc/platform/order/entity/OrderStatistics.java
+37
-0
pom.xml
xx-order/xx-order-server/pom.xml
+7
-0
DailyMembersOrderStatisticsBiz.java
...fc/platform/order/biz/DailyMembersOrderStatisticsBiz.java
+7
-3
DailyTravelOrderStatisticsBiz.java
...xfc/platform/order/biz/DailyTravelOrderStatisticsBiz.java
+39
-16
DailyVehicleOrderStatisticsBiz.java
...fc/platform/order/biz/DailyVehicleOrderStatisticsBiz.java
+122
-42
DailyMembersOrderStatisticsMapper.java
...tform/order/mapper/DailyMembersOrderStatisticsMapper.java
+3
-0
DailyTravelOrderStatisticsMapper.java
...atform/order/mapper/DailyTravelOrderStatisticsMapper.java
+6
-3
DailyVehicleOrderStatisticsMapper.java
...tform/order/mapper/DailyVehicleOrderStatisticsMapper.java
+6
-6
OrderStatisticsController.java
...form/order/rest/background/OrderStatisticsController.java
+33
-7
DailyMembersOrderStatisticsMapper.xml
...in/resources/mapper/DailyMembersOrderStatisticsMapper.xml
+13
-1
DailyTravelOrderStatisticsMapper.xml
...ain/resources/mapper/DailyTravelOrderStatisticsMapper.xml
+37
-10
DailyVehicleOrderStatisticsMapper.xml
...in/resources/mapper/DailyVehicleOrderStatisticsMapper.xml
+72
-40
VehicleModelController.java
...om/xxfc/platform/vehicle/rest/VehicleModelController.java
+0
-1
No files found.
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/DailyOrderStatistics.java
View file @
2406200c
...
...
@@ -26,6 +26,13 @@ public class DailyOrderStatistics {
@Column
(
name
=
"one_day"
)
private
String
oneDay
;
/**
* 分公司id
*/
@Column
(
name
=
"branch_company_id"
)
private
Integer
branchCompanyId
;
/**
* 成交总金额
*/
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/DailyVehicleOrderStatistics.java
View file @
2406200c
...
...
@@ -23,11 +23,6 @@ import java.util.Date;
@Table
(
name
=
"daily_vehicle_order_statistics"
)
public
class
DailyVehicleOrderStatistics
extends
DailyOrderStatistics
{
/**
* 成交总金额
*/
@Column
(
name
=
"gmv"
)
private
BigDecimal
gmv
;
/**
* 预交押金总额
...
...
@@ -60,5 +55,10 @@ public class DailyVehicleOrderStatistics extends DailyOrderStatistics{
@Column
(
name
=
"postpone"
)
private
BigDecimal
postpone
;
/**
* 取消订单扣款总额
*/
@Column
(
name
=
"penal_sum"
)
private
BigDecimal
penalSum
;
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderStatistics.java
View file @
2406200c
package
com
.
xxfc
.
platform
.
order
.
entity
;
import
lombok.Data
;
import
java.math.BigDecimal
;
/**
* @author Administrator
*/
@Data
public
class
OrderStatistics
{
/**
* 月成交总金额
*/
private
BigDecimal
totalGmv
;
/**
* 月押金总额
*/
private
BigDecimal
totalSecurityDeposit
;
/**
* 月退还押金总额
*/
private
BigDecimal
totalRefundSecurityDeposit
;
/**
* 月赔偿总额
*/
private
BigDecimal
totalCompensation
;
/**
* 月违章总额
*/
private
BigDecimal
totalForfeit
;
/**
* 月取消订单扣款总额
*/
private
BigDecimal
totalPenalSum
;
/**
* 月延期扣款总额
*/
private
BigDecimal
totalPostpone
;
}
xx-order/xx-order-server/pom.xml
View file @
2406200c
...
...
@@ -38,6 +38,13 @@
<artifactId>
spring-boot-starter-amqp
</artifactId>
</dependency>
<!-- hutool工具类-->
<dependency>
<groupId>
cn.hutool
</groupId>
<artifactId>
hutool-all
</artifactId>
<version>
4.5.10
</version>
</dependency>
</dependencies>
<build>
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/DailyMembersOrderStatisticsBiz.java
View file @
2406200c
...
...
@@ -9,6 +9,7 @@ import com.xxfc.platform.order.mapper.DailyTravelOrderStatisticsMapper;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.beanutils.BeanUtils
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.math.BigDecimal
;
import
java.util.Date
;
...
...
@@ -24,7 +25,9 @@ import java.util.Map;
@Slf4j
public
class
DailyMembersOrderStatisticsBiz
extends
BaseBiz
<
DailyMembersOrderStatisticsMapper
,
DailyMembersOrderStatistics
>
{
private
final
Integer
headOfficeId
=
1
;
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
boolean
memberOrderStatistics
()
{
try
{
HashMap
<
String
,
Object
>
resultMap
=
new
HashMap
<>();
...
...
@@ -42,15 +45,16 @@ public class DailyMembersOrderStatisticsBiz extends BaseBiz<DailyMembersOrderSta
@Override
public
int
insertSelectiveRe
(
DailyMembersOrderStatistics
entity
)
{
Date
date
=
new
Date
();
if
(
log
.
isDebugEnabled
()){
log
.
debug
(
"时间******[{}]"
,
date
);
}
entity
.
setBranchCompanyId
(
headOfficeId
);
entity
.
setCrtTime
(
date
);
return
mapper
.
insertSelective
(
entity
);
}
// public OrderStatistics findAll() {
// }
public
OrderStatistics
findAll
(
Integer
companyId
)
{
return
mapper
.
monthOrderTotal
(
companyId
);
}
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/DailyTravelOrderStatisticsBiz.java
View file @
2406200c
package
com
.
xxfc
.
platform
.
order
.
biz
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.bean.copier.CopyOptions
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
com.github.wxiaoqi.security.common.util.EntityUtils
;
import
com.xxfc.platform.order.entity.DailyTravelOrderStatistics
;
import
com.xxfc.platform.order.entity.OrderStatistics
;
import
com.xxfc.platform.order.mapper.DailyTravelOrderStatisticsMapper
;
import
org.apache.commons.beanutils.BeanUtils
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.interceptor.TransactionAspectSupport
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.*
;
/**
* 每日旅游订单统计
...
...
@@ -20,30 +20,53 @@ import java.util.Map;
@Service
public
class
DailyTravelOrderStatisticsBiz
extends
BaseBiz
<
DailyTravelOrderStatisticsMapper
,
DailyTravelOrderStatistics
>
{
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
boolean
StatisticsOfTravelOrders
()
{
try
{
HashMap
<
String
,
Object
>
resultMap
=
new
HashMap
<>();
Map
<
String
,
Object
>
travelGmv
=
mapper
.
getTravelGmv
();
BigDecimal
travelPenalSum
=
mapper
.
getTravelPenalSum
();
resultMap
.
put
All
(
travelGmv
);
resultMap
.
put
(
"penalSum"
,
travelPenalSum
);
DailyTravelOrderStatistics
TravelStatistics
=
new
DailyTravelOrderStatistics
(
);
BeanUtils
.
copyProperties
(
TravelStatistics
,
resultMap
);
insertSelective
(
TravelStatistics
);
ArrayList
<
DailyTravelOrderStatistics
>
objects
=
new
ArrayList
<>
();
List
<
DailyTravelOrderStatistics
>
travelGmv
=
mapper
.
getTravelGmv
();
objects
.
add
All
(
travelGmv
);
List
<
DailyTravelOrderStatistics
>
travelPenalSum
=
mapper
.
getTravelPenalSum
(
);
objects
.
addAll
(
travelPenalSum
);
insertByList
(
objects
);
return
true
;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
TransactionAspectSupport
.
currentTransactionStatus
().
setRollbackOnly
();
return
false
;
}
}
private
void
insertByList
(
ArrayList
<
DailyTravelOrderStatistics
>
objects
)
throws
Exception
{
HashMap
<
Integer
,
DailyTravelOrderStatistics
>
map
=
new
HashMap
<>();
for
(
DailyTravelOrderStatistics
object
:
objects
)
{
DailyTravelOrderStatistics
statistics
=
map
.
get
(
object
.
getBranchCompanyId
());
if
(
statistics
==
null
)
{
statistics
=
new
DailyTravelOrderStatistics
();
map
.
put
(
object
.
getBranchCompanyId
(),
statistics
);
}
BeanUtil
.
copyProperties
(
object
,
statistics
,
CopyOptions
.
create
().
setIgnoreNullValue
(
true
).
setIgnoreError
(
true
));
}
for
(
Map
.
Entry
<
Integer
,
DailyTravelOrderStatistics
>
e
:
map
.
entrySet
())
{
insertSelectiveRe
(
e
.
getValue
());
}
}
@Override
public
int
insertSelectiveRe
(
DailyTravelOrderStatistics
entity
)
{
entity
.
setCrtTime
(
new
Date
());
return
mapper
.
insertSelective
(
entity
);
}
public
void
findAll
()
{
public
OrderStatistics
findAll
(
Integer
branchCompanyId
)
{
return
mapper
.
monthOrderTotal
(
branchCompanyId
);
}
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/DailyVehicleOrderStatisticsBiz.java
View file @
2406200c
package
com
.
xxfc
.
platform
.
order
.
biz
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.bean.copier.CopyOptions
;
import
com.alibaba.fastjson.JSON
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
com.xxfc.platform.order.entity.DailyMembersOrderStatistics
;
import
com.xxfc.platform.order.entity.DailyVehicleOrderStatistics
;
import
com.xxfc.platform.order.entity.OrderStatistics
;
import
com.xxfc.platform.order.mapper.DailyVehicleOrderStatisticsMapper
;
import
com.xxfc.platform.order.pojo.DedDetailDTO
;
import
org.apache.commons.beanutils.BeanUtils
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.interceptor.TransactionAspectSupport
;
import
java.lang.reflect.InvocationTargetException
;
import
java.math.BigDecimal
;
import
java.util.*
;
/** 每日租车订单统计
/**
* 每日租车订单统计
*
* @author Administrator
*/
@Service
...
...
@@ -24,33 +28,39 @@ public class DailyVehicleOrderStatisticsBiz extends BaseBiz<DailyVehicleOrderSta
private
final
Integer
TYPE_DEFERRED
=
1
;
private
final
Integer
TYPE_DAMAGE
=
2
;
private
final
Integer
TYPE_OTHER
=
3
;
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
boolean
StatisticsOfCarRentalOrders
()
{
public
boolean
StatisticsOfCarRentalOrders
()
{
try
{
HashMap
<
String
,
Object
>
resultMap
=
new
HashMap
<>();
ArrayList
<
DailyVehicleOrderStatistics
>
result
=
new
ArrayList
<>();
// 获取每日租车订单成交金和押金总额
Map
<
String
,
BigDecimal
>
gmvAndMarginTotal
=
mapper
.
getGmvAndMarginTotal
();
resultMap
.
putAll
(
gmvAndMarginTotal
);
// 获取车辆
BigDecimal
penalSum
=
mapper
.
getPenalSum
();
resultMap
.
put
(
"penalSum"
,
penalSum
);
List
<
DailyVehicleOrderStatistics
>
gmvAndMarginTotal
=
mapper
.
getGmvAndMarginTotal
();
result
.
addAll
(
gmvAndMarginTotal
);
// 获取取消订单扣款总额
List
<
DailyVehicleOrderStatistics
>
penalSum
=
mapper
.
getPenalSum
();
result
.
addAll
(
penalSum
);
// 获取订单退还押金总额
BigDecimal
refundSecurityDeposit
=
mapper
.
getRefundSecurityDeposit
();
resultMap
.
put
(
"refundSecurityDeposit"
,
refundSecurityDeposit
);
// 获取违章查询总和
BigDecimal
violationMoney
=
mapper
.
getViolationMoney
();
resultMap
.
put
(
"violationMoney"
,
violationMoney
);
// 获取赔偿和延期JSON字符串
List
<
String
>
compensationAndPostpone
=
mapper
.
getCompensationAndPostpone
();
// 获取赔偿和延期JSON字符串转换为map
Map
<
String
,
BigDecimal
>
cpMap
=
getCompensationAndPostponeMap
(
compensationAndPostpone
);
resultMap
.
putAll
(
cpMap
);
DailyVehicleOrderStatistics
orderStatistics
=
new
DailyVehicleOrderStatistics
();
BeanUtils
.
copyProperties
(
orderStatistics
,
resultMap
);
insertSelective
(
orderStatistics
);
List
<
DailyVehicleOrderStatistics
>
refundSecurityDeposit
=
mapper
.
getRefundSecurityDeposit
();
result
.
addAll
(
refundSecurityDeposit
);
// 获取违章查询总和
List
<
DailyVehicleOrderStatistics
>
violationMoney
=
mapper
.
getViolationMoney
();
result
.
addAll
(
violationMoney
);
// 获取赔偿和延期JSON字符串
List
<
Map
>
compensationAndPostpone
=
mapper
.
getCompensationAndPostpone
();
// 获取赔偿和延期JSON字符串转换为map
List
<
DailyVehicleOrderStatistics
>
compensationAndPostpones
=
getCompensationAndPostpones
(
compensationAndPostpone
);
result
.
addAll
(
compensationAndPostpones
);
InsertByList
(
result
);
return
true
;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
...
...
@@ -60,45 +70,115 @@ public class DailyVehicleOrderStatisticsBiz extends BaseBiz<DailyVehicleOrderSta
}
private
void
InsertByList
(
ArrayList
<
DailyVehicleOrderStatistics
>
result
)
throws
Exception
{
Map
<
Integer
,
DailyVehicleOrderStatistics
>
map
=
new
HashMap
<>();
for
(
DailyVehicleOrderStatistics
value
:
result
)
{
Integer
branchCompanyId
=
value
.
getBranchCompanyId
();
DailyVehicleOrderStatistics
statistics
=
map
.
get
(
branchCompanyId
);
if
(
statistics
==
null
)
{
statistics
=
new
DailyVehicleOrderStatistics
();
map
.
put
(
branchCompanyId
,
statistics
);
BeanUtil
.
copyProperties
(
value
,
statistics
,
CopyOptions
.
create
().
setIgnoreNullValue
(
true
).
setIgnoreError
(
true
));
}
for
(
Map
.
Entry
<
Integer
,
DailyVehicleOrderStatistics
>
entry
:
map
.
entrySet
())
{
insertSelectiveRe
(
entry
.
getValue
());
}
}
}
/**
* 获取赔偿总额和延期总额
*/
private
Map
<
String
,
BigDecimal
>
getCompensationAndPostponeMap
(
List
<
String
>
compensationAndPostpone
)
{
if
(
CollectionUtils
.
isNotEmpty
(
compensationAndPostpone
))
{
List
<
DedDetailDTO
>
sumDedDetailDTOs
=
new
ArrayList
<>();
for
(
String
value
:
compensationAndPostpone
)
{
List
<
DedDetailDTO
>
dedDetailDTOS
=
JSON
.
parseArray
(
value
,
DedDetailDTO
.
class
);
sumDedDetailDTOs
.
addAll
(
dedDetailDTOS
);
private
List
<
DailyVehicleOrderStatistics
>
getCompensationAndPostpones
(
List
<
Map
>
list
)
{
if
(
CollectionUtils
.
isNotEmpty
(
list
))
{
//获取分公全部赔偿和延期DedDetailDTO
HashMap
<
Integer
,
List
<
DedDetailDTO
>>
map
=
new
HashMap
<>();
for
(
Map
value
:
list
)
{
if
(
value
!=
null
)
{
//获取分公司id
Integer
branchCompanyId
=
(
Integer
)
value
.
get
(
"branchCompanyId"
);
List
<
DedDetailDTO
>
strings
=
map
.
get
(
branchCompanyId
);
if
(
strings
==
null
)
{
strings
=
new
ArrayList
<
DedDetailDTO
>();
map
.
put
(
branchCompanyId
,
strings
);
}
String
str
=
(
String
)
value
.
get
(
"dedDetail"
);
if
(
StringUtils
.
isNotBlank
(
str
))
{
List
<
DedDetailDTO
>
dedDetailDTOS
=
JSON
.
parseArray
(
str
,
DedDetailDTO
.
class
);
if
(
CollectionUtils
.
isNotEmpty
(
dedDetailDTOS
))
{
strings
.
addAll
(
dedDetailDTOS
);
}
}
}
}
List
<
DailyVehicleOrderStatistics
>
result
=
new
ArrayList
<>();
if
(!
map
.
isEmpty
())
{
//获取分工对象集合
for
(
Map
.
Entry
<
Integer
,
List
<
DedDetailDTO
>>
entry
:
map
.
entrySet
())
{
DailyVehicleOrderStatistics
statistics
=
new
DailyVehicleOrderStatistics
();
//公司id添加到对象当中
statistics
.
setBranchCompanyId
(
entry
.
getKey
());
//获取公司的JSON字符串
List
<
DedDetailDTO
>
sumDedDetailDTOs
=
entry
.
getValue
();
// 获取赔偿金额总和
BigDecimal
compensation
=
get
(
sumDedDetailDTOs
,
TYPE_DAMAGE
);
BigDecimal
compensation
=
get
(
sumDedDetailDTOs
,
TYPE_DAMAGE
);
statistics
.
setCompensation
(
compensation
);
// 获取延期金额总和
BigDecimal
postpone
=
get
(
sumDedDetailDTOs
,
TYPE_DEFERRED
);
Map
<
String
,
BigDecimal
>
resultMap
=
new
HashMap
<>();
resultMap
.
put
(
"compensation"
,
compensation
);
resultMap
.
put
(
"postpone"
,
postpone
);
return
resultMap
;
BigDecimal
postpone
=
get
(
sumDedDetailDTOs
,
TYPE_DEFERRED
);
statistics
.
setPostpone
(
postpone
);
//// 其他款项总金额
// BigDecimal other = get(sumDedDetailDTOs, TYPE_OTHER);
result
.
add
(
statistics
);
}
}
return
result
;
}
return
new
HashMap
<
String
,
BigDecimal
>();
return
new
ArrayList
<
>();
}
/**
* 根据type获取对应的金额总和
*
* @param sumDedDetailDTOs
* @param
TYPE_DAMAGE
* @param
type 金额类型
* @return
*/
private
BigDecimal
get
(
List
<
DedDetailDTO
>
sumDedDetailDTOs
,
Integer
TYPE_DAMAGE
)
{
private
BigDecimal
get
(
List
<
DedDetailDTO
>
sumDedDetailDTOs
,
Integer
type
)
{
if
(
CollectionUtils
.
isNotEmpty
(
sumDedDetailDTOs
))
{
BigDecimal
aggregateAmount
=
sumDedDetailDTOs
.
stream
()
.
filter
(
d
->
TYPE_DAMAGE
.
equals
(
d
.
getType
()))
.
filter
(
d
->
type
.
equals
(
d
.
getType
()))
.
map
(
DedDetailDTO:
:
getCost
)
.
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
return
aggregateAmount
;
}
return
null
;
return
BigDecimal
.
ZERO
;
}
...
...
@@ -108,7 +188,7 @@ public class DailyVehicleOrderStatisticsBiz extends BaseBiz<DailyVehicleOrderSta
return
mapper
.
insertSelective
(
entity
);
}
public
OrderStatistics
findAll
()
{
return
mapper
.
monthOrderTotal
();
public
OrderStatistics
findAll
(
Integer
companyId
)
{
return
mapper
.
monthOrderTotal
(
companyId
);
}
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/mapper/DailyMembersOrderStatisticsMapper.java
View file @
2406200c
package
com
.
xxfc
.
platform
.
order
.
mapper
;
import
com.xxfc.platform.order.entity.DailyMembersOrderStatistics
;
import
com.xxfc.platform.order.entity.OrderStatistics
;
import
tk.mybatis.mapper.common.Mapper
;
import
java.util.Map
;
...
...
@@ -13,4 +14,6 @@ public interface DailyMembersOrderStatisticsMapper extends Mapper<DailyMembersOr
Map
<
String
,
Object
>
getTravelGmv
();
OrderStatistics
monthOrderTotal
(
Integer
companyId
);
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/mapper/DailyTravelOrderStatisticsMapper.java
View file @
2406200c
package
com
.
xxfc
.
platform
.
order
.
mapper
;
import
com.xxfc.platform.order.entity.DailyTravelOrderStatistics
;
import
org.springframework.stereotype.Repository
;
import
com.xxfc.platform.order.entity.OrderStatistics
;
import
tk.mybatis.mapper.common.Mapper
;
import
java.math.BigDecimal
;
import
java.util.List
;
import
java.util.Map
;
/**
...
...
@@ -13,7 +14,9 @@ import java.util.Map;
public
interface
DailyTravelOrderStatisticsMapper
extends
Mapper
<
DailyTravelOrderStatistics
>
{
Map
<
String
,
Object
>
getTravelGmv
();
List
<
DailyTravelOrderStatistics
>
getTravelGmv
();
BigDecimal
getTravelPenalSum
();
List
<
DailyTravelOrderStatistics
>
getTravelPenalSum
();
OrderStatistics
monthOrderTotal
(
Integer
branchCompanyId
);
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/mapper/DailyVehicleOrderStatisticsMapper.java
View file @
2406200c
...
...
@@ -14,15 +14,15 @@ import java.util.Map;
*/
public
interface
DailyVehicleOrderStatisticsMapper
extends
Mapper
<
DailyVehicleOrderStatistics
>
{
Map
<
String
,
BigDecimal
>
getGmvAndMarginTotal
();
List
<
DailyVehicleOrderStatistics
>
getGmvAndMarginTotal
();
List
<
String
>
getCompensationAndPostpone
();
List
<
Map
>
getCompensationAndPostpone
();
BigDecimal
getPenalSum
();
List
<
DailyVehicleOrderStatistics
>
getPenalSum
();
BigDecimal
getRefundSecurityDeposit
();
List
<
DailyVehicleOrderStatistics
>
getRefundSecurityDeposit
();
BigDecimal
getViolationMoney
();
List
<
DailyVehicleOrderStatistics
>
getViolationMoney
();
OrderStatistics
monthOrderTotal
();
OrderStatistics
monthOrderTotal
(
Integer
companyId
);
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/background/OrderStatisticsController.java
View file @
2406200c
package
com
.
xxfc
.
platform
.
order
.
rest
.
background
;
import
com.github.wxiaoqi.security.admin.feign.UserFeign
;
import
com.github.wxiaoqi.security.admin.feign.dto.UserDTO
;
import
com.github.wxiaoqi.security.auth.client.config.UserAuthConfig
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.rest.BaseController
;
import
com.github.wxiaoqi.security.common.util.process.ResultCode
;
...
...
@@ -21,8 +25,24 @@ import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping
(
"orderStatisticsA"
)
public
class
OrderStatisticsController
extends
BaseController
<
OrderStatisticsBiz
,
OrderStatistics
>
{
@Autowired
private
UserFeign
userFeign
;
@Autowired
private
UserAuthConfig
userAuthConfig
;
/**
* 租车订单
*/
private
final
Integer
TYEP_VEHICLE
=
1
;
/**
* 旅游订单
*/
private
final
Integer
TYEP_TOUR
=
2
;
/**
* 购买会员订单
*/
private
final
Integer
TYEP_MEMBER
=
3
;
@Autowired
...
...
@@ -38,16 +58,22 @@ public class OrderStatisticsController extends BaseController<OrderStatisticsBiz
@ApiOperation
(
"获取订单统计数据"
)
@GetMapping
(
"/findAll/{type}"
)
public
ObjectRestResponse
findAll
(
@PathVariable
Integer
type
)
{
ObjectRestResponse
<
UserDTO
>
userDTOObjectRestResponse
=
userFeign
.
userinfoByToken
(
userAuthConfig
.
getToken
(
getRequest
()));
if
(
userDTOObjectRestResponse
==
null
||
userDTOObjectRestResponse
.
getData
()==
null
)
{
throw
new
BaseException
(
"请登录!"
);
}
UserDTO
user
=
userDTOObjectRestResponse
.
getData
();
Integer
companyId
=
user
.
getCompanyId
();
if
(
TYEP_VEHICLE
.
equals
(
type
))
{
vehicleBiz
.
findAll
(
);
return
ObjectRestResponse
.
succ
(
vehicleBiz
.
findAll
(
companyId
)
);
}
if
(
TYEP_TOUR
.
equals
(
type
))
{
TravelBiz
.
findAll
(
);
return
ObjectRestResponse
.
succ
(
TravelBiz
.
findAll
(
companyId
)
);
}
// if (TYEP_MEMBER.equals(type)) {
// membersBiz.findAll();
// }
return
ObjectRestResponse
.
createFailedResult
(
ResultCode
.
FAILED_CODE
,
"属性不能为空!"
);
if
(
TYEP_MEMBER
.
equals
(
type
))
{
return
ObjectRestResponse
.
succ
(
membersBiz
.
findAll
(
companyId
));
}
return
ObjectRestResponse
.
createFailedResult
(
ResultCode
.
FAILED_CODE
,
"参数为空!"
);
}
}
xx-order/xx-order-server/src/main/resources/mapper/DailyMembersOrderStatisticsMapper.xml
View file @
2406200c
...
...
@@ -2,7 +2,7 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.xxfc.platform.order.mapper.DailyMembersOrderStatisticsMapper"
>
<!-- 获取
每日租车订单成交金和押金总额
-->
<!-- 获取
会员订单成交金
-->
<select
id=
"getTravelGmv"
resultType=
"HashMap"
>
select
COALESCE(date_format(FROM_UNIXTIME(pay_time/1000),'%Y-%c-%d'),date(DATE_SUB(now(),interval 1 day))) as oneDay,
...
...
@@ -14,4 +14,16 @@
AND
date(FROM_UNIXTIME(pay_time/1000))=date(DATE_SUB(now(),interval 1 day))
</select>
<select
id=
"monthOrderTotal"
resultType=
"com.xxfc.platform.order.entity.OrderStatistics"
>
SELECT
branch_company_id as branchCompanyId,
IFNULL(sum(gmv),0) as totalGmv
FROM
daily_travel_order_statistics
WHERE
branch_company_id =#{companyId}
and
DATE_FORMAT(one_day,'%Y-%c')=DATE_FORMAT(DATE_SUB(NOW(),INTERVAL 1 DAY),'%Y-%c')
</select>
</mapper>
\ No newline at end of file
xx-order/xx-order-server/src/main/resources/mapper/DailyTravelOrderStatisticsMapper.xml
View file @
2406200c
...
...
@@ -2,29 +2,41 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.xxfc.platform.order.mapper.DailyTravelOrderStatisticsMapper"
>
<!-- 获取
每日租车订单成交金和押金总额
-->
<select
id=
"getTravelGmv"
resultType=
"
HashMap
"
>
<!-- 获取
旅游订单成交金
-->
<select
id=
"getTravelGmv"
resultType=
"
list
"
>
select
COALESCE(date_format(FROM_UNIXTIME(pay_time/1000),'%Y-%c-%d'),date(DATE_SUB(now(),interval 1 day))) as oneDay,
IFNULL(SUM(real_amount),0) as gmv
t.start_company_id as branchCompanyId,
COALESCE(date_format(FROM_UNIXTIME(o.pay_time/1000),'%Y-%c-%d'),date(DATE_SUB(now(),interval 1 day))) as oneDay,
IFNULL(SUM(o.real_amount),0) as gmv
from
base_order
base_order o
left join
order_tour_detail t
on
o.id=t.order_id
where
type=2
AND
date(FROM_UNIXTIME(pay_time/1000))=date(DATE_SUB(now(),interval 1 day))
and
date(FROM_UNIXTIME(o.pay_time/1000))=date(DATE_SUB(now(),interval 1 day))
group by
t.start_company_id
</select>
<!-- 取消订单扣除款项总和-->
<select
id=
"getTravelPenalSum"
resultType=
"
BigDecimal
"
>
<select
id=
"getTravelPenalSum"
resultType=
"
list
"
>
SELECT
t.start_company_id as branchCompanyId,
IFNULL(SUM(r.deduct_amount),0) as penalSum
FROM
base_order o
left join
order_refund r
left join
base_order o
on
o.id=r.order_id
left join
order_tour_detail t
on
o.id=t.order_id
WHERE
o.type=2
and
...
...
@@ -33,5 +45,20 @@
r.refund_type =1
and
date(FROM_UNIXTIME(r.refund_time/1000))=date(DATE_SUB(now(),interval 1 day))
group by
t.start_company_id
</select>
<select
id=
"monthOrderTotal"
resultType=
"com.xxfc.platform.order.entity.OrderStatistics"
>
SELECT
branch_company_id as branchCompanyId,
IFNULL(sum(gmv),0) as totalGmv,
IFNULL(sum(penal_sum) ,0) as totalPenalSum
FROM
daily_travel_order_statistics
WHERE
branch_company_id =#{branchCompanyId}
AND
DATE_FORMAT(one_day,'%Y-%c')=DATE_FORMAT(DATE_SUB(NOW(),INTERVAL 1 DAY),'%Y-%c')
</select>
</mapper>
\ No newline at end of file
xx-order/xx-order-server/src/main/resources/mapper/DailyVehicleOrderStatisticsMapper.xml
View file @
2406200c
...
...
@@ -3,123 +3,155 @@
<mapper
namespace=
"com.xxfc.platform.order.mapper.DailyVehicleOrderStatisticsMapper"
>
<!-- 获取每日租车订单成交金和押金总额-->
<select
id=
"getGmvAndMarginTotal"
resultType=
"HashMap"
>
select
<select
id=
"getGmvAndMarginTotal"
resultType=
"List"
>
SELECT
v.start_company_id AS branchCompanyId,
COALESCE(date_format(FROM_UNIXTIME(b.pay_time/1000),'%Y-%c-%d'),date(DATE_SUB(now(),interval 1 day))) as oneDay,
IFNULL(SUM(b.real_amount-v.deposit),0)
as
gmv,
IFNULL(SUM(v.deposit),0)
as
securityDeposit
from
IFNULL(SUM(b.real_amount-v.deposit),0)
AS
gmv,
IFNULL(SUM(v.deposit),0)
AS
securityDeposit
FROM
base_order b
left join
LEFT JOIN
order_rent_vehicle_detail v
on
ON
b.id=v.order_id
where
WHERE
b.type=1
AND
date(FROM_UNIXTIME(b.pay_time/1000))=date(DATE_SUB(now(),interval 1 day))
DATE(FROM_UNIXTIME(b.pay_time/1000))=DATE(DATE_SUB(now(),INTERVAL 1 DAY))
GROUP BY
v.start_company_id
</select>
<!-- 退还押金总额-->
<select
id=
"getRefundSecurityDeposit"
resultType=
"
BigDecimal
"
>
<select
id=
"getRefundSecurityDeposit"
resultType=
"
List
"
>
SELECT
IFNULL(SUM(r.refund_amount),0) as refundSecurityDeposit
v.start_company_id AS branchCompanyId,
IFNULL(SUM(r.refund_amount),0) AS refundSecurityDeposit
FROM
base_order o
left join
LEFT JOIN
order_refund r
on
ON
o.id=r.order_id
LEFT JOIN
order_rent_vehicle_detail v
ON
v.order_id=o.id
WHERE
o.type=1
and
AND
r.refund_status=1
and
AND
r.refund_type >1
and
date(FROM_UNIXTIME(r.refund_time/1000))=date(DATE_SUB(now(),interval 1 day))
AND
DATE(FROM_UNIXTIME(r.refund_time/1000))=DATE(DATE_SUB(now(),INTERVAL 1 DAY))
GROUP BY
v.start_company_id
</select>
<!-- 取消订单扣除款项总和-->
<select
id=
"getPenalSum"
resultType=
"
BigDecimal
"
>
<select
id=
"getPenalSum"
resultType=
"
List
"
>
SELECT
v.start_company_id as branchCompanyId,
IFNULL(SUM(r.deduct_amount),0) as penalSum
FROM
base_order o
left join
order_refund r
on
LEFT JOIN
base_order o
ON
o.id=r.order_id
LEFT JOIN
order_rent_vehicle_detail v
ON
v.order_id=o.id
WHERE
o.type=1
and
AND
r.refund_status=1
and
AND
r.refund_type =1
and
AND
date(FROM_UNIXTIME(r.refund_time/1000))=date(DATE_SUB(now(),interval 1 day))
GROUP BY
v.start_company_id
</select>
<!-- 获取赔偿和延期JSON字符串-->
<select
id=
"getCompensationAndPostpone"
resultType=
"List"
>
SELECT
ded_detail
v.start_company_id AS branchCompanyId,
c.ded_detail AS dedDetail
FROM
order_refund r
LEFT JOIN
order_vehicle_crosstown c
on
r.order_id = c.order_id
LEFT JOIN
order_rent_vehicle_detail v
ON
r.order_id=v.order_id
WHERE
r.refund_status=1
and
r.refund_type = 3
and
c.type=
2
c.type=
3
and
date(FROM_UNIXTIME(refund_time/1000))=date(DATE_SUB(now(),interval 1 day))
order by v.start_company_id asc
</select>
<select
id=
"getViolationMoney"
resultType=
"BigDecimal"
>
<!--违章-->
<select
id=
"getViolationMoney"
resultType=
"List"
>
SELECT
v.price
d.start_company_id AS branchCompanyId,
v.price as violationMoney
FROM
order_refund r
left
JOIN
LEFT
JOIN
base_order o
on
o.id=r.order_
id
r.order_id= o.
id
LEFT JOIN
order_rent_vehicle_detail d
on
o.id
= d.order_id
left join
r.order_id
= d.order_id
left join
order_violation v
on
d.id = v.detail_id
WHERE
o.type=1
and
r.refund_status=1
and
r.refund_type = 4
and
date(FROM_UNIXTIME(r.refund_time/1000))=date(DATE_SUB(now(),interval 1 day))
GROUP BY
d.start_company_id
</select>
<select
id=
"monthOrderTotal"
resultType=
"com.xxfc.platform.order.entity.OrderStatistics"
>
SELECT
sum(gmv) as totalGmv,
sum(security_deposit) totalSecurityDeposit
sum(refund_security_deposit) totalRefundSecurityDeposit,
sum(compensation) totalCompensation,
sum(forfeit) totalForfeit,
sum(penal_sum) totalPenalSum,
sum(postpone) totalPostpone,
branch_company_id as branchCompanyId,
IFNULL(sum(gmv),0) as totalGmv,
IFNULL(sum(security_deposit),0) as totalSecurityDeposit,
IFNULL(sum(refund_security_deposit) ,0) as totalRefundSecurityDeposit,
IFNULL(sum(compensation) ,0) as totalCompensation,
IFNULL(sum(forfeit) ,0) as totalForfeit,
IFNULL(sum(penal_sum) ,0) as totalPenalSum,
IFNULL(sum(postpone) ,0) as totalPostpone
FROM
daily_vehicle_order_statistics
WHERE
DATE_FORMAT(crt_time,'%d')=DATE_FORMAT(NOW(),'%d')
branch_company_id =#{companyId}
and
DATE_FORMAT(one_day,'%Y-%c')=DATE_FORMAT(DATE_SUB(NOW(),INTERVAL 1 DAY),'%Y-%c')
</select>
</mapper>
\ No newline at end of file
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/rest/VehicleModelController.java
View file @
2406200c
...
...
@@ -272,7 +272,6 @@ public class VehicleModelController extends BaseController<VehicleModelBiz, Vehi
vehicleCata
.
setVehicleModelId
(
id
);
vehicleCata
.
setIsdel
(
1
);
vehicleCataBiz
.
updateIsdalByVehicleModelId
(
vehicleCata
);
return
ObjectRestResponse
.
succ
();
}
...
...
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