新增功能

This commit is contained in:
Your Name
2026-04-01 09:46:25 +08:00
parent 099bc1dd22
commit a780356908
332 changed files with 7845 additions and 866 deletions
@@ -0,0 +1,3 @@
-- 诊单:在用药物(患者当前服用的西药/中成药等)
ALTER TABLE `zyt_tcm_diagnosis`
ADD COLUMN `current_medications` varchar(2000) NOT NULL DEFAULT '' COMMENT '在用药物' AFTER `remark`;
@@ -0,0 +1,5 @@
-- 问题:UNIQUE(doctor_id, appointment_date, appointment_time, status) 允许「一条已预约 + 一条已取消」
-- 同一时段若先后有两名患者预约并取消,第二条 UPDATE status=2 会与第一条已取消行唯一键冲突(1062)。
-- 解决:去掉该唯一索引;「档期仅一条已预约」由 AppointmentLogic::create 中 status=1 存在性检查保证。
ALTER TABLE `zyt_doctor_appointment` DROP INDEX `unique_appointment`;
ALTER TABLE `zyt_doctor_appointment` ADD KEY `idx_doctor_date_time_status` (`doctor_id`, `appointment_date`, `appointment_time`, `status`);
@@ -0,0 +1,8 @@
-- 处方:指定角色可见(非共享时除创建者外,所列角色用户也可查看);审核状态与审核信息
ALTER TABLE `zyt_tcm_prescription`
ADD COLUMN `visible_role_ids` varchar(500) NOT NULL DEFAULT '' COMMENT '额外可见角色ID,逗号分隔,与创建者/共享并列' AFTER `is_shared`,
ADD COLUMN `audit_status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '审核:0待审核 1已通过 2已驳回(同时作废)' AFTER `visible_role_ids`,
ADD COLUMN `audit_time` int(10) unsigned DEFAULT NULL COMMENT '审核时间' AFTER `audit_status`,
ADD COLUMN `audit_by` int(11) unsigned DEFAULT NULL COMMENT '审核人ID' AFTER `audit_time`,
ADD COLUMN `audit_by_name` varchar(50) NOT NULL DEFAULT '' COMMENT '审核人姓名' AFTER `audit_by`,
ADD COLUMN `audit_remark` varchar(500) NOT NULL DEFAULT '' COMMENT '审核意见' AFTER `audit_by_name`;
@@ -0,0 +1,15 @@
-- 诊单指派医助操作记录(单次指派一条,批量指派为多条)
CREATE TABLE IF NOT EXISTS `zyt_tcm_diagnosis_assign_log` (
`id` int unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
`diagnosis_id` int unsigned NOT NULL DEFAULT 0 COMMENT '诊单ID',
`from_assistant_id` int unsigned NOT NULL DEFAULT 0 COMMENT '原医助管理员ID0表示未指派',
`to_assistant_id` int unsigned NOT NULL DEFAULT 0 COMMENT '新医助管理员ID',
`operator_admin_id` int unsigned NOT NULL DEFAULT 0 COMMENT '操作人管理员ID',
`operator_name` varchar(64) NOT NULL DEFAULT '' COMMENT '操作人姓名',
`operator_account` varchar(64) NOT NULL DEFAULT '' COMMENT '操作人账号',
`ip` varchar(45) NOT NULL DEFAULT '' COMMENT '操作IP',
`create_time` int unsigned NOT NULL DEFAULT 0 COMMENT '操作时间',
PRIMARY KEY (`id`),
KEY `idx_diagnosis_id` (`diagnosis_id`),
KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='诊单指派医助操作记录';