-- 服务预约主表（兽医/机构/专家共用）
CREATE TABLE IF NOT EXISTS `biz_service_appointment` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `provider_type` tinyint(4) NOT NULL COMMENT '1兽医2机构3专家',
  `provider_id` bigint(20) NOT NULL COMMENT '服务方资源ID',
  `appointee_name` varchar(64) NOT NULL COMMENT '预约人',
  `appoint_date` date NOT NULL COMMENT '预约日期',
  `time_start` varchar(8) NOT NULL COMMENT '开始HH:mm',
  `time_end` varchar(8) NOT NULL COMMENT '结束HH:mm',
  `contact_phone` varchar(20) NOT NULL COMMENT '联系电话',
  `service_address` varchar(200) NOT NULL COMMENT '服务地址',
  `service_requirement` varchar(500) DEFAULT NULL COMMENT '服务需求',
  `status` tinyint(4) NOT NULL COMMENT '0待确认1已确认2已拒绝3已取消4已完成5已预约',
  `reject_reason` varchar(200) DEFAULT NULL COMMENT '拒绝理由',
  `confirm_time` datetime DEFAULT NULL COMMENT '确认时间',
  `reject_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 '更新时间',
  `remark` varchar(500) DEFAULT NULL COMMENT '备注',
  PRIMARY KEY (`id`),
  KEY `idx_provider` (`provider_type`,`provider_id`),
  KEY `idx_appoint_date` (`appoint_date`),
  KEY `idx_status` (`status`),
  KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='服务预约主表';
