-- ============================================================================= -- 可重放回填种子(DDL 与回填分离;CR-02 表 3-33 / 表 13-10 验收③) -- 所有 INSERT 均为「不存在才插入」,重复执行不产生重复数据。 -- 执行前可用以下方式覆盖公寓标识(需与环境变量 APT_GY_ID 保持一致): -- mysql ... -e "SET @apt_gyid='YOUR_GYID'; SOURCE 08_seed_replayable.sql" -- ============================================================================= SET @apt_gyid := COALESCE(NULLIF(@apt_gyid, ''), 'APT-REV01-001'); -- 主数据版本基线:Mock 阶段显式标 LOCAL、source_version=0 INSERT INTO apt_master_version (gyid, domain, source_version, source, state, applied_at, remark) SELECT @apt_gyid, d.domain_name, 0, 'LOCAL', 'APPLIED', NOW(3), 'IT-0 基线种子(非平台下发)' FROM ( SELECT 'APARTMENT' AS domain_name UNION ALL SELECT 'ROOM' UNION ALL SELECT 'PERSON' UNION ALL SELECT 'ROUTE' UNION ALL SELECT 'RULE' UNION ALL SELECT 'HOLIDAY' ) d WHERE NOT EXISTS ( SELECT 1 FROM apt_master_version v WHERE v.gyid = @apt_gyid AND v.domain = d.domain_name ); -- 上报水位初始行 INSERT INTO apt_report_watermark (gyid, current_watermark, acked_watermark) SELECT @apt_gyid, 0, 0 WHERE NOT EXISTS (SELECT 1 FROM apt_report_watermark w WHERE w.gyid = @apt_gyid); -- 12 项自检项定义(只登记检查项,结果由 IT-7 落库;本轮不写业务结果) INSERT INTO apt_ops_selfcheck (gyid, check_id, check_item, result, call_ready, checked_at) SELECT @apt_gyid, c.check_id, c.check_item, 'UNKNOWN', 0, NOW(3) FROM ( SELECT 'IT0-01' AS check_id, 'DB_CONNECT' AS check_item UNION ALL SELECT 'IT0-02', 'DB_READ_WRITE' UNION ALL SELECT 'IT0-03', 'REDIS_CONNECT' UNION ALL SELECT 'IT0-04', 'REDIS_DB_INDEX' UNION ALL SELECT 'IT0-05', 'REDIS_READ_WRITE' UNION ALL SELECT 'IT0-06', 'DDL_TABLE_COUNT' UNION ALL SELECT 'IT0-07', 'DDL_PK_UK_IDX' UNION ALL SELECT 'IT0-08', 'GYID_ISOLATION' UNION ALL SELECT 'IT0-09', 'CREDENTIAL_SCAN' UNION ALL SELECT 'IT0-10', 'QUARTZ_STORE' UNION ALL SELECT 'IT0-11', 'AMI_REACHABLE' UNION ALL SELECT 'IT0-12', 'CALL_READY' ) c WHERE NOT EXISTS ( SELECT 1 FROM apt_ops_selfcheck s WHERE s.gyid = @apt_gyid AND s.check_id = c.check_id );