Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
O
oms-ci-test
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
test-ci
oms-ci-test
Commits
d7d12576
提交
d7d12576
authored
9月 26, 2023
作者:
xiaowang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
租赁订单
上级
9f520a47
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
63 行增加
和
29 行删除
+63
-29
LeaseOrderServiceImpl.java
...com/mmc/oms/service/lease/impl/LeaseOrderServiceImpl.java
+63
-29
UavOrderServiceImpl.java
...ava/com/mmc/oms/service/uav/impl/UavOrderServiceImpl.java
+0
-0
没有找到文件。
src/main/java/com/mmc/oms/service/lease/impl/LeaseOrderServiceImpl.java
浏览文件 @
d7d12576
...
...
@@ -151,41 +151,73 @@ public class LeaseOrderServiceImpl implements LeaseOrderService {
BigDecimal
salaryAmount
=
BigDecimal
.
ZERO
;
Integer
statusCode
=
null
;
// 获取用户钱包信息
ResultBody
<
PayWalletDTO
>
payResInfo
=
userAppApi
.
getCurrentUserPayWalletInfo
(
currentAccount
.
getToken
());
if
(!
payResInfo
.
getCode
().
equals
(
ResultEnum
.
SUCCESS
.
getResultCode
())
||
payResInfo
.
getResult
()
==
null
)
{
return
payResInfo
;
}
PayWalletDTO
payWalletDTO
=
payResInfo
.
getResult
();
if
(
param
.
getDeductShareAmount
().
equals
(
1
))
{
if
(
otherAmount
.
compareTo
(
payWalletDTO
.
getCashAmt
())
>=
0
)
{
// 抵扣云享金小于等于订单总额时,直接使用云享金
shareAmount
=
payWalletDTO
.
getCashAmt
();
}
else
{
// 余额超过订单金额时,订单总额使用余额支付
shareAmount
=
otherAmount
;
if
(
param
.
getDeductSalaryAmount
().
equals
(
1
)
||
param
.
getDeductShareAmount
().
equals
(
1
))
{
ResultBody
<
PayWalletDTO
>
payResInfo
=
userAppApi
.
getCurrentUserPayWalletInfo
(
currentAccount
.
getToken
());
if
(!
payResInfo
.
getCode
().
equals
(
ResultEnum
.
SUCCESS
.
getResultCode
())
||
payResInfo
.
getResult
()
==
null
)
{
return
payResInfo
;
}
}
otherAmount
=
otherAmount
.
subtract
(
shareAmount
);
// 支付完成
if
(
otherAmount
.
compareTo
(
BigDecimal
.
ZERO
)
==
0
)
{
statusCode
=
LeaseOrderStatus
.
PAID
.
getCode
();
}
else
{
if
(
param
.
getDeductSalaryAmount
().
equals
(
1
))
{
if
(
otherAmount
.
compareTo
(
payWalletDTO
.
getSalaryAmt
())
>=
0
)
{
// 抵扣余额小于等于订单总额时,直接使用余额
salaryAmount
=
payWalletDTO
.
getSalaryAmt
();
PayWalletDTO
payWalletDTO
=
payResInfo
.
getResult
();
// 先使用云享金来扣减押金
if
(
param
.
getDeductShareAmount
().
equals
(
1
))
{
if
(
otherCashPledge
.
compareTo
(
payWalletDTO
.
getCashAmt
())
>=
0
)
{
// 不够抵扣押金
shareCashPledge
=
payWalletDTO
.
getCashAmt
();
}
else
{
//
余额超过订单金额时,订单总额使用余额支付
s
alaryAmount
=
otherAmount
;
//
够抵扣押金
s
hareCashPledge
=
otherCashPledge
;
}
otherCashPledge
=
otherCashPledge
.
subtract
(
shareCashPledge
);
if
(
otherCashPledge
.
compareTo
(
BigDecimal
.
ZERO
)
==
0
)
{
otherAmount
=
otherAmount
.
subtract
(
shareCashPledge
);
}
else
{
if
(
param
.
getDeductSalaryAmount
().
equals
(
1
))
{
if
(
otherCashPledge
.
compareTo
(
payWalletDTO
.
getSalaryAmt
())
>=
0
)
{
salaryCashPledge
=
payWalletDTO
.
getSalaryAmt
();
}
else
{
salaryCashPledge
=
otherCashPledge
;
}
otherCashPledge
=
otherCashPledge
.
subtract
(
salaryCashPledge
);
if
(
otherCashPledge
.
compareTo
(
BigDecimal
.
ZERO
)
==
0
)
{
otherAmount
=
otherAmount
.
subtract
(
salaryCashPledge
.
add
(
shareCashPledge
));
}
}
}
}
otherAmount
=
otherAmount
.
subtract
(
salaryAmount
);
if
(
otherAmount
.
compareTo
(
BigDecimal
.
ZERO
)
==
0
)
{
statusCode
=
LeaseOrderStatus
.
PAID
.
getCode
();
// 抵扣完后当押金为0的时候 继续抵扣其余金额
if
(
otherCashPledge
.
compareTo
(
BigDecimal
.
ZERO
)
==
0
)
{
if
(
param
.
getDeductShareAmount
().
equals
(
1
))
{
if
(
otherAmount
.
compareTo
(
payWalletDTO
.
getCashAmt
().
subtract
(
shareCashPledge
))
>=
0
)
{
// 抵扣云享金小于等于订单总额时,直接使用云享金
shareAmount
=
payWalletDTO
.
getCashAmt
().
subtract
(
shareCashPledge
);
}
else
{
// 余额超过订单金额时,订单总额使用余额支付
shareAmount
=
otherAmount
;
}
}
otherAmount
=
otherAmount
.
subtract
(
shareAmount
);
// 支付完成
if
(
otherAmount
.
compareTo
(
BigDecimal
.
ZERO
)
==
0
)
{
statusCode
=
LeaseOrderStatus
.
PAID
.
getCode
();
}
else
{
if
(
param
.
getDeductSalaryAmount
().
equals
(
1
))
{
if
(
otherAmount
.
compareTo
(
payWalletDTO
.
getSalaryAmt
().
subtract
(
salaryCashPledge
))
>=
0
)
{
// 抵扣余额小于等于订单总额时,直接使用余额
salaryAmount
=
payWalletDTO
.
getSalaryAmt
().
subtract
(
salaryCashPledge
);
}
else
{
// 余额超过订单金额时,订单总额使用余额支付
salaryAmount
=
otherAmount
;
}
}
otherAmount
=
otherAmount
.
subtract
(
salaryAmount
);
if
(
otherAmount
.
compareTo
(
BigDecimal
.
ZERO
)
==
0
)
{
statusCode
=
LeaseOrderStatus
.
PAID
.
getCode
();
}
}
}
// 抵扣余额
uavOrderService
.
deductWallet
(
shareAmount
.
add
(
shareCashPledge
),
salaryAmount
.
add
(
salaryCashPledge
),
currentAccount
);
}
// 抵扣余额
uavOrderService
.
deductWallet
(
shareAmount
,
salaryAmount
,
currentAccount
);
// 获取商品主图
String
url
=
null
;
for
(
GoodsResourcesVO
goodsResourcesVO
:
leaseGoodsVO
.
getResourcesList
())
{
...
...
@@ -212,6 +244,8 @@ public class LeaseOrderServiceImpl implements LeaseOrderService {
}
leaseOrderDO
.
setSalaryAmount
(
salaryAmount
);
leaseOrderDO
.
setSku
(
param
.
getSku
());
leaseOrderDO
.
setSalaryCashPledge
(
salaryCashPledge
);
leaseOrderDO
.
setShareCashPledge
(
shareCashPledge
);
leaseOrderDO
.
setShareAmount
(
shareAmount
);
leaseOrderDO
.
setOtherAmount
(
otherAmount
);
leaseOrderDO
.
setUserAddressId
(
param
.
getUserAddressId
());
...
...
src/main/java/com/mmc/oms/service/uav/impl/UavOrderServiceImpl.java
浏览文件 @
d7d12576
差异被折叠。
点击展开。
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论