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
b1afc495
Commit
b1afc495
authored
Mar 09, 2026
by
zhangxingmin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
push
parent
24017a14
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
310 additions
and
1 deletions
+310
-1
yd-csf-api/src/main/java/com/yd/csf/api/async/ApiExpectedFortuneAsyncService.java
+26
-0
yd-csf-api/src/main/java/com/yd/csf/api/controller/CalmTaskController.java
+18
-0
yd-csf-api/src/main/java/com/yd/csf/api/response/ApiExecuteBillingResponse.java
+15
-0
yd-csf-api/src/main/java/com/yd/csf/api/response/ApiExecuteRewardResponse.java
+15
-0
yd-csf-api/src/main/java/com/yd/csf/api/service/ApiExpectedFortuneService.java
+15
-0
yd-csf-api/src/main/java/com/yd/csf/api/service/XxlJobService.java
+7
-0
yd-csf-api/src/main/java/com/yd/csf/api/service/impl/ApiExpectedFortuneServiceImpl.java
+0
-0
yd-csf-api/src/main/java/com/yd/csf/api/service/impl/XxlJobServiceImpl.java
+0
-0
yd-csf-feign/pom.xml
+6
-0
yd-csf-service/src/main/java/com/yd/csf/service/config/AsyncConfig.java
+21
-0
yd-csf-service/src/main/java/com/yd/csf/service/dao/CalmTaskMapper.java
+16
-0
yd-csf-service/src/main/java/com/yd/csf/service/model/CalmTask.java
+129
-0
yd-csf-service/src/main/java/com/yd/csf/service/service/ICalmTaskService.java
+16
-0
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/CalmTaskServiceImpl.java
+20
-0
yd-csf-service/src/main/java/com/yd/csf/service/utils/MyBatisPlusCodeGenerator.java
+1
-1
yd-csf-service/src/main/resources/mappers/CalmTaskMapper.xml
+5
-0
No files found.
yd-csf-api/src/main/java/com/yd/csf/api/async/ApiExpectedFortuneAsyncService.java
View file @
b1afc495
package
com
.
yd
.
csf
.
api
.
async
;
package
com
.
yd
.
csf
.
api
.
async
;
import
com.yd.csf.api.service.XxlJobService
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.scheduling.annotation.Async
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
java.util.Date
;
/**
* 预计发佣-异步类
*/
@Slf4j
@Slf4j
@Component
@Component
public
class
ApiExpectedFortuneAsyncService
{
public
class
ApiExpectedFortuneAsyncService
{
@Autowired
private
XxlJobService
xxlJobService
;
@Value
(
"${xxl.job.executor.calmAppName}"
)
private
String
calmAppName
;
/**
* 创建XXL-Job定时任务-保单冷静期-异步方法
* @param taskBizId
* @param scheduleTime
*/
// @Async("jobTaskExecutor")
public
void
addCalmScheduleJob
(
String
taskBizId
,
Date
scheduleTime
)
{
String
taskName
=
"冷静期定时任务"
;
String
jobId
=
xxlJobService
.
addScheduleJob
(
taskName
,
taskBizId
,
calmAppName
,
scheduleTime
);
log
.
info
(
"创建XXL-Job定时任务成功-->jobId:{}"
,
jobId
);
}
}
}
yd-csf-api/src/main/java/com/yd/csf/api/controller/CalmTaskController.java
0 → 100644
View file @
b1afc495
package
com
.
yd
.
csf
.
api
.
controller
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
/**
* <p>
* 保单冷静期定时任务表 前端控制器
* </p>
*
* @author zxm
* @since 2026-03-06
*/
@RestController
@RequestMapping
(
"/calmTask"
)
public
class
CalmTaskController
{
}
yd-csf-api/src/main/java/com/yd/csf/api/response/ApiExecuteBillingResponse.java
0 → 100644
View file @
b1afc495
package
com
.
yd
.
csf
.
api
.
response
;
import
com.yd.csf.api.dto.AlgorithmResDto
;
import
com.yd.csf.api.dto.ExecuteBillingDto
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
ApiExecuteBillingResponse
{
private
ExecuteBillingDto
dto
;
private
List
<
AlgorithmResDto
>
algorithmResDtoList
;
}
yd-csf-api/src/main/java/com/yd/csf/api/response/ApiExecuteRewardResponse.java
0 → 100644
View file @
b1afc495
package
com
.
yd
.
csf
.
api
.
response
;
import
com.yd.csf.api.dto.AlgorithmResDto
;
import
com.yd.csf.api.dto.ExecuteBillingDto
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
ApiExecuteRewardResponse
{
private
ExecuteBillingDto
dto
;
private
List
<
AlgorithmResDto
>
algorithmResDtoList
;
}
yd-csf-api/src/main/java/com/yd/csf/api/service/ApiExpectedFortuneService.java
View file @
b1afc495
...
@@ -4,7 +4,10 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
...
@@ -4,7 +4,10 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.yd.common.result.Result
;
import
com.yd.common.result.Result
;
import
com.yd.csf.api.dto.ApiExpectedFortunePageResponseVO
;
import
com.yd.csf.api.dto.ApiExpectedFortunePageResponseVO
;
import
com.yd.csf.api.dto.GenerateAgentDetailFycDto
;
import
com.yd.csf.api.dto.PayableReportResponse
;
import
com.yd.csf.api.dto.PayableReportResponse
;
import
com.yd.csf.api.response.ApiExecuteBillingResponse
;
import
com.yd.csf.api.response.ApiExecuteRewardResponse
;
import
com.yd.csf.feign.request.expectedfortune.ApiExpectedFortunePageRequest
;
import
com.yd.csf.feign.request.expectedfortune.ApiExpectedFortunePageRequest
;
import
com.yd.csf.feign.request.expectedfortune.ApiGenerateExpectedFortuneRequest
;
import
com.yd.csf.feign.request.expectedfortune.ApiGenerateExpectedFortuneRequest
;
import
com.yd.csf.feign.request.expectedfortune.ExpectedFortuneAddRequest
;
import
com.yd.csf.feign.request.expectedfortune.ExpectedFortuneAddRequest
;
...
@@ -16,6 +19,7 @@ import com.yd.csf.service.model.CommissionRuleBinding;
...
@@ -16,6 +19,7 @@ import com.yd.csf.service.model.CommissionRuleBinding;
import
com.yd.csf.service.model.ExpectedFortune
;
import
com.yd.csf.service.model.ExpectedFortune
;
import
com.yd.csf.service.vo.ExpectedFortuneStatisticsVO
;
import
com.yd.csf.service.vo.ExpectedFortuneStatisticsVO
;
import
org.springframework.scheduling.annotation.Async
;
import
org.springframework.scheduling.annotation.Async
;
import
org.springframework.transaction.annotation.Transactional
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
import
java.util.List
;
import
java.util.List
;
...
@@ -62,6 +66,17 @@ public interface ApiExpectedFortuneService {
...
@@ -62,6 +66,17 @@ public interface ApiExpectedFortuneService {
Boolean
update
(
ExpectedFortuneUpdateRequest
request
);
Boolean
update
(
ExpectedFortuneUpdateRequest
request
);
@Async
(
"commonAsyncExecutor"
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
void
buildCalmTask
(
List
<
ApiExecuteBillingResponse
>
billingResponses
,
List
<
ApiExecuteRewardResponse
>
rewardResponses
,
List
<
QueryPolicyAndBrokerDto
>
queryPolicyAndBrokerDtoList
,
String
policyNo
);
@Async
(
"commonAsyncExecutor"
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
Result
generateAgentDetailFyc
(
GenerateAgentDetailFycDto
dto
);
Result
<
ApiExpectedFortunePageResponseVO
>
list
(
ApiExpectedFortunePageRequest
request
);
Result
<
ApiExpectedFortunePageResponseVO
>
list
(
ApiExpectedFortunePageRequest
request
);
Boolean
add
(
List
<
ExpectedFortuneAddRequest
>
request
);
Boolean
add
(
List
<
ExpectedFortuneAddRequest
>
request
);
...
...
yd-csf-api/src/main/java/com/yd/csf/api/service/XxlJobService.java
0 → 100644
View file @
b1afc495
package
com
.
yd
.
csf
.
api
.
service
;
import
java.util.Date
;
public
interface
XxlJobService
{
String
addScheduleJob
(
String
taskName
,
String
taskBizId
,
String
appName
,
Date
scheduleTime
);
}
yd-csf-api/src/main/java/com/yd/csf/api/service/impl/ApiExpectedFortuneServiceImpl.java
View file @
b1afc495
This diff is collapsed.
Click to expand it.
yd-csf-api/src/main/java/com/yd/csf/api/service/impl/XxlJobServiceImpl.java
0 → 100644
View file @
b1afc495
This diff is collapsed.
Click to expand it.
yd-csf-feign/pom.xml
View file @
b1afc495
...
@@ -47,5 +47,11 @@
...
@@ -47,5 +47,11 @@
<artifactId>
yd-base-feign
</artifactId>
<artifactId>
yd-base-feign
</artifactId>
<version>
${project.version}
</version>
<version>
${project.version}
</version>
</dependency>
</dependency>
<!-- XXL-Job 核心依赖 -->
<dependency>
<groupId>
com.xuxueli
</groupId>
<artifactId>
xxl-job-core
</artifactId>
</dependency>
</dependencies>
</dependencies>
</project>
</project>
yd-csf-service/src/main/java/com/yd/csf/service/config/AsyncConfig.java
View file @
b1afc495
package
com
.
yd
.
csf
.
service
.
config
;
package
com
.
yd
.
csf
.
service
.
config
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.core.task.TaskExecutor
;
import
org.springframework.scheduling.annotation.EnableAsync
;
import
org.springframework.scheduling.annotation.EnableAsync
;
import
org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor
;
import
org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor
;
import
java.util.concurrent.Executor
;
import
java.util.concurrent.Executor
;
import
java.util.concurrent.ThreadPoolExecutor
;
import
java.util.concurrent.ThreadPoolExecutor
;
@Slf4j
@Configuration
@Configuration
@EnableAsync
@EnableAsync
public
class
AsyncConfig
{
public
class
AsyncConfig
{
...
@@ -54,4 +57,21 @@ public class AsyncConfig {
...
@@ -54,4 +57,21 @@ public class AsyncConfig {
executor
.
initialize
();
executor
.
initialize
();
return
executor
;
return
executor
;
}
}
@Bean
(
"jobTaskExecutor"
)
public
TaskExecutor
jobTaskExecutor
()
{
ThreadPoolTaskExecutor
executor
=
new
ThreadPoolTaskExecutor
();
executor
.
setCorePoolSize
(
5
);
executor
.
setMaxPoolSize
(
20
);
executor
.
setQueueCapacity
(
100
);
executor
.
setKeepAliveSeconds
(
60
);
executor
.
setThreadNamePrefix
(
"JobAsync-"
);
executor
.
setRejectedExecutionHandler
(
new
ThreadPoolExecutor
.
CallerRunsPolicy
());
executor
.
setWaitForTasksToCompleteOnShutdown
(
true
);
executor
.
setAwaitTerminationSeconds
(
60
);
executor
.
initialize
();
log
.
info
(
"异步线程池初始化完成,线程名前缀: JobAsync-"
);
return
executor
;
}
}
}
\ No newline at end of file
yd-csf-service/src/main/java/com/yd/csf/service/dao/CalmTaskMapper.java
0 → 100644
View file @
b1afc495
package
com
.
yd
.
csf
.
service
.
dao
;
import
com.yd.csf.service.model.CalmTask
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
/**
* <p>
* 保单冷静期定时任务表 Mapper 接口
* </p>
*
* @author zxm
* @since 2026-03-06
*/
public
interface
CalmTaskMapper
extends
BaseMapper
<
CalmTask
>
{
}
yd-csf-service/src/main/java/com/yd/csf/service/model/CalmTask.java
0 → 100644
View file @
b1afc495
package
com
.
yd
.
csf
.
service
.
model
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
lombok.Getter
;
import
lombok.Setter
;
/**
* <p>
* 保单冷静期定时任务表
* </p>
*
* @author zxm
* @since 2026-03-06
*/
@Getter
@Setter
@TableName
(
"calm_task"
)
public
class
CalmTask
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键ID
*/
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Long
id
;
/**
* 保单冷静期定时任务表唯一业务ID
*/
@TableField
(
"calm_task_biz_id"
)
private
String
calmTaskBizId
;
/**
* 新单跟进唯一业务ID
*/
@TableField
(
"policy_biz_id"
)
private
String
policyBizId
;
/**
* 保单号
*/
@TableField
(
"policy_no"
)
private
String
policyNo
;
/**
* 转介人业务id
*/
@TableField
(
"broker_biz_id"
)
private
String
brokerBizId
;
/**
* 转介人名称
*/
@TableField
(
"broker_name"
)
private
String
brokerName
;
/**
* 当前保单转介人累计FYC(当前保单转介人基本法计算积分合值)
*/
@TableField
(
"total_fyc"
)
private
BigDecimal
totalFyc
;
/**
* 冷静期结束日期
*/
@TableField
(
"cooling_off_end_date"
)
private
LocalDateTime
coolingOffEndDate
;
/**
* 冷静期天数
*/
@TableField
(
"cooling_off_days"
)
private
Integer
coolingOffDays
;
/**
* 执行时间(定时任务执行时间)
*/
@TableField
(
"execution_time"
)
private
LocalDateTime
executionTime
;
/**
* 执行状态(未执行,已执行)
*/
@TableField
(
"execution_status"
)
private
String
executionStatus
;
/**
* 通用备注
*/
@TableField
(
"remark"
)
private
String
remark
;
/**
* 删除标识: 0-正常, 1-删除
*/
@TableField
(
"is_deleted"
)
private
Integer
isDeleted
;
/**
* 创建人ID
*/
@TableField
(
"creator_id"
)
private
String
creatorId
;
/**
* 更新人ID
*/
@TableField
(
"updater_id"
)
private
String
updaterId
;
/**
* 创建时间
*/
@TableField
(
"create_time"
)
private
LocalDateTime
createTime
;
/**
* 更新时间
*/
@TableField
(
"update_time"
)
private
LocalDateTime
updateTime
;
}
yd-csf-service/src/main/java/com/yd/csf/service/service/ICalmTaskService.java
0 → 100644
View file @
b1afc495
package
com
.
yd
.
csf
.
service
.
service
;
import
com.yd.csf.service.model.CalmTask
;
import
com.baomidou.mybatisplus.extension.service.IService
;
/**
* <p>
* 保单冷静期定时任务表 服务类
* </p>
*
* @author zxm
* @since 2026-03-06
*/
public
interface
ICalmTaskService
extends
IService
<
CalmTask
>
{
}
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/CalmTaskServiceImpl.java
0 → 100644
View file @
b1afc495
package
com
.
yd
.
csf
.
service
.
service
.
impl
;
import
com.yd.csf.service.model.CalmTask
;
import
com.yd.csf.service.dao.CalmTaskMapper
;
import
com.yd.csf.service.service.ICalmTaskService
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
org.springframework.stereotype.Service
;
/**
* <p>
* 保单冷静期定时任务表 服务实现类
* </p>
*
* @author zxm
* @since 2026-03-06
*/
@Service
public
class
CalmTaskServiceImpl
extends
ServiceImpl
<
CalmTaskMapper
,
CalmTask
>
implements
ICalmTaskService
{
}
yd-csf-service/src/main/java/com/yd/csf/service/utils/MyBatisPlusCodeGenerator.java
View file @
b1afc495
...
@@ -21,7 +21,7 @@ public class MyBatisPlusCodeGenerator {
...
@@ -21,7 +21,7 @@ public class MyBatisPlusCodeGenerator {
})
})
.
strategyConfig
(
builder
->
{
.
strategyConfig
(
builder
->
{
builder
.
addInclude
(
builder
.
addInclude
(
"
premium_reconciliation"
,
"premium_remittance"
,
"premium_remittance_file
"
"
calm_task
"
)
)
.
entityBuilder
()
.
entityBuilder
()
...
...
yd-csf-service/src/main/resources/mappers/CalmTaskMapper.xml
0 → 100644
View file @
b1afc495
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.yd.csf.service.dao.CalmTaskMapper"
>
</mapper>
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