-- ============================================================================ -- 业务表结构 (基于原型 /home/john/ry8080/proto/html/components/ 字段提炼) -- 目标库: ry0808 -- 引擎: InnoDB / utf8mb4 -- ============================================================================ SET FOREIGN_KEY_CHECKS = 0; DROP TABLE IF EXISTS biz_project; CREATE TABLE biz_project ( project_id BIGINT NOT NULL AUTO_INCREMENT COMMENT '项目ID', project_no VARCHAR(50) NOT NULL COMMENT '项目编号 ZH-2026-658', project_name VARCHAR(200) NOT NULL COMMENT '项目名称', project_form VARCHAR(20) DEFAULT NULL COMMENT '项目形式 线上/线下/线上+线下/其他', total_sessions INT DEFAULT 0 COMMENT '总场次/总期数', done_sessions INT DEFAULT 0 COMMENT '已执行', todo_sessions INT DEFAULT 0 COMMENT '未执行', total_amount DECIMAL(15,2) DEFAULT 0 COMMENT '总金额', available_amount DECIMAL(15,2) DEFAULT 0 COMMENT '可用金额', paid_labor_amount DECIMAL(15,2) DEFAULT 0 COMMENT '已支付劳务费', paid_meeting_amount DECIMAL(15,2) DEFAULT 0 COMMENT '已支付会务费', manage_fee DECIMAL(15,2) DEFAULT 0 COMMENT '管理费及税金', is_finished CHAR(1) DEFAULT '0' COMMENT '是否结题 0否 1是', is_settled CHAR(1) DEFAULT '0' COMMENT '是否结算 0否 1是', rating_score DECIMAL(3,1) DEFAULT NULL COMMENT '项目评价分数', sponsor_admin_user_id BIGINT DEFAULT NULL COMMENT '赞助方负责人用户ID (sys_user.user_id, role_type=sponsor)', sponsor_admin_user_name VARCHAR(200) DEFAULT NULL COMMENT '赞助方负责人用户名(冗余)', start_time DATETIME DEFAULT NULL COMMENT '项目开始时间', end_time DATETIME DEFAULT NULL COMMENT '项目结束时间', submit_deadline_days INT DEFAULT 0 COMMENT '提交材料截止天数', support_contract_url VARCHAR(500) DEFAULT NULL COMMENT '支持合同文件URL', execute_contract_url VARCHAR(500) DEFAULT NULL COMMENT '执行合同文件URL', invitation_url VARCHAR(500) DEFAULT NULL COMMENT '邀请函文件URL', support_letter_url VARCHAR(500) DEFAULT NULL COMMENT '支持函文件URL', publish_url VARCHAR(500) DEFAULT NULL COMMENT '已发布公告URL', create_by VARCHAR(64) DEFAULT '' COMMENT '创建者', create_time DATETIME DEFAULT NULL COMMENT '创建时间', update_by VARCHAR(64) DEFAULT '' COMMENT '更新者', update_time DATETIME DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (project_id), UNIQUE KEY uk_project_no (project_no), KEY idx_project_form (project_form), KEY idx_is_finished (is_finished), KEY idx_is_settled (is_settled) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='项目表'; DROP TABLE IF EXISTS biz_project_plan; CREATE TABLE biz_project_plan ( plan_id BIGINT NOT NULL AUTO_INCREMENT COMMENT '策划方案ID', plan_name VARCHAR(200) NOT NULL COMMENT '策划方案名称', plan_direction VARCHAR(500) DEFAULT NULL COMMENT '项目方向', plan_category VARCHAR(50) DEFAULT NULL COMMENT '项目类别 会议项目/科研项目/学术项目/指南/对外交流/共识', project_form VARCHAR(20) DEFAULT NULL COMMENT '项目形式', design_file_url VARCHAR(500) DEFAULT NULL COMMENT '设计文件URL', status VARCHAR(20) DEFAULT '0' COMMENT '状态 待审核/审核通过/已退回', is_settled CHAR(1) DEFAULT '0' COMMENT '是否结算 0否 1是', project_no VARCHAR(50) DEFAULT NULL COMMENT '关联项目编号', remark VARCHAR(500) DEFAULT NULL COMMENT '备注', audit_opinion VARCHAR(500) DEFAULT NULL COMMENT '审核意见', audit_by VARCHAR(64) DEFAULT NULL COMMENT '审核人', audit_time DATETIME DEFAULT NULL COMMENT '审核时间', create_by VARCHAR(64) DEFAULT '' COMMENT '创建者', create_time DATETIME DEFAULT NULL COMMENT '创建时间', update_by VARCHAR(64) DEFAULT '' COMMENT '更新者', update_time DATETIME DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (plan_id), KEY idx_plan_status (status), KEY idx_plan_project_no (project_no) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='项目策划方案表'; DROP TABLE IF EXISTS biz_project_assign; CREATE TABLE biz_project_assign ( assign_id BIGINT NOT NULL AUTO_INCREMENT COMMENT '分配ID', project_id BIGINT NOT NULL COMMENT '项目ID', execution_unit_id BIGINT NOT NULL COMMENT '执行单位ID', execution_unit_name VARCHAR(200) DEFAULT NULL COMMENT '执行单位名称(冗余)', sessions INT DEFAULT 0 COMMENT '分配场数', amount DECIMAL(15,2) DEFAULT 0 COMMENT '总金额', PRIMARY KEY (assign_id), KEY idx_assign_project (project_id), KEY idx_assign_unit (execution_unit_id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='项目-执行单位分配表'; DROP TABLE IF EXISTS biz_project_labor_role; CREATE TABLE biz_project_labor_role ( id BIGINT NOT NULL AUTO_INCREMENT COMMENT 'ID', project_id BIGINT NOT NULL COMMENT '项目ID', role_name VARCHAR(50) NOT NULL COMMENT '角色 主席/主持', labor_amount DECIMAL(12,2) DEFAULT 0 COMMENT '劳务金额', PRIMARY KEY (id), KEY idx_plr_project (project_id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='项目角色劳务设置表'; DROP TABLE IF EXISTS biz_meeting; CREATE TABLE biz_meeting ( meeting_id BIGINT NOT NULL AUTO_INCREMENT COMMENT '会议ID', business_id VARCHAR(50) NOT NULL COMMENT '业务会议ID 5643145673', project_id BIGINT DEFAULT NULL COMMENT '所属项目ID', project_no VARCHAR(50) DEFAULT NULL COMMENT '项目编号', project_name VARCHAR(200) DEFAULT NULL COMMENT '项目名称', meeting_name VARCHAR(200) DEFAULT NULL COMMENT '会议名称', period_no INT DEFAULT 1 COMMENT '期数', total_periods INT DEFAULT 1 COMMENT '总期数', project_form VARCHAR(20) DEFAULT NULL COMMENT '项目形式', start_time DATETIME DEFAULT NULL COMMENT '会议开始时间', end_time DATETIME DEFAULT NULL COMMENT '会议结束时间', org_name VARCHAR(200) DEFAULT NULL COMMENT '公司名称(冗余)', current_stage VARCHAR(20) DEFAULT '0' COMMENT '当前阶段 未执行/待监管/监管通过/待整改/待结算/已结算/已结题', supervision_opinion VARCHAR(500) DEFAULT NULL COMMENT '监察意见', supervision_by VARCHAR(64) DEFAULT NULL COMMENT '监察人', supervision_time DATETIME DEFAULT NULL COMMENT '监察时间', invitation_url VARCHAR(500) DEFAULT NULL COMMENT '邀请函URL', schedule_url VARCHAR(500) DEFAULT NULL COMMENT '日程海报URL', labor_signed CHAR(1) DEFAULT '0' COMMENT '签署劳务 0未签 1已签', create_by VARCHAR(64) DEFAULT '' COMMENT '创建人', create_time DATETIME DEFAULT NULL COMMENT '创建时间', update_by VARCHAR(64) DEFAULT '' COMMENT '更新人', update_time DATETIME DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (meeting_id), UNIQUE KEY uk_business_id (business_id), KEY idx_meeting_project (project_id), KEY idx_meeting_stage (current_stage) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='会议表'; DROP TABLE IF EXISTS biz_meeting_settlement; CREATE TABLE biz_meeting_settlement ( id BIGINT NOT NULL AUTO_INCREMENT COMMENT 'ID', meeting_id BIGINT DEFAULT NULL COMMENT '会议ID', project_no VARCHAR(50) DEFAULT NULL COMMENT '项目编号', project_name VARCHAR(200) DEFAULT NULL COMMENT '会议名称', exec_unit VARCHAR(200) DEFAULT NULL COMMENT '执行单位', fee_type VARCHAR(50) NOT NULL COMMENT '费用项 场地租赁/设备租赁/餐饮服务/资料印刷/其他杂费/专家劳务费/评审费/差旅费/材料费/其他费用', unit_price DECIMAL(12,2) DEFAULT 0 COMMENT '单价', qty INT DEFAULT 0 COMMENT '数量', subtotal DECIMAL(12,2) DEFAULT 0 COMMENT '小计', remark VARCHAR(500) DEFAULT NULL COMMENT '备注', audit_status VARCHAR(20) DEFAULT '0' COMMENT '审核状态 已审核/待审核', settlement_type VARCHAR(20) DEFAULT 'meeting' COMMENT '结算类型 meeting会务/labor劳务', PRIMARY KEY (id), KEY idx_st_meeting (meeting_id), KEY idx_st_type (settlement_type) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='会议结算明细'; DROP TABLE IF EXISTS biz_expert; CREATE TABLE biz_expert ( expert_id BIGINT NOT NULL AUTO_INCREMENT COMMENT '专家ID', user_id BIGINT DEFAULT NULL COMMENT '关联系统用户ID', name VARCHAR(50) NOT NULL COMMENT '姓名', phone VARCHAR(20) NOT NULL COMMENT '手机号', work_unit VARCHAR(200) DEFAULT NULL COMMENT '工作单位', department VARCHAR(100) DEFAULT NULL COMMENT '科室', title VARCHAR(50) DEFAULT NULL COMMENT '职称 主任医师/副主任医师/主治医师/住院医师', region VARCHAR(50) DEFAULT NULL COMMENT '地区', id_card VARCHAR(50) DEFAULT NULL COMMENT '证件号码', bank_card VARCHAR(50) DEFAULT NULL COMMENT '银行卡号', bank_name VARCHAR(100) DEFAULT NULL COMMENT '银行名称', bank_province VARCHAR(50) DEFAULT NULL COMMENT '开户行省份', bank_city VARCHAR(50) DEFAULT NULL COMMENT '开户行城市', bank_address VARCHAR(200) DEFAULT NULL COMMENT '开户行地址', id_card_front_url VARCHAR(500) DEFAULT NULL COMMENT '身份证正面URL', id_card_back_url VARCHAR(500) DEFAULT NULL COMMENT '身份证反面URL', practice_cert_url VARCHAR(500) DEFAULT NULL COMMENT '执业证书URL', title_cert_url VARCHAR(500) DEFAULT NULL COMMENT '职称证明URL', audit_status VARCHAR(20) DEFAULT '1' COMMENT '审核状态 0未提交 1待审核 2通过 3拒绝', audit_opinion VARCHAR(500) DEFAULT NULL COMMENT '审核意见', audit_by VARCHAR(64) DEFAULT NULL COMMENT '审核人', audit_time DATETIME DEFAULT NULL COMMENT '审核时间', status CHAR(1) DEFAULT 'Y' COMMENT '状态 Y正常 N禁用', create_by VARCHAR(64) DEFAULT '' COMMENT '创建者', create_time DATETIME DEFAULT NULL COMMENT '创建时间', update_by VARCHAR(64) DEFAULT '' COMMENT '更新者', update_time DATETIME DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (expert_id), UNIQUE KEY uk_expert_phone (phone), KEY idx_expert_audit (audit_status) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='专家表'; DROP TABLE IF EXISTS biz_execution_unit; DROP TABLE IF EXISTS biz_support_unit; DROP TABLE IF EXISTS biz_service_org; CREATE TABLE biz_org ( org_id BIGINT NOT NULL AUTO_INCREMENT COMMENT '公司ID', org_name VARCHAR(200) NOT NULL COMMENT '公司名称', org_type VARCHAR(20) NOT NULL COMMENT '公司类型 sponsor赞助方/executor执行方', business_nature VARCHAR(20) DEFAULT NULL COMMENT '企业性质 私营/国营/中外合资/外资/其他', address VARCHAR(500) DEFAULT NULL COMMENT '公司地址', tax_no VARCHAR(50) DEFAULT NULL COMMENT '税号/统一社会信用代码', contact_name VARCHAR(50) DEFAULT NULL COMMENT '联系人', contact_phone VARCHAR(20) DEFAULT NULL COMMENT '联系电话', intent_count INT DEFAULT 0 COMMENT '意向项目数 (仅赞助方用)', status VARCHAR(20) DEFAULT '0' COMMENT '合作状态 sponsor: 合作中/待签约/已停用; executor: 0正常 1禁用', create_by VARCHAR(64) DEFAULT '' COMMENT '创建者', create_time DATETIME DEFAULT NULL COMMENT '创建时间', update_by VARCHAR(64) DEFAULT '' COMMENT '更新者', update_time DATETIME DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (org_id), KEY idx_org_type_status (org_type, status) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='公司表 (赞助方/执行方共用)'; DROP TABLE IF EXISTS biz_person; CREATE TABLE biz_person ( person_id BIGINT NOT NULL AUTO_INCREMENT COMMENT '人员ID', user_id BIGINT DEFAULT NULL COMMENT '关联系统用户ID', name VARCHAR(50) NOT NULL COMMENT '姓名', phone VARCHAR(20) NOT NULL COMMENT '手机号', org_id BIGINT DEFAULT NULL COMMENT '所属公司ID (FK: biz_org.org_id)', department VARCHAR(100) DEFAULT NULL COMMENT '部门', position VARCHAR(50) DEFAULT NULL COMMENT '职务', role VARCHAR(20) DEFAULT NULL COMMENT '角色 项目负责人/会议执行/监察员/会务执行', unit_type VARCHAR(20) DEFAULT 'executor' COMMENT '所属单位类型 executor执行/sponsor支持', status CHAR(1) DEFAULT '0' COMMENT '状态 0正常 1禁用', create_by VARCHAR(64) DEFAULT '' COMMENT '创建者', create_time DATETIME DEFAULT NULL COMMENT '创建时间', update_by VARCHAR(64) DEFAULT '' COMMENT '更新者', update_time DATETIME DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (person_id), UNIQUE KEY uk_person_phone (phone), KEY idx_person_role (role), KEY idx_person_unit_type (unit_type) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='人员表'; DROP TABLE IF EXISTS biz_support_intent; CREATE TABLE biz_support_intent ( intent_id BIGINT NOT NULL AUTO_INCREMENT COMMENT 'ID', project_no VARCHAR(50) DEFAULT NULL COMMENT '意向项目编号', project_name VARCHAR(200) DEFAULT NULL COMMENT '意向项目名称', name VARCHAR(50) NOT NULL COMMENT '姓名', work_unit VARCHAR(200) DEFAULT NULL COMMENT '工作单位名称', department VARCHAR(100) DEFAULT NULL COMMENT '部门', position VARCHAR(50) DEFAULT NULL COMMENT '职务', phone VARCHAR(20) NOT NULL COMMENT '手机号', account_status VARCHAR(20) DEFAULT '不存在' COMMENT '账号状态 存在/不存在', create_time DATETIME DEFAULT NULL COMMENT '创建时间', PRIMARY KEY (intent_id), KEY idx_si_project (project_no), KEY idx_si_phone (phone) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='支持意向表'; DROP TABLE IF EXISTS biz_execution_intent; CREATE TABLE biz_execution_intent ( intent_id BIGINT NOT NULL AUTO_INCREMENT COMMENT 'ID', project_no VARCHAR(50) DEFAULT NULL COMMENT '意向项目编号', project_name VARCHAR(200) DEFAULT NULL COMMENT '意向项目名称', name VARCHAR(50) NOT NULL COMMENT '姓名', work_unit VARCHAR(200) DEFAULT NULL COMMENT '工作单位名称', department VARCHAR(100) DEFAULT NULL COMMENT '部门', position VARCHAR(50) DEFAULT NULL COMMENT '职务', phone VARCHAR(20) NOT NULL COMMENT '手机号', onboard_status VARCHAR(20) DEFAULT '未入库' COMMENT '是否入库 已入库/未入库', create_time DATETIME DEFAULT NULL COMMENT '创建时间', PRIMARY KEY (intent_id), KEY idx_ei_project (project_no), KEY idx_ei_phone (phone) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='执行意向表'; DROP TABLE IF EXISTS biz_announcement; CREATE TABLE biz_announcement ( ann_id BIGINT NOT NULL AUTO_INCREMENT COMMENT '公示ID', title VARCHAR(500) NOT NULL COMMENT '标题', ann_type VARCHAR(20) NOT NULL COMMENT '类型 邀请函/支持函/通知/日程', publish_time DATETIME DEFAULT NULL COMMENT '发布时间', file_url VARCHAR(500) DEFAULT NULL COMMENT '附件URL', project_id BIGINT DEFAULT NULL COMMENT '关联项目ID', project_no VARCHAR(50) DEFAULT NULL COMMENT '关联项目编号', status CHAR(1) DEFAULT '0' COMMENT '状态 0正常 1删除', create_by VARCHAR(64) DEFAULT '' COMMENT '创建者', create_time DATETIME DEFAULT NULL COMMENT '创建时间', update_by VARCHAR(64) DEFAULT '' COMMENT '更新者', update_time DATETIME DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (ann_id), KEY idx_ann_type (ann_type), KEY idx_ann_project (project_no) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='项目公示公告表'; DROP TABLE IF EXISTS biz_invitation; CREATE TABLE biz_invitation ( invite_id BIGINT NOT NULL AUTO_INCREMENT COMMENT '邀请函ID', project_id BIGINT DEFAULT NULL COMMENT '项目ID', project_no VARCHAR(50) DEFAULT NULL COMMENT '项目编号', title VARCHAR(200) DEFAULT NULL COMMENT '标题', template_url VARCHAR(500) DEFAULT NULL COMMENT '邀请函模板URL', qr_code_url VARCHAR(500) DEFAULT NULL COMMENT '二维码URL', share_url VARCHAR(500) DEFAULT NULL COMMENT '分享URL', publish_time DATETIME DEFAULT NULL COMMENT '发布时间', remark VARCHAR(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (invite_id), KEY idx_iv_project (project_id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='邀请函表'; DROP TABLE IF EXISTS biz_support_letter; CREATE TABLE biz_support_letter ( letter_id BIGINT NOT NULL AUTO_INCREMENT COMMENT '支持函ID', project_id BIGINT DEFAULT NULL COMMENT '项目ID', project_no VARCHAR(50) DEFAULT NULL COMMENT '项目编号', title VARCHAR(200) DEFAULT NULL COMMENT '标题', file_url VARCHAR(500) DEFAULT NULL COMMENT '支持函图片URL', publish_time DATETIME DEFAULT NULL COMMENT '发布时间', support_count INT DEFAULT 0 COMMENT '支持次数', PRIMARY KEY (letter_id), KEY idx_sl_project (project_id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='支持函表'; DROP TABLE IF EXISTS biz_submission; CREATE TABLE biz_submission ( sub_id BIGINT NOT NULL AUTO_INCREMENT COMMENT '投稿ID', submitter_id BIGINT DEFAULT NULL COMMENT '投稿人用户ID', submitter_name VARCHAR(50) DEFAULT NULL COMMENT '投稿人姓名', title VARCHAR(200) NOT NULL COMMENT '投稿名称', direction VARCHAR(100) DEFAULT NULL COMMENT '学科方向', project_form VARCHAR(20) DEFAULT NULL COMMENT '形式 线上/线下/线上+线下', project_category VARCHAR(50) DEFAULT NULL COMMENT '项目类别 学术会议类/专项科研类/调研征集类/慈善帮扶类/标准制定类/患者援助类/专业培训类', design_file_url VARCHAR(500) DEFAULT NULL COMMENT '设计文件URL', status VARCHAR(20) DEFAULT '0' COMMENT '状态 待审核/审核通过/已退回/未结题/已结题', remark VARCHAR(500) DEFAULT NULL COMMENT '备注', audit_opinion VARCHAR(500) DEFAULT NULL COMMENT '审核意见', audit_by VARCHAR(64) DEFAULT NULL COMMENT '审核人', audit_time DATETIME DEFAULT NULL COMMENT '审核时间', create_by VARCHAR(64) DEFAULT '' COMMENT '创建者', create_time DATETIME DEFAULT NULL COMMENT '创建时间', update_by VARCHAR(64) DEFAULT '' COMMENT '更新者', update_time DATETIME DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (sub_id), KEY idx_sub_status (status), KEY idx_sub_submitter (submitter_id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='投稿表'; DROP TABLE IF EXISTS biz_project_rating; CREATE TABLE biz_project_rating ( rating_id BIGINT NOT NULL AUTO_INCREMENT COMMENT '评分ID', project_id BIGINT NOT NULL COMMENT '项目ID', project_no VARCHAR(50) DEFAULT NULL COMMENT '项目编号', project_name VARCHAR(200) DEFAULT NULL COMMENT '项目名称', rater_id BIGINT DEFAULT NULL COMMENT '评分人ID', rater_name VARCHAR(50) DEFAULT NULL COMMENT '评分人姓名', rater_role VARCHAR(20) DEFAULT NULL COMMENT '评分人角色 compliance/executor/sponsor', quality_score INT DEFAULT 0 COMMENT '履约质量 1-5', response_score INT DEFAULT 0 COMMENT '时效响应 1-5', cooperation_score INT DEFAULT 0 COMMENT '配合度 1-5', compliance_score INT DEFAULT 0 COMMENT '合规安全 1-5', total_score DECIMAL(3,1) DEFAULT 0 COMMENT '总分', remark VARCHAR(500) DEFAULT NULL COMMENT '评价备注', rating_time DATETIME DEFAULT NULL COMMENT '评分时间', PRIMARY KEY (rating_id), KEY idx_pr_project (project_id), KEY idx_pr_rater (rater_id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='项目评分表'; DROP TABLE IF EXISTS biz_resource; CREATE TABLE biz_resource ( resource_id BIGINT NOT NULL AUTO_INCREMENT COMMENT '资料ID', name VARCHAR(200) NOT NULL COMMENT '资料名称', category VARCHAR(50) DEFAULT NULL COMMENT '分类 项目模板/会议材料/合规文档/专家库/培训资料/表单模板', file_size VARCHAR(20) DEFAULT NULL COMMENT '文件大小', file_url VARCHAR(500) DEFAULT NULL COMMENT '文件URL', uploader_id BIGINT DEFAULT NULL COMMENT '上传人ID', uploader_name VARCHAR(50) DEFAULT NULL COMMENT '上传人', upload_time DATETIME DEFAULT NULL COMMENT '上传时间', status VARCHAR(20) DEFAULT '0' COMMENT '状态 已发布/草稿', PRIMARY KEY (resource_id), KEY idx_res_category (category) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='资料库表'; DROP TABLE IF EXISTS biz_labor_voucher; CREATE TABLE biz_labor_voucher ( voucher_id BIGINT NOT NULL AUTO_INCREMENT COMMENT '凭证ID', voucher_no VARCHAR(50) NOT NULL COMMENT '凭证编号 LV-2026-001', meeting_id BIGINT DEFAULT NULL COMMENT '会议ID', meeting_name VARCHAR(200) DEFAULT NULL COMMENT '会议名称', expert_name VARCHAR(50) DEFAULT NULL COMMENT '专家姓名', id_card VARCHAR(50) DEFAULT NULL COMMENT '身份证号', bank_account VARCHAR(50) DEFAULT NULL COMMENT '银行账号', amount DECIMAL(12,2) DEFAULT 0 COMMENT '金额', submit_date DATETIME DEFAULT NULL COMMENT '提交日期', audit_status VARCHAR(20) DEFAULT '0' COMMENT '审核状态 待审核/已审核/已驳回', audit_opinion VARCHAR(500) DEFAULT NULL COMMENT '审核意见', audit_by VARCHAR(64) DEFAULT NULL COMMENT '审核人', audit_time DATETIME DEFAULT NULL COMMENT '审核时间', PRIMARY KEY (voucher_id), UNIQUE KEY uk_voucher_no (voucher_no) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='劳务凭证表'; -- 注: 2026-08-16 重构, 删 biz_user_role_bind 表, 业务角色统一存 sys_user.role_type -- sys_user 表在 RuoYi 标准 schema 里已含 role_type 列 (admin/leader/manager/doctor/executor/sponsor) -- ============================================================================ -- 平台协议/隐私政策文章表 (2026-08-16 新增) -- type: agreement=用户协议, privacy=隐私政策 -- ============================================================================ CREATE TABLE biz_article ( id BIGINT NOT NULL AUTO_INCREMENT COMMENT '文章ID', title VARCHAR(200) NOT NULL COMMENT '标题', type VARCHAR(20) NOT NULL COMMENT '类型 agreement=用户协议 privacy=隐私政策', content MEDIUMTEXT NOT NULL COMMENT '正文 (HTML/富文本)', status CHAR(1) DEFAULT '0' COMMENT '状态 0启用 1停用', create_by VARCHAR(64) DEFAULT '' COMMENT '创建者', create_time DATETIME DEFAULT NULL COMMENT '创建时间', update_by VARCHAR(64) DEFAULT '' COMMENT '更新者', update_time DATETIME DEFAULT NULL COMMENT '更新时间', remark VARCHAR(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (id), KEY idx_biz_article_type (type, status) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='平台协议及隐私政策文章表'; -- ============================================================================ -- 七大专项计划表 (2026-08-16 新增) -- 首页 "七大专项计划" 区块改由 admin 后台维护 -- content_type: rich=富文本 / file=上传文件 (PDF/PNG) -- ============================================================================ CREATE TABLE biz_special_plan ( id BIGINT NOT NULL AUTO_INCREMENT COMMENT '专项计划ID', title VARCHAR(200) NOT NULL COMMENT '专项计划名称', content_type VARCHAR(20) NOT NULL DEFAULT 'rich' COMMENT '内容类型 rich=富文本 file=上传文件', content MEDIUMTEXT DEFAULT NULL COMMENT '富文本内容', file_url VARCHAR(500) DEFAULT NULL COMMENT '上传文件URL (PDF/PNG)', sort_order INT DEFAULT 0 COMMENT '排序, 从小到大', status CHAR(1) DEFAULT '0' COMMENT '状态 0启用 1停用', create_by VARCHAR(64) DEFAULT '' COMMENT '创建者', create_time DATETIME DEFAULT NULL COMMENT '创建时间', update_by VARCHAR(64) DEFAULT '' COMMENT '更新者', update_time DATETIME DEFAULT NULL COMMENT '更新时间', remark VARCHAR(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (id), KEY idx_special_plan_status (status, sort_order) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='七大专项计划表'; SET FOREIGN_KEY_CHECKS = 1; -- ============================================================================ -- 初始化业务字典 (sys_dict_type / sys_dict_data 来自 RuoYi) -- 这里只补业务特有字典 -- ============================================================================ INSERT INTO sys_dict_type(dict_id, dict_name, dict_type, status, create_by, create_time, remark) VALUES (100, '项目形式', 'biz_project_form', '0', 'admin', NOW(), '线上/线下/线上+线下/其他'), (101, '项目状态', 'biz_project_status', '0', 'admin', NOW(), '已结题/未结题'), (102, '结算状态', 'biz_settle_status', '0', 'admin', NOW(), '已结算/未结算'), (103, '专家审核', 'biz_expert_audit', '0', 'admin', NOW(), '待审核/审核通过/已退回'), (104, '合作状态', 'biz_coop_status', '0', 'admin', NOW(), '合作中/待签约/已停用'), (105, '当前阶段', 'biz_meeting_stage', '0', 'admin', NOW(), '未执行/待监管/监管通过/待整改/待结算/已结算/已结题'), (106, '人员角色', 'biz_person_role', '0', 'admin', NOW(), '项目负责人/会议执行/监察员/会务执行'), (107, '企业性质', 'biz_business_nature', '0', 'admin', NOW(), '私营/国营/中外合资/外资/其他'), (108, '项目类别', 'biz_project_category', '0', 'admin', NOW(), '会议项目/科研项目/学术项目/指南/对外交流/共识'), (109, '学术类别', 'biz_submission_category', '0', 'admin', NOW(), '学术会议类/专项科研类/调研征集类/慈善帮扶类/标准制定类/患者援助类/专业培训类'), (110, '审核状态', 'biz_audit_status', '0', 'admin', NOW(), '待审核/已审核/已驳回'), (113, '公告类型', 'biz_ann_type', '0', 'admin', NOW(), '邀请函/支持函/通知/日程'), (114, '医生职称', 'biz_doctor_title', '0', 'admin', NOW(), '主任医师/副主任医师/主治医师/住院医师'), (115, '科室', 'biz_department', '0', 'admin', NOW(), '内科/外科/儿科/妇产科/其他'), (116, '地区', 'biz_region', '0', 'admin', NOW(), '北京/上海/广东/其他'), (117, '结算类型', 'biz_settlement_type', '0', 'admin', NOW(), 'meeting/labor'); INSERT INTO sys_dict_data(dict_code, dict_sort, dict_label, dict_value, dict_type, dict_label_en, css_class, list_class, is_default, status, create_by, create_time, remark) SELECT 1, 1, '线上', '线上', 'biz_project_form', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 2, 2, '线下', '线下', 'biz_project_form', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 3, 3, '线上+线下', '线上+线下', 'biz_project_form', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 4, 4, '其他', '其他', 'biz_project_form', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 5, 1, '已结题', '1', 'biz_project_status', '', '', 'success', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 6, 2, '未结题', '0', 'biz_project_status', '', '', 'warning', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 7, 1, '已结算', '1', 'biz_settle_status', '', '', 'success', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 8, 2, '未结算', '0', 'biz_settle_status', '', '', 'warning', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 9, 1, '待审核', '待审核', 'biz_expert_audit', '', '', 'warning', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 10, 2, '审核通过', '审核通过', 'biz_expert_audit', '', '', 'success', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 11, 3, '已退回', '已退回', 'biz_expert_audit', '', '', 'danger', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 12, 1, '合作中', '合作中', 'biz_coop_status', '', '', 'success', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 13, 2, '待签约', '待签约', 'biz_coop_status', '', '', 'warning', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 14, 3, '已停用', '已停用', 'biz_coop_status', '', '', 'danger', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 15, 1, '未执行', '未执行', 'biz_meeting_stage', '', '', 'info', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 16, 2, '待监管', '待监管', 'biz_meeting_stage', '', '', 'warning', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 17, 3, '监管通过', '监管通过', 'biz_meeting_stage', '', '', 'success', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 18, 4, '待整改', '待整改', 'biz_meeting_stage', '', '', 'danger', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 19, 5, '待结算', '待结算', 'biz_meeting_stage', '', '', 'warning', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 20, 6, '已结算', '已结算', 'biz_meeting_stage', '', '', 'success', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 21, 7, '已结题', '已结题', 'biz_meeting_stage', '', '', 'success', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 22, 1, '项目负责人', '项目负责人', 'biz_person_role', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 23, 2, '会议执行', '会议执行', 'biz_person_role', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 24, 3, '监察员', '监察员', 'biz_person_role', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 25, 4, '会务执行', '会务执行', 'biz_person_role', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 26, 1, '私营', '私营', 'biz_business_nature', '', '', 'default', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 27, 2, '国营', '国营', 'biz_business_nature', '', '', 'default', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 28, 3, '中外合资', '中外合资', 'biz_business_nature', '', '', 'default', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 29, 4, '外资', '外资', 'biz_business_nature', '', '', 'default', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 30, 5, '其他', '其他', 'biz_business_nature', '', '', 'default', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 31, 1, '会议项目', '会议项目', 'biz_project_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 32, 2, '科研项目', '科研项目', 'biz_project_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 33, 3, '学术项目', '学术项目', 'biz_project_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 34, 4, '指南', '指南', 'biz_project_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 35, 5, '对外交流', '对外交流', 'biz_project_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 36, 6, '共识', '共识', 'biz_project_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 37, 1, '学术会议类', '学术会议类', 'biz_submission_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 38, 2, '专项科研类', '专项科研类', 'biz_submission_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 39, 3, '调研征集类', '调研征集类', 'biz_submission_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 40, 4, '慈善帮扶类', '慈善帮扶类', 'biz_submission_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 41, 5, '标准制定类', '标准制定类', 'biz_submission_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 42, 6, '患者援助类', '患者援助类', 'biz_submission_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 43, 7, '专业培训类', '专业培训类', 'biz_submission_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 44, 1, '待审核', '待审核', 'biz_audit_status', '', '', 'warning', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 45, 2, '已审核', '已审核', 'biz_audit_status', '', '', 'success', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 46, 3, '已驳回', '已驳回', 'biz_audit_status', '', '', 'danger', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 47, 1, '正常', '0', 'sys_normal_status', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 48, 2, '禁用', '1', 'sys_normal_status', '', '', 'danger', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 49, 1, '是', 'Y', 'sys_yes_no', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 50, 2, '否', 'N', 'sys_yes_no', '', '', 'danger', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 51, 1, '邀请函', '邀请函', 'biz_ann_type', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 52, 2, '支持函', '支持函', 'biz_ann_type', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 53, 3, '通知', '通知', 'biz_ann_type', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 54, 4, '日程', '日程', 'biz_ann_type', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 55, 1, '主任医师', '主任医师', 'biz_doctor_title', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 56, 2, '副主任医师', '副主任医师', 'biz_doctor_title', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 57, 3, '主治医师', '主治医师', 'biz_doctor_title', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 58, 4, '住院医师', '住院医师', 'biz_doctor_title', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 59, 1, '内科', '内科', 'biz_department', '', '', 'default', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 60, 2, '外科', '外科', 'biz_department', '', '', 'default', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 61, 3, '儿科', '儿科', 'biz_department', '', '', 'default', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 62, 4, '妇产科', '妇产科', 'biz_department', '', '', 'default', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 63, 5, '其他', '其他', 'biz_department', '', '', 'default', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 64, 1, '北京', '北京', 'biz_region', '', '', 'default', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 65, 2, '上海', '上海', 'biz_region', '', '', 'default', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 66, 3, '广东', '广东', 'biz_region', '', '', 'default', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 67, 4, '其他', '其他', 'biz_region', '', '', 'default', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 68, 1, '会务', 'meeting', 'biz_settlement_type', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 69, 2, '劳务', 'labor', 'biz_settlement_type', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 70, 1, '项目模板', '项目模板', 'sys_resource_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 71, 2, '会议材料', '会议材料', 'sys_resource_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 72, 3, '合规文档', '合规文档', 'sys_resource_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 73, 4, '专家库', '专家库', 'sys_resource_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 74, 5, '培训资料', '培训资料', 'sys_resource_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '' UNION ALL SELECT 75, 6, '表单模板', '表单模板', 'sys_resource_category', '', '', 'primary', 'N', '0', 'admin', NOW(), '';