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
913107af
Commit
913107af
authored
Sep 21, 2019
by
libin
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/dev' into dev
parents
3cab8ab9
8020fd61
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
65 additions
and
43 deletions
+65
-43
OrderVehicleCrosstown.java
...com/xxfc/platform/order/entity/OrderVehicleCrosstown.java
+2
-0
OrderAccountBiz.java
...ain/java/com/xxfc/platform/order/biz/OrderAccountBiz.java
+8
-2
OrderVehicleCrosstownBiz.java
...com/xxfc/platform/order/biz/OrderVehicleCrosstownBiz.java
+6
-3
OrderCalculateBiz.java
.../com/xxfc/platform/order/biz/inner/OrderCalculateBiz.java
+38
-37
RentDepositJobHandler.java
...xxfc/platform/order/jobhandler/RentDepositJobHandler.java
+10
-1
OrderVehicaleCrosstownMapper.xml
...rc/main/resources/mapper/OrderVehicaleCrosstownMapper.xml
+1
-0
No files found.
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderVehicleCrosstown.java
View file @
913107af
...
@@ -134,4 +134,6 @@ public class OrderVehicleCrosstown {
...
@@ -134,4 +134,6 @@ public class OrderVehicleCrosstown {
//操作人ID
//操作人ID
private
Integer
orperaterId
;
private
Integer
orperaterId
;
private
String
userLicenseImg
;
}
}
\ No newline at end of file
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderAccountBiz.java
View file @
913107af
...
@@ -352,8 +352,14 @@ public class OrderAccountBiz extends BaseBiz<OrderAccountMapper,OrderAccount> {
...
@@ -352,8 +352,14 @@ public class OrderAccountBiz extends BaseBiz<OrderAccountMapper,OrderAccount> {
//剩余押金 = 押金 - 违章保证金 - 定损金额
//剩余押金 = 押金 - 违章保证金 - 定损金额
oad
.
setDepositAmount
(
oad
.
getDepositAmount
().
subtract
(
illegalReserve
).
subtract
(
crosstown
.
getDeductionCost
()));
oad
.
setDepositAmount
(
oad
.
getDepositAmount
().
subtract
(
illegalReserve
).
subtract
(
crosstown
.
getDeductionCost
()));
handleCrosstownDetail
(
crosstown
,
oad
);
handleCrosstownDetail
(
crosstown
,
oad
);
BigDecimal
refundAmont
=
crosstown
.
getRestDeposit
().
subtract
(
illegalReserve
);
BigDecimal
originalRefundAmount
=
crosstown
.
getRestDeposit
().
add
(
crosstown
.
getDeductionCost
()).
subtract
(
illegalReserve
);
//退款
BigDecimal
refundAmont
=
oad
.
getDepositAmount
().
add
(
oad
.
getOrderAmount
());
//crosstown.getRestDeposit().subtract(illegalReserve);
//原退款的钱
BigDecimal
originalRefundAmount
=
oad
.
getOriginDepositAmount
().
add
(
oad
.
getOriginOrderAmount
());
//crosstown.getRestDeposit().add(crosstown.getDeductionCost()).subtract(illegalReserve);
String
refundDesc
=
"退还押金:"
+
refundAmont
.
toString
()+
"(已扣除 违章预备金:"
+
illegalReserve
.
toString
();
String
refundDesc
=
"退还押金:"
+
refundAmont
.
toString
()+
"(已扣除 违章预备金:"
+
illegalReserve
.
toString
();
refundDesc
=
handleDed
(
crosstown
,
refundDesc
);
refundDesc
=
handleDed
(
crosstown
,
refundDesc
);
refundDesc
+=
")"
;
refundDesc
+=
")"
;
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderVehicleCrosstownBiz.java
View file @
913107af
...
@@ -173,11 +173,11 @@ public class OrderVehicleCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
...
@@ -173,11 +173,11 @@ public class OrderVehicleCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
if
(!
flag
)
{
if
(!
flag
)
{
return
ObjectRestResponse
.
createFailedResult
(
3502
,
"今日不是交车日期"
);
return
ObjectRestResponse
.
createFailedResult
(
3502
,
"今日不是交车日期"
);
}
}
if
(
userDTO
.
getCompanyId
()
!=
orderRentVehicleDetail
.
getStartCompanyId
(
))
{
if
(
null
==
userDTO
.
getCompanyId
()
||
!
userDTO
.
getCompanyId
().
equals
(
orderRentVehicleDetail
.
getStartCompanyId
()
))
{
return
ObjectRestResponse
.
createFailedResult
(
3501
,
"无交车权限"
);
return
ObjectRestResponse
.
createFailedResult
(
3501
,
"无交车权限"
);
}
}
}
else
{
}
else
{
if
(
userDTO
.
getCompanyId
()
!=
orderRentVehicleDetail
.
getEndCompanyId
(
))
{
if
(
null
==
userDTO
.
getCompanyId
()
||
!
userDTO
.
getCompanyId
().
equals
(
orderRentVehicleDetail
.
getEndCompanyId
()
))
{
return
ObjectRestResponse
.
createFailedResult
(
3503
,
"无收车权限"
);
return
ObjectRestResponse
.
createFailedResult
(
3503
,
"无收车权限"
);
}
}
}
}
...
@@ -218,7 +218,7 @@ public class OrderVehicleCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
...
@@ -218,7 +218,7 @@ public class OrderVehicleCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
}
}
vehicleDepartureVo
.
setUse
(
"用户租车"
);
vehicleDepartureVo
.
setUse
(
"用户租车"
);
vehicleDepartureVo
.
setBookRecordId
(
orderRentVehicleDetail
.
getBookRecordId
());
vehicleDepartureVo
.
setBookRecordId
(
orderRentVehicleDetail
.
getBookRecordId
());
vehicleDepartureVo
.
setCheckMan
(
orderVehicleCrosstownDto
.
getLicense
Name
());
vehicleDepartureVo
.
setCheckMan
(
userDTO
.
get
Name
());
vehicleDepartureVo
.
setCheckManTel
(
orderVehicleCrosstownDto
.
getLicensePhone
());
vehicleDepartureVo
.
setCheckManTel
(
orderVehicleCrosstownDto
.
getLicensePhone
());
try
{
try
{
RestResponse
restResponse
=
vehicleFeign
.
departureBySmall
(
vehicleDepartureVo
);
RestResponse
restResponse
=
vehicleFeign
.
departureBySmall
(
vehicleDepartureVo
);
...
@@ -277,9 +277,11 @@ public class OrderVehicleCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
...
@@ -277,9 +277,11 @@ public class OrderVehicleCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
}
}
}
}
orderVehicleCrosstownDto
.
getViolateDetail
();
orderVehicleCrosstownDto
.
getViolateDetail
();
orderVehicleCrosstownDto
.
setUserLicenseImg
(
orderVehicleCrosstownDto
.
getLicenseImg
());
BigDecimal
amount
=
new
BigDecimal
(
cost
.
toString
()).
divide
(
new
BigDecimal
(
"1"
),
2
,
BigDecimal
.
ROUND_UP
);
BigDecimal
amount
=
new
BigDecimal
(
cost
.
toString
()).
divide
(
new
BigDecimal
(
"1"
),
2
,
BigDecimal
.
ROUND_UP
);
//出车成功后修改订单状态
//出车成功后修改订单状态
List
<
OrderVehicleCrosstownDto
>
oldValue
=
orderVehicleCrosstownBiz
.
selectByOrderId
(
orderVehicleCrosstownDto
);
List
<
OrderVehicleCrosstownDto
>
oldValue
=
orderVehicleCrosstownBiz
.
selectByOrderId
(
orderVehicleCrosstownDto
);
orderVehicleCrosstownDto
.
setUserLicenseImg
(
orderVehicleCrosstownDto
.
getLicenseImg
());
if
(
oldValue
.
size
()
==
1
)
{
if
(
oldValue
.
size
()
==
1
)
{
orderVehicleCrosstownDto
.
setDeductionCost
(
oldValue
.
get
(
0
).
getDeductionCost
().
add
(
amount
));
orderVehicleCrosstownDto
.
setDeductionCost
(
oldValue
.
get
(
0
).
getDeductionCost
().
add
(
amount
));
//扣除费用
//扣除费用
...
@@ -374,6 +376,7 @@ public class OrderVehicleCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
...
@@ -374,6 +376,7 @@ public class OrderVehicleCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
baseOrder
.
setStatus
(
OrderStatusEnum
.
ORDER_FINISH
.
getCode
());
baseOrder
.
setStatus
(
OrderStatusEnum
.
ORDER_FINISH
.
getCode
());
baseOrderBiz
.
updateSelectiveByIdReT
(
baseOrder
);
baseOrderBiz
.
updateSelectiveByIdReT
(
baseOrder
);
orderRentVehicleDetail
.
setFixedLossStatus
(
1
);
orderRentVehicleDetail
.
setFixedLossStatus
(
1
);
baseOrderBiz
.
sendOrderMq
(
orderRentVehicleDetail
,
null
,
null
,
baseOrder
,
OrderMQDTO
.
ORDER_FINISH
);
orderRentVehicleBiz
.
updateSelectiveByIdRe
(
orderRentVehicleDetail
);
orderRentVehicleBiz
.
updateSelectiveByIdRe
(
orderRentVehicleDetail
);
}
}
}
else
if
(
baseOrder
.
getStatus
()
==
OrderStatusEnum
.
ORDER_FIXED_LOSS
.
getCode
())
{
//定损后还车
}
else
if
(
baseOrder
.
getStatus
()
==
OrderStatusEnum
.
ORDER_FIXED_LOSS
.
getCode
())
{
//定损后还车
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/inner/OrderCalculateBiz.java
View file @
913107af
...
@@ -78,51 +78,52 @@ public class OrderCalculateBiz {
...
@@ -78,51 +78,52 @@ public class OrderCalculateBiz {
Integer
residueDays
=
orderItem
.
getTotalNum
()
-
useDays
;
Integer
residueDays
=
orderItem
.
getTotalNum
()
-
useDays
;
//过了出发时间取消订单 ,优先使用免费天数
//过了出发时间取消订单 ,优先使用免费天数
if
(
backFreeDays
<=
0
)
{
if
(
backFreeDays
<=
0
)
{
//
使用天数 小于 总
天数
//
消费
天数
if
(
useDays
<
orderItem
.
getTotalNum
())
{
Integer
consumeDays
=
useDays
-
freeDays
;
//需要扣除订单费用
//如果使用天数 大于 总天数
//判断是否达到优惠券条件 不符合则返还优惠券
if
(
useDays
>
orderItem
.
getTotalNum
())
{
//消费天数
//消费天数
Integer
consumeDays
=
0
-
backFreeDays
;
consumeDays
=
orderItem
.
getTotalNum
()
-
freeDays
;
//计算使用天数的费用
}
consumeAmount
=
orderItem
.
getUnitPrice
().
multiply
(
new
BigDecimal
(
consumeDays
+
""
));
if
(
StrUtil
.
isNotBlank
(
baseOrder
.
getCouponTickerNos
()))
{
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
);
if
(
couponAmount
.
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
{
//能够使用优惠券,则不返还
couponAmounts
.
add
(
couponAmount
);
}
else
{
backCouponNos
.
add
(
tickerNo
);
}
}
for
(
BigDecimal
couponAmount
:
couponAmounts
)
{
//需要扣除订单费用
consumeAmount
=
consumeAmount
.
subtract
(
couponAmount
);
//判断是否达到优惠券条件 不符合则返还优惠券
//计算使用天数的费用
consumeAmount
=
orderItem
.
getUnitPrice
().
multiply
(
new
BigDecimal
(
consumeDays
+
""
));
if
(
StrUtil
.
isNotBlank
(
baseOrder
.
getCouponTickerNos
()))
{
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
);
if
(
couponAmount
.
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
{
//能够使用优惠券,则不返还
couponAmounts
.
add
(
couponAmount
);
}
else
{
backCouponNos
.
add
(
tickerNo
);
}
}
}
}
//设置消费金额
for
(
BigDecimal
couponAmount
:
couponAmounts
)
{
consumeAmount
=
consumeAmount
.
add
(
otherItemRealAmount
);
consumeAmount
=
consumeAmount
.
subtract
(
couponAmount
);
inProgressVO
.
setConsumeAmount
(
consumeAmount
);
if
(
consumeAmount
.
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
{
//消费金额 大于0 增加额外费用
OrderAccountDeduction
extraDeduction
=
orderAccountBiz
.
initDeduction
(
consumeAmount
,
"消费金额"
,
DeductionTypeEnum
.
CONSUME
,
OrderAccountDeduction
.
ORIGIN_ORDER_DEPOSIT
);
oad
.
getDeductions
().
add
(
extraDeduction
);
}
}
}
//消费金额 小于商品的金额 返回钱
//设置消费金额
if
(
consumeAmount
.
compareTo
(
baseOrder
.
getGoodsAmount
())
<=
0
)
{
consumeAmount
=
consumeAmount
.
add
(
otherItemRealAmount
);
//设置返回钱
inProgressVO
.
setConsumeAmount
(
consumeAmount
);
refundAmount
=
refundAmount
.
add
(
baseOrder
.
getGoodsAmount
().
subtract
(
consumeAmount
));
}
else
{
if
(
consumeAmount
.
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
{
//设置额外扣减(押金里面扣)
//消费金额 大于0 增加额外费用
inProgressVO
.
setExtraAmount
(
consumeAmount
.
subtract
(
baseOrder
.
getGoodsAmount
())
);
OrderAccountDeduction
extraDeduction
=
orderAccountBiz
.
initDeduction
(
consumeAmount
,
"消费金额"
,
DeductionTypeEnum
.
CONSUME
,
OrderAccountDeduction
.
ORIGIN_ORDER_DEPOSIT
);
}
oad
.
getDeductions
().
add
(
extraDeduction
);
}
else
{
}
//消费金额 小于商品的金额 返回钱
if
(
consumeAmount
.
compareTo
(
baseOrder
.
getGoodsAmount
())
<=
0
)
{
//设置返回钱
refundAmount
=
refundAmount
.
add
(
baseOrder
.
getGoodsAmount
().
subtract
(
consumeAmount
));
}
else
{
//设置额外扣减(押金里面扣)
inProgressVO
.
setExtraAmount
(
consumeAmount
.
subtract
(
baseOrder
.
getGoodsAmount
()));
}
}
}
else
{
}
else
{
//返回剩余免费天数,返回优惠券,订单款
//返回剩余免费天数,返回优惠券,订单款
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/jobhandler/RentDepositJobHandler.java
View file @
913107af
...
@@ -10,6 +10,7 @@ import com.xxfc.platform.order.entity.BaseOrder;
...
@@ -10,6 +10,7 @@ import com.xxfc.platform.order.entity.BaseOrder;
import
com.xxfc.platform.order.entity.OrderRentVehicleDetail
;
import
com.xxfc.platform.order.entity.OrderRentVehicleDetail
;
import
com.xxfc.platform.order.entity.OrderVehicleCrosstown
;
import
com.xxfc.platform.order.entity.OrderVehicleCrosstown
;
import
com.xxfc.platform.order.entity.OrderViolation
;
import
com.xxfc.platform.order.entity.OrderViolation
;
import
com.xxfc.platform.order.pojo.account.OrderAccountDeduction
;
import
com.xxfc.platform.order.pojo.account.OrderAccountDetail
;
import
com.xxfc.platform.order.pojo.account.OrderAccountDetail
;
import
com.xxfc.platform.universal.constant.DictionaryKey
;
import
com.xxfc.platform.universal.constant.DictionaryKey
;
import
com.xxfc.platform.universal.entity.Dictionary
;
import
com.xxfc.platform.universal.entity.Dictionary
;
...
@@ -113,9 +114,16 @@ public class RentDepositJobHandler extends IJobHandler {
...
@@ -113,9 +114,16 @@ public class RentDepositJobHandler extends IJobHandler {
setIsDel
(
SYS_FALSE
);
setIsDel
(
SYS_FALSE
);
}});
}});
OrderAccountDetail
oad
=
new
OrderAccountDetail
();
String
refundDesc
=
"退还押金:"
;
String
refundDesc
=
"退还押金:"
;
BigDecimal
refundAmont
;
BigDecimal
refundAmont
;
if
(
null
!=
orderViolation
)
{
if
(
null
!=
orderViolation
)
{
//设置扣款项
oad
.
getDeductions
().
add
(
orderAccountBiz
.
initDeduction
(
orderViolation
.
getPrice
(),
DeductionTypeEnum
.
VIOLATE_TRAFFIC_DEDUCT
.
getDesc
(),
DeductionTypeEnum
.
VIOLATE_TRAFFIC_DEDUCT
,
OrderAccountDeduction
.
ORIGIN_DEPOSIT
)
);
//还车扣除款 剩余的 钱,再减去违章预备金
//还车扣除款 剩余的 钱,再减去违章预备金
refundAmont
=
orvd
.
getReturnPayResidue
().
subtract
(
orderViolation
.
getPrice
());
refundAmont
=
orvd
.
getReturnPayResidue
().
subtract
(
orderViolation
.
getPrice
());
refundDesc
+=
refundAmont
.
toString
()+
"(已扣除 违章扣款:"
+
refundAmont
.
toString
();
refundDesc
+=
refundAmont
.
toString
()+
"(已扣除 违章扣款:"
+
refundAmont
.
toString
();
...
@@ -124,7 +132,8 @@ public class RentDepositJobHandler extends IJobHandler {
...
@@ -124,7 +132,8 @@ public class RentDepositJobHandler extends IJobHandler {
refundAmont
=
orvd
.
getReturnPayResidue
();
refundAmont
=
orvd
.
getReturnPayResidue
();
refundDesc
+=
refundAmont
.
toString
();
refundDesc
+=
refundAmont
.
toString
();
}
}
OrderAccountDetail
oad
=
new
OrderAccountDetail
();
oad
.
setOriginDepositAmount
(
orvd
.
getReturnPayResidue
());
oad
.
setDepositAmount
(
refundAmont
);
orderAccountBiz
.
refundTrigger
(
baseOrder
,
orvd
,
BigDecimal
.
ZERO
,
orvd
.
getReturnPayResidue
(),
refundAmont
,
refundDesc
,
RefundStatusEnum
.
REFUND_DEPOSIT
.
getCode
(),
AccountTypeEnum
.
OUT_RESIDUE_DEPOSIT
,
oad
);
orderAccountBiz
.
refundTrigger
(
baseOrder
,
orvd
,
BigDecimal
.
ZERO
,
orvd
.
getReturnPayResidue
(),
refundAmont
,
refundDesc
,
RefundStatusEnum
.
REFUND_DEPOSIT
.
getCode
(),
AccountTypeEnum
.
OUT_RESIDUE_DEPOSIT
,
oad
);
orderDepositRefundRecordBiz
.
completeRecordStatus
(
crosstown
.
getId
(),
DepositRefundStatus
.
VIOLATIONARRIVAL
);
orderDepositRefundRecordBiz
.
completeRecordStatus
(
crosstown
.
getId
(),
DepositRefundStatus
.
VIOLATIONARRIVAL
);
orderMsgBiz
.
handelMsgDeposit
(
orvd
,
baseOrder
,
userFeign
.
userDetailById
(
baseOrder
.
getUserId
()).
getData
());
orderMsgBiz
.
handelMsgDeposit
(
orvd
,
baseOrder
,
userFeign
.
userDetailById
(
baseOrder
.
getUserId
()).
getData
());
...
...
xx-order/xx-order-server/src/main/resources/mapper/OrderVehicaleCrosstownMapper.xml
View file @
913107af
...
@@ -27,6 +27,7 @@
...
@@ -27,6 +27,7 @@
<result
column=
"rest_deposit"
jdbcType=
"INTEGER"
property=
"restDeposit"
/>
<result
column=
"rest_deposit"
jdbcType=
"INTEGER"
property=
"restDeposit"
/>
<result
column=
"user_license_id"
jdbcType=
"VARCHAR"
property=
"userLicenseId"
/>
<result
column=
"user_license_id"
jdbcType=
"VARCHAR"
property=
"userLicenseId"
/>
<result
column=
"violate_amount_detail"
jdbcType=
"VARCHAR"
property=
"violateDetail"
/>
<result
column=
"violate_amount_detail"
jdbcType=
"VARCHAR"
property=
"violateDetail"
/>
<result
column=
"user_license_img"
jdbcType=
"VARCHAR"
property=
"userLicenseImg"
/>
</resultMap>
</resultMap>
<resultMap
id=
"orderMap"
type=
"com.xxfc.platform.order.pojo.order.OrderVehicleCrosstownDto"
>
<resultMap
id=
"orderMap"
type=
"com.xxfc.platform.order.pojo.order.OrderVehicleCrosstownDto"
>
<result
column=
"id"
javaType=
"java.lang.Integer"
property=
"id"
/>
<result
column=
"id"
javaType=
"java.lang.Integer"
property=
"id"
/>
...
...
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