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
f81d776e
Commit
f81d776e
authored
Sep 17, 2019
by
hanfeng
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/dev' into dev
parents
fd84a5e9
b3290acd
Changes
29
Hide whitespace changes
Inline
Side-by-side
Showing
29 changed files
with
382 additions
and
71 deletions
+382
-71
OrderCostEnum.java
.../xxfc/platform/order/contant/enumerate/OrderCostEnum.java
+10
-5
OrderRentVehicleDetail.java
...om/xxfc/platform/order/entity/OrderRentVehicleDetail.java
+4
-0
OrderTourDetail.java
.../java/com/xxfc/platform/order/entity/OrderTourDetail.java
+4
-0
InProgressVO.java
.../com/xxfc/platform/order/pojo/calculate/InProgressVO.java
+5
-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
OrderAccountBiz.java
...ain/java/com/xxfc/platform/order/biz/OrderAccountBiz.java
+7
-3
OrderTemplateBiz.java
...in/java/com/xxfc/platform/order/biz/OrderTemplateBiz.java
+31
-0
OrderCalculateBiz.java
.../com/xxfc/platform/order/biz/inner/OrderCalculateBiz.java
+6
-2
OrderCancelBiz.java
...ava/com/xxfc/platform/order/biz/inner/OrderCancelBiz.java
+61
-4
OrderMsgBiz.java
...n/java/com/xxfc/platform/order/biz/inner/OrderMsgBiz.java
+23
-14
OrderRentVehicleService.java
.../xxfc/platform/order/service/OrderRentVehicleService.java
+3
-6
OrderTourService.java
...ava/com/xxfc/platform/order/service/OrderTourService.java
+1
-3
TourGoodVerificationMapper.xml
.../src/main/resources/mapper/TourGoodVerificationMapper.xml
+1
-1
BranchCompanyController.java
.../com/xxfc/platform/uccn/rest/BranchCompanyController.java
+33
-0
VehicleFeign.java
...in/java/com/xxfc/platform/vehicle/feign/VehicleFeign.java
+10
-2
BranchCompanyFindDTO.java
.../xxfc/platform/vehicle/pojo/dto/BranchCompanyFindDTO.java
+2
-0
VehiclePlatCataVo.java
.../com/xxfc/platform/vehicle/pojo/vo/VehiclePlatCataVo.java
+23
-0
BranchCompanyBiz.java
.../java/com/xxfc/platform/vehicle/biz/BranchCompanyBiz.java
+1
-1
VehicleActiveService.java
...a/com/xxfc/platform/vehicle/biz/VehicleActiveService.java
+17
-20
VehicleBiz.java
...c/main/java/com/xxfc/platform/vehicle/biz/VehicleBiz.java
+4
-4
VehiclePlatCataBiz.java
...ava/com/xxfc/platform/vehicle/biz/VehiclePlatCataBiz.java
+19
-0
BranchCompanyMapper.java
...com/xxfc/platform/vehicle/mapper/BranchCompanyMapper.java
+1
-2
BranchCompanyController.java
...m/xxfc/platform/vehicle/rest/BranchCompanyController.java
+2
-2
VehicleCataController.java
...com/xxfc/platform/vehicle/rest/VehicleCataController.java
+11
-0
BranchCompanyMapper.xml
...-server/src/main/resources/mapper/BranchCompanyMapper.xml
+5
-1
VehicleBookRecordMapper.xml
...ver/src/main/resources/mapper/VehicleBookRecordMapper.xml
+4
-1
VehicleMapper.xml
...ehicle-server/src/main/resources/mapper/VehicleMapper.xml
+3
-0
No files found.
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/contant/enumerate/OrderCostEnum.java
View file @
f81d776e
...
...
@@ -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/OrderRentVehicleDetail.java
View file @
f81d776e
...
...
@@ -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/OrderTourDetail.java
View file @
f81d776e
...
...
@@ -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/calculate/InProgressVO.java
View file @
f81d776e
...
...
@@ -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/price/CancelNoStartVO.java
0 → 100644
View file @
f81d776e
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 @
f81d776e
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 @
f81d776e
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-server/src/main/java/com/xxfc/platform/order/biz/OrderAccountBiz.java
View file @
f81d776e
...
...
@@ -86,12 +86,14 @@ 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
);
...
...
@@ -188,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
;
}
}
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderTemplateBiz.java
View file @
f81d776e
...
...
@@ -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/inner/OrderCalculateBiz.java
View file @
f81d776e
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
);
...
...
@@ -153,7 +157,7 @@ public class OrderCalculateBiz {
setOrderId
(
baseOrder
.
getId
());
}});
Integer
freeDays
=
(
null
==
orderItem
.
getCutNum
())?
0
:
orderItem
.
getCutNum
();
return
inProgressCalculate
(
baseOrder
,
orderItem
,
freeDays
,
useDays
,
n
ull
);
return
inProgressCalculate
(
baseOrder
,
orderItem
,
freeDays
,
useDays
,
n
ew
OrderAccountDetail
()
);
}
public
InProgressVO
calculateOrderComplete
(
BaseOrder
baseOrder
,
OrderRentVehicleDetail
orvd
,
OrderAccountDetail
oad
,
OrderItem
orderItem
,
Integer
useDays
)
{
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/inner/OrderCancelBiz.java
View file @
f81d776e
...
...
@@ -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
{
//没到出车时间
//判断是否使用免费天数,并且进行扣款
...
...
@@ -161,11 +186,26 @@ public class OrderCancelBiz {
//违约金封顶 租车身份价 * 2天
BigDecimal
topAmount
=
orderItem
.
getUnitPrice
().
multiply
(
new
BigDecimal
(
2
+
""
));
if
(
freeDayAmount
.
compareTo
(
topAmount
)
>
0
)
{
freeDayAmount
=
freeDay
Amount
;
freeDayAmount
=
top
Amount
;
}
}
//退款流程
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/biz/inner/OrderMsgBiz.java
View file @
f81d776e
...
...
@@ -7,7 +7,9 @@ import com.github.wxiaoqi.security.common.exception.BaseException;
import
com.github.wxiaoqi.security.common.util.process.ResultCode
;
import
com.xxfc.platform.app.entity.Cofig
;
import
com.xxfc.platform.app.feign.ConfigFeign
;
import
com.xxfc.platform.order.biz.OrderAccountBiz
;
import
com.xxfc.platform.order.biz.OrderRefundBiz
;
import
com.xxfc.platform.order.contant.enumerate.AccountTypeEnum
;
import
com.xxfc.platform.order.contant.enumerate.OrderTypeEnum
;
import
com.xxfc.platform.order.contant.enumerate.RefundStatusEnum
;
import
com.xxfc.platform.order.contant.enumerate.RefundTypeEnum
;
...
...
@@ -69,6 +71,9 @@ public class OrderMsgBiz {
@Autowired
OrderRefundBiz
orderRefundBiz
;
@Autowired
OrderAccountBiz
orderAccountBiz
;
/**
* 处理App用户提醒短信的发送
* @param orvd
...
...
@@ -277,25 +282,23 @@ public class OrderMsgBiz {
CompanyDetail
startCompanyDetail
=
vehicleFeign
.
getCompanyDetail
(
orvd
.
getStartCompanyId
()).
getData
();
CompanyDetail
endCompanyDetail
=
vehicleFeign
.
getCompanyDetail
(
orvd
.
getEndCompanyId
()).
getData
();
if
(
null
!=
orvd
.
getEndCompanyId
()
&&
!
SYS_FALSE
.
equals
(
orvd
.
getEndCompanyId
()))
{
//查询订单退款记录
OrderRefund
orderRefund
=
orderRefundBiz
.
selectOne
(
new
OrderRefund
(){{
setOrderId
(
baseOrder
.
getId
());
setRefundType
(
RefundTypeEnum
.
ORDER_FUND
.
getCode
());
}});
//
查询押金退款
记录
Order
Refund
depositOrderRefund
=
orderRefundBiz
.
selectOne
(
new
OrderRefund
(){{
//
新的账单
记录
Order
Account
orderAccount
=
orderAccountBiz
.
selectOne
(
new
OrderAccount
(){{
setOrderId
(
baseOrder
.
getId
());
set
RefundType
(
RefundTypeEnum
.
DEPOSIT
.
getCode
());
set
AccountType
(
AccountTypeEnum
.
IN_ORDER_PAY
.
getCode
());
}});
if
(
BigDecimal
.
ZERO
.
equals
(
order
Refund
.
getDeductAmount
()))
{
if
(
BigDecimal
.
ZERO
.
equals
(
order
Account
.
getDeductAmount
()))
{
//使用免费天数
if
(
null
!=
orvd
.
getFreeDays
()
&&
orvd
.
getFreeDays
()
>
0
)
{
smstype
=
SmsTemplateDTO
.
CANCEL_B
;
}
else
{
smstype
=
SmsTemplateDTO
.
CANCEL_A
;
}
//发送用户取消消息
sms2AppUser
(
startCompanyDetail
,
endCompanyDetail
,
orvd
,
otd
,
omd
,
baseOrder
,
appUserDTO
,
smstype
,
smsParams
);
}
else
{
//使用免费天数
if
(
null
!=
orvd
.
getFreeDays
()
&&
orvd
.
getFreeDays
()
>
0
)
{
...
...
@@ -303,14 +306,13 @@ public class OrderMsgBiz {
}
else
{
smstype
=
SmsTemplateDTO
.
CANCEL_C
;
}
//发送用户退款消息
smsParams
.
clear
();
sms2RefundAppUser
(
BigDecimal
.
ZERO
,
orderAccount
.
getDeductAmount
(),
orderAccount
.
getAccountAmount
(),
BigDecimal
.
ZERO
,
baseOrder
,
appUserDTO
,
smstype
,
smsParams
);
}
//发送用户取消消息
sms2AppUser
(
startCompanyDetail
,
endCompanyDetail
,
orvd
,
otd
,
omd
,
baseOrder
,
appUserDTO
,
smstype
,
smsParams
);
//发送用户退款消息
// smsParams.clear();
// sms2RefundAppUser(BigDecimal.ZERO, orderRefund.getDeductAmount(), depositOrderRefund.getRefundAmount().add(orderRefund.getRefundAmount()), BigDecimal.ZERO, baseOrder, appUserDTO, smstype, smsParams);
//后台发送消息(出车人)
smsParams
.
clear
();
...
...
@@ -508,6 +510,13 @@ public class OrderMsgBiz {
smsParams
.
add
(
USER_N
+
appUserDTO
.
getRealname
());
}
break
;
case
SmsTemplateDTO
.
CANCEL_B
:
if
(
SYS_TRUE
.
equals
(
appUserDTO
.
getIsMember
())
&&
!
NONE
.
getCode
().
equals
(
appUserDTO
.
getMemberLevel
())
)
{
smsParams
.
add
(
USER_M
+
appUserDTO
.
getRealname
());
}
else
{
smsParams
.
add
(
USER_N
+
appUserDTO
.
getRealname
());
}
break
;
case
SmsTemplateDTO
.
PAY_I
:
if
(
SYS_TRUE
.
equals
(
appUserDTO
.
getIsMember
())
&&
!
NONE
.
getCode
().
equals
(
appUserDTO
.
getMemberLevel
())
)
{
smsParams
.
add
(
USER_M
+
appUserDTO
.
getRealname
());
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/service/OrderRentVehicleService.java
View file @
f81d776e
...
...
@@ -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
;
...
...
@@ -134,7 +130,8 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
//设置订单状态为3
bo
.
getOrder
().
setStatus
(
OrderStatusEnum
.
ORDER_UNPAY
.
getCode
());
//设置订单图片
bo
.
getOrder
().
setPicture
(
bo
.
getVehicleModel
().
getPicture
());
bo
.
getOrder
().
setPicture
(
StrUtil
.
isNotBlank
(
bo
.
getVehicleModel
().
getCoverPic
())?
bo
.
getVehicleModel
().
getCoverPic
():
bo
.
getVehicleModel
().
getPicture
());
//设置订单名称
bo
.
getOrder
().
setName
(
bo
.
getVehicleModel
().
getName
());
...
...
@@ -414,7 +411,7 @@ 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
());
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/service/OrderTourService.java
View file @
f81d776e
...
...
@@ -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-tour/xx-tour-server/src/main/resources/mapper/TourGoodVerificationMapper.xml
View file @
f81d776e
...
...
@@ -45,7 +45,7 @@
</if>
<if
test=
"travelDate!=null"
>
and p.start_time=#{travelDate}
</if>
ORDER BY
s.depart_time
) as `goodOrder`
</if>
ORDER BY
p.start_time DESC
) as `goodOrder`
</select>
<!-- 获取旅游路线id-->
<select
id=
"getGoodList"
resultType=
"com.xxfc.platform.tour.vo.TourVerificationInfoVo"
>
...
...
xx-uccn/xx-uccn-server/src/main/java/com/xxfc/platform/uccn/rest/BranchCompanyController.java
0 → 100644
View file @
f81d776e
package
com
.
xxfc
.
platform
.
uccn
.
rest
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.vo.PageDataVO
;
import
com.xxfc.platform.vehicle.feign.VehicleFeign
;
import
com.xxfc.platform.vehicle.pojo.dto.BranchCompanyFindDTO
;
import
com.xxfc.platform.vehicle.pojo.vo.BranchCompanyListVO
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/9/17 15:24
*/
@RestController
@RequestMapping
(
"/app/unauth/branch_company"
)
@RequiredArgsConstructor
(
onConstructor
=
@__
(
@Autowired
))
public
class
BranchCompanyController
{
private
final
VehicleFeign
vehicleFeign
;
@PostMapping
(
"/page"
)
public
ObjectRestResponse
<
PageDataVO
>
listBranchCompanyWithPage
(
@RequestBody
BranchCompanyFindDTO
branchCompanyFindDTO
)
{
PageDataVO
<
BranchCompanyListVO
>
branchCompanyWithPage
=
vehicleFeign
.
findBranchCompanyWithPage
(
branchCompanyFindDTO
);
return
ObjectRestResponse
.
succ
(
branchCompanyWithPage
);
}
}
xx-vehicle/xx-vehicle-api/src/main/java/com/xxfc/platform/vehicle/feign/VehicleFeign.java
View file @
f81d776e
...
...
@@ -6,13 +6,13 @@ import com.github.wxiaoqi.security.common.vo.PageDataVO;
import
com.xxfc.platform.vehicle.common.RestResponse
;
import
com.xxfc.platform.vehicle.entity.*
;
import
com.xxfc.platform.vehicle.pojo.*
;
import
com.xxfc.platform.vehicle.pojo.dto.BranchCompanyFindDTO
;
import
com.xxfc.platform.vehicle.pojo.vo.AccompanyingItemVo
;
import
com.xxfc.platform.vehicle.pojo.vo.BranComanyLeaderVo
;
import
io.swagger.annotations.ApiParam
;
import
com.xxfc.platform.vehicle.pojo.vo.BranchCompanyListVO
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.web.bind.annotation.*
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Set
;
...
...
@@ -153,6 +153,14 @@ public interface VehicleFeign {
@GetMapping
(
"/vehicleInfo/findwith_plate_number"
)
List
<
String
>
findbyPlateNumber
(
@RequestParam
(
value
=
"plateNumber"
)
String
plateNumber
);
/**
* 根据位置查询
* @param branchCompanyFindDTO
* @return
*/
@PostMapping
(
"/branchCompany/app/unauth/companys"
)
PageDataVO
<
BranchCompanyListVO
>
findBranchCompanyWithPage
(
@RequestBody
BranchCompanyFindDTO
branchCompanyFindDTO
);
@GetMapping
(
"/vehicleInfo/findVehicleIds"
)
List
<
String
>
findbyPlateNumberAndVehicleCod
(
@RequestParam
(
value
=
"plateNumber"
)
String
plateNumber
,
@RequestParam
(
value
=
"vehicleCode"
)
String
vehicleCode
);
}
xx-vehicle/xx-vehicle-api/src/main/java/com/xxfc/platform/vehicle/pojo/dto/BranchCompanyFindDTO.java
View file @
f81d776e
...
...
@@ -15,4 +15,6 @@ public class BranchCompanyFindDTO extends PageParam {
private
Integer
addrProvince
;
private
Integer
addrCity
;
private
String
name
;
}
xx-vehicle/xx-vehicle-api/src/main/java/com/xxfc/platform/vehicle/pojo/vo/VehiclePlatCataVo.java
0 → 100644
View file @
f81d776e
package
com
.
xxfc
.
platform
.
vehicle
.
pojo
.
vo
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/9/17 14:48
*/
@Data
@Builder
(
toBuilder
=
true
)
@NoArgsConstructor
@AllArgsConstructor
public
class
VehiclePlatCataVo
{
private
Integer
id
;
private
String
name
;
}
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/biz/BranchCompanyBiz.java
View file @
f81d776e
...
...
@@ -375,7 +375,7 @@ public class BranchCompanyBiz extends BaseBiz<BranchCompanyMapper, BranchCompany
public
PageDataVO
<
BranchCompanyListVO
>
findBranchCompanyWithPage
(
BranchCompanyFindDTO
branchCompanyFindDTO
)
{
PageDataVO
<
BranchCompanyListVO
>
pageDataVO
=
new
PageDataVO
<>();
PageDataVO
<
BranchCompanyListDTO
>
dataVO
=
PageDataVO
.
pageInfo
(
branchCompanyFindDTO
.
getPage
(),
branchCompanyFindDTO
.
getLimit
(),
()
->
mapper
.
findBranchCompanys
(
branchCompanyFindDTO
.
getAddrProvince
(),
branchCompanyFindDTO
.
getAddrCity
()));
PageDataVO
<
BranchCompanyListDTO
>
dataVO
=
PageDataVO
.
pageInfo
(
branchCompanyFindDTO
.
getPage
(),
branchCompanyFindDTO
.
getLimit
(),
()
->
mapper
.
findBranchCompanys
(
branchCompanyFindDTO
.
getAddrProvince
(),
branchCompanyFindDTO
.
getAddrCity
()
,
branchCompanyFindDTO
.
getName
()
));
List
<
BranchCompanyListDTO
>
data
=
dataVO
.
getData
();
if
(
CollectionUtils
.
isEmpty
(
data
))
{
return
pageDataVO
;
...
...
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/biz/VehicleActiveService.java
View file @
f81d776e
...
...
@@ -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 @
f81d776e
...
...
@@ -259,9 +259,9 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR
if
(
addOrUpdateVehicleVo
.
getNumberPlate
()
==
null
)
{
throw
new
BaseException
(
ResultCode
.
NUMBER_PLAT_CAN_NOT_BE_NULL
);
}
boolean
exist
=
checkCodeExist
(
addOrUpdateVehicleVo
.
getCode
(),
addOrUpdateVehicleVo
.
getId
());
if
(
exist
){
throw
new
BaseException
(
"车辆编码已经被占用"
,
400
);
boolean
exist
=
checkCodeExist
(
addOrUpdateVehicleVo
.
getCode
(),
addOrUpdateVehicleVo
.
getId
());
if
(
exist
)
{
throw
new
BaseException
(
"车辆编码已经被占用"
,
400
);
}
List
<
Vehicle
>
vehicles
=
mapper
.
lockByCode
(
addOrUpdateVehicleVo
);
return
vehicles
;
...
...
@@ -449,7 +449,7 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR
DateTime
endDay
=
DateTime
.
parse
(
bookVehicleVo
.
getBookEndDate
(),
DATE_TIME_FORMATTER
);
//转换日期范围为列表,并检查是否合法
fillDateList4DatePeriod
(
yearMonthAndDate
,
DateTime
.
parse
(
startDay
.
toString
(
DEFAULT_DATE_TIME_FORMATTER
),
DEFAULT_DATE_TIME_FORMATTER
),
DateTime
.
parse
(
endDay
.
toString
(
DEFAULT_DATE_TIME_FORMATTER
),
DEFAULT_DATE_TIME_FORMATTER
));
if
(
yearMonthAndDate
.
size
()
>
3
)
{
//连续的日期最多夸3个月
if
(
yearMonthAndDate
.
size
()
>
3
)
{
//连续的日期最多夸3个月
throw
new
BaseException
(
ResultCode
.
ONLY_BOOK_TWO_MONTH
);
}
...
...
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/biz/VehiclePlatCataBiz.java
View file @
f81d776e
...
...
@@ -3,7 +3,9 @@ package com.xxfc.platform.vehicle.biz;
import
com.ace.cache.annotation.Cache
;
import
com.ace.cache.annotation.CacheClear
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.TypeReference
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
...
...
@@ -16,7 +18,9 @@ import com.xxfc.platform.vehicle.entity.VehiclePlatCata;
import
com.xxfc.platform.vehicle.mapper.VehiclePlatCataMapper
;
import
com.xxfc.platform.vehicle.pojo.Cascade
;
import
com.xxfc.platform.vehicle.pojo.CataVo
;
import
com.xxfc.platform.vehicle.pojo.vo.VehiclePlatCataVo
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.assertj.core.util.Arrays
;
import
org.springframework.beans.BeanUtils
;
...
...
@@ -492,4 +496,19 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl
}
return
vpcMap
;
}
public
List
<
VehiclePlatCataVo
>
findVehicleCategoryByParentId
(
Integer
parentId
){
List
<
VehiclePlatCataVo
>
cataVos
=
new
ArrayList
<>();
Example
example
=
new
Example
(
VehiclePlatCata
.
class
);
Example
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andEqualTo
(
"parentId"
,
parentId
);
criteria
.
andEqualTo
(
"state"
,
0
);
List
<
VehiclePlatCata
>
vehiclePlatCatas
=
mapper
.
selectByExample
(
example
);
if
(
CollectionUtils
.
isEmpty
(
vehiclePlatCatas
)){
return
cataVos
;
}
cataVos
=
JSON
.
parseObject
(
JSON
.
toJSONString
(
vehiclePlatCatas
),
new
TypeReference
<
List
<
VehiclePlatCataVo
>>()
{
});
return
cataVos
;
}
}
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/mapper/BranchCompanyMapper.java
View file @
f81d776e
...
...
@@ -3,7 +3,6 @@ package com.xxfc.platform.vehicle.mapper;
import
com.alibaba.fastjson.JSONObject
;
import
com.xxfc.platform.vehicle.entity.BranchCompany
;
import
com.xxfc.platform.vehicle.pojo.dto.BranchCompanyListDTO
;
import
com.xxfc.platform.vehicle.pojo.vo.BranchCompanyListVO
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Select
;
import
tk.mybatis.mapper.additional.idlist.SelectByIdListMapper
;
...
...
@@ -18,7 +17,7 @@ public interface BranchCompanyMapper extends Mapper<BranchCompany>, SelectByIdLi
List
<
Integer
>
findCompanyIdsByAreaId
(
@Param
(
"areaId"
)
Integer
areaId
);
List
<
BranchCompanyListDTO
>
findBranchCompanys
(
@Param
(
"provinceCode"
)
Integer
provinceCode
,
@Param
(
"cityCode"
)
Integer
cityCode
);
List
<
BranchCompanyListDTO
>
findBranchCompanys
(
@Param
(
"provinceCode"
)
Integer
provinceCode
,
@Param
(
"cityCode"
)
Integer
cityCode
,
@Param
(
"name"
)
String
name
);
@Select
(
"SELECT `code`,count(id) cd FROM `vehicle` WHERE is_del=0 and number_plate LIKE '%测试%' GROUP BY code HAVING cd>=2"
)
...
...
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/rest/BranchCompanyController.java
View file @
f81d776e
...
...
@@ -202,8 +202,8 @@ public class BranchCompanyController extends BaseController<BranchCompanyBiz> {
}
@PostMapping
(
"/app/unauth/companys"
)
public
ObjectRestResponse
<
PageDataVO
<
BranchCompanyListVO
>
>
findBranchCompanyWithPage
(
@RequestBody
BranchCompanyFindDTO
branchCompanyFindDTO
){
public
PageDataVO
<
BranchCompanyListVO
>
findBranchCompanyWithPage
(
@RequestBody
BranchCompanyFindDTO
branchCompanyFindDTO
){
PageDataVO
<
BranchCompanyListVO
>
pageDataVO
=
baseBiz
.
findBranchCompanyWithPage
(
branchCompanyFindDTO
);
return
ObjectRestResponse
.
succ
(
pageDataVO
)
;
return
pageDataVO
;
}
}
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/rest/VehicleCataController.java
View file @
f81d776e
...
...
@@ -11,6 +11,7 @@ import com.xxfc.platform.vehicle.common.VehicleBaseController;
import
com.xxfc.platform.vehicle.entity.VehiclePlatCata
;
import
com.xxfc.platform.vehicle.pojo.Cascade
;
import
com.xxfc.platform.vehicle.pojo.CataVo
;
import
com.xxfc.platform.vehicle.pojo.vo.VehiclePlatCataVo
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.transaction.annotation.Transactional
;
...
...
@@ -185,6 +186,16 @@ public class VehicleCataController extends VehicleBaseController<VehiclePlatCata
return
baseBiz
.
setIsore
(
id
,
isMore
);
}
/**
* 根据类型id查询分类
* @param type
* @return
*/
@GetMapping
(
"/types"
)
public
ObjectRestResponse
<
List
<
VehiclePlatCataVo
>>
findVehiclePlatCate
(
@RequestParam
(
value
=
"type"
,
required
=
false
,
defaultValue
=
"7"
)
Integer
type
){
List
<
VehiclePlatCataVo
>
category
=
baseBiz
.
findVehicleCategoryByParentId
(
type
);
return
ObjectRestResponse
.
succ
(
category
);
}
...
...
xx-vehicle/xx-vehicle-server/src/main/resources/mapper/BranchCompanyMapper.xml
View file @
f81d776e
...
...
@@ -70,7 +70,11 @@
bc.longitude,
bc.latitude
FROM
(SELECT * FROM `branch_company` WHERE `is_del`=0 AND `state`=1) AS `bc`
(SELECT * FROM `branch_company` WHERE `is_del`=0 AND `state`=1
<if
test=
"name !=null and name !='' "
>
and name like concat('%',#{name},'%')
</if>
) AS `bc`
INNER JOIN (SELECT * FROM `company_base` WHERE `is_del`=0
<if
test=
"provinceCode != null"
>
AND `addr_province`=#{provinceCode}
...
...
xx-vehicle/xx-vehicle-server/src/main/resources/mapper/VehicleBookRecordMapper.xml
View file @
f81d776e
...
...
@@ -327,7 +327,7 @@
<select
id=
"selectByVehicleIdAndTime"
parameterType=
"java.util.Map"
resultMap=
"searchBookRecord"
>
select v1.* from vehicle_book_record v1
where v1.vehicle_id = #{vehicleId} and v1.book_end_date
>
#{time} and v1.status BETWEEN 1 and 2
where v1.vehicle_id = #{vehicleId} and v1.book_end_date
>
#{time} and v1.status BETWEEN 1 and 2
</select>
<select
id=
"selectZeroHourRecord"
resultMap=
"searchBookRecord"
parameterType=
"java.util.Map"
>
...
...
@@ -478,6 +478,9 @@
<if
test=
"bookType != null"
>
and v1.book_type = #{bookType}
</if>
<if
test=
"keywords != null and keywords != ''"
>
and (v3.number_plate like concat('%', #{keywords}, '%') or v3.code like concat('%', #{keywords}, '%'))
</if>
<if
test=
"companyIds != null and companyIds.size > 0"
>
and (v1.lift_company in
<foreach
collection=
"companyIds"
item=
"id"
open=
"("
separator=
","
close=
")"
>
...
...
xx-vehicle/xx-vehicle-server/src/main/resources/mapper/VehicleMapper.xml
View file @
f81d776e
...
...
@@ -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