3.8 KiB
3.8 KiB
自动到期检测功能使用说明
功能概述
自动到期检测功能是一个智能的到期时间监控系统,能够自动检测数据库中各种表格的到期时间字段,并提供到期提醒功能。
主要特性
- 自动检测: 系统会自动扫描配置的表格,检测其中的到期时间字段
- 灵活配置: 可以配置任意表格的到期检测规则
- 智能提醒: 支持提前提醒天数配置
- 状态管理: 自动计算剩余天数并设置状态(正常/即将到期/已到期)
- 定时执行: 每天凌晨2点自动执行检测任务
数据库表结构
1. 自动到期检测配置表 (auto_expiration_config)
字段名 | 类型 | 说明 |
---|---|---|
config_id | varchar(64) | 配置ID |
table_name | varchar(100) | 表名 |
table_desc | varchar(200) | 表描述 |
primary_key_field | varchar(100) | 主键字段 |
expire_date_field | varchar(100) | 到期时间字段 |
user_id_field | varchar(100) | 关联用户字段 |
user_name_field | varchar(100) | 用户姓名字段 |
business_name_field | varchar(100) | 业务名称字段 |
remind_days | int | 提前提醒天数 |
enabled | varchar(1) | 是否启用(0-禁用,1-启用) |
2. 到期检测结果表 (expiration_result)
字段名 | 类型 | 说明 |
---|---|---|
result_id | varchar(64) | 结果ID |
table_name | varchar(100) | 表名 |
business_id | varchar(64) | 业务ID |
business_name | varchar(200) | 业务名称 |
user_id | varchar(64) | 关联用户ID |
user_name | varchar(100) | 关联用户姓名 |
expire_date | date | 到期日期 |
remaining_days | int | 剩余天数 |
status | varchar(1) | 状态(0-正常,1-即将到期,2-已到期) |
API接口
1. 手动执行到期检测
POST /auto-expiration/execute
2. 获取到期检测结果
GET /auto-expiration/results?status=1
参数说明:
- status: 状态筛选(0-正常,1-即将到期,2-已到期)
3. 获取统计信息
GET /auto-expiration/statistics
4. 检测指定表
POST /auto-expiration/check-table/{tableName}
5. 保存配置
POST /auto-expiration/config
6. 获取所有配置
GET /auto-expiration/configs
7. 删除配置
DELETE /auto-expiration/config/{configId}
配置示例
人员资质证书检测配置
{
"tableName": "certification",
"tableDesc": "人员资质证书",
"primaryKeyField": "certification_id",
"expireDateField": "validity_date_end",
"userIdField": "user_id",
"businessNameField": "certification_name",
"remindDays": 30,
"enabled": "1"
}
人员保险检测配置
{
"tableName": "insurance_info",
"tableDesc": "人员保险",
"primaryKeyField": "insurance_info_id",
"expireDateField": "expire_date",
"userIdField": "user_id",
"userNameField": "name",
"businessNameField": "insurance_type_name",
"remindDays": 30,
"enabled": "1"
}
使用步骤
- 创建数据库表: 执行
auto_expiration_tables.sql
创建必要的表结构 - 配置检测规则: 通过API或直接插入数据配置需要检测的表格
- 启动定时任务: 系统会自动在每天凌晨2点执行检测
- 查看检测结果: 通过API接口查看检测结果和统计信息
扩展说明
系统支持检测任意表格的到期时间字段,只需要在配置表中添加相应的配置即可。支持的字段类型包括:
- LocalDate
- LocalDateTime
- Date
- Timestamp
系统会自动识别并处理这些日期类型。
注意事项
- 确保配置的字段名在目标表中存在
- 到期时间字段不能为空
- 建议为检测结果表添加适当的索引以提高查询性能
- 可以根据业务需要调整提前提醒天数