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
f33301bd
Commit
f33301bd
authored
Nov 26, 2025
by
jianan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新单跟进91
parent
59620efe
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
28 additions
and
21 deletions
+28
-21
yd-csf-service/src/main/java/com/yd/csf/service/model/CommissionExpected.java
+11
-1
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/CommissionServiceImpl.java
+12
-17
yd-csf-service/src/main/resources/mappers/CommissionExpectedMapper.xml
+3
-1
yd-csf-service/src/main/resources/mappers/CommissionMapper.xml
+2
-2
No files found.
yd-csf-service/src/main/java/com/yd/csf/service/model/CommissionExpected.java
View file @
f33301bd
...
...
@@ -66,7 +66,7 @@ public class CommissionExpected implements Serializable {
private
String
commissionType
;
/**
* 来佣比例
* 来佣比例
(%)
*/
private
BigDecimal
commissionRatio
;
...
...
@@ -86,6 +86,16 @@ public class CommissionExpected implements Serializable {
private
String
status
;
/**
* 默认结算汇率
*/
private
BigDecimal
defaultExchangeRate
;
/**
* 预计来佣金额
*/
private
BigDecimal
expectedAmount
;
/**
* 已入账金额
*/
private
BigDecimal
paidAmount
;
...
...
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/CommissionServiceImpl.java
View file @
f33301bd
...
...
@@ -23,6 +23,7 @@ import com.yd.csf.service.vo.CommissionStatisticsVO;
import
com.yd.csf.service.vo.CommissionVO
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang3.ObjectUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.stereotype.Service
;
...
...
@@ -123,19 +124,6 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
// 更新属性
BeanUtils
.
copyProperties
(
commissionUpdateRequest
,
commission
,
"id"
,
"commissionBizId"
);
// 查询预计来佣
CommissionExpected
commissionExpected
=
queryByCommission
(
commission
);
if
(
commissionExpected
!=
null
)
{
// 对比预计来佣
compareWithExpected
(
commission
.
getPremium
(),
commission
,
commissionExpected
);
commissionExpectedService
.
updateById
(
commissionExpected
);
}
else
{
// 预计来佣不存在,来佣状态设置为 比对失败
commission
.
setStatus
(
CommissionStatusEnum
.
COMPARE_FAIL
.
getItemValue
());
commission
.
setRemark
(
"未找到当前来佣对应的预计来佣,比对失败"
);
}
commission
.
setUpdaterId
(
loginUserId
);
commission
.
setUpdateTime
(
new
Date
());
...
...
@@ -381,7 +369,7 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
}
/**
* 比对时,
保费*预计来佣比例*结算汇率,和实际入账金额
对比
* 比对时,
当前来佣比例=当前入账金额/结算汇率/保费 和预计来佣的来佣比例
对比
*
* @param commission
* @param expected
...
...
@@ -389,14 +377,20 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
@Override
public
void
compareWithExpected
(
String
premium
,
Commission
commission
,
CommissionExpected
expected
)
{
if
(
expected
!=
null
)
{
// 当前来佣比例=当前入账金额/结算汇率/保费
BigDecimal
currentCommissionRatio
=
commission
.
getAmount
()
.
divide
(
new
BigDecimal
(
premium
),
2
,
RoundingMode
.
HALF_UP
)
.
divide
(
new
BigDecimal
(
commission
.
getExchangeRate
()),
2
,
RoundingMode
.
HALF_UP
);
// 预计来佣比例
BigDecimal
expectedCommissionRatio
=
expected
.
getCommissionRatio
();
// 预计总金额
BigDecimal
expectedAmount
=
new
BigDecimal
(
premium
)
.
multiply
(
expected
.
getCommissionRatio
())
.
multiply
(
new
BigDecimal
(
commission
.
getExchangeRate
()
));
.
multiply
(
expected
.
getDefaultExchangeRate
(
));
// 已入账金额
BigDecimal
paidAmount
=
commission
.
getAmount
().
add
(
expected
.
getPaidAmount
(
));
BigDecimal
paidAmount
=
commission
.
getAmount
().
add
(
ObjectUtils
.
defaultIfNull
(
expected
.
getPaidAmount
(),
BigDecimal
.
ZERO
));
if
(
paidAmount
.
compareTo
(
expectedAmount
)
==
0
)
{
if
(
currentCommissionRatio
.
compareTo
(
expectedCommissionRatio
)
==
0
)
{
// 一致,来佣状态设置为 比对成功
commission
.
setStatus
(
CommissionStatusEnum
.
COMPARE_SUCCESS
.
getItemValue
());
// 预计来佣的状态设置为 已来佣
...
...
@@ -413,6 +407,7 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
// 待入账金额 = 预计来佣总金额 - 已入账金额
commission
.
setPendingAmount
(
expectedAmount
.
subtract
(
paidAmount
).
setScale
(
2
,
RoundingMode
.
HALF_UP
));
// 预计来佣的已入账金额更新为 已入账金额
expected
.
setExpectedAmount
(
expectedAmount
.
setScale
(
2
,
RoundingMode
.
HALF_UP
));
expected
.
setPaidAmount
(
paidAmount
.
setScale
(
2
,
RoundingMode
.
HALF_UP
));
// 保存比对记录
...
...
yd-csf-service/src/main/resources/mappers/CommissionExpectedMapper.xml
View file @
f33301bd
...
...
@@ -18,6 +18,8 @@
<result
property=
"currency"
column=
"currency"
/>
<result
property=
"commissionDate"
column=
"commission_date"
/>
<result
property=
"status"
column=
"status"
/>
<result
property=
"defaultExchangeRate"
column=
"default_exchange_rate"
/>
<result
property=
"expectedAmount"
column=
"expected_amount"
/>
<result
property=
"paidAmount"
column=
"paid_amount"
/>
<result
property=
"remark"
column=
"remark"
/>
<result
property=
"isDeleted"
column=
"is_deleted"
/>
...
...
@@ -29,7 +31,7 @@
<sql
id=
"Base_Column_List"
>
id,commission_expected_biz_id,policy_no,reconciliation_company,reconciliation_company_biz_id,commission_period,
total_period,commission_name,commission_type,commission_ratio,currency,
total_period,commission_name,commission_type,commission_ratio,currency,
default_exchange_rate,expected_amount,
commission_date,status,paid_amount,remark,is_deleted,creator_id,
updater_id,create_time,update_time
</sql>
...
...
yd-csf-service/src/main/resources/mappers/CommissionMapper.xml
View file @
f33301bd
...
...
@@ -62,8 +62,8 @@
COUNT(DISTINCT c.policy_no) as totalPolicyCount
FROM commission c
LEFT JOIN (
SELECT policy_no, SUM(
expected_
amount) as amount
FROM commission
SELECT policy_no, SUM(amount) as amount
FROM commission
_expected
GROUP BY policy_no
) e ON c.policy_no = e.policy_no
<where>
...
...
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