-- 钉钉「技术方案申请表」审批通过后落库(业务 MySQL 执行一次) -- 宽表字段改为单列 wf_values_json(避免 InnoDB 行大小 >8126):key=控件 id,value={ "value","ext" } -- 与 form_label_map(id->中文名)键一致,均为钉钉 componentId CREATE TABLE IF NOT EXISTS ding_scheme_application ( id BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键', process_instance_id VARCHAR(64) NOT NULL COMMENT '钉钉审批实例 ID', business_id VARCHAR(64) DEFAULT NULL COMMENT '钉钉 businessId', process_code VARCHAR(128) DEFAULT NULL COMMENT '审批模板 processCode', title VARCHAR(512) DEFAULT NULL COMMENT '审批标题', instance_result VARCHAR(32) DEFAULT NULL COMMENT '实例审批结果 agree/refuse 等', ding_process_status VARCHAR(32) DEFAULT NULL COMMENT '钉钉实例状态 COMPLETED 等', originator_user_id VARCHAR(64) DEFAULT NULL COMMENT '发起人 userId', originator_dept_name VARCHAR(256) DEFAULT NULL COMMENT '发起人部门', ding_instance_create_time DATETIME DEFAULT NULL COMMENT '钉钉实例创建时间', ding_instance_finish_time DATETIME DEFAULT NULL COMMENT '钉钉实例结束时间', trigger_event_type VARCHAR(64) DEFAULT NULL COMMENT '触发入库的事件类型', form_json MEDIUMTEXT COMMENT '表单控件快照 JSON(完整备份)', form_label_map MEDIUMTEXT COMMENT '控件 id -> 中文 name(JSON)', wf_values_json LONGTEXT COMMENT '控件 id -> {value,ext}(JSON,与 gen-ding-scheme-wide IDS 顺序写入)', scheme_apply_no VARCHAR(128) DEFAULT NULL COMMENT '方案申请编号(冗余)', overview_name VARCHAR(1000) DEFAULT NULL COMMENT '概述名称(冗余)', filler_name VARCHAR(128) DEFAULT NULL COMMENT '填表人展示名(冗余)', fill_date DATE DEFAULT NULL COMMENT '填表日期(冗余)', need_date DATE DEFAULT NULL COMMENT '需求日期(冗余)', customer_full_name VARCHAR(512) DEFAULT NULL COMMENT '客户全称(冗余)', contact_and_phone VARCHAR(512) DEFAULT NULL COMMENT '联系人及电话(冗余)', project_category VARCHAR(128) DEFAULT NULL COMMENT '项目分类(冗余)', product_name VARCHAR(256) DEFAULT NULL COMMENT '产品名称(冗余)', task_detail VARCHAR(2000) DEFAULT NULL COMMENT '任务详情(冗余)', scheme_submit_date DATE DEFAULT NULL COMMENT '方案提交日期(冗余)', scheme_received VARCHAR(32) DEFAULT NULL COMMENT '是否收到方案(冗余)', plm_push_status VARCHAR(32) DEFAULT 'PENDING' COMMENT 'PLM 推送状态 PENDING/SUCCESS/FAIL 等', plm_push_time DATETIME DEFAULT NULL COMMENT 'PLM 推送时间', plm_push_message VARCHAR(1000) DEFAULT NULL COMMENT 'PLM 推送结果说明', create_by VARCHAR(64) DEFAULT '', create_time DATETIME DEFAULT NULL, update_by VARCHAR(64) DEFAULT '', update_time DATETIME DEFAULT NULL, PRIMARY KEY (id), UNIQUE KEY uk_process_instance (process_instance_id), KEY idx_scheme_apply_no (scheme_apply_no), KEY idx_business_id (business_id), KEY idx_plm_push_status (plm_push_status) ) ENGINE = InnoDB ROW_FORMAT = DYNAMIC DEFAULT CHARSET = utf8mb4 COMMENT ='钉钉技术方案申请表审批归档';