-- 患者表新增字段
ALTER TABLE `patient`
  ADD COLUMN `hospital` varchar(100) DEFAULT '' COMMENT '医院名称' AFTER `address`,
  ADD COLUMN `sample_types` varchar(255) DEFAULT '' COMMENT '送检样本类型(JSON数组)',
  ADD COLUMN `wax_return` tinyint(1) DEFAULT 0 COMMENT '是否需寄回: 0否 1是',
  ADD COLUMN `return_name` varchar(50) DEFAULT '' COMMENT '寄回收件人姓名',
  ADD COLUMN `return_phone` varchar(20) DEFAULT '' COMMENT '寄回收件人电话',
  ADD COLUMN `return_province_code` varchar(10) DEFAULT '' COMMENT '寄回省份编码',
  ADD COLUMN `return_city_code` varchar(10) DEFAULT '' COMMENT '寄回城市编码',
  ADD COLUMN `return_district_code` varchar(10) DEFAULT '' COMMENT '寄回区县编码',
  ADD COLUMN `return_address` varchar(255) DEFAULT '' COMMENT '寄回详细地址',
  ADD COLUMN `report_email` varchar(100) DEFAULT '' COMMENT '报告接收邮箱',
  ADD COLUMN `sample_tracking_no` varchar(100) DEFAULT '' COMMENT '送检样本物流单号',
  ADD COLUMN `sample_photos` json DEFAULT NULL COMMENT '送检单照片(JSON数组)';

-- 送检样本类型配置表
CREATE TABLE `sample_type` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) NOT NULL COMMENT '样本类型名称',
  `need_return` tinyint(1) DEFAULT 0 COMMENT '是否可选需寄回: 0否 1是',
  `sort` int(11) DEFAULT 0 COMMENT '排序(越大越前)',
  `status` tinyint(1) DEFAULT 1 COMMENT '状态: 1启用 0禁用',
  `is_deleted` tinyint(1) DEFAULT 0 COMMENT '软删除',
  `create_time` datetime DEFAULT CURRENT_TIMESTAMP,
  `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) COMMENT='送检样本类型配置';

INSERT INTO `sample_type` (`name`, `need_return`, `sort`, `status`) VALUES
('蜡块', 1, 4, 1),
('白片', 0, 3, 1),
('血液', 0, 2, 1),
('新鲜组织', 0, 1, 1);

-- sys_config 新增送检样本是否必选配置
INSERT INTO `sys_config` (`config_key`, `config_value`, `remark`) VALUES
('sample_required', '0', '送检样本是否必选: 0否 1是');
