# 评查点预检结果判读模板 > 适用范围:`precheck_evaluation_points_tenant_cleanup.sql` 执行结果判读 > 更新日期:2026-05-21 > 文档定位:把评查点预检 SQL 的输出结果直接翻译成“可执行 / 需人工确认 / 必须阻断”,避免预检跑完后不知道该怎么判断。 --- ## 1. 使用方式 先执行: - [precheck_evaluation_points_tenant_cleanup.sql](/home/wren-dev/Porject/leaudit-platform/scripts/创建sql/precheck_evaluation_points_tenant_cleanup.sql) 再按本文逐项判读。 本文默认把每一类结果分成 3 个等级: 1. `可直接执行` 2. `需人工确认后执行` 3. `必须阻断,先处理再执行` --- ## 2. 表结构确认结果怎么判 预检项: 1. `evaluation_points` 当前列清单 ### 可直接执行 满足任一情况即可: 1. 旧库尚未存在 `tenant_code / tenant_name` 2. 或者已存在其中一列 / 两列,但类型与脚本兼容 ### 需人工确认后执行 1. 已存在 `tenant_code / tenant_name`,但长度与脚本不一致 2. 已存在同名列,但注释、默认值、约束来源不明确 ### 必须阻断 1. 存在同名列但类型明显不兼容 2. `evaluation_point_groups_id / evaluation_point_groups_pid` 缺失 3. 目标库实际不是当前应用正在使用的 `evaluation_points` 表 --- ## 3. `area` 值分布怎么判 预检项: 1. `area` 值分布统计 2. 共享域残留统计 ### 可直接执行 1. 分布值主要来自真实租户名 2. 共享域值主要集中在: - `公共` - `default` - 空值 - `省级` - `省局` ### 需人工确认后执行 1. 出现少量疑似历史缩写、空格变体、大小写混用 2. 出现 1 到 3 个可判断含义但未录入 alias 的地区别名 处理建议: 1. 先补 `sys_tenant_aliases` 2. 再执行正式脚本 ### 必须阻断 1. 大量 `area` 值不是租户名也不是共享域兼容值 2. 大量值含义不清,无法判断归属 3. 同一业务范围内明显混入多套地区命名体系 --- ## 4. 无法映射租户的残留怎么判 预检项: 1. `area` 无法映射租户编码的残留清单 ### 可直接执行 1. 查询结果为空 ### 需人工确认后执行 1. 只有极少量残留 2. 且这些残留能通过补 alias 或人工指定租户解决 处理建议: 1. 先补齐 `sys_tenant_aliases` 2. 或整理人工修正清单 3. 再执行正式脚本 ### 必须阻断 1. 残留记录很多 2. 残留涉及核心高频业务数据 3. 无法明确这些记录应归属哪个租户 --- ## 5. alias / tenant_name 冲突怎么判 预检项: 1. `tenant_name` 映射冲突预检 2. `alias_value` 映射冲突预检 ### 可直接执行 1. 两项结果都为空 ### 需人工确认后执行 1. 只有历史遗留冲突 2. 且冲突值本轮不会参与 `evaluation_points.area` 的回填 ### 必须阻断 满足任一项即阻断: 1. 同一个 `alias_value` 对应多个 `tenant_code` 2. 同一个 `tenant_name` 对应多个 `tenant_code` 3. 冲突值恰好已经出现在 `evaluation_points.area` 分布中 原因: 1. 这会导致同一条评查点记录回填到不同租户存在不确定性 2. 正式脚本虽然按 `id ASC` 选第一条,但这只能算技术兜底,不能当业务正确性依据 --- ## 6. `code` 唯一性结果怎么判 预检项: 1. 全局重复编码清单 2. 未来按租户内唯一时的跨租户重复清单 ### 可直接执行 1. 当前全局无重复编码 2. 或者已有重复但已确认不在用、可后续清理 ### 需人工确认后执行 1. 当前全局无重复 2. 但“未来若按租户内唯一”模拟结果显示跨租户会有重复 这类情况本轮通常仍可执行,因为: 1. 当前后端仍按全局唯一校验 `code` 2. 本轮并不修改编码唯一性策略 ### 必须阻断 1. 当前就已经存在全局重复编码 2. 且业务接口仍依赖 `code` 作为稳定标识 3. 无法确认是否会影响现有创建、更新、查询逻辑 --- ## 7. 共享域结果怎么判 预检项: 1. `公共 / default / 空值 / 省级 / 省局` 残留统计 ### 可直接执行 1. 这些值主要就是历史共享域语义 2. 数量可解释 ### 需人工确认后执行 1. 共享域值数量异常高 2. 需要业务确认这些记录到底应保留共享,还是应回归具体租户 ### 必须阻断 1. 共享域值被业务长期当作“具体地区”使用 2. 一旦统一回填到 `PUBLIC / PROVINCIAL` 会直接改变业务语义 --- ## 8. 最终执行判定规则 ### 可以直接执行正式脚本 必须同时满足: 1. 无法映射租户残留为空,或仅有极少量且已明确处理方式 2. `tenant_name / alias` 无冲突 3. 当前全局 `code` 唯一性没有实质性风险 4. 共享域语义可确认 ### 可以带人工清单执行 满足下面这种情况可接受: 1. 预检结果存在少量人工待处理项 2. 但这些项已形成明确修复清单 3. 且不会影响大部分数据正确回填 此时建议: 1. 先补 alias 或人工修正小批量数据 2. 再执行正式脚本 3. 执行后再复跑预检和验收 SQL ### 必须先暂停 满足任一情况应暂停: 1. 租户映射冲突未解 2. 大量无法映射记录未解 3. 当前全局重复编码风险未解 4. 共享域值语义未达成一致 --- ## 9. 推荐落地动作 预检结果出来后,建议按这个顺序处理: 1. 先解决 alias / tenant_name 冲突 2. 再补无法映射记录对应的 alias 或人工归属 3. 再确认 `code` 唯一性是否只影响未来策略,不影响当前策略 4. 最后执行正式补列与回填脚本 --- ## 10. 本文和其他文档的关系 建议连着看: 1. [评查点数据库执行说明与验证SQL.md](/home/wren-dev/Porject/leaudit-platform/docs/权限与地区隔离/评查点数据库执行说明与验证SQL.md) 2. [评查点模块收尾清单.md](/home/wren-dev/Porject/leaudit-platform/docs/权限与地区隔离/评查点模块收尾清单.md) 3. [schema_evaluation_points_tenant_cleanup.sql](/home/wren-dev/Porject/leaudit-platform/scripts/创建sql/schema_evaluation_points_tenant_cleanup.sql) 4. [precheck_evaluation_points_tenant_cleanup.sql](/home/wren-dev/Porject/leaudit-platform/scripts/创建sql/precheck_evaluation_points_tenant_cleanup.sql)