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
8285d4f8
Commit
8285d4f8
authored
Jan 05, 2026
by
jianan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
前端对接问题修复59
parent
cb305a48
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
23 additions
and
20 deletions
+23
-20
yd-csf-api/src/main/java/com/yd/csf/api/controller/ApiCommissionController.java
+13
-18
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/CommissionServiceImpl.java
+10
-2
No files found.
yd-csf-api/src/main/java/com/yd/csf/api/controller/ApiCommissionController.java
View file @
8285d4f8
...
...
@@ -29,21 +29,16 @@ import org.redisson.api.RLock;
import
org.redisson.api.RedissonClient
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.support.TransactionSynchronization
;
import
org.springframework.transaction.support.TransactionSynchronizationManager
;
import
org.springframework.transaction.support.TransactionTemplate
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.io.IOException
;
import
java.math.BigDecimal
;
import
java.time.LocalDate
;
import
java.util.*
;
import
java.util.concurrent.TimeUnit
;
import
java.util.function.Function
;
import
java.util.stream.Collectors
;
/**
...
...
@@ -75,6 +70,8 @@ public class ApiCommissionController {
private
PolicyFollowService
policyFollowService
;
@Resource
private
PolicyService
policyService
;
@Resource
private
TransactionTemplate
transactionTemplate
;
@PostMapping
(
"/upload/excel"
)
...
...
@@ -151,25 +148,26 @@ public class ApiCommissionController {
// 数据处理
List
<
Commission
>
entities
=
processData
(
dataList
,
loginUserId
,
reconciliationYearMonth
);
transactionTemplate
.
execute
(
status
->
{
// 保存来佣数据
commissionService
.
saveBatch
(
entities
);
return
null
;
});
// // 转换为 VO
// List<CommissionVO> commissionVOList = commissionService.getCommissionList(entities);
// 批量比对
TransactionSynchronizationManager
.
registerSynchronization
(
new
TransactionSynchronization
()
{
@Override
public
void
afterCommit
()
{
// 开启新事务,比对数据
transactionTemplate
.
execute
(
status
->
{
try
{
// 重新查询最新的数据,获取已提交的数据
commissionAsyncService
.
commissionCompareBatch
(
entities
);
}
catch
(
Exception
e
)
{
// 比对失败不影响主事务,记录日志即可
e
.
printStackTrace
();
log
.
error
(
"批量导入, 比对操作执行失败, error: {}"
,
e
.
getMessage
());
}
}
}
);
return
null
;
});
return
Result
.
success
(
true
);
}
...
...
@@ -227,9 +225,6 @@ public class ApiCommissionController {
// 补充完整字段
commissionService
.
fillCommissionList
(
entities
);
// 保存来佣数据
commissionService
.
saveBatch
(
entities
);
return
entities
;
}
...
...
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/CommissionServiceImpl.java
View file @
8285d4f8
...
...
@@ -129,7 +129,11 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
// 2.关联查询预计入账信息
Set
<
String
>
commissionExpectedBizIdSet
=
commissionList
.
stream
().
map
(
Commission:
:
getCommissionExpectedBizId
).
collect
(
Collectors
.
toSet
());
List
<
CommissionExpected
>
commissionExpectedList
=
commissionExpectedService
.
lambdaQuery
()
.
select
(
CommissionExpected:
:
getCommissionExpectedBizId
,
CommissionExpected:
:
getReceivableNo
)
.
select
(
CommissionExpected:
:
getCommissionExpectedBizId
,
CommissionExpected:
:
getPaidAmount
,
CommissionExpected:
:
getPaidRatio
,
CommissionExpected:
:
getStatus
,
CommissionExpected:
:
getReceivableNo
)
.
in
(
CommissionExpected:
:
getCommissionExpectedBizId
,
commissionExpectedBizIdSet
)
.
list
();
Map
<
String
,
CommissionExpected
>
commissionExpectedMap
=
commissionExpectedList
.
stream
().
collect
(
Collectors
.
toMap
(
CommissionExpected:
:
getCommissionExpectedBizId
,
a
->
a
,
(
oldValue
,
newValue
)
->
newValue
));
...
...
@@ -756,7 +760,11 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
}
commissionList
.
add
(
commission
);
}
boolean
b
=
this
.
saveOrUpdateBatch
(
commissionList
);
// 提交事务,保存数据
transactionTemplate
.
execute
(
status
->
{
saveOrUpdateBatch
(
commissionList
);
return
null
;
});
// 开启新事务,比对数据
transactionTemplate
.
execute
(
status
->
{
...
...
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