Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yd-csf
Overview
Overview
Details
Activity
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
xingmin
yd-csf
Commits
bec30421
Commit
bec30421
authored
Apr 29, 2026
by
zhangxingmin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
push
parent
8c94081a
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
15 additions
and
9 deletions
+15
-9
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/CommissionExpectedServiceImpl.java
+15
-9
No files found.
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/CommissionExpectedServiceImpl.java
View file @
bec30421
...
...
@@ -244,7 +244,11 @@ public class CommissionExpectedServiceImpl extends ServiceImpl<CommissionExpecte
vo
.
setCommissionDateMonth
(
expected
.
getCommissionDate
());
vo
.
setType
(
1
);
vo
.
setNo
(
StringUtils
.
isNotBlank
(
expected
.
getReceivableNo
())
?
expected
.
getReceivableNo
()
:
expected
.
getCommissionExpectedBizId
());
//入账年月实
vo
.
setCommissionDate
(
null
);
//本次入账比例
vo
.
setRevenueRatio
(
null
);
// 填充保单信息
Policy
policy
=
policyMap
.
get
(
expected
.
getPolicyNo
());
if
(
policy
!=
null
)
{
...
...
@@ -278,18 +282,18 @@ public class CommissionExpectedServiceImpl extends ServiceImpl<CommissionExpecte
// 达成率缺口 = 1 - 实佣率/产品来佣率
BigDecimal
gap
=
BigDecimal
.
ONE
.
subtract
(
paidRatio
.
divide
(
commissionRatio
,
4
,
RoundingMode
.
HALF_UP
));
vo
.
setGapRate
(
gap
.
compareTo
(
BigDecimal
.
ZERO
)
<
0
?
BigDecimal
.
ZERO
:
gap
);
// 本次入账比例(主记录无意义)
vo
.
setRevenueRatio
(
null
);
// 计算累积已入账比例 = 总实佣率/产品对应来佣率
BigDecimal
totalRevenueRatio
=
paidRatio
.
divide
(
commissionRatio
,
4
,
RoundingMode
.
HALF_UP
);
vo
.
setTotalRevenueRatio
(
totalRevenueRatio
.
multiply
(
BigDecimal
.
valueOf
(
100
))
.
setScale
(
2
,
RoundingMode
.
HALF_UP
));
}
else
{
vo
.
setRealRate
(
BigDecimal
.
ZERO
);
vo
.
setGapRate
(
BigDecimal
.
ZERO
);
// 当产品来佣率为零或 null 时,总入账比例无意义,设置为 0
vo
.
setTotalRevenueRatio
(
BigDecimal
.
ZERO
);
}
//计算累积已入账比例 = 总实佣率/产品对应来佣率
BigDecimal
totalRevenueRatio
=
paidRatio
.
divide
(
commissionRatio
,
4
,
RoundingMode
.
HALF_UP
);
vo
.
setTotalRevenueRatio
(
totalRevenueRatio
.
multiply
(
BigDecimal
.
valueOf
(
100
))
.
setScale
(
2
,
RoundingMode
.
HALF_UP
));
// 待入账金额(已实现归零逻辑)
if
(
commissionRatio
!=
null
&&
paidRatio
.
compareTo
(
commissionRatio
)
>=
0
)
{
vo
.
setPendingAmount
(
BigDecimal
.
ZERO
);
...
...
@@ -372,13 +376,15 @@ public class CommissionExpectedServiceImpl extends ServiceImpl<CommissionExpecte
if
(
productRatio
!=
null
&&
productRatio
.
compareTo
(
BigDecimal
.
ZERO
)
!=
0
)
{
// 本次入账比例 = 本次实佣率 / 产品来佣率
BigDecimal
revenue
=
currentRatio
.
divide
(
productRatio
,
4
,
RoundingMode
.
HALF_UP
);
vo
.
setRevenueRatio
(
revenue
.
compareTo
(
BigDecimal
.
ONE
)
>
0
?
BigDecimal
.
ONE
:
revenue
);
BigDecimal
revenueRatio
=
revenue
.
compareTo
(
BigDecimal
.
ONE
)
>
0
?
BigDecimal
.
ONE
:
revenue
;
vo
.
setRevenueRatio
(
revenueRatio
.
multiply
(
BigDecimal
.
valueOf
(
100
))
.
setScale
(
2
,
RoundingMode
.
HALF_UP
));
// 本次达成率缺口 = 1 - (实佣率(本次) / 产品来佣率)
BigDecimal
cumulativePaidRatio
=
currentRatio
!=
null
?
currentRatio
:
BigDecimal
.
ZERO
;
BigDecimal
gap
=
BigDecimal
.
ONE
.
subtract
(
cumulativePaidRatio
.
divide
(
productRatio
,
4
,
RoundingMode
.
HALF_UP
));
vo
.
setGapRate
(
gap
.
compareTo
(
BigDecimal
.
ZERO
)
<
0
?
BigDecimal
.
ZERO
:
gap
);
}
else
{
vo
.
setRevenueRatio
(
null
);
vo
.
setRevenueRatio
(
BigDecimal
.
ZERO
);
vo
.
setGapRate
(
BigDecimal
.
ZERO
);
}
...
...
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