151 lines
4.9 KiB
SQL
151 lines
4.9 KiB
SQL
-- CreateTable
|
|
CREATE TABLE `sys_agency` (
|
|
`code` VARCHAR(64) NOT NULL,
|
|
`org_name` VARCHAR(100) NOT NULL,
|
|
`org_type` VARCHAR(20) NOT NULL,
|
|
`credit_code` VARCHAR(18) NOT NULL,
|
|
`loc_code` VARCHAR(12) NOT NULL,
|
|
`loc_name` VARCHAR(50) NOT NULL,
|
|
`svc_source` VARCHAR(10) NOT NULL,
|
|
`license_no` VARCHAR(50) NULL,
|
|
`address` VARCHAR(200) NOT NULL,
|
|
`contact_name` VARCHAR(30) NOT NULL,
|
|
`contact_phone` VARCHAR(15) NOT NULL,
|
|
`bed_count` INTEGER NULL,
|
|
`sign_date` DATE NULL,
|
|
`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,
|
|
|
|
PRIMARY KEY (`code`)
|
|
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
|
|
|
-- CreateTable
|
|
CREATE TABLE `sys_staff` (
|
|
`id` VARCHAR(36) NOT NULL,
|
|
`tenant_code` VARCHAR(64) NOT NULL,
|
|
`user_id` VARCHAR(36) NULL,
|
|
`name` VARCHAR(30) NOT NULL,
|
|
`id_card_no` VARCHAR(255) NOT NULL,
|
|
`person_code` VARCHAR(20) NULL,
|
|
`phone` VARCHAR(15) NOT NULL,
|
|
`job_type` VARCHAR(20) NOT NULL,
|
|
`work_type` VARCHAR(10) NOT NULL,
|
|
`entry_date` DATE NULL,
|
|
`leave_date` DATE NULL,
|
|
`employ_status` VARCHAR(10) NOT NULL,
|
|
`cert_type` VARCHAR(20) NULL,
|
|
`cert_no` VARCHAR(50) NULL,
|
|
`cert_level` VARCHAR(20) NULL,
|
|
`cert_expire` DATE NULL,
|
|
`cert_status` VARCHAR(20) NULL,
|
|
`cert_verify_url` VARCHAR(200) NULL,
|
|
`group_leader_id` VARCHAR(36) NULL,
|
|
`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,
|
|
|
|
UNIQUE INDEX `sys_staff_user_id_key`(`user_id`),
|
|
INDEX `sys_staff_tenant_code_name_idx`(`tenant_code`, `name`),
|
|
PRIMARY KEY (`id`)
|
|
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
|
|
|
-- CreateTable
|
|
CREATE TABLE `sys_svc_national` (
|
|
`id` VARCHAR(36) NOT NULL,
|
|
`nat_code` VARCHAR(20) NOT NULL,
|
|
`nat_name` VARCHAR(100) NOT NULL,
|
|
`nat_category` VARCHAR(20) NOT NULL,
|
|
`nat_sub_category` VARCHAR(50) NULL,
|
|
`recommend_staff` VARCHAR(50) NULL,
|
|
`recommend_duration` VARCHAR(50) NULL,
|
|
`is_medical` BOOLEAN NOT NULL DEFAULT false,
|
|
`version` INTEGER NOT NULL DEFAULT 1,
|
|
|
|
UNIQUE INDEX `sys_svc_national_nat_code_key`(`nat_code`),
|
|
PRIMARY KEY (`id`)
|
|
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
|
|
|
-- CreateTable
|
|
CREATE TABLE `sys_svc_local` (
|
|
`id` VARCHAR(36) NOT NULL,
|
|
`loc_code` VARCHAR(12) NOT NULL,
|
|
`local_item_name` VARCHAR(100) NOT NULL,
|
|
`local_category` VARCHAR(20) NULL,
|
|
`svc_time` VARCHAR(50) NULL,
|
|
`min_freq` VARCHAR(50) NULL,
|
|
`staff_qual` VARCHAR(50) NULL,
|
|
`is_medical` BOOLEAN NOT NULL DEFAULT false,
|
|
`source_doc` VARCHAR(200) NULL,
|
|
`map_status` VARCHAR(20) NOT NULL DEFAULT 'mapped',
|
|
|
|
INDEX `sys_svc_local_loc_code_idx`(`loc_code`),
|
|
PRIMARY KEY (`id`)
|
|
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
|
|
|
-- CreateTable
|
|
CREATE TABLE `sys_svc_mapping` (
|
|
`id` VARCHAR(36) NOT NULL,
|
|
`loc_id` VARCHAR(36) NOT NULL,
|
|
`nat_id` VARCHAR(36) NULL,
|
|
`map_type` VARCHAR(20) NOT NULL,
|
|
`map_note` VARCHAR(200) NULL,
|
|
`status` VARCHAR(20) NOT NULL DEFAULT 'confirmed',
|
|
|
|
INDEX `sys_svc_mapping_loc_id_idx`(`loc_id`),
|
|
PRIMARY KEY (`id`)
|
|
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
|
|
|
-- CreateTable
|
|
CREATE TABLE `sys_svc_org` (
|
|
`id` VARCHAR(36) NOT NULL,
|
|
`tenant_code` VARCHAR(64) NOT NULL,
|
|
`src_type` VARCHAR(10) NOT NULL,
|
|
`src_id` VARCHAR(36) NOT NULL,
|
|
`is_enabled` BOOLEAN NOT NULL DEFAULT true,
|
|
`price` VARCHAR(50) NULL,
|
|
`price_effective` DATETIME(3) NULL,
|
|
`is_new_national` BOOLEAN NOT NULL DEFAULT false,
|
|
`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 `sys_svc_org_tenant_code_src_type_idx`(`tenant_code`, `src_type`),
|
|
PRIMARY KEY (`id`)
|
|
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
|
|
|
-- CreateTable
|
|
CREATE TABLE `sys_dict_abnormal_type` (
|
|
`id` VARCHAR(36) NOT NULL,
|
|
`code` VARCHAR(50) NOT NULL,
|
|
`name` VARCHAR(50) NOT NULL,
|
|
`sort` INTEGER NOT NULL DEFAULT 0,
|
|
|
|
UNIQUE INDEX `sys_dict_abnormal_type_code_key`(`code`),
|
|
PRIMARY KEY (`id`)
|
|
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
|
|
|
-- CreateTable
|
|
CREATE TABLE `sys_dict_photo_tier` (
|
|
`id` VARCHAR(36) NOT NULL,
|
|
`code` VARCHAR(20) NOT NULL,
|
|
`name` VARCHAR(50) NOT NULL,
|
|
`tier` VARCHAR(10) NOT NULL,
|
|
|
|
UNIQUE INDEX `sys_dict_photo_tier_code_key`(`code`),
|
|
PRIMARY KEY (`id`)
|
|
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
|
|
|
-- CreateTable
|
|
CREATE TABLE `sys_loc_config` (
|
|
`loc_code` VARCHAR(12) NOT NULL,
|
|
`loc_name` VARCHAR(50) NOT NULL,
|
|
`svc_source` VARCHAR(10) NOT NULL,
|
|
`item_count_rule` VARCHAR(100) NULL,
|
|
|
|
PRIMARY KEY (`loc_code`)
|
|
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|