# XQ-20260327-008 开发思路与改动 ## 一、开发思路 基于原有的行政处罚修复功能(TBizRemPunishmentController),新建一套外省行政处罚修复接口。主要区别在于: 1. 数据来源不同:本地表 → 跨省表QG_CASE_PUB_NBASEINFO 2. 主体信息查询不同:从EBaseinfo查询 → 从QG_CASE_PUB_NBASEINFO直接获取 3. 办结后处理不同:插入CASE_CRE_INFORMATION → 修改QG_CASE_PUB_NBASEINFO + 插入CR_E_CASE ## 二、代码改动清单 ### 1. 新建实体类 #### 1.1 QG_CASE_PUB_NBASEINFO 实体 - **路径**: `src/main/java/com/chinaweal/aiccs/aiccs/punishment/entity/QgCasePubNbaseinfo.java` - **说明**: 跨省行政处罚基本信息实体,对应表crgs.QG_CASE_PUB_NBASEINFO - **主要字段**: - `caseid`: 案件ID - `entname`: 企业名称 - `uniscid`: 统一社会信用代码 - `regno`: 注册号 - `penDecNo`: 处罚决定书文号 - `penAuthCn`: 处罚机关中文 - `opflag`: 操作标志(修复时改为D) - `pubDeadline`: 公示截止日期 - `sExtDatetime`: 时间戳 ### 2. 新建Mapper #### 2.1 QgCasePubNbaseinfoMapper - **路径**: `src/main/java/com/chinaweal/aiccs/aiccs/punishment/mapper/QgCasePubNbaseinfoMapper.java` - **接口**: `IQgCasePubNbaseinfoService` #### 2.2 Mapper XML - **路径**: `src/main/resources/mybatis/mapper/aiccs/punishment/QgCasePubNbaseinfoMapper.xml` - **说明**: 包含分页查询、按ID查询、更新修复状态方法 ### 3. 新建Service #### 3.1 IQgCasePubNbaseinfoService - **路径**: `src/main/java/com/chinaweal/aiccs/aiccs/punishment/service/IQgCasePubNbaseinfoService.java` - **方法**: - `searchByPage`: 分页查询跨省行政处罚信息 - `findById`: 根据ID查询 - `updateForRepair`: 更新修复状态(opflag='D', pubdeadline, S_EXT_DATETIME) #### 3.2 QgCasePubNbaseinfoServiceImpl - **路径**: `src/main/java/com/chinaweal/aiccs/aiccs/punishment/service/impl/QgCasePubNbaseinfoServiceImpl.java` ### 4. 新建Controller #### 4.1 TBizRemPunishmentNController(外省行政处罚修复) - **路径**: `src/main/java/com/chinaweal/aiccs/aiccs/punishment/controller/TBizRemPunishmentNController.java` - **说明**: 外省行政处罚修复控制器,复用原有界面和流程 - **主要接口**(与原TBizRemPunishmentController对应): - `punishmentList`: 查询外省行政处罚记录(走QG表) - `startTask`: 启动待办(主体信息从QG表获取) - `submitTask`: 提交待办(办结时修改QG表+插入CR_E_CASE) ### 5. 复用现有类 #### 5.1 复用实体 - `TBizRemPunishment`: 业务表(新增一个业务类型标识区分) - `CrECase`: 跨省修复案例表(办结时插入) #### 5.2 复用Service - `ICrECaseService`: 插入CR_E_CASE表 - `TSTaskListService`: 工作流任务 - `TSAttachmentService`: 附件 - `TswrittemplateService`: 文书模板 - `TbIlcPunInfoQueryService`: 保持接口不变(实际不走这个) ## 三、接口设计 ### 3.1 行政处罚记录查询(外省) ``` POST /punishment/tBizRemPunishmentN/punishmentList ``` - 复用原有查询页面 - 数据来源改为 `crgs.QG_CASE_PUB_NBASEINFO` ### 3.2 启动待办(外省) ``` POST /punishment/tBizRemPunishmentN/startTask ``` - 业务表ID: `TBizRemPunishment.id`(业务表共用) - 主体信息从 `QG_CASE_PUB_NBASEINFO` 获取 - 工作流使用原流程 ### 3.3 提交待办(外省) ``` POST /punishment/tBizRemPunishmentN/submitTask ``` - 办结时处理: 1. 更新 `crgs.QG_CASE_PUB_NBASEINFO`: opflag='D', pubdeadline=审批日期, S_EXT_DATETIME=审批日期 2. 插入 `AICCS.CR_E_CASE` 3. **不再**插入 `crgs.CASE_CRE_INFORMATION` ## 四、数据流差异 | 环节 | 原有流程 | 外省流程 | |------|---------|---------| | 主体信息获取 | EBaseinfo表 | QG_CASE_PUB_NBASEINFO表 | | 行政处罚信息 | CASE_PUB_NBASEINFO表 | QG_CASE_PUB_NBASEINFO表 | | 办结-主体表 | 无操作 | opflag='D' | | 办结-公示表 | 插入CASE_CRE_INFORMATION | 修改QG表 + 插入CR_E_CASE | ## 五、注意事项 1. 工作流复用原有流程,不需要新建工作流 2. 业务表TBizRemPunishment共用,通过字段区分或新建业务类型 3. 附件、文书模板共用 4. 外省数据没有本地EBaseinfo,所以主体信息直接从QG表获取