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
a6184545
Commit
a6184545
authored
Sep 17, 2019
by
hezhen
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' of
http://113.105.137.151:22280/youjj/cloud-platform
into dev
parents
2c532d49
bbe73255
Changes
53
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
53 changed files
with
1356 additions
and
435 deletions
+1356
-435
UserFeign.java
...va/com/github/wxiaoqi/security/admin/feign/UserFeign.java
+2
-0
AppUserLoginBiz.java
...om/github/wxiaoqi/security/admin/biz/AppUserLoginBiz.java
+69
-51
AppUserLoginMapper.java
...hub/wxiaoqi/security/admin/mapper/AppUserLoginMapper.java
+3
-0
AppUserController.java
...github/wxiaoqi/security/admin/rest/AppUserController.java
+9
-0
AppUserLoginMapper.xml
...ce-admin/src/main/resources/mapper/AppUserLoginMapper.xml
+13
-2
CampsiteShopMapper.xml
...e-server/src/main/resources/mapper/CampsiteShopMapper.xml
+1
-1
OrderCostEnum.java
.../xxfc/platform/order/contant/enumerate/OrderCostEnum.java
+10
-5
BaseOrder.java
...c/main/java/com/xxfc/platform/order/entity/BaseOrder.java
+2
-2
DailyOrderStatistics.java
.../com/xxfc/platform/order/entity/DailyOrderStatistics.java
+4
-1
DailyTravelOrderStatistics.java
...xfc/platform/order/entity/DailyTravelOrderStatistics.java
+9
-3
DailyVehicleOrderStatistics.java
...fc/platform/order/entity/DailyVehicleOrderStatistics.java
+18
-11
OrderRentVehicleDetail.java
...om/xxfc/platform/order/entity/OrderRentVehicleDetail.java
+4
-0
OrderStatistics.java
.../java/com/xxfc/platform/order/entity/OrderStatistics.java
+27
-17
OrderTourDetail.java
.../java/com/xxfc/platform/order/entity/OrderTourDetail.java
+4
-0
HomePageOrderData.java
.../java/com/xxfc/platform/order/pojo/HomePageOrderData.java
+23
-0
OrderAccountDTO.java
...com/xxfc/platform/order/pojo/account/OrderAccountDTO.java
+18
-0
OrderAccountDetail.java
.../xxfc/platform/order/pojo/account/OrderAccountDetail.java
+2
-2
InProgressVO.java
.../com/xxfc/platform/order/pojo/calculate/InProgressVO.java
+5
-0
OrderListVo.java
.../java/com/xxfc/platform/order/pojo/order/OrderListVo.java
+1
-0
CancelNoStartVO.java
...a/com/xxfc/platform/order/pojo/price/CancelNoStartVO.java
+24
-0
CancelStartedVO.java
...a/com/xxfc/platform/order/pojo/price/CancelStartedVO.java
+48
-0
CostDetailExtend.java
.../com/xxfc/platform/order/pojo/price/CostDetailExtend.java
+19
-0
OrderPriceVO.java
...java/com/xxfc/platform/order/pojo/price/OrderPriceVO.java
+1
-1
BaseOrderBiz.java
...c/main/java/com/xxfc/platform/order/biz/BaseOrderBiz.java
+11
-8
DailyMembersOrderStatisticsBiz.java
...fc/platform/order/biz/DailyMembersOrderStatisticsBiz.java
+60
-20
DailyOrderStatisticsBiz.java
.../com/xxfc/platform/order/biz/DailyOrderStatisticsBiz.java
+3
-3
DailyTravelOrderStatisticsBiz.java
...xfc/platform/order/biz/DailyTravelOrderStatisticsBiz.java
+243
-36
DailyVehicleOrderStatisticsBiz.java
...fc/platform/order/biz/DailyVehicleOrderStatisticsBiz.java
+383
-132
OrderAccountBiz.java
...ain/java/com/xxfc/platform/order/biz/OrderAccountBiz.java
+30
-5
OrderStatisticsBiz.java
.../java/com/xxfc/platform/order/biz/OrderStatisticsBiz.java
+27
-14
OrderTemplateBiz.java
...in/java/com/xxfc/platform/order/biz/OrderTemplateBiz.java
+31
-0
OrderTourVerificationBiz.java
...com/xxfc/platform/order/biz/OrderTourVerificationBiz.java
+1
-1
OrderVehicleCrosstownBiz.java
...com/xxfc/platform/order/biz/OrderVehicleCrosstownBiz.java
+16
-12
OrderCalculateBiz.java
.../com/xxfc/platform/order/biz/inner/OrderCalculateBiz.java
+5
-1
OrderCancelBiz.java
...ava/com/xxfc/platform/order/biz/inner/OrderCancelBiz.java
+60
-3
OrderAccountMapper.java
...va/com/xxfc/platform/order/mapper/OrderAccountMapper.java
+7
-1
BackStageOrderController.java
...om/xxfc/platform/order/rest/BackStageOrderController.java
+10
-6
BaseOrderController.java
...ava/com/xxfc/platform/order/rest/BaseOrderController.java
+11
-0
OrderStatisticsController.java
...form/order/rest/background/OrderStatisticsController.java
+19
-3
OrderRentVehicleService.java
.../xxfc/platform/order/service/OrderRentVehicleService.java
+5
-7
OrderTourService.java
...ava/com/xxfc/platform/order/service/OrderTourService.java
+1
-3
BaseOrderMapper.xml
...rder-server/src/main/resources/mapper/BaseOrderMapper.xml
+11
-4
DailyMembersOrderStatisticsMapper.xml
...in/resources/mapper/DailyMembersOrderStatisticsMapper.xml
+3
-14
DailyTravelOrderStatisticsMapper.xml
...ain/resources/mapper/DailyTravelOrderStatisticsMapper.xml
+5
-16
DailyVehicleOrderStatisticsMapper.xml
...in/resources/mapper/DailyVehicleOrderStatisticsMapper.xml
+9
-23
OrderAccountMapper.xml
...r-server/src/main/resources/mapper/OrderAccountMapper.xml
+29
-0
OrderVehicaleCrosstownMapper.xml
...rc/main/resources/mapper/OrderVehicaleCrosstownMapper.xml
+7
-6
VehicleFeign.java
...in/java/com/xxfc/platform/vehicle/feign/VehicleFeign.java
+3
-0
VehicleActiveService.java
...a/com/xxfc/platform/vehicle/biz/VehicleActiveService.java
+17
-20
VehicleBiz.java
...c/main/java/com/xxfc/platform/vehicle/biz/VehicleBiz.java
+21
-0
VehicleController.java
...ava/com/xxfc/platform/vehicle/rest/VehicleController.java
+6
-1
VehicleBookRecordMapper.xml
...ver/src/main/resources/mapper/VehicleBookRecordMapper.xml
+3
-0
VehicleMapper.xml
...ehicle-server/src/main/resources/mapper/VehicleMapper.xml
+3
-0
No files found.
ace-modules/ace-admin-api/src/main/java/com/github/wxiaoqi/security/admin/feign/UserFeign.java
View file @
a6184545
...
...
@@ -118,6 +118,8 @@ public interface UserFeign {
@GetMapping
(
"/app/user/one"
)
public
AppUserLogin
one
(
@RequestParam
(
value
=
"username"
)
String
username
);
@GetMapping
(
"/app/user/getOne"
)
public
List
<
AppUserLogin
>
getOne
(
@RequestParam
(
value
=
"username"
)
String
username
,
@RequestParam
(
value
=
"realName"
)
String
realName
);
@GetMapping
(
"/api/app/imi/{imiId}"
)
ImiVo
findUserInfoByImiId
(
@PathVariable
(
value
=
"imiId"
)
Integer
imiId
);
...
...
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/biz/AppUserLoginBiz.java
View file @
a6184545
This diff is collapsed.
Click to expand it.
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/mapper/AppUserLoginMapper.java
View file @
a6184545
...
...
@@ -28,4 +28,7 @@ public interface AppUserLoginMapper extends Mapper<AppUserLogin>, SelectByIdList
List
<
Integer
>
selectAllExistUserIds
();
List
<
AppUserLogin
>
getUserByUsernameAndRealName
(
@Param
(
"username"
)
String
username
,
@Param
(
"realName"
)
String
realName
);
}
\ No newline at end of file
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/rest/AppUserController.java
View file @
a6184545
...
...
@@ -262,6 +262,15 @@ public class AppUserController extends CommonBaseController{
return
appUserLoginBiz
.
getUserByUsername
(
username
);
}
/**
* 根据用户真实姓名和手机号模糊查询寻用户
* @param username
* @return
*/
@GetMapping
(
"/getOne"
)
public
List
<
AppUserLogin
>
getOne
(
@RequestParam
(
value
=
"username"
,
required
=
false
)
String
username
,
@RequestParam
(
value
=
"realName"
,
required
=
false
)
String
realName
){
return
appUserLoginBiz
.
getUserByUsernameAndRealName
(
username
,
realName
);
}
@GetMapping
(
"/findusersByIds"
)
public
Map
<
Integer
,
AppUserLogin
>
findAppUsersByUserIds
(
@RequestParam
(
value
=
"userIds"
)
List
<
Integer
>
userIds
){
return
appUserLoginBiz
.
findUserIdAndUserLoginMapByMemberIds
(
userIds
);
...
...
ace-modules/ace-admin/src/main/resources/mapper/AppUserLoginMapper.xml
View file @
a6184545
...
...
@@ -5,10 +5,10 @@
<select
id=
"selectbyPhones"
resultType=
"com.github.wxiaoqi.security.admin.entity.AppUserLogin"
>
select `id`,`username` from `app_user_login` where `username` in
<foreach
collection=
"phones"
item=
"phone"
open=
"("
close=
")"
separator=
","
>
#{phone}
#{phone}
</foreach>
</select>
<update
id=
"bindOpenId"
parameterType=
"com.github.wxiaoqi.security.admin.entity.AppUserLogin"
>
UPDATE app_user_login SET wx_openid=#{wxOpenid},unionid=#{unionid},openid=#{openid} where id=#{id}
</update>
...
...
@@ -16,4 +16,15 @@
<select
id=
"selectAllExistUserIds"
resultType=
"integer"
>
SELECT `id` FROM `app_user_login` WHERE `isdel`=0;
</select>
<select
id=
"getUserByUsernameAndRealName"
resultType=
"com.github.wxiaoqi.security.admin.entity.AppUserLogin"
>
select l.* from app_user_login l left join app_user_detail d on l.id=d.userid where 1=1
<if
test=
"username!=null "
>
and l.username like concat('%',#{username},'%')
</if>
<if
test=
"realName !=null"
>
and d.realname like concat('%',#{realName},'%')
</if>
</select>
</mapper>
\ No newline at end of file
xx-campsite/xx-campsite-server/src/main/resources/mapper/CampsiteShopMapper.xml
View file @
a6184545
...
...
@@ -69,7 +69,7 @@
and `city`=#{cityCode}
</if>
GROUP BY cs.id
order by
`hot`DESC,`crt_time`
DESC
order by
cs.hot DESC,cs.crt_time
DESC
</select>
<!--首页查询全部-->
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/contant/enumerate/OrderCostEnum.java
View file @
a6184545
...
...
@@ -4,12 +4,17 @@ import java.util.HashMap;
import
java.util.Map
;
public
enum
OrderCostEnum
{
RentVehicle
(
1
,
"租车费用明细"
),
RENT_VEHICLE
(
"01"
,
"租车费用明细"
),
TOUR
(
"02"
,
"旅游费用明细"
),
CANCEL_NO_START
(
"03"
,
"取消违约金明细"
),
CANCEL_STARTED
(
"04"
,
"取消费用明细"
),
FINLISH_ADVANCE
(
"05"
,
"租车费用明细"
),
FINLISH_DELAY
(
"06"
,
"租车费用明细"
),
;
/**
* 编码
*/
private
Integer
code
;
private
String
code
;
/**
* 类型描述
*/
...
...
@@ -17,16 +22,16 @@ public enum OrderCostEnum {
private
static
Map
<
Integer
,
String
>
codeAndDesc
=
new
HashMap
<
Integer
,
String
>();
OrderCostEnum
(
Integer
code
,
String
desc
){
OrderCostEnum
(
String
code
,
String
desc
){
this
.
code
=
code
;
this
.
desc
=
desc
;
}
public
Integer
getCode
()
{
public
String
getCode
()
{
return
code
;
}
public
void
setCode
(
Integer
code
)
{
public
void
setCode
(
String
code
)
{
this
.
code
=
code
;
}
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/BaseOrder.java
View file @
a6184545
...
...
@@ -78,10 +78,10 @@ public class BaseOrder implements Serializable {
private
BigDecimal
goodsAmount
;
/**
* 订单
价格
* 订单
总金额
*/
@Column
(
name
=
"order_amount"
)
@ApiModelProperty
(
value
=
"订单
价格
"
)
@ApiModelProperty
(
value
=
"订单
总金额
"
)
private
BigDecimal
orderAmount
;
/**
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/DailyOrderStatistics.java
View file @
a6184545
...
...
@@ -7,6 +7,7 @@ import org.springframework.format.annotation.DateTimeFormat;
import
javax.persistence.Column
;
import
javax.persistence.GeneratedValue
;
import
javax.persistence.Id
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
...
...
@@ -15,7 +16,9 @@ import java.util.Date;
* @author Administrator
*/
@Data
public
class
DailyOrderStatistics
{
public
class
DailyOrderStatistics
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
@Id
@GeneratedValue
(
generator
=
"JDBC"
)
private
Integer
id
;
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/DailyTravelOrderStatistics.java
View file @
a6184545
...
...
@@ -13,9 +13,15 @@ import java.math.BigDecimal;
@Data
@Table
(
name
=
"daily_travel_order_statistics"
)
public
class
DailyTravelOrderStatistics
extends
DailyOrderStatistics
{
/**
* 违约总额
*/
@Column
(
name
=
"default_money "
)
private
BigDecimal
defaultMoney
;
/**
*
取消订单总
额
*
退还订单金
额
*/
@Column
(
name
=
"
penal_sum
"
)
private
BigDecimal
penalSum
;
@Column
(
name
=
"
return_gmv
"
)
private
BigDecimal
returnGmv
;
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/DailyVehicleOrderStatistics.java
View file @
a6184545
...
...
@@ -17,27 +17,28 @@ import java.util.Date;
/**
* 每日租车订单统计
*
* @author Administrator
*/
@Data
@Table
(
name
=
"daily_vehicle_order_statistics"
)
public
class
DailyVehicleOrderStatistics
extends
DailyOrderStatistics
{
public
class
DailyVehicleOrderStatistics
extends
DailyOrderStatistics
{
/**
* 预交押金总额
*/
@Column
(
name
=
"security_deposit"
)
private
BigDecimal
securityDeposit
;
private
BigDecimal
securityDeposit
;
/**
* 退还押金总额
*/
@Column
(
name
=
"refund_security_deposit"
)
private
BigDecimal
refundSecurityDeposit
;
private
BigDecimal
refundSecurityDeposit
;
/**
* 赔偿总额
*
损坏
赔偿总额
*/
@Column
(
name
=
"compensation"
)
private
BigDecimal
compensation
;
...
...
@@ -46,19 +47,25 @@ public class DailyVehicleOrderStatistics extends DailyOrderStatistics{
* 违章总额
*/
@Column
(
name
=
"forfeit"
)
private
BigDecimal
violationMoney
;
private
BigDecimal
violationMoney
;
/**
*
延期总
额
*
退还订单金
额
*/
@Column
(
name
=
"
postpone
"
)
private
BigDecimal
postpone
;
@Column
(
name
=
"
return_gmv
"
)
private
BigDecimal
returnGmv
;
/**
*
取消订单扣款
总额
*
违约
总额
*/
@Column
(
name
=
"penal_sum"
)
private
BigDecimal
penalSum
;
@Column
(
name
=
"default_money "
)
private
BigDecimal
defaultMoney
;
/**
* 消费金总额
*/
@Column
(
name
=
"total_expenditure"
)
private
BigDecimal
totalExpenditure
;
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderRentVehicleDetail.java
View file @
a6184545
...
...
@@ -323,4 +323,8 @@ public class OrderRentVehicleDetail implements Serializable {
@Column
(
name
=
"used_day"
)
Integer
usedDay
;
@Column
(
name
=
"cost_detail_extend"
)
@ApiModelProperty
(
value
=
"费用其他明细 type:1--取消违约金;2--取消费用明细;3--提前还车费用明细;4--延期还车费用明细"
)
private
String
costDetailExtend
;
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderStatistics.java
View file @
a6184545
...
...
@@ -12,48 +12,58 @@ import java.math.BigDecimal;
*/
@Data
@ApiModel
(
value
=
"
月
订单统计实体"
)
@ApiModel
(
value
=
"
历史
订单统计实体"
)
public
class
OrderStatistics
{
/**
*
月成
交总金额
*
历史
交总金额
*/
@ApiModelProperty
(
value
=
"
月成
交总金额"
)
@ApiModelProperty
(
value
=
"
历史
交总金额"
)
private
BigDecimal
totalGmv
;
/**
*
月
押金总额
*
历史
押金总额
*/
@ApiModelProperty
(
value
=
"
月
押金总额"
)
@ApiModelProperty
(
value
=
"
历史
押金总额"
)
private
BigDecimal
totalSecurityDeposit
;
/**
*
月
退还押金总额
*
历史
退还押金总额
*/
@ApiModelProperty
(
value
=
"
月
退还押金总额"
)
@ApiModelProperty
(
value
=
"
历史
退还押金总额"
)
private
BigDecimal
totalRefundSecurityDeposit
;
/**
*
月
赔偿总额
*
历史
赔偿总额
*/
@ApiModelProperty
(
value
=
"
月
赔偿总额"
)
@ApiModelProperty
(
value
=
"
历史
赔偿总额"
)
private
BigDecimal
totalCompensation
;
/**
*
月
违章总额
*
历史
违章总额
*/
@ApiModelProperty
(
value
=
"
月
违章总额"
)
@ApiModelProperty
(
value
=
"
历史
违章总额"
)
private
BigDecimal
totalForfeit
;
/**
* 历史订单退款
*/
@ApiModelProperty
(
value
=
"历史订单退款"
)
private
BigDecimal
totalReturnGmv
;
/**
*
月取消订单
扣款总额
*
历史延期
扣款总额
*/
@ApiModelProperty
(
value
=
"
月取消订单
扣款总额"
)
private
BigDecimal
total
PenalSum
;
@ApiModelProperty
(
value
=
"
历史延期
扣款总额"
)
private
BigDecimal
total
DefaultMoney
;
/**
*
月延期扣款
总额
*
历史实际消费
总额
*/
@ApiModelProperty
(
value
=
"
月延期扣款
总额"
)
private
BigDecimal
total
Postpon
e
;
@ApiModelProperty
(
value
=
"
实际消费
总额"
)
private
BigDecimal
total
Expenditur
e
;
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderTourDetail.java
View file @
a6184545
...
...
@@ -245,6 +245,10 @@ public class OrderTourDetail implements Serializable {
@ApiModelProperty
(
value
=
"是否省外 1--省外;0--省内"
)
private
Integer
isOutside
;
@Column
(
name
=
"cost_detail_extend"
)
@ApiModelProperty
(
value
=
"费用其他明细 type:1--取消违约金;2--取消费用明细;3--提前还车费用明细;4--延期还车费用明细"
)
private
String
costDetailExtend
;
@Transient
private
List
<
TourUser
>
userVoList
;
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/HomePageOrderData.java
0 → 100644
View file @
a6184545
package
com
.
xxfc
.
platform
.
order
.
pojo
;
import
lombok.Data
;
import
java.math.BigDecimal
;
@Data
public
class
HomePageOrderData
{
/**
* 订单总额
*/
private
BigDecimal
totalOrders
;
/**
* 为退还押金总额
*/
private
BigDecimal
totalOutstandingDeposit
;
/**
* 额外赔款
*/
private
BigDecimal
additionalIndemnity
;
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/account/OrderAccountDTO.java
0 → 100644
View file @
a6184545
package
com
.
xxfc
.
platform
.
order
.
pojo
.
account
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.xxfc.platform.order.entity.OrderAccount
;
import
lombok.Data
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
javax.persistence.Column
;
@Data
public
class
OrderAccountDTO
extends
OrderAccount
{
@Column
(
name
=
"companyId"
)
private
Integer
companyId
;
@Column
(
name
=
"oneDay"
)
private
String
oneDay
;
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/account/OrderAccountDetail.java
View file @
a6184545
...
...
@@ -9,7 +9,7 @@ import java.util.List;
@Data
public
class
OrderAccountDetail
{
/**
* 实际返回订单款
* 实际返回订单款
账单的的orderAmount 对应的是 订单的商品金额
*/
BigDecimal
orderAmount
;
/**
...
...
@@ -17,7 +17,7 @@ public class OrderAccountDetail {
*/
BigDecimal
depositAmount
;
/**
* 原来要返回的订单款
* 原来要返回的订单款
账单的的orderAmount 对应的是 订单的商品金额
*/
BigDecimal
originOrderAmount
;
/**
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/calculate/InProgressVO.java
View file @
a6184545
...
...
@@ -23,6 +23,11 @@ public class InProgressVO {
*/
BigDecimal
extraAmount
=
BigDecimal
.
ZERO
;
/**
* 实际消费金额
*/
BigDecimal
consumeAmount
=
BigDecimal
.
ZERO
;
/**
* 已使用天数
*/
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/order/OrderListVo.java
View file @
a6184545
...
...
@@ -30,6 +30,7 @@ public class OrderListVo extends BaseOrder {
private
String
endCompanyName
;
private
String
realName
;
/**
* 是否是用户匹配公司
*/
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/price/CancelNoStartVO.java
0 → 100644
View file @
a6184545
package
com
.
xxfc
.
platform
.
order
.
pojo
.
price
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.math.BigDecimal
;
@Data
public
class
CancelNoStartVO
extends
CostDetailExtend
{
/**
* 违约金描述
*/
private
String
violateDesc
;
/**
* 违约金额
*/
private
BigDecimal
violateAmount
=
BigDecimal
.
ZERO
;
public
CancelNoStartVO
()
{
this
.
type
=
CANCEL_NO_START
;
}
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/price/CancelStartedVO.java
0 → 100644
View file @
a6184545
package
com
.
xxfc
.
platform
.
order
.
pojo
.
price
;
import
lombok.Data
;
import
java.math.BigDecimal
;
@Data
public
class
CancelStartedVO
extends
CostDetailExtend
{
/**
* 消费金额(实际计费)
*/
private
BigDecimal
consumeAmount
;
/**
* 租车单价
*/
private
BigDecimal
modelAmount
;
/**
* 使用天数
*/
private
Integer
usedDayNum
;
/**
* 使用金额
*/
private
BigDecimal
usedAmount
;
/**
* 使用免费天数
*/
private
Integer
usedfreeDayNum
;
/**
* 使用免费金额
*/
private
BigDecimal
usedFreeAmount
;
/**
* 违约金描述
*/
private
String
violateDesc
;
/**
* 违约金金额
*/
private
BigDecimal
violateAmount
;
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/price/CostDetailExtend.java
0 → 100644
View file @
a6184545
package
com
.
xxfc
.
platform
.
order
.
pojo
.
price
;
import
lombok.Data
;
@Data
public
class
CostDetailExtend
{
public
static
final
int
CANCEL_NO_START
=
1
;
public
static
final
int
CANCEL_STARTED
=
2
;
public
static
final
int
FINLISH_ADVANCE
=
3
;
public
static
final
int
FINLISH_DELAY
=
4
;
private
String
costDetail
;
/**
* type:1--取消违约金;2--取消费用明细;3--提前还车费用明细;4--延期还车费用明细
*/
protected
Integer
type
;
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/price/OrderPriceVO.java
View file @
a6184545
...
...
@@ -7,7 +7,7 @@ import java.math.BigDecimal;
@Data
public
class
OrderPriceVO
{
@ApiModelProperty
(
value
=
"订单
价格
"
)
@ApiModelProperty
(
value
=
"订单
总金额
"
)
public
BigDecimal
orderAmount
;
@ApiModelProperty
(
value
=
"商品价格"
)
public
BigDecimal
goodsAmount
;
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/BaseOrderBiz.java
View file @
a6184545
...
...
@@ -180,7 +180,6 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> {
getDriverInfo
(
orderPageVo
);
}
else
if
(
orderPageVo
.
getStatus
()
>=
5
||
orderPageVo
.
getStatus
()
==
-
1
)
{
//出行中 已交车
//设置违约金金额
updateCrossRefund
(
orderPageVo
);
getDriverInfo
(
orderPageVo
);
getUserLicense
(
orderPageVo
);
}
...
...
@@ -261,10 +260,10 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> {
//提前的天数, 当天就算使用一天
int
noUsedDay
=
getDaysBetweenDateTime
(
nowTime
,
endTime
)
-
1
;
//退还未使用的天数,或者金额,扣除违约金,实际未使用天数的金额,最多3000元
InProgressVO
inProgressVO
=
new
InProgressVO
();
inProgressVO
.
setViolateAmount
(
new
BigDecimal
(
200
));
inProgressVO
.
setExtraAmount
(
new
BigDecimal
(
200
));
//
InProgressVO inProgressVO = orderCalculateBiz.inProgressCalculate(orderPageVO, actualDay - noUsedDay);
//
InProgressVO inProgressVO = new InProgressVO();
//
inProgressVO.setViolateAmount(new BigDecimal(200));
//
inProgressVO.setExtraAmount(new BigDecimal(200));
InProgressVO
inProgressVO
=
orderCalculateBiz
.
inProgressCalculate
(
orderPageVO
,
actualDay
-
noUsedDay
);
if
(
inProgressVO
!=
null
)
{
//消费超额金
if
(
inProgressVO
.
getExtraAmount
()
!=
null
)
{
...
...
@@ -330,7 +329,7 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> {
orderVehicleCrosstownDto
.
setLicenseName
(
orderUserLicenses
.
get
(
0
).
getLicenseName
());
orderVehicleCrosstownDto
.
setLicensePhone
(
orderUserLicenses
.
get
(
0
).
getLicensePhone
());
}
//设置
保留金
//设置
违约明细
for
(
OrderVehicleCrosstownDto
a
:
orderVehicleCrosstown
)
{
if
(
a
.
getType
()
!=
CrosstownTypeEnum
.
DEPARTURE
.
getCode
())
{
if
(
StringUtils
.
isNotBlank
(
a
.
getViolateDetail
()))
{
...
...
@@ -339,6 +338,9 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> {
}
}
}
if
(
StringUtils
.
isBlank
(
orderPageVo
.
getDedDetailDTO
()))
{
updateCrossRefund
(
orderPageVo
);
}
orderPageVo
.
setOrderVehicleCrosstownDto
(
orderVehicleCrosstownDto
);
}
...
...
@@ -433,8 +435,9 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> {
//订单账款类
OrderAccountDetail
oad
=
new
OrderAccountDetail
();
oad
.
setOriginOrderAmount
(
baseOrder
.
getRealAmount
());
oad
.
setOrderAmount
(
baseOrder
.
getRealAmount
());
oad
.
setOriginOrderAmount
(
baseOrder
.
getGoodsAmount
());
//账单的的orderAmount 对应 的是商品金额
oad
.
setOrderAmount
(
baseOrder
.
getGoodsAmount
());
//如果是会员订单,则触发会员效益
if
(
OrderTypeEnum
.
MEMBER
.
getCode
().
equals
(
baseOrder
.
getType
()))
{
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/DailyMembersOrderStatisticsBiz.java
View file @
a6184545
package
com
.
xxfc
.
platform
.
order
.
biz
;
import
cn.hutool.json.JSONUtil
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
import
com.google.common.collect.Lists
;
import
com.xxfc.platform.order.contant.enumerate.OrderTypeEnum
;
import
com.xxfc.platform.order.entity.DailyMembersOrderStatistics
;
import
com.xxfc.platform.order.entity.OrderAccount
;
import
com.xxfc.platform.order.entity.OrderStatistics
;
import
com.xxfc.platform.order.mapper.DailyMembersOrderStatisticsMapper
;
import
com.xxfc.platform.order.pojo.account.OrderAccountDTO
;
import
com.xxfc.platform.order.pojo.account.OrderAccountDetail
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.beanutils.BeanUtils
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.interceptor.TransactionAspectSupport
;
import
tk.mybatis.mapper.entity.Example
;
import
java.math.BigDecimal
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -33,31 +42,31 @@ public class DailyMembersOrderStatisticsBiz extends BaseBiz<DailyMembersOrderSta
@Value
(
"${order.day}"
)
private
Integer
day
;
/**
* 总公司id默认为1
*/
private
final
Integer
OMPANY_ID
=
1
;
@Autowired
private
OrderAccountBiz
accountBiz
;
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
boolean
memberOrderStatistics
()
{
public
boolean
saveDailyMembersOrderRecord
()
{
try
{
List
<
OrderAccountDTO
>
accountList
=
accountBiz
.
getOrderAccountByOrderType
(
OrderTypeEnum
.
MEMBER
.
getCode
(),
day
);
Map
<
String
,
Object
>
travelGmv
=
mapper
.
getTravelGmv
(
day
);
if
(
travelGmv
.
isEmpty
())
{
return
true
;
}
DailyMembersOrderStatistics
MembersStatistics
=
new
DailyMembersOrderStatistics
();
BeanUtils
.
copyProperties
(
MembersStatistics
,
travelGmv
);
String
oneDay
=
MembersStatistics
.
getOneDay
();
if
(
StringUtils
.
isBlank
(
oneDay
))
{
throw
new
BaseException
();
if
(
CollectionUtils
.
isNotEmpty
(
accountList
))
{
DailyMembersOrderStatistics
orderStatistics
=
new
DailyMembersOrderStatistics
();
ArrayList
<
OrderAccountDetail
>
orderAccountDetails
=
getOrderAccountDetail
(
accountList
);
if
(
CollectionUtils
.
isNotEmpty
(
orderAccountDetails
))
{
//获取订单总额
BigDecimal
gmv
=
getOrderAmountTotal
(
orderAccountDetails
);
orderStatistics
.
setGmv
(
gmv
);
orderStatistics
.
setBranchCompanyId
(
OMPANY_ID
);
orderStatistics
.
setOneDay
(
accountList
.
get
(
0
).
getOneDay
());
}
insertSelectiveRe
(
orderStatistics
);
}
Example
exa
=
new
Example
(
DailyMembersOrderStatistics
.
class
);
exa
.
createCriteria
().
andEqualTo
(
"oneDay"
,
oneDay
);
List
<
DailyMembersOrderStatistics
>
statistics
=
selectByExample
(
exa
);
if
(
CollectionUtils
.
isEmpty
(
statistics
))
{
insertSelective
(
MembersStatistics
);
}
return
true
;
}
catch
(
Exception
e
)
{
TransactionAspectSupport
.
currentTransactionStatus
().
setRollbackOnly
();
...
...
@@ -66,6 +75,37 @@ public class DailyMembersOrderStatisticsBiz extends BaseBiz<DailyMembersOrderSta
}
}
/**
* 获取押金和
*
* @param orderAccountDetails
* @return
*/
private
BigDecimal
getOrderAmountTotal
(
ArrayList
<
OrderAccountDetail
>
orderAccountDetails
)
{
return
orderAccountDetails
.
stream
()
.
map
(
OrderAccountDetail:
:
getOrderAmount
)
.
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
}
/**
* 获取所有订单详情数据
*
* @param orderAccountDTOS
* @return
*/
private
ArrayList
<
OrderAccountDetail
>
getOrderAccountDetail
(
List
<
OrderAccountDTO
>
orderAccountDTOS
)
{
ArrayList
<
OrderAccountDetail
>
arrayList
=
Lists
.
newArrayList
();
orderAccountDTOS
.
parallelStream
()
.
map
(
OrderAccount:
:
getAccountDetail
)
.
forEach
(
detail
->
{
if
(
StringUtils
.
isNotBlank
(
detail
))
{
arrayList
.
add
(
JSONUtil
.
toBean
(
detail
,
OrderAccountDetail
.
class
));
}
});
return
arrayList
;
}
@Override
public
int
insertSelectiveRe
(
DailyMembersOrderStatistics
entity
)
{
Date
date
=
new
Date
();
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/DailyOrderStatisticsBiz.java
View file @
a6184545
...
...
@@ -27,9 +27,9 @@ public class DailyOrderStatisticsBiz extends BaseBiz<DailyOrderStatisticsMapper,
@Scheduled
(
cron
=
"0 0 2 * * ?"
)
public
boolean
statisticalOrder
(){
boolean
vehicleFlag
=
vehicleStatisticsBiz
.
StatisticsOfCarRentalOrders
();
boolean
travelFlag
=
travelStatisticsBiz
.
StatisticsOfTravelOrders
();
boolean
membersFlag
=
membersStatisticsBiz
.
memberOrderStatistics
();
boolean
vehicleFlag
=
vehicleStatisticsBiz
.
saveDailyVehicleOrderRecord
();
boolean
travelFlag
=
travelStatisticsBiz
.
saveDailyTravelOrderRecord
();
boolean
membersFlag
=
membersStatisticsBiz
.
saveDailyMembersOrderRecord
();
if
(
vehicleFlag
&&
travelFlag
&&
membersFlag
){
log
.
info
(
"----statisticalOrder:成功-----"
);
return
true
;
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/DailyTravelOrderStatisticsBiz.java
View file @
a6184545
This diff is collapsed.
Click to expand it.
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/DailyVehicleOrderStatisticsBiz.java
View file @
a6184545
This diff is collapsed.
Click to expand it.
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderAccountBiz.java
View file @
a6184545
...
...
@@ -13,6 +13,7 @@ import com.xxfc.platform.order.biz.inner.OrderMsgBiz;
import
com.xxfc.platform.order.contant.enumerate.*
;
import
com.xxfc.platform.order.entity.*
;
import
com.xxfc.platform.order.pojo.DedDetailDTO
;
import
com.xxfc.platform.order.pojo.account.OrderAccountDTO
;
import
com.xxfc.platform.order.pojo.account.OrderAccountDeduction
;
import
com.xxfc.platform.order.pojo.account.OrderAccountDetail
;
import
com.xxfc.platform.order.pojo.mq.OrderMQDTO
;
...
...
@@ -85,17 +86,19 @@ public class OrderAccountBiz extends BaseBiz<OrderAccountMapper,OrderAccount> {
* @param timeLag 与开始时间的时间差
* @param dicParentKey
*/
public
BigDecimal
rentRefundProcessCancel
(
BaseOrder
baseOrder
,
BigDecimal
mainItemRealAmount
,
Long
timeLag
,
String
dicParentKey
,
BigDecimal
depositAmount
,
BigDecimal
originalDeductAmount
)
{
public
BigDecimal
rentRefundProcessCancel
(
BaseOrder
baseOrder
,
BigDecimal
mainItemRealAmount
,
Long
timeLag
,
String
dicParentKey
,
BigDecimal
depositAmount
,
BigDecimal
originalDeductAmount
,
OrderAccountDetail
oad
)
{
//计算退款金额
//商品价格 - 优惠券减免的价格
BigDecimal
originalRefundAmount
=
BigDecimal
.
ZERO
.
add
(
mainItemRealAmount
);
StringBuilder
refundDescBuilder
=
new
StringBuilder
(
"取消订单退款:"
);
OrderAccountDetail
oad
=
new
OrderAccountDetail
();
if
(
null
==
oad
)
{
oad
=
new
OrderAccountDetail
();
}
BigDecimal
refundMainGoodsAmount
=
calculateRefund
(
originalRefundAmount
,
timeLag
,
dicParentKey
,
refundDescBuilder
,
oad
);
refundMainGoodsAmount
=
refundMainGoodsAmount
.
setScale
(
2
,
RoundingMode
.
HALF_UP
);
//退款金额 = 主要商品退款 + (其他商品退款) 即--> 主要商品退款 + (
订单
总商品款 - 主要商品款)
oad
.
setOrderAmount
(
refundMainGoodsAmount
.
add
(
baseOrder
.
get
Order
Amount
().
subtract
(
mainItemRealAmount
)));
//退款金额 = 主要商品退款 + (其他商品退款) 即--> 主要商品退款 + (总商品款 - 主要商品款)
oad
.
setOrderAmount
(
refundMainGoodsAmount
.
add
(
baseOrder
.
get
Goods
Amount
().
subtract
(
mainItemRealAmount
)));
BigDecimal
refundAmount
=
oad
.
getOrderAmount
();
// 押金
...
...
@@ -187,7 +190,9 @@ public class OrderAccountBiz extends BaseBiz<OrderAccountMapper,OrderAccount> {
set
(
"ga"
,
goodsAmount
);
}})).
toString
());
refundDescBuilder
=
refundDescBuilder
.
insert
(
0
,
names
[
1
]+
","
);
orderAccountDetail
.
getDeductions
().
add
(
initDeduction
(
goodsAmount
.
subtract
(
refundGoodsAmount
),
names
[
1
],
DeductionTypeEnum
.
VIOLATE_CANCEL
,
OrderAccountDeduction
.
ORIGIN_DEPOSIT
));
if
(
goodsAmount
.
subtract
(
refundGoodsAmount
).
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
{
orderAccountDetail
.
getDeductions
().
add
(
initDeduction
(
goodsAmount
.
subtract
(
refundGoodsAmount
),
names
[
1
],
DeductionTypeEnum
.
VIOLATE_CANCEL
,
OrderAccountDeduction
.
ORIGIN_DEPOSIT
));
}
break
;
}
}
...
...
@@ -353,4 +358,24 @@ public class OrderAccountBiz extends BaseBiz<OrderAccountMapper,OrderAccount> {
log
.
error
(
"crosstown.getViolateDetail() crosstown id :"
+
crosstown
.
getId
()
+
" 转换失败"
);
}
}
/**
* 获取每日订单账目,用于统计
* @param code
* @param day
* @return
*/
public
List
<
OrderAccountDTO
>
getOrderAccountByOrderType
(
Integer
code
,
Integer
day
)
{
return
mapper
.
getOrderAccountByOrderType
(
code
,
day
);
}
}
\ No newline at end of file
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderStatisticsBiz.java
View file @
a6184545
package
com
.
xxfc
.
platform
.
order
.
biz
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.xxfc.platform.order.entity.OrderStatistics
;
import
com.xxfc.platform.order.mapper.OrderStatisticsMapper
;
import
com.xxfc.platform.order.pojo.HomePageOrderData
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
@@ -26,37 +28,48 @@ public class OrderStatisticsBiz extends BaseBiz<OrderStatisticsMapper, OrderStat
@Autowired
private
DailyMembersOrderStatisticsBiz
membersBiz
;
public
OrderStatistics
getTotalOrder
(
Integer
companyId
)
{
OrderStatistics
result
=
new
OrderStatistics
();
ArrayList
<
OrderStatistics
>
orderStatistics
=
new
ArrayList
<>();
public
HomePageOrderData
getTotalOrder
(
Integer
companyId
)
{
HomePageOrderData
result
=
new
HomePageOrderData
();
ArrayList
<
HomePageOrderData
>
orderStatistics
=
new
ArrayList
<>();
OrderStatistics
vehicle
=
vehicleBiz
.
findAll
(
companyId
);
if
(
vehicle
!=
null
)
{
orderStatistics
.
add
(
vehicle
);
HomePageOrderData
data
=
new
HomePageOrderData
()
{{
setTotalOrders
(
vehicle
.
getTotalGmv
().
subtract
(
vehicle
.
getTotalReturnGmv
()));
setAdditionalIndemnity
(
vehicle
.
getTotalCompensation
()
.
add
(
vehicle
.
getTotalForfeit
())
.
add
(
vehicle
.
getTotalDefaultMoney
())
.
add
(
vehicle
.
getTotalExpenditure
().
subtract
(
vehicle
.
getTotalGmv
().
subtract
(
vehicle
.
getTotalReturnGmv
())))
);
}};
orderStatistics
.
add
(
data
);
}
OrderStatistics
tour
=
TravelBiz
.
findAll
(
companyId
);
if
(
vehicle
!=
null
)
{
orderStatistics
.
add
(
tour
);
HomePageOrderData
data
=
new
HomePageOrderData
()
{{
setTotalOrders
(
tour
.
getTotalGmv
().
subtract
(
tour
.
getTotalReturnGmv
()));
setAdditionalIndemnity
(
tour
.
getTotalDefaultMoney
());
}};
orderStatistics
.
add
(
data
);
}
OrderStatistics
member
=
membersBiz
.
findAll
(
companyId
);
if
(
vehicle
!=
null
)
{
orderStatistics
.
add
(
member
);
}
HomePageOrderData
data
=
new
HomePageOrderData
()
{{
setTotalOrders
(
member
.
getTotalGmv
().
subtract
(
member
.
getTotalReturnGmv
()));
result
.
setTotalGmv
(
orderStatistics
.
stream
().
map
(
OrderStatistics:
:
getTotalGmv
).
filter
(
o
->
Objects
.
nonNull
(
o
)).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
));
}};
orderStatistics
.
add
(
data
);
}
result
.
setTotalForfeit
(
orderStatistics
.
stream
().
map
(
OrderStatistics:
:
getTotalForfeit
).
filter
(
o
->
Objects
.
nonNull
(
o
)).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
));
result
.
setTotalCompensation
(
orderStatistics
.
stream
().
map
(
OrderStatistics:
:
getTotalCompensation
).
filter
(
o
->
Objects
.
nonNull
(
o
)).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
));
result
.
setTotalRefundSecurityDeposit
(
orderStatistics
.
stream
().
map
(
OrderStatistics:
:
getTotalRefundSecurityDeposit
).
filter
(
o
->
Objects
.
nonNull
(
o
)).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
));
result
.
setTotal
SecurityDeposit
(
orderStatistics
.
stream
().
map
(
OrderStatistics:
:
getTotalSecurityDeposit
).
filter
(
o
->
Objects
.
nonNull
(
o
)).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
));
result
.
setTotal
Orders
(
orderStatistics
.
stream
().
map
(
HomePageOrderData:
:
getTotalOrders
).
filter
(
o
->
Objects
.
nonNull
(
o
)).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
));
result
.
setTotal
PenalSum
(
orderStatistics
.
stream
().
map
(
OrderStatistics:
:
getTotalPenalSum
).
filter
(
o
->
Objects
.
nonNull
(
o
)).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
));
result
.
setTotal
OutstandingDeposit
(
orderStatistics
.
stream
().
map
(
HomePageOrderData:
:
getTotalOutstandingDeposit
).
filter
(
o
->
Objects
.
nonNull
(
o
)).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
));
result
.
set
TotalPostpone
(
orderStatistics
.
stream
().
map
(
OrderStatistics:
:
getTotalPostpone
).
filter
(
o
->
Objects
.
nonNull
(
o
)).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
));
result
.
set
AdditionalIndemnity
(
orderStatistics
.
stream
().
map
(
HomePageOrderData:
:
getAdditionalIndemnity
).
filter
(
o
->
Objects
.
nonNull
(
o
)).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
));
return
result
;
}
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderTemplateBiz.java
View file @
a6184545
...
...
@@ -6,11 +6,16 @@ import cn.hutool.extra.template.TemplateEngine;
import
cn.hutool.extra.template.TemplateUtil
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
com.google.common.collect.Maps
;
import
com.xxfc.platform.order.contant.enumerate.OrderCostEnum
;
import
com.xxfc.platform.order.entity.OrderTemplate
;
import
com.xxfc.platform.order.mapper.OrderTemplateMapper
;
import
com.xxfc.platform.order.pojo.price.CancelNoStartVO
;
import
com.xxfc.platform.order.pojo.price.CancelStartedVO
;
import
com.xxfc.platform.order.pojo.price.CostDetailExtend
;
import
org.springframework.stereotype.Service
;
import
java.util.Arrays
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
...
...
@@ -58,6 +63,32 @@ public class OrderTemplateBiz extends BaseBiz<OrderTemplateMapper,OrderTemplate>
return
template
.
render
(
map
);
}
public
OrderTemplate
selectByCode
(
String
code
)
{
return
selectOne
(
new
OrderTemplate
(){{
setCode
(
code
);
}});
}
/**
* 计算费用明细
* @param vo
* @return
*/
public
void
handleCostDetailExtend
(
CancelNoStartVO
vo
)
{
OrderTemplate
template
=
selectByCode
(
OrderCostEnum
.
CANCEL_NO_START
.
getCode
());
vo
.
setCostDetail
(
result
(
template
.
getTemplate
(),
Dict
.
parse
(
vo
)));
}
/**
* 取消费用明细
* @param vo
* @return
*/
public
void
handleCostDetailExtend
(
CancelStartedVO
vo
)
{
OrderTemplate
template
=
selectByCode
(
OrderCostEnum
.
CANCEL_STARTED
.
getCode
());
vo
.
setCostDetail
(
result
(
template
.
getTemplate
(),
Dict
.
parse
(
vo
)));
}
public
static
void
main
(
String
[]
args
)
{
String
tempStr
=
"{\"key\":\"费用明细\", \"val\":\"\", \"consumeAmount\":\"${consumeAmount}\",\"children\":[${children}]}"
;
Map
map
=
Maps
.
newHashMap
();
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderTourVerificationBiz.java
View file @
a6184545
...
...
@@ -68,7 +68,7 @@ public class OrderTourVerificationBiz{
if
(
baseOrder
==
null
){
return
ObjectRestResponse
.
createFailedResult
(
ResCode
.
ORDER_IS_NOT_EXIST
.
getCode
(),
ResCode
.
ORDER_IS_NOT_EXIST
.
getDesc
());
}
if
(
baseOrder
.
get
Status
()!=
OrderStatusEnum
.
ORDER_TOSTART
.
getCode
()
){
if
(
baseOrder
.
get
HasPay
()==
0
){
return
ObjectRestResponse
.
createFailedResult
(
ResCode
.
ORDER_IS_NOT_PAY
.
getCode
(),
ResCode
.
ORDER_IS_NOT_PAY
.
getDesc
());
}
Integer
orderId
=
baseOrder
.
getId
();
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderVehicleCrosstownBiz.java
View file @
a6184545
...
...
@@ -250,24 +250,28 @@ public class OrderVehicleCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
//定损扣除费用
if
(
StringUtils
.
isNotBlank
(
orderVehicleCrosstownDto
.
getDedDetail
()))
{
JSONArray
jsonArray
=
JSONArray
.
parseArray
(
orderVehicleCrosstownDto
.
getDedDetail
());
for
(
int
i
=
0
;
i
<
jsonArray
.
size
();
i
++)
{
JSONObject
jsonObject
=
JSONObject
.
parseObject
(
jsonArray
.
get
(
i
).
toString
());
if
(
jsonObject
!=
null
)
{
cost
+=
Double
.
parseDouble
(
jsonObject
.
getString
(
"cost"
));
if
(
jsonArray
!=
null
&&
jsonArray
.
size
()
>
0
)
{
for
(
int
i
=
0
;
i
<
jsonArray
.
size
();
i
++)
{
JSONObject
jsonObject
=
JSONObject
.
parseObject
(
jsonArray
.
get
(
i
).
toString
());
if
(
jsonObject
!=
null
)
{
cost
+=
Double
.
parseDouble
(
jsonObject
.
getString
(
"cost"
));
}
}
}
}
//延期扣除费用
if
(
StringUtils
.
isNotBlank
(
orderVehicleCrosstownDto
.
getViolateDetail
()))
{
JSONArray
jsonArray
=
JSONArray
.
parseArray
(
orderVehicleCrosstownDto
.
getDedDetail
());
for
(
int
i
=
0
;
i
<
jsonArray
.
size
();
i
++)
{
JSONObject
jsonObject
=
JSONObject
.
parseObject
(
jsonArray
.
get
(
i
).
toString
());
if
(
jsonObject
!=
null
)
{
if
(
jsonObject
.
getString
(
"cost"
)
!=
null
)
{
cost
+=
Double
.
parseDouble
(
jsonObject
.
getString
(
"cost"
));
}
if
(
jsonObject
.
getString
(
"excessCost"
)
!=
null
)
{
cost
+=
Double
.
parseDouble
(
jsonObject
.
getString
(
"excessCost"
));
if
(
jsonArray
!=
null
&&
jsonArray
.
size
()
>
0
)
{
for
(
int
i
=
0
;
i
<
jsonArray
.
size
();
i
++)
{
JSONObject
jsonObject
=
JSONObject
.
parseObject
(
jsonArray
.
get
(
i
).
toString
());
if
(
jsonObject
!=
null
)
{
if
(
jsonObject
.
getString
(
"cost"
)
!=
null
)
{
cost
+=
Double
.
parseDouble
(
jsonObject
.
getString
(
"cost"
));
}
if
(
jsonObject
.
getString
(
"excessCost"
)
!=
null
)
{
cost
+=
Double
.
parseDouble
(
jsonObject
.
getString
(
"excessCost"
));
}
}
}
}
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/inner/OrderCalculateBiz.java
View file @
a6184545
package
com
.
xxfc
.
platform
.
order
.
biz
.
inner
;
import
cn.hutool.core.lang.Dict
;
import
com.github.wxiaoqi.security.admin.feign.UserFeign
;
import
com.xxfc.platform.activity.entity.Coupon
;
import
com.xxfc.platform.activity.feign.ActivityFeign
;
...
...
@@ -12,6 +13,7 @@ import com.xxfc.platform.order.entity.*;
import
com.xxfc.platform.order.pojo.account.OrderAccountDeduction
;
import
com.xxfc.platform.order.pojo.account.OrderAccountDetail
;
import
com.xxfc.platform.order.pojo.calculate.InProgressVO
;
import
com.xxfc.platform.order.pojo.price.RentVehiclePriceVO
;
import
com.xxfc.platform.universal.feign.ThirdFeign
;
import
com.xxfc.platform.vehicle.feign.VehicleFeign
;
import
lombok.extern.slf4j.Slf4j
;
...
...
@@ -20,6 +22,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.stereotype.Service
;
import
java.math.BigDecimal
;
import
java.util.HashMap
;
import
java.util.List
;
/**
...
...
@@ -59,6 +62,7 @@ public class OrderCalculateBiz {
public
InProgressVO
inProgressCalculate
(
BaseOrder
baseOrder
,
OrderItem
orderItem
,
Integer
freeDays
,
Integer
useDays
,
OrderAccountDetail
oad
)
{
BigDecimal
refundAmount
=
BigDecimal
.
ZERO
;
BigDecimal
consumeAmount
=
BigDecimal
.
ZERO
;
InProgressVO
inProgressVO
=
new
InProgressVO
();
inProgressVO
.
setUsedDays
(
useDays
);
inProgressVO
.
setUsedfreeDays
(
freeDays
);
...
...
@@ -80,7 +84,7 @@ public class OrderCalculateBiz {
//消费天数
Integer
consumeDays
=
0
-
backFreeDays
;
//计算使用天数的费用
BigDecimal
consumeAmount
=
orderItem
.
getUnitPrice
().
multiply
(
new
BigDecimal
(
consumeDays
+
""
));
consumeAmount
=
orderItem
.
getUnitPrice
().
multiply
(
new
BigDecimal
(
consumeDays
+
""
));
List
<
BigDecimal
>
couponAmounts
=
Lists
.
newArrayList
();
for
(
String
tickerNo
:
baseOrder
.
getCouponTickerNos
().
split
(
","
))
{
BigDecimal
couponAmount
=
activityFeign
.
use
(
baseOrder
.
getUserId
(),
Lists
.
newArrayList
(
tickerNo
),
baseOrder
.
getNo
(),
Coupon
.
CHANNEL_RENT
,
consumeAmount
,
ActivityFeign
.
TYPE_CHECK
);
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/inner/OrderCancelBiz.java
View file @
a6184545
...
...
@@ -11,9 +11,12 @@ import com.xxfc.platform.activity.feign.ActivityFeign;
import
com.xxfc.platform.order.biz.*
;
import
com.xxfc.platform.order.contant.enumerate.*
;
import
com.xxfc.platform.order.entity.*
;
import
com.xxfc.platform.order.pojo.account.OrderAccountDeduction
;
import
com.xxfc.platform.order.pojo.account.OrderAccountDetail
;
import
com.xxfc.platform.order.pojo.calculate.InProgressVO
;
import
com.xxfc.platform.order.pojo.mq.OrderMQDTO
;
import
com.xxfc.platform.order.pojo.price.CancelNoStartVO
;
import
com.xxfc.platform.order.pojo.price.CancelStartedVO
;
import
com.xxfc.platform.tour.feign.TourFeign
;
import
com.xxfc.platform.universal.feign.ThirdFeign
;
import
com.xxfc.platform.vehicle.common.RestResponse
;
...
...
@@ -67,6 +70,9 @@ public class OrderCancelBiz {
@Autowired
OrderAccountBiz
orderAccountBiz
;
@Autowired
OrderTemplateBiz
orderTemplateBiz
;
@Autowired
UserFeign
userFeign
;
...
...
@@ -152,6 +158,25 @@ public class OrderCancelBiz {
//退款子流程: 订单基础,退款描述,退款金额
orderAccountBiz
.
refundSubProcess
(
baseOrder
,
""
,
baseOrder
.
getRealAmount
().
subtract
(
orvd
.
getDeposit
()),
oad
.
getDepositAmount
().
add
(
oad
.
getOrderAmount
()),
AccountTypeEnum
.
OUT_ORDER_FUND
.
getCode
(),
RefundStatusEnum
.
ALL
.
getCode
(),
oad
);
//如果有扣款项,则生成额外的费用明细
CancelStartedVO
csv
=
new
CancelStartedVO
();
csv
.
setConsumeAmount
(
inProgressVO
.
getConsumeAmount
());
csv
.
setModelAmount
(
orderItem
.
getUnitPrice
());
csv
.
setUsedAmount
(
inProgressVO
.
getUsedAmount
());
csv
.
setUsedDayNum
(
inProgressVO
.
getUsedDays
());
csv
.
setUsedFreeAmount
(
inProgressVO
.
getUsedFreeDaysAmount
());
if
(
oad
.
getDeductions
().
size
()
>
0
)
{
for
(
OrderAccountDeduction
deduction
:
oad
.
getDeductions
())
{
if
(
DeductionTypeEnum
.
VIOLATE_CANCEL
.
getCode
().
equals
(
deduction
.
getType
()))
{
csv
.
setViolateAmount
(
deduction
.
getAmount
());
csv
.
setViolateDesc
(
deduction
.
getName
());
}
}
}
orderTemplateBiz
.
handleCostDetailExtend
(
csv
);
orvd
.
setCostDetailExtend
(
csv
.
getCostDetail
());
orderRentVehicleBiz
.
updateSelectiveByIdRe
(
orvd
);
}
else
{
//没到出车时间
//判断是否使用免费天数,并且进行扣款
...
...
@@ -165,7 +190,22 @@ public class OrderCancelBiz {
}
}
//退款流程
orderAccountBiz
.
rentRefundProcessCancel
(
hasUpdateOrder
,
orderItem
.
getRealAmount
(),
timeLag
,
APP_ORDER
+
"_"
+
RENT_REFUND
,
orvd
.
getDeposit
(),
freeDayAmount
);
orderAccountBiz
.
rentRefundProcessCancel
(
hasUpdateOrder
,
orderItem
.
getRealAmount
(),
timeLag
,
APP_ORDER
+
"_"
+
RENT_REFUND
,
orvd
.
getDeposit
(),
freeDayAmount
,
null
);
//如果有扣款项,则生成额外的费用明细
if
(
oad
.
getDeductions
().
size
()
>
0
)
{
for
(
OrderAccountDeduction
deduction
:
oad
.
getDeductions
())
{
if
(
DeductionTypeEnum
.
VIOLATE_CANCEL
.
getCode
().
equals
(
deduction
.
getType
()))
{
CancelNoStartVO
cnsv
=
new
CancelNoStartVO
(){{
setViolateAmount
(
deduction
.
getAmount
());
setViolateDesc
(
deduction
.
getName
());
}};
orderTemplateBiz
.
handleCostDetailExtend
(
cnsv
);
orvd
.
setCostDetailExtend
(
cnsv
.
getCostDetail
());
orderRentVehicleBiz
.
updateSelectiveByIdRe
(
orvd
);
}
}
}
}
//已付款的取消订单发送消息
...
...
@@ -199,8 +239,24 @@ public class OrderCancelBiz {
if
(
SYS_TRUE
.
equals
(
otd
.
getIsOutside
()))
{
key
=
TOUR_REFUND
;
}
//退款流程
orderAccountBiz
.
rentRefundProcessCancel
(
hasUpdateOrder
,
adultItem
.
getRealAmount
().
add
(
childItem
.
getRealAmount
()),
timeLag
,
APP_ORDER
+
"_"
+
key
,
BigDecimal
.
ZERO
,
BigDecimal
.
ZERO
);
orderAccountBiz
.
rentRefundProcessCancel
(
hasUpdateOrder
,
adultItem
.
getRealAmount
().
add
(
childItem
.
getRealAmount
()),
timeLag
,
APP_ORDER
+
"_"
+
key
,
BigDecimal
.
ZERO
,
BigDecimal
.
ZERO
,
oad
);
//如果有扣款项,则生成额外的费用明细
if
(
oad
.
getDeductions
().
size
()
>
0
)
{
for
(
OrderAccountDeduction
deduction
:
oad
.
getDeductions
())
{
if
(
DeductionTypeEnum
.
VIOLATE_CANCEL
.
getCode
().
equals
(
deduction
.
getType
()))
{
CancelNoStartVO
cnsv
=
new
CancelNoStartVO
(){{
setViolateAmount
(
deduction
.
getAmount
());
setViolateDesc
(
deduction
.
getName
());
}};
orderTemplateBiz
.
handleCostDetailExtend
(
cnsv
);
otd
.
setCostDetailExtend
(
cnsv
.
getCostDetail
());
orderTourDetailBiz
.
updateSelectiveByIdRe
(
otd
);
}
}
}
//站点总人数减少
tourFeign
.
updateTourGoodPersonNum
(
otd
.
getVerificationId
(),
TourFeign
.
TOTAL_PERSON
,
(
otd
.
getTotalNumber
()
*
-
1
));
...
...
@@ -213,10 +269,11 @@ public class OrderCancelBiz {
setOrderId
(
baseOrder
.
getId
());
}});
//取消租车预定
//取消租车预定
和 记录生成额外的费用明细
//已支付,并且是待出行状态,取消预约
if
(
OrderStatusEnum
.
ORDER_TOSTART
.
getCode
().
equals
(
baseOrder
.
getStatus
())
&&
SYS_TRUE
.
equals
(
baseOrder
.
getHasPay
())){
vehicleFeign
.
rentUnbookVehicle
(
orvd
.
getBookRecordId
());
}
else
{
//未支付,拒绝之前的预约
RestResponse
<
Integer
>
restResponse
=
vehicleFeign
.
rentRejectVehicleBooking
(
orvd
.
getBookRecordId
());
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/mapper/OrderAccountMapper.java
View file @
a6184545
package
com
.
xxfc
.
platform
.
order
.
mapper
;
import
com.xxfc.platform.order.entity.OrderAccount
;
import
com.xxfc.platform.order.pojo.account.OrderAccountDTO
;
import
org.apache.ibatis.annotations.Param
;
import
tk.mybatis.mapper.common.Mapper
;
import
java.util.List
;
/**
* 订单帐目
*
...
...
@@ -11,5 +16,6 @@ import tk.mybatis.mapper.common.Mapper;
* @date 2019-09-09 15:51:16
*/
public
interface
OrderAccountMapper
extends
Mapper
<
OrderAccount
>
{
List
<
OrderAccountDTO
>
getOrderAccountByOrderType
(
@Param
(
"type"
)
Integer
type
,
@Param
(
"day"
)
Integer
day
);
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/BackStageOrderController.java
View file @
a6184545
package
com
.
xxfc
.
platform
.
order
.
rest
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.json.JSONUtil
;
import
com.github.wxiaoqi.security.admin.entity.AppUserLogin
;
import
com.github.wxiaoqi.security.admin.feign.UserFeign
;
...
...
@@ -48,6 +49,7 @@ import org.springframework.stereotype.Controller;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
java.lang.reflect.Array
;
import
java.time.Instant
;
import
java.time.LocalDateTime
;
import
java.time.ZoneOffset
;
...
...
@@ -103,10 +105,11 @@ public class BackStageOrderController extends CommonBaseController implements Us
dto
.
setEndTime
(
new
Date
().
getTime
());
}
}
if
(
StringUtils
.
isNotBlank
(
dto
.
getPhone
()))
{
AppUserLogin
appUserLogin
=
userFeign
.
one
(
dto
.
getPhone
());
if
(
appUserLogin
!=
null
)
{
dto
.
setUserId
(
appUserLogin
.
getId
());
if
(
StringUtils
.
isNotBlank
(
dto
.
getPhone
())||
StringUtils
.
isNotBlank
(
dto
.
getRealName
()))
{
List
<
AppUserLogin
>
appUserLoins
=
userFeign
.
getOne
(
dto
.
getPhone
(),
dto
.
getRealName
());
if
(
CollectionUtil
.
isNotEmpty
(
appUserLoins
))
{
List
<
Integer
>
collect
=
appUserLoins
.
parallelStream
().
map
(
AppUserLogin:
:
getId
).
collect
(
Collectors
.
toList
());
dto
.
setUserIds
(
collect
);
}
else
{
return
ObjectRestResponse
.
succ
(
new
PageDataVO
<>());
}
...
...
@@ -121,8 +124,8 @@ public class BackStageOrderController extends CommonBaseController implements Us
dto
.
setCompanyIds
(
companyIds
);
}
if
(
StringUtils
.
isNotEmpty
(
dto
.
getPlateNumber
())){
List
<
String
>
vehicleIds
=
vehicleFeign
.
findbyPlateNumber
(
dto
.
getPlateNumber
().
trim
());
if
(
StringUtils
.
isNotEmpty
(
dto
.
getPlateNumber
())
||
StringUtils
.
isNotEmpty
(
dto
.
getVehicleCode
())
){
List
<
String
>
vehicleIds
=
vehicleFeign
.
findbyPlateNumber
AndVehicleCod
(
dto
.
getPlateNumber
(),
dto
.
getVehicleCode
());
dto
.
setVehicleIds
(
vehicleIds
);
}
...
...
@@ -148,6 +151,7 @@ public class BackStageOrderController extends CommonBaseController implements Us
if
(
appUserVo
!=
null
)
{
orderPageVO
.
setTelephone
(
appUserVo
.
getUsername
());
orderPageVO
.
setUsername
(
appUserVo
.
getNickname
());
orderPageVO
.
setRealName
(
appUserVo
.
getRealname
());
}
if
(
orderPageVO
.
getOrderRentVehicleDetail
()
!=
null
&&
orderPageVO
.
getOrderRentVehicleDetail
().
getVehicleId
()
!=
null
)
{
RestResponse
<
Vehicle
>
restResponse
=
vehicleFeign
.
findById
(
orderPageVO
.
getOrderRentVehicleDetail
().
getVehicleId
());
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/BaseOrderController.java
View file @
a6184545
...
...
@@ -309,8 +309,19 @@ public class BaseOrderController extends CommonBaseController implements UserRes
private
String
phone
;
/**
* 后台搜索条件:真实姓名
*/
private
String
realName
;
/**
* 后台搜索条件:车辆编号
*/
private
String
vehicleCode
;
private
List
<
String
>
vehicleIds
;
//订单用户ID列表
private
List
<
Integer
>
userIds
;
//订单用户手机号或订单用户真实姓名
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/background/OrderStatisticsController.java
View file @
a6184545
...
...
@@ -12,6 +12,7 @@ import com.xxfc.platform.order.biz.DailyTravelOrderStatisticsBiz;
import
com.xxfc.platform.order.biz.DailyVehicleOrderStatisticsBiz
;
import
com.xxfc.platform.order.biz.OrderStatisticsBiz
;
import
com.xxfc.platform.order.entity.OrderStatistics
;
import
com.xxfc.platform.order.pojo.HomePageOrderData
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -88,15 +89,28 @@ public class OrderStatisticsController extends BaseController<OrderStatisticsBiz
if
(
TYPE_VEHICLE
.
equals
(
type
))
{
OrderStatistics
vehicle
=
vehicleBiz
.
findAll
(
companyId
);
return
ObjectRestResponse
.
succ
(
vehicle
);
return
ObjectRestResponse
.
succ
(
new
HomePageOrderData
(){{
setTotalOrders
(
vehicle
.
getTotalGmv
().
subtract
(
vehicle
.
getTotalReturnGmv
()));
setAdditionalIndemnity
(
vehicle
.
getTotalCompensation
()
.
add
(
vehicle
.
getTotalForfeit
())
.
add
(
vehicle
.
getTotalDefaultMoney
())
.
add
(
vehicle
.
getTotalExpenditure
().
subtract
(
vehicle
.
getTotalGmv
().
subtract
(
vehicle
.
getTotalReturnGmv
())))
);
}});
}
if
(
TYPE_TOUR
.
equals
(
type
))
{
OrderStatistics
tour
=
TravelBiz
.
findAll
(
companyId
);
return
ObjectRestResponse
.
succ
(
tour
);
return
ObjectRestResponse
.
succ
(
new
HomePageOrderData
(){{
setTotalOrders
(
tour
.
getTotalGmv
().
subtract
(
tour
.
getTotalReturnGmv
()));
setAdditionalIndemnity
(
tour
.
getTotalDefaultMoney
());
}});
}
if
(
TYPE_MEMBER
.
equals
(
type
))
{
OrderStatistics
member
=
membersBiz
.
findAll
(
companyId
);
return
ObjectRestResponse
.
succ
(
member
);
return
ObjectRestResponse
.
succ
(
new
HomePageOrderData
(){{
setTotalOrders
(
member
.
getTotalGmv
().
subtract
(
member
.
getTotalReturnGmv
()));
}});
}
if
(
TYPE_TOTAL
.
equals
(
type
))
{
...
...
@@ -110,4 +124,6 @@ public class OrderStatisticsController extends BaseController<OrderStatisticsBiz
}
}
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/service/OrderRentVehicleService.java
View file @
a6184545
...
...
@@ -15,7 +15,6 @@ import com.github.wxiaoqi.security.common.util.process.ResultCode;
import
com.xxfc.platform.activity.entity.Coupon
;
import
com.xxfc.platform.activity.feign.ActivityFeign
;
import
com.xxfc.platform.order.biz.OrderCostDetailBiz
;
import
com.xxfc.platform.order.biz.OrderItemBiz
;
import
com.xxfc.platform.order.biz.OrderRentVehicleBiz
;
import
com.xxfc.platform.order.biz.OrderTemplateBiz
;
import
com.xxfc.platform.order.contant.enumerate.ItemTypeEnum
;
...
...
@@ -25,18 +24,15 @@ import com.xxfc.platform.order.contant.enumerate.OrderTypeEnum;
import
com.xxfc.platform.order.entity.OrderItem
;
import
com.xxfc.platform.order.entity.OrderTemplate
;
import
com.xxfc.platform.order.pojo.OrderAccompanyDTO
;
import
com.xxfc.platform.order.pojo.order.OrderItemDTO
;
import
com.xxfc.platform.order.pojo.order.RentVehicleBO
;
import
com.xxfc.platform.order.pojo.price.RentVehiclePriceVO
;
import
com.xxfc.platform.universal.constant.DictionaryKey
;
import
com.xxfc.platform.universal.feign.ThirdFeign
;
import
com.xxfc.platform.vehicle.constant.AccompanyingItemType
;
import
com.xxfc.platform.vehicle.entity.AccompanyingItem
;
import
com.xxfc.platform.vehicle.entity.BranchCompany
;
import
com.xxfc.platform.vehicle.entity.VehicleBookRecord
;
import
com.xxfc.platform.vehicle.entity.VehicleModel
;
import
com.xxfc.platform.vehicle.feign.VehicleFeign
;
import
com.xxfc.platform.vehicle.pojo.CompanyDetail
;
import
com.xxfc.platform.vehicle.pojo.RentVehicleBookDTO
;
import
com.xxfc.platform.vehicle.pojo.vo.AccompanyingItemVo
;
import
lombok.Data
;
...
...
@@ -386,9 +382,9 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
private
String
handleChildren
(
RentVehicleBO
detail
,
Integer
vehicleDayNum
)
{
StringBuffer
childrenStr
=
new
StringBuffer
(
""
);
if
(
vehicleDayNum
>
0
)
{
//
if(vehicleDayNum > 0) {
childrenStr
.
append
(
",${tem_0101}"
);
}
//
}
if
(
DRIVER_TYPE_COMPANY
.
equals
(
detail
.
getDriverType
()))
{
childrenStr
.
append
(
",${tem_0102}"
);
}
...
...
@@ -414,9 +410,11 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
* @return
*/
private
void
costDetail
(
RentVehiclePriceVO
vo
,
String
children
)
{
OrderTemplate
template
=
orderTemplateBiz
.
selectById
(
OrderCostEnum
.
R
entVehicle
.
getCode
());
OrderTemplate
template
=
orderTemplateBiz
.
selectById
(
OrderCostEnum
.
R
ENT_VEHICLE
.
getCode
());
template
.
setTemplate
(
orderTemplateBiz
.
result
(
template
.
getTemplate
(),
new
HashMap
(){{
put
(
"children"
,
children
);
put
(
"vehicleAmount"
,
vo
.
getVehicleAmount
());
put
(
"realAmount"
,
vo
.
getRealAmount
());
}}));
String
result
=
orderTemplateBiz
.
result
(
template
,
Dict
.
parse
(
vo
));
vo
.
setCostDetail
(
result
);
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/service/OrderTourService.java
View file @
a6184545
...
...
@@ -3,7 +3,6 @@ package com.xxfc.platform.order.service;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.lang.Dict
;
import
cn.hutool.core.util.StrUtil
;
import
com.github.wxiaoqi.security.admin.feign.UserFeign
;
import
com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO
;
import
com.github.wxiaoqi.security.auth.client.config.UserAuthConfig
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
...
...
@@ -12,7 +11,6 @@ import com.github.wxiaoqi.security.common.util.process.ResultCode;
import
com.xxfc.platform.activity.entity.Coupon
;
import
com.xxfc.platform.activity.feign.ActivityFeign
;
import
com.xxfc.platform.order.biz.OrderCostDetailBiz
;
import
com.xxfc.platform.order.biz.OrderItemBiz
;
import
com.xxfc.platform.order.biz.OrderTemplateBiz
;
import
com.xxfc.platform.order.biz.OrderTourDetailBiz
;
import
com.xxfc.platform.order.contant.enumerate.ItemTypeEnum
;
...
...
@@ -312,7 +310,7 @@ public class OrderTourService extends AbstractOrderHandle<OrderTourDetailBiz, To
* @return
*/
private
void
costDetail
(
TourPriceVO
vo
,
String
children
)
{
OrderTemplate
template
=
orderTemplateBiz
.
selectById
(
OrderCostEnum
.
R
entVehicle
.
getCode
());
OrderTemplate
template
=
orderTemplateBiz
.
selectById
(
OrderCostEnum
.
R
ENT_VEHICLE
.
getCode
());
template
.
setTemplate
(
orderTemplateBiz
.
result
(
template
.
getTemplate
(),
new
HashMap
(){{
put
(
"children"
,
children
);
}}));
...
...
xx-order/xx-order-server/src/main/resources/mapper/BaseOrderMapper.xml
View file @
a6184545
...
...
@@ -120,8 +120,12 @@
<if
test=
"crtUser != null"
>
and b.crt_user = #{crtUser}
</if>
<if
test=
"userId != null"
>
and b.user_id = #{userId}
<if
test=
"userIds != null and userIds.size() > 0"
>
and b.user_id in
<foreach
collection=
"userIds"
item=
"item"
open=
"("
separator=
","
close=
")"
>
#{item}
</foreach>
</if>
<if
test=
"status != null"
>
and b.status = #{status}
...
...
@@ -178,8 +182,11 @@
from base_order b
LEFT JOIN order_rent_vehicle_detail r on r.order_id = b.id
where b.type = 1
<if
test=
"userId != null"
>
and b.user_id = #{userId}
<if
test=
"userIds != null and userIds.size > 0"
>
and b.user_id in
<foreach
collection=
"userIds"
item=
"id"
open=
"("
separator=
","
close=
")"
>
#{id}
</foreach>
</if>
<if
test=
"status != null and status == -1"
>
AND b.status = -1
...
...
xx-order/xx-order-server/src/main/resources/mapper/DailyMembersOrderStatisticsMapper.xml
View file @
a6184545
...
...
@@ -17,24 +17,13 @@
<select
id=
"monthOrderTotal"
resultType=
"com.xxfc.platform.order.entity.OrderStatistics"
>
SELECT
IFNULL(
sum(gmv),0) as
totalGmv
IFNULL(
sum( gmv ), 0 ) AS
totalGmv
FROM
(
SELECT
ANY_VALUE(id) AS id ,
ANY_VALUE(branch_company_id) AS branch_company_id,
ANY_VALUE(one_day) AS one_day,
ANY_VALUE(gmv) AS gmv,
ANY_VALUE(crt_time) AS crt_time
FROM
daily_members_order_statistics
GROUP BY
one_day,branch_company_id
) m
daily_vehicle_order_statistics
WHERE
1=1
<if
test=
"companyId != null"
>
and branch_company_id =#{companyId}
and branch_company_id =
#{companyId}
</if>
</select>
...
...
xx-order/xx-order-server/src/main/resources/mapper/DailyTravelOrderStatisticsMapper.xml
View file @
a6184545
...
...
@@ -51,26 +51,15 @@
<select
id=
"monthOrderTotal"
resultType=
"com.xxfc.platform.order.entity.OrderStatistics"
>
SELECT
IFNULL(sum(gmv),0) as totalGmv,
IFNULL(sum(penal_sum) ,0) as totalPenalSum
IFNULL( sum( gmv ), 0 ) AS totalGmv,
IFNULL( sum( default_money ), 0 ) AS totalDefaultMoney,
IFNULL( sum( return_gmv ), 0 ) AS totalReturnGmv
FROM
(
SELECT
ANY_VALUE(id) AS id,
ANY_VALUE(branch_company_id) AS branch_company_id,
ANY_VALUE(one_day) AS one_day,
ANY_VALUE(gmv) AS gmv,
ANY_VALUE(penal_sum) AS penal_sum,
ANY_VALUE(crt_time) AS crt_time
FROM
daily_travel_order_statistics
GROUP BY
one_day,branch_company_id
) o
daily_vehicle_order_statistics
WHERE
1=1
<if
test=
"companyId != null"
>
and branch_company_id =#{companyId}
and branch_company_id =
#{companyId}
</if>
</select>
...
...
xx-order/xx-order-server/src/main/resources/mapper/DailyVehicleOrderStatisticsMapper.xml
View file @
a6184545
...
...
@@ -79,33 +79,19 @@
v.start_company_id
</select>
<!--
获取赔偿和延期JSON字符串
-->
<!-- -->
<select
id=
"monthOrderTotal"
resultType=
"com.xxfc.platform.order.entity.OrderStatistics"
>
SELECT
IFNULL(sum(gmv),0) as totalGmv,
(IFNULL(sum(security_deposit),0)-IFNULL(sum(refund_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
(
SELECT
ANY_VALUE(id) as id,
one_day,
branch_company_id,
ANY_VALUE(gmv) AS gmv,
ANY_VALUE(security_deposit) AS security_deposit,
ANY_VALUE(refund_security_deposit) AS refund_security_deposit,
ANY_VALUE(forfeit) AS forfeit,ANY_VALUE(penal_sum) AS penal_sum,
ANY_VALUE(postpone) AS postpone,ANY_VALUE(crt_time) AS crt_time,
ANY_VALUE(compensation) AS compensation
IFNULL( sum( gmv ), 0 ) AS totalGmv,
IFNULL( sum( security_deposit ), 0 ) AS totalSecurityDeposit,
IFNULL( sum( refund_security_deposit ), 0 ) AS totalRefundSecurityDeposit,
IFNULL( sum( forfeit ), 0 ) AS totalForfeit,
IFNULL( sum( compensation ), 0 ) AS totalCompensation,
IFNULL( sum( return_gmv ), 0 ) AS totalReturnGmv,
IFNULL( sum( default_money ), 0 ) AS totalDefaultMoney,
IFNULL( sum( total_expenditure ), 0 ) AS totalExpenditure
FROM
daily_vehicle_order_statistics
GROUP BY
one_day,branch_company_id
) a
WHERE
1=1
<if
test=
"companyId != null"
>
...
...
xx-order/xx-order-server/src/main/resources/mapper/OrderAccountMapper.xml
0 → 100644
View file @
a6184545
<?xml version="1.0" encoding="UTF-8"?>
<!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.OrderAccountMapper"
>
<select
id=
"getOrderAccountByOrderType"
resultType=
"com.xxfc.platform.order.pojo.account.OrderAccountDTO"
>
SELECT
date(DATE_SUB(now(),interval #{day} day)) as oneDay,
a.*
<if
test=
"type != null and type == 1"
>
, v.start_company_id as companyId
</if>
<if
test=
"type != null and type == 2"
>
, t.start_company_id as companyId
</if>
FROM
order_account a
LEFT JOIN base_order b ON a.order_id = b.id
<if
test=
"type != null and type==1"
>
LEFT JOIN order_rent_vehicle_detail v ON b.id = v.order_id
</if>
<if
test=
"type != null and type==2"
>
LEFT JOIN order_tour_detail t ON b.id = t.order_id
</if>
WHERE
a.account_status=1
AND
b.type = #{type}
AND date( FROM_UNIXTIME( a.crt_time / 1000 ) ) = date( DATE_SUB( now( ), INTERVAL #{day} DAY ) )
</select>
</mapper>
\ No newline at end of file
xx-order/xx-order-server/src/main/resources/mapper/OrderVehicaleCrosstownMapper.xml
View file @
a6184545
...
...
@@ -26,6 +26,7 @@
<result
column=
"deduction_cost"
jdbcType=
"INTEGER"
property=
"deductionCost"
/>
<result
column=
"rest_deposit"
jdbcType=
"INTEGER"
property=
"restDeposit"
/>
<result
column=
"user_license_id"
jdbcType=
"VARCHAR"
property=
"userLicenseId"
/>
<result
column=
"violate_amount_detail"
jdbcType=
"VARCHAR"
property=
"violateDetail"
/>
</resultMap>
<resultMap
id=
"orderMap"
type=
"com.xxfc.platform.order.pojo.order.OrderVehicleCrosstownDto"
>
<result
column=
"id"
javaType=
"java.lang.Integer"
property=
"id"
/>
...
...
@@ -34,20 +35,20 @@
javaType=
"com.xxfc.platform.order.entity.DepositRefundRecord"
/>
</resultMap>
<select
id=
"selectByOrderId"
parameterType=
"com.xxfc.platform.order.pojo.order.OrderVehicleCrosstownDto"
resultType=
"com.xxfc.platform.order.pojo.order.OrderVehicleCrosstownDto"
>
select
*
from order_vehicle_crosstown
select
o.*, o.violate_amount_detail violateDetail
from order_vehicle_crosstown
o
<where>
<if
test=
"status != null"
>
and status = #{status}
and
o.
status = #{status}
</if>
<if
test=
"type != null"
>
and type = #{type}
and
o.
type = #{type}
</if>
<if
test=
"orderId != null"
>
and order_id = #{orderId}
and o
.o
rder_id = #{orderId}
</if>
<if
test=
"orderNo != null"
>
and order_no = #{orderNo}
and o
.o
rder_no = #{orderNo}
</if>
</where>
</select>
...
...
xx-vehicle/xx-vehicle-api/src/main/java/com/xxfc/platform/vehicle/feign/VehicleFeign.java
View file @
a6184545
...
...
@@ -152,4 +152,7 @@ public interface VehicleFeign {
@GetMapping
(
"/vehicleInfo/findwith_plate_number"
)
List
<
String
>
findbyPlateNumber
(
@RequestParam
(
value
=
"plateNumber"
)
String
plateNumber
);
@GetMapping
(
"/vehicleInfo/findVehicleIds"
)
List
<
String
>
findbyPlateNumberAndVehicleCod
(
@RequestParam
(
value
=
"plateNumber"
)
String
plateNumber
,
@RequestParam
(
value
=
"vehicleCode"
)
String
vehicleCode
);
}
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/biz/VehicleActiveService.java
View file @
a6184545
...
...
@@ -164,21 +164,21 @@ public class VehicleActiveService {
}
List
<
VehicleBookRecordVo
>
vehicleBookRecordVos
=
vehicleBookRecordBiz
.
selectByVehicleId
(
vehicleId
);
if
(
vehicleBookRecordVos
!=
null
&&
vehicleBookRecordVos
.
size
()
>
0
)
{
Iterator
<
VehicleBookRecordVo
>
iterator
=
vehicleBookRecordVos
.
iterator
();
while
(
iterator
.
hasNext
())
{
VehicleBookRecordVo
vehicleBookRecordVo
=
iterator
.
next
();
if
(
vehicleBookRecordVo
.
getVehicleDepartureLogVo
()
!=
null
&&
vehicleBookRecordVo
.
getVehicleDepartureLogVo
().
getState
()
!=
1
)
{
//已经出车
stringBuilder
.
append
(
"中,使用人:"
);
stringBuilder
.
append
(
vehicleBookRecordVo
.
getVehicleUsername
());
stringBuilder
.
append
(
" 使用人电话:"
);
stringBuilder
.
append
(
vehicleBookRecordVo
.
getVehicleUserPhone
());
return
stringBuilder
.
toString
();
Iterator
<
VehicleBookRecordVo
>
iterator
=
vehicleBookRecordVos
.
iterator
();
while
(
iterator
.
hasNext
())
{
VehicleBookRecordVo
vehicleBookRecordVo
=
iterator
.
next
();
if
(
vehicleBookRecordVo
.
getVehicleDepartureLogVo
()
!=
null
&&
vehicleBookRecordVo
.
getVehicleDepartureLogVo
().
getState
()
!=
1
)
{
//已经出车
stringBuilder
.
append
(
"中,使用人:"
);
stringBuilder
.
append
(
vehicleBookRecordVo
.
getVehicleUsername
());
stringBuilder
.
append
(
" 使用人电话:"
);
stringBuilder
.
append
(
vehicleBookRecordVo
.
getVehicleUserPhone
());
return
stringBuilder
.
toString
();
}
}
}
}
stringBuilder
.
append
(
", 请联系管理员修改车辆状态为正常状态"
);
return
stringBuilder
.
toString
();
}
}
public
void
arrival
(
VehicleArrivalVo
arrivalVo
)
{
Vehicle
vehicle
=
vehicleMapper
.
selectByPrimaryKey
(
arrivalVo
.
getVehicleId
());
...
...
@@ -214,9 +214,6 @@ public class VehicleActiveService {
}
vehicle
.
setExpectDestinationBranchCompanyId
(
0
);
vehicleMapper
.
updateByPrimaryKeySelective
(
vehicle
);
// 出车记录
VehicleDepartureLogVo
departureLogVo
=
vehicleDepartureLogMapper
.
selectByBookRecordId
(
arrivalVo
.
getBookRecordId
());
...
...
@@ -229,12 +226,12 @@ public class VehicleActiveService {
boolean
flag
=
true
;
VehicleDepartureLog
departureLog
=
departureLogVo
.
getVehicleDeparture
(
departureLogVo
);
List
<
VehicleDepartureLog
>
list
=
vehicleDepartureLogMapper
.
selectByVehicle
(
arrivalVo
.
getVehicleId
());
for
(
VehicleDepartureLog
vehicleDepartureLogVo
:
list
)
{
if
(
vehicleDepartureLogVo
.
getState
()
!=
1
&&
vehicleDepartureLogVo
.
getId
()
>
departureLog
.
getId
())
{
//后面还有未收车的记录
for
(
VehicleDepartureLog
vehicleDepartureLogVo
:
list
)
{
if
(
vehicleDepartureLogVo
.
getState
()
!=
1
&&
vehicleDepartureLogVo
.
getId
()
>
departureLog
.
getId
())
{
//后面还有未收车的记录
flag
=
false
;
}
}
if
(
flag
)
{
//如果此条记录后面还有未收车记录,就不修改车辆状态
if
(
flag
)
{
//如果此条记录后面还有未收车记录,就不修改车辆状态
int
result
=
vehicleMapper
.
updateStatus
(
arrivalVo
.
getVehicleId
(),
VehicleStatus
.
NORMAL
.
getCode
());
// if (result == 0) {
// throw new BaseException(ResCode.VEHICLE_DEPARTURE_VEHICLE_UNDEPARTURE.getDesc(),
...
...
@@ -330,7 +327,7 @@ public class VehicleActiveService {
}
}
}
if
(!(
startDate
.
minusDays
(
1
).
compareTo
(
DateTime
.
now
())
<=
0
&&
DateTime
.
now
().
compareTo
(
endDate
)
<=
0
&&
vehicleBookRecord
.
getStatus
()
==
VehicleBookRecordStatus
.
APPROVE
.
getCode
()
&&
(
list
==
null
||
list
.
size
()
<=
0
)))
{
if
(!(
startDate
.
minusDays
(
1
).
compareTo
(
DateTime
.
now
())
<=
0
&&
DateTime
.
now
().
compareTo
(
endDate
)
<=
0
&&
vehicleBookRecord
.
getStatus
()
==
VehicleBookRecordStatus
.
APPROVE
.
getCode
()
&&
(
list
==
null
||
list
.
size
()
<=
0
)))
{
throw
new
BaseException
(
ResCode
.
VEHICLE_DEPARTURE_DATE_IS_NOT_ABLED
.
getDesc
(),
ResCode
.
VEHICLE_DEPARTURE_DATE_IS_NOT_ABLED
.
getCode
());
}
...
...
@@ -340,7 +337,6 @@ public class VehicleActiveService {
public
void
updateBookRecordStatus
(
VehicleBookRecord
vehicleBookRecord
,
Integer
type
)
{
if
(
vehicleBookRecord
!=
null
)
{
if
(
type
==
1
)
{
vehicleBookRecord
.
setActualStartDate
(
new
Date
());
...
...
@@ -355,9 +351,9 @@ public class VehicleActiveService {
}
/**
* 车辆保养
*
* @param vehicleUpkeepVo
*/
@Transactional
...
...
@@ -411,6 +407,7 @@ public class VehicleActiveService {
/**
* 保养结束
*
* @param vehicleUpkeepEndVo
*/
@Transactional
...
...
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/biz/VehicleBiz.java
View file @
a6184545
...
...
@@ -1467,10 +1467,31 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR
Example
example
=
new
Example
(
Vehicle
.
class
);
Example
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andEqualTo
(
"code"
,
code
);
criteria
.
andEqualTo
(
"isDel"
,
0
);
if
(
StringUtils
.
isNotEmpty
(
id
))
{
criteria
.
andNotEqualTo
(
"id"
,
id
);
}
int
count
=
mapper
.
selectCountByExample
(
example
);
return
count
>
0
;
}
public
List
<
String
>
findbyPlateNumberAndVehicleCod
(
String
plateNumber
,
String
vehicleCode
)
{
List
<
String
>
vehicleIds
=
Lists
.
newArrayList
();
Example
example
=
new
Example
(
Vehicle
.
class
);
Example
.
Criteria
criteria
=
example
.
createCriteria
();
if
(
StringUtils
.
isNotBlank
(
plateNumber
))
{
criteria
.
andLike
(
"numberPlate"
,
String
.
format
(
"%%%s%%"
,
plateNumber
.
trim
()));
}
if
(
StringUtils
.
isNotBlank
(
vehicleCode
))
{
criteria
.
andLike
(
"code"
,
String
.
format
(
"%%%s%%"
,
vehicleCode
.
trim
()));
}
List
<
Vehicle
>
vehicles
=
mapper
.
selectByExample
(
example
);
if
(
CollectionUtils
.
isEmpty
(
vehicles
)){
return
vehicleIds
;
}
return
vehicles
.
stream
().
map
(
Vehicle:
:
getId
).
collect
(
Collectors
.
toList
());
}
}
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/rest/VehicleController.java
View file @
a6184545
...
...
@@ -519,7 +519,7 @@ public class VehicleController extends BaseController<VehicleBiz> implements Use
}
@GetMapping
(
"/findwith_plate_number"
)
public
List
<
String
>
findbyPlateNumber
(
@RequestParam
(
value
=
"plateNumber"
)
String
plateNumber
){
List
<
String
>
findbyPlateNumber
(
@RequestParam
(
value
=
"plateNumber"
)
String
plateNumber
){
return
vehicleBiz
.
findVehicleIdsByPlateNumber
(
plateNumber
);
}
...
...
@@ -529,4 +529,9 @@ public class VehicleController extends BaseController<VehicleBiz> implements Use
return
ObjectRestResponse
.
succ
(
exist
);
}
@GetMapping
(
"/findVehicleIds"
)
public
List
<
String
>
findbyPlateNumberAndVehicleCod
(
@RequestParam
(
value
=
"plateNumber"
,
required
=
false
)
String
plateNumber
,
@RequestParam
(
value
=
"vehicleCode"
,
required
=
false
)
String
vehicleCode
){
return
vehicleBiz
.
findbyPlateNumberAndVehicleCod
(
plateNumber
,
vehicleCode
);
}
}
xx-vehicle/xx-vehicle-server/src/main/resources/mapper/VehicleBookRecordMapper.xml
View file @
a6184545
...
...
@@ -475,6 +475,9 @@
<if
test=
"numberPlate != null"
>
and v3.number_plate = #{numberPlate}
</if>
<if
test=
"keywords != null and keywords != ''"
>
and (v3.number_plate like concat('%', #{keywords}, '%') or v3.code like concat('%', #{keywords}, '%'))
</if>
<if
test=
"bookType != null"
>
and v1.book_type = #{bookType}
</if>
...
...
xx-vehicle/xx-vehicle-server/src/main/resources/mapper/VehicleMapper.xml
View file @
a6184545
...
...
@@ -383,6 +383,9 @@
<if
test=
"numberPlate != null"
>
and v1.number_plate = #{numberPlate}
</if>
<if
test=
"keywords != null and keywords != ''"
>
and (v1.number_plate like concat('%', #{keywords}, '%') or v1.code like concat('%', #{keywords}, '%'))
</if>
<if
test=
"status != null"
>
and v1.status = #{status}
</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