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
9b72debe
Commit
9b72debe
authored
Mar 19, 2026
by
zhangxingmin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
push
parent
0d99c5f6
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
65 additions
and
69 deletions
+65
-69
yd-csf-api/src/main/java/com/yd/csf/api/service/ApiPremiumReconciliationService.java
+0
-3
yd-csf-api/src/main/java/com/yd/csf/api/service/impl/ApiPremiumReconciliationServiceImpl.java
+22
-24
yd-csf-service/src/main/java/com/yd/csf/service/config/AsyncConfig.java
+43
-42
No files found.
yd-csf-api/src/main/java/com/yd/csf/api/service/ApiPremiumReconciliationService.java
View file @
9b72debe
...
@@ -31,9 +31,6 @@ public interface ApiPremiumReconciliationService {
...
@@ -31,9 +31,6 @@ public interface ApiPremiumReconciliationService {
Result
editResult
(
ApiPremiumReconciliationResultEditRequest
request
);
Result
editResult
(
ApiPremiumReconciliationResultEditRequest
request
);
@Async
(
"commonAsyncExecutor"
)
void
execute
(
ChangePolicyFollowStatusRequest
changePolicyFollowStatusRequest
,
String
token
);
Result
<
Boolean
>
checkReconciliationComplete
(
String
policyNo
);
Result
<
Boolean
>
checkReconciliationComplete
(
String
policyNo
);
Result
<
PremiumReconciliation
>
checkPremiumReconciliationIsExist
(
String
expectedCommissionRatioBizId
);
Result
<
PremiumReconciliation
>
checkPremiumReconciliationIsExist
(
String
expectedCommissionRatioBizId
);
...
...
yd-csf-api/src/main/java/com/yd/csf/api/service/impl/ApiPremiumReconciliationServiceImpl.java
View file @
9b72debe
...
@@ -15,6 +15,7 @@ import com.yd.common.enums.ResultCode;
...
@@ -15,6 +15,7 @@ import com.yd.common.enums.ResultCode;
import
com.yd.common.exception.BusinessException
;
import
com.yd.common.exception.BusinessException
;
import
com.yd.common.result.Result
;
import
com.yd.common.result.Result
;
import
com.yd.common.utils.RandomStringGenerator
;
import
com.yd.common.utils.RandomStringGenerator
;
import
com.yd.csf.api.async.ApiExpectedFortuneAsyncService
;
import
com.yd.csf.api.service.ApiExpectedFortuneService
;
import
com.yd.csf.api.service.ApiExpectedFortuneService
;
import
com.yd.csf.api.service.ApiPremiumReconciliationService
;
import
com.yd.csf.api.service.ApiPremiumReconciliationService
;
import
com.yd.csf.api.service.ApiPremiumRemittanceService
;
import
com.yd.csf.api.service.ApiPremiumRemittanceService
;
...
@@ -118,6 +119,9 @@ public class ApiPremiumReconciliationServiceImpl implements ApiPremiumReconcilia
...
@@ -118,6 +119,9 @@ public class ApiPremiumReconciliationServiceImpl implements ApiPremiumReconcilia
return
applicationContext
.
getBean
(
ApiPremiumReconciliationService
.
class
);
return
applicationContext
.
getBean
(
ApiPremiumReconciliationService
.
class
);
}
}
@Resource
private
ApiExpectedFortuneAsyncService
apiExpectedFortuneAsyncService
;
/**
/**
* 分页列表查询-保费对账记录信息
* 分页列表查询-保费对账记录信息
* @param request
* @param request
...
@@ -1231,12 +1235,6 @@ public class ApiPremiumReconciliationServiceImpl implements ApiPremiumReconcilia
...
@@ -1231,12 +1235,6 @@ public class ApiPremiumReconciliationServiceImpl implements ApiPremiumReconcilia
return
Result
.
success
();
return
Result
.
success
();
}
}
@Override
@Async
(
"commonAsyncExecutor"
)
public
void
execute
(
ChangePolicyFollowStatusRequest
changePolicyFollowStatusRequest
,
String
token
)
{
changePolicyFollowStatus
(
changePolicyFollowStatusRequest
,
token
);
}
/**
/**
* 修改跟进状态
* 修改跟进状态
*
*
...
@@ -1247,7 +1245,7 @@ public class ApiPremiumReconciliationServiceImpl implements ApiPremiumReconcilia
...
@@ -1247,7 +1245,7 @@ public class ApiPremiumReconciliationServiceImpl implements ApiPremiumReconcilia
public
Result
<
Boolean
>
changePolicyFollowStatus
(
ChangePolicyFollowStatusRequest
changePolicyFollowStatusRequest
,
String
token
)
{
public
Result
<
Boolean
>
changePolicyFollowStatus
(
ChangePolicyFollowStatusRequest
changePolicyFollowStatusRequest
,
String
token
)
{
// 设置ThreadLocal Token
// 设置ThreadLocal Token
FeignTokenInterceptor
.
setThreadLocalToken
(
token
);
//
FeignTokenInterceptor.setThreadLocalToken(token);
if
(
changePolicyFollowStatusRequest
==
null
||
StringUtils
.
isBlank
(
changePolicyFollowStatusRequest
.
getPolicyBizId
()))
{
if
(
changePolicyFollowStatusRequest
==
null
||
StringUtils
.
isBlank
(
changePolicyFollowStatusRequest
.
getPolicyBizId
()))
{
return
Result
.
fail
(
ResultCode
.
PARAMS_ERROR
.
getCode
(),
"policyBizId不能为空"
);
return
Result
.
fail
(
ResultCode
.
PARAMS_ERROR
.
getCode
(),
"policyBizId不能为空"
);
...
@@ -1291,27 +1289,27 @@ public class ApiPremiumReconciliationServiceImpl implements ApiPremiumReconcilia
...
@@ -1291,27 +1289,27 @@ public class ApiPremiumReconciliationServiceImpl implements ApiPremiumReconcilia
if
(
PolicyFollowStatusEnum
.
EFFECTIVE
.
equals
(
currentStatusEnum
))
{
if
(
PolicyFollowStatusEnum
.
EFFECTIVE
.
equals
(
currentStatusEnum
))
{
log
.
info
(
"修改跟进状态获取token:{}"
,
token
);
log
.
info
(
"修改跟进状态获取token:{}"
,
token
);
// 同步:根据保单生成预计出账记录
// 同步:根据保单生成预计出账记录
generateExpectedFortuneSync
(
token
,
policyFollow
.
getPolicyNo
()
);
apiExpectedFortuneAsyncService
.
execute
(
policyFollow
.
getPolicyNo
(),
token
);
}
}
return
Result
.
success
(
true
);
return
Result
.
success
(
true
);
}
}
/**
//
/**
* 同步生成预计出账记录
//
* 同步生成预计出账记录
*
//
*
* @param token 认证Token
//
* @param token 认证Token
* @param policyNo 保单号
//
* @param policyNo 保单号
*/
//
*/
private
void
generateExpectedFortuneSync
(
String
token
,
String
policyNo
)
{
//
private void generateExpectedFortuneSync(String token, String policyNo) {
// 调用 ApiExpectedFortuneService 的 generateSyncWithLogAndRedis(同步版本,包含日志和Redis处理)
//
// 调用 ApiExpectedFortuneService 的 generateSyncWithLogAndRedis(同步版本,包含日志和Redis处理)
ApiGenerateExpectedFortuneRequest
generateExpectedFortuneRequest
=
new
ApiGenerateExpectedFortuneRequest
();
//
ApiGenerateExpectedFortuneRequest generateExpectedFortuneRequest = new ApiGenerateExpectedFortuneRequest();
generateExpectedFortuneRequest
.
setPolicyNo
(
policyNo
);
//
generateExpectedFortuneRequest.setPolicyNo(policyNo);
log
.
info
(
"生成预计发佣generateSyncWithLogAndRedis——>PolicyNo:{}"
,
policyNo
);
//
log.info("生成预计发佣generateSyncWithLogAndRedis——>PolicyNo:{}", policyNo);
Result
<
ApiGenerateExpectedFortuneResponse
>
result
=
apiExpectedFortuneService
.
generateSyncWithLogAndRedis
(
generateExpectedFortuneRequest
);
//
Result<ApiGenerateExpectedFortuneResponse> result = apiExpectedFortuneService.generateSyncWithLogAndRedis(generateExpectedFortuneRequest);
if
(
result
!=
null
&&
result
.
getCode
()
==
200
)
{
//
if (result != null && result.getCode() == 200) {
log
.
info
(
"新单跟进-同步生成预计出账记录成功:保单号={}"
,
policyNo
);
//
log.info("新单跟进-同步生成预计出账记录成功:保单号={}", policyNo);
}
//
}
}
//
}
/**
/**
* 校验-保单所有期数的保费对账是否对账完成(全部对账完成就不能新增录入对账信息了)
* 校验-保单所有期数的保费对账是否对账完成(全部对账完成就不能新增录入对账信息了)
...
...
yd-csf-service/src/main/java/com/yd/csf/service/config/AsyncConfig.java
View file @
9b72debe
...
@@ -39,54 +39,54 @@ public class AsyncConfig {
...
@@ -39,54 +39,54 @@ public class AsyncConfig {
return
executor
;
return
executor
;
}
}
// /**
// * 通用异步任务线程池
// */
// @Bean("commonAsyncExecutor")
// public Executor commonAsyncExecutor() {
// ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
// executor.setCorePoolSize(5);
// executor.setMaxPoolSize(10);
// executor.setQueueCapacity(50);
// executor.setThreadNamePrefix("common-async-");
// executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
// executor.setWaitForTasksToCompleteOnShutdown(true);
// executor.setAwaitTerminationSeconds(30);
// executor.setKeepAliveSeconds(30);
// executor.initialize();
// return executor;
// }
/**
/**
* 通用异步任务线程池
* 通用异步任务线程池
* @return
*/
*/
@Bean
(
name
=
"commonAsyncExecutor"
)
@Bean
(
"commonAsyncExecutor"
)
public
ThreadPoolTask
Executor
commonAsyncExecutor
()
{
public
Executor
commonAsyncExecutor
()
{
ThreadPoolTaskExecutor
executor
=
new
ThreadPoolTaskExecutor
();
ThreadPoolTaskExecutor
executor
=
new
ThreadPoolTaskExecutor
();
// 设置核心线程数、最大线程数、队列容量等参数...
executor
.
setCorePoolSize
(
5
);
executor
.
setCorePoolSize
(
10
);
executor
.
setMaxPoolSize
(
10
);
executor
.
setMaxPoolSize
(
20
);
executor
.
setQueueCapacity
(
50
);
executor
.
setQueueCapacity
(
100
);
executor
.
setThreadNamePrefix
(
"common-async-"
);
executor
.
setThreadNamePrefix
(
"common-async-"
);
executor
.
setRejectedExecutionHandler
(
new
ThreadPoolExecutor
.
CallerRunsPolicy
());
// 设置 TaskDecorator,用于传递 RequestAttributes
executor
.
setWaitForTasksToCompleteOnShutdown
(
true
);
executor
.
setTaskDecorator
(
runnable
->
{
executor
.
setAwaitTerminationSeconds
(
30
);
// 获取当前线程的 RequestAttributes
executor
.
setKeepAliveSeconds
(
30
);
RequestAttributes
attributes
=
RequestContextHolder
.
getRequestAttributes
();
return
()
->
{
try
{
// 将 RequestAttributes 设置到子线程中
RequestContextHolder
.
setRequestAttributes
(
attributes
);
runnable
.
run
();
}
finally
{
// 任务完成后清空,避免内存泄漏
RequestContextHolder
.
resetRequestAttributes
();
}
};
});
executor
.
initialize
();
executor
.
initialize
();
return
executor
;
return
executor
;
}
}
// /**
// * 通用异步任务线程池
// * @return
// */
// @Bean(name = "commonAsyncExecutor")
// public ThreadPoolTaskExecutor commonAsyncExecutor() {
// ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
// // 设置核心线程数、最大线程数、队列容量等参数...
// executor.setCorePoolSize(10);
// executor.setMaxPoolSize(20);
// executor.setQueueCapacity(100);
// executor.setThreadNamePrefix("common-async-");
//
// // 设置 TaskDecorator,用于传递 RequestAttributes
// executor.setTaskDecorator(runnable -> {
// // 获取当前线程的 RequestAttributes
// RequestAttributes attributes = RequestContextHolder.getRequestAttributes();
// return () -> {
// try {
// // 将 RequestAttributes 设置到子线程中
// RequestContextHolder.setRequestAttributes(attributes);
// runnable.run();
// } finally {
// // 任务完成后清空,避免内存泄漏
// RequestContextHolder.resetRequestAttributes();
// }
// };
// });
//
// executor.initialize();
// return executor;
// }
}
}
\ No newline at end of file
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