liuyun b83c59611c feat(c1): elder + elder_status_log 数据模型
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-10-14 16:54:45 +08:00

81 lines
3.0 KiB
SQL

-- CreateTable
CREATE TABLE `ltc_elder` (
`id` VARCHAR(36) NOT NULL,
`tenant_code` VARCHAR(64) NOT NULL,
`loc_code` VARCHAR(12) NOT NULL,
`prev_loc_code` VARCHAR(12) NULL,
`transfer_confirm_at` DATETIME(3) NULL,
`name` VARCHAR(30) NOT NULL,
`gender` CHAR(1) NOT NULL,
`birth_date` DATE NOT NULL,
`id_card_no` VARCHAR(255) NOT NULL,
`phone` VARCHAR(15) NULL,
`address` VARCHAR(200) NOT NULL,
`guardian_name` VARCHAR(30) NULL,
`guardian_phone` VARCHAR(15) NULL,
`insur_no` VARCHAR(30) NOT NULL,
`insur_type` VARCHAR(10) NOT NULL,
`insur_years` INTEGER NULL,
`insur_verify_status` VARCHAR(20) NULL,
`insur_verify_date` DATE NULL,
`assess_level` VARCHAR(20) NULL,
`care_level` VARCHAR(20) NULL,
`assess_date` DATE NULL,
`assess_org` VARCHAR(100) NULL,
`assess_evidence_file` VARCHAR(255) NULL,
`benefit_start` DATE NULL,
`benefit_end` DATE NULL,
`treat_status` VARCHAR(20) NOT NULL DEFAULT 'pending_file',
`status_source` VARCHAR(10) NOT NULL DEFAULT 'manual',
`status_change_date` DATE NULL,
`hosp_start` DATE NULL,
`hosp_end` DATE NULL,
`photo_tier_override` JSON NULL,
`need_assess` JSON NULL,
`note` TEXT NULL,
`biz_line` VARCHAR(20) NOT NULL DEFAULT 'ltci',
`created_at` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`created_by` VARCHAR(36) NULL,
`updated_at` DATETIME(3) NOT NULL,
`deleted_at` DATETIME(3) NULL,
INDEX `ltc_elder_tenant_code_name_idx`(`tenant_code`, `name`),
UNIQUE INDEX `ltc_elder_tenant_code_id_card_no_key`(`tenant_code`, `id_card_no`),
PRIMARY KEY (`id`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
-- CreateTable
CREATE TABLE `ltc_elder_status_log` (
`id` VARCHAR(36) NOT NULL,
`elder_id` VARCHAR(36) NOT NULL,
`tenant_code` VARCHAR(64) NOT NULL,
`from_status` VARCHAR(20) NOT NULL,
`to_status` VARCHAR(20) NOT NULL,
`change_reason` VARCHAR(200) NOT NULL,
`source` VARCHAR(10) NOT NULL DEFAULT 'manual',
`operator_id` VARCHAR(36) NOT NULL,
`evidence_file` VARCHAR(255) NULL,
`changed_at` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
INDEX `ltc_elder_status_log_elder_id_idx`(`elder_id`),
PRIMARY KEY (`id`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
-- RenameIndex
ALTER TABLE `ltc_staff` RENAME INDEX `sys_staff_tenant_code_name_idx` TO `ltc_staff_tenant_code_name_idx`;
-- RenameIndex
ALTER TABLE `ltc_staff` RENAME INDEX `sys_staff_user_id_key` TO `ltc_staff_user_id_key`;
-- RenameIndex
ALTER TABLE `svc_local` RENAME INDEX `sys_svc_local_loc_code_idx` TO `svc_local_loc_code_idx`;
-- RenameIndex
ALTER TABLE `svc_mapping` RENAME INDEX `sys_svc_mapping_loc_id_idx` TO `svc_mapping_loc_id_idx`;
-- RenameIndex
ALTER TABLE `svc_national` RENAME INDEX `sys_svc_national_nat_code_key` TO `svc_national_nat_code_key`;
-- RenameIndex
ALTER TABLE `svc_org` RENAME INDEX `sys_svc_org_tenant_code_src_type_idx` TO `svc_org_tenant_code_src_type_idx`;