-- ===================================================================== -- deploy/dev/mysql-init/01-mailbox.sql -- 本地开发环境共享信箱 MySQL 初始化脚本(ACM2-13 / ACM2-12 口径) -- -- 数据库:cdairport(他人系统库,本仓库生产不建表/不声明权威 schema; -- 此处仅供本地 dev compose 容器初始化 CMINMSGS 与 COUTMSGS 供联调与轮询测试)。 -- 列定义与现役 legacy 实体(Cminmsg.java / Cmoutmsg.java)对齐。 -- ===================================================================== CREATE DATABASE IF NOT EXISTS `cdairport` DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_unicode_ci; USE `cdairport`; -- 入站信箱表(上游写报文原文,本系统 InboxPoller 1s 轮询读取并回填) CREATE TABLE IF NOT EXISTS `CMINMSGS` ( `CMINMSGS_ID` BIGINT NOT NULL AUTO_INCREMENT COMMENT '自增消息序号', `CMINMSGS_CLOB_MSG` LONGTEXT NOT NULL COMMENT '原始 XML 报文内容', `CMINMSGS_DATE_RECEIVED` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '信箱入库时间', `CMINMSGS_DATE_PROCESSED` DATETIME DEFAULT NULL COMMENT '处理完成时间(NULL 表示未处理)', `CMINMSGS_STATUS` VARCHAR(32) DEFAULT NULL COMMENT '处理状态(如 PROCESSED/ERROR)', `CMINMSGS_SUBSYSTEM_TYPE` VARCHAR(32) DEFAULT NULL COMMENT '子系统类型', `CMINMSGS_SUBSYSTEM_SUBTYPE` VARCHAR(32) DEFAULT NULL COMMENT '子系统子类型', `CMINMSGS_SUBSYSTEM_NAME` VARCHAR(64) DEFAULT NULL COMMENT '子系统名称', `CMINMSGS_SUBSYSTEM_SEQUENCE` BIGINT DEFAULT NULL COMMENT '子系统序列号', `CMINMSGS_SUBSYSTEM_DATE_SENT` DATETIME DEFAULT NULL COMMENT '子系统发送时间', PRIMARY KEY (`CMINMSGS_ID`), INDEX `idx_cminmsgs_poll` (`CMINMSGS_ID`, `CMINMSGS_DATE_PROCESSED`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='[DEV ONLY] 共享入站信箱表'; -- 历史归档表(ARCHIVE 任务将 1 天前的已处理信件归档至此) CREATE TABLE IF NOT EXISTS `CMINMSGS_HST` ( `CMINMSGS_ID` BIGINT NOT NULL, `CMINMSGS_CLOB_MSG` LONGTEXT NOT NULL, `CMINMSGS_DATE_RECEIVED` DATETIME NOT NULL, `CMINMSGS_DATE_PROCESSED` DATETIME DEFAULT NULL, `CMINMSGS_STATUS` VARCHAR(32) DEFAULT NULL, `CMINMSGS_SUBSYSTEM_TYPE` VARCHAR(32) DEFAULT NULL, `CMINMSGS_SUBSYSTEM_SUBTYPE` VARCHAR(32) DEFAULT NULL, `CMINMSGS_SUBSYSTEM_NAME` VARCHAR(64) DEFAULT NULL, `CMINMSGS_SUBSYSTEM_SEQUENCE` BIGINT DEFAULT NULL, `CMINMSGS_SUBSYSTEM_DATE_SENT` DATETIME DEFAULT NULL, PRIMARY KEY (`CMINMSGS_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='[DEV ONLY] 共享入站信箱历史归档表'; -- 出站信箱表(本系统请求类或通知类报文写入,供他人读取发送) CREATE TABLE IF NOT EXISTS `COUTMSGS` ( `COUTMSGS_ID` BIGINT NOT NULL AUTO_INCREMENT COMMENT '自增出站序号', `COUTMSGS_CLOB_MSG` LONGTEXT NOT NULL COMMENT '原始 XML 出站报文', `COUTMSGS_DATE_INSERTED` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '插入时间', `COUTMSGS_DATE_SENT` DATETIME DEFAULT NULL COMMENT '发送时间', `ROUTINGID` VARCHAR(64) DEFAULT NULL COMMENT '路由标识(如 OSH5RQFD)', `COUTMSGS_ACK_REQD` VARCHAR(8) DEFAULT NULL COMMENT '是否需要 ACK', `COUTMSGS_ACK_DATE_RECV` DATETIME DEFAULT NULL COMMENT '收到 ACK 时间', `COUTMSGS_ACK_RESEND_TIMES` INT DEFAULT 0 COMMENT '重发次数', `COUTMSGS_ERROR` VARCHAR(255) DEFAULT NULL COMMENT '错误信息', `COUTMSGS_GROUP_ID` VARCHAR(64) DEFAULT NULL COMMENT '分组 ID', `COUTMSGS_GROUP_ORDER` INT DEFAULT NULL COMMENT '组内顺序', `COUTMSGS_NO_MESSAGES` INT DEFAULT NULL COMMENT '组内消息数', `COUTMSGS_FINAL_GROUP_IND` VARCHAR(8) DEFAULT NULL COMMENT '最终组标记', `COUTMSGS_TRUEFALS_GROUP` VARCHAR(8) DEFAULT NULL COMMENT '分组布尔标记', `COUTMSGS_ENCRYPT` VARCHAR(8) DEFAULT NULL COMMENT '加密标记', PRIMARY KEY (`COUTMSGS_ID`), INDEX `idx_coutmsgs_sent` (`COUTMSGS_DATE_SENT`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='[DEV ONLY] 共享出站信箱表';