aiccs-api/devdoc/XQ-20260331-005_开发思路与改动.md

3.9 KiB
Raw Blame History

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 中添加:

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 - 添加定时任务配置

四、异常处理

  • 查询异常: 记录日志,继续处理其他主体
  • 更新异常: 记录错误日志,继续处理其他记录
  • 插入异常: 记录错误日志,继续处理其他记录