118 lines
3.9 KiB
Markdown
118 lines
3.9 KiB
Markdown
|
|
# XQ-20260331-005 开发思路与改动
|
|||
|
|
|
|||
|
|
## 一、技术方案
|
|||
|
|
|
|||
|
|
### 1.1 定时任务设计
|
|||
|
|
|
|||
|
|
**类名**: `CancelEntRemoveSchedule`
|
|||
|
|
**位置**: `com.chinaweal.aiccs.schedule.CancelEntRemoveSchedule`
|
|||
|
|
**执行频率**: 每天凌晨2点执行(可配置)
|
|||
|
|
|
|||
|
|
### 1.2 处理流程
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
1. 查询当天注销的市场主体
|
|||
|
|
└─ 表: SJZX_SHARE.KSQY_E_BASEINFO
|
|||
|
|
└─ 条件: REGSTATE = '注销' AND 注销日期 = 当天日期
|
|||
|
|
|
|||
|
|
2. 对每个注销主体处理:
|
|||
|
|
├─ 2.1 经营异常名录自动移出
|
|||
|
|
│ ├─ 表: SJZX_SHARE.KSQY_AO_OPA_DETAIL
|
|||
|
|
│ ├─ 条件: PRIPID = 当前主体 AND REMDATE IS NULL
|
|||
|
|
│ └─ 操作: 更新 REMDATE, REMEXCPRES, REMEXCPRES_CN, REDECORG, REDECORG_CN
|
|||
|
|
│
|
|||
|
|
├─ 2.2 严重违法记录自动移出
|
|||
|
|
│ ├─ 表: SJZX_SHARE.KSQY_E_LI_ILLDISDETAIL
|
|||
|
|
│ ├─ 条件: PRIPID = 当前主体 AND REMDATE IS NULL
|
|||
|
|
│ └─ 操作: 更新 REMDATE, REMEXCPRES, REMEXCPRES_CN, RECORG, RECORG_CN, REDOCNUM
|
|||
|
|
│
|
|||
|
|
└─ 2.3 行政处罚信用修复记录插入
|
|||
|
|
├─ 表: CRGS.CASE_CRE_INFORMATION
|
|||
|
|
├─ 条件: PRIPID = 当前主体 AND CASEID 存在
|
|||
|
|
└─ 操作: 插入新记录 (CASECREID, PRIPID, ENTNAME, UNISCID, CASEID, REPAIRDATE, REPAUTH, REPAUTH_CN, REPDATE)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 1.3 涉及的表和字段
|
|||
|
|
|
|||
|
|
#### 企业基本信息表 (KSQY_E_BASEINFO)
|
|||
|
|
- **PRIPID**: 主体身份代码
|
|||
|
|
- **ENTNAME**: 企业名称
|
|||
|
|
- **UNISCID**: 统一社会信用代码
|
|||
|
|
- **REGSTATE**: 登记状态
|
|||
|
|
- **REGDATE**: 核准日期(注销日期)
|
|||
|
|
|
|||
|
|
#### 经营异常名录详情表 (KSQY_AO_OPA_DETAIL)
|
|||
|
|
- **BUSEXCLIST**: 经营异常名录ID
|
|||
|
|
- **PRIPID**: 主体身份代码
|
|||
|
|
- **ISMOVE**: 是否移出
|
|||
|
|
- **REMDATE**: 移出日期
|
|||
|
|
- **REMEXCPRES**: 移出原因
|
|||
|
|
- **REMEXCPRES_CN**: 移出原因中文
|
|||
|
|
- **REDECORG**: 移出决定机关
|
|||
|
|
- **REDECORG_CN**: 移出决定机关中文
|
|||
|
|
|
|||
|
|
#### 严重违法详情表 (KSQY_E_LI_ILLDISDETAIL)
|
|||
|
|
- **ILLID**: 严重违法失信ID
|
|||
|
|
- **PRIPID**: 主体身份代码
|
|||
|
|
- **REMDATE**: 移出日期
|
|||
|
|
- **REMEXCPRES**: 移出事由
|
|||
|
|
- **REMEXCPRES_CN**: 移出事由中文
|
|||
|
|
- **RECORG**: 移出决定机关
|
|||
|
|
- **RECORG_CN**: 移出决定机关中文
|
|||
|
|
- **REDOCNUM**: 移出文号
|
|||
|
|
|
|||
|
|
#### 行政处罚信用修复信息表 (CRGS.CASE_CRE_INFORMATION)
|
|||
|
|
- **CASECREID**: 行政处罚修复ID
|
|||
|
|
- **PRIPID**: 主体身份代码
|
|||
|
|
- **ENTNAME**: 企业名称
|
|||
|
|
- **UNISCID**: 统一社会信用代码
|
|||
|
|
- **CASEID**: 行政处罚ID
|
|||
|
|
- **REPAIRDATE**: 申请修复日期
|
|||
|
|
- **REPAUTH**: 修复机关代码
|
|||
|
|
- **REPAUTH_CN**: 修复机关名称
|
|||
|
|
- **REPDATE**: 修复日期
|
|||
|
|
- **REPAIRNO**: 修复文号
|
|||
|
|
|
|||
|
|
## 二、实现细节
|
|||
|
|
|
|||
|
|
### 2.1 定时任务配置
|
|||
|
|
|
|||
|
|
在 `application-dev.yml` 中添加:
|
|||
|
|
```yaml
|
|||
|
|
scheduling:
|
|||
|
|
enable: true
|
|||
|
|
cron:
|
|||
|
|
cancelEntRemove: '0 0 2 * * ?' # 每天凌晨2点执行
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 2.2 核心逻辑
|
|||
|
|
|
|||
|
|
1. **查询注销主体**: 使用 MyBatis Plus 的 LambdaQueryWrapper 构建查询条件
|
|||
|
|
2. **批量处理**: 对每个注销主体,先批量处理所有移出操作,再处理行政处罚插入
|
|||
|
|
3. **事务管理**: 使用 @Transactional 确保数据一致性
|
|||
|
|
4. **日志记录**: 详细记录处理过程和结果
|
|||
|
|
|
|||
|
|
### 2.3 移出原因
|
|||
|
|
|
|||
|
|
- **移出原因码值**: `08` (其他)
|
|||
|
|
- **移出原因中文**: `主体注销,自动移出`
|
|||
|
|
- **移出机关**: 使用原列入机关或默认机关代码
|
|||
|
|
|
|||
|
|
## 三、代码改动
|
|||
|
|
|
|||
|
|
### 3.1 新增文件
|
|||
|
|
|
|||
|
|
1. `src/main/java/com/chinaweal/aiccs/schedule/CancelEntRemoveSchedule.java` - 定时任务类
|
|||
|
|
2. `src/main/java/com/chinaweal/aiccs/aicbizqy/mapper/datamove/AoOpaDetailDataMoveMapper.java` - 需添加更新方法
|
|||
|
|
3. `src/main/java/com/chinaweal/aiccs/aicbizqy/mapper/datamove/ELiIlldisdetailDataMoveMapper.java` - 需添加更新方法
|
|||
|
|
|
|||
|
|
### 3.2 修改文件
|
|||
|
|
|
|||
|
|
1. `src/main/resources/application-dev.yml` - 添加定时任务配置
|
|||
|
|
|
|||
|
|
## 四、异常处理
|
|||
|
|
|
|||
|
|
- 查询异常: 记录日志,继续处理其他主体
|
|||
|
|
- 更新异常: 记录错误日志,继续处理其他记录
|
|||
|
|
- 插入异常: 记录错误日志,继续处理其他记录
|