添加后端代码、数据库文档和FRP配置
This commit is contained in:
230
backend/target/classes/schema.sql
Normal file
230
backend/target/classes/schema.sql
Normal file
@@ -0,0 +1,230 @@
|
||||
-- 用户表
|
||||
CREATE TABLE IF NOT EXISTS `user` (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
username VARCHAR(50) NOT NULL UNIQUE,
|
||||
phone VARCHAR(20),
|
||||
email VARCHAR(100),
|
||||
password VARCHAR(255) NOT NULL,
|
||||
role VARCHAR(20) DEFAULT 'CUSTOMER',
|
||||
status INT DEFAULT 1,
|
||||
avatar VARCHAR(255),
|
||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
deleted INT DEFAULT 0
|
||||
);
|
||||
|
||||
-- 宠物表
|
||||
CREATE TABLE IF NOT EXISTS pet (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
name VARCHAR(50) NOT NULL,
|
||||
species VARCHAR(50),
|
||||
breed VARCHAR(100),
|
||||
gender CHAR(1),
|
||||
age INT,
|
||||
owner_id BIGINT NOT NULL,
|
||||
health_status VARCHAR(100),
|
||||
vaccination_status VARCHAR(100),
|
||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
deleted INT DEFAULT 0
|
||||
);
|
||||
|
||||
-- 医生表
|
||||
CREATE TABLE IF NOT EXISTS doctor (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
name VARCHAR(50) NOT NULL,
|
||||
department VARCHAR(50),
|
||||
title VARCHAR(50),
|
||||
phone VARCHAR(20),
|
||||
email VARCHAR(100),
|
||||
avatar VARCHAR(255),
|
||||
status INT DEFAULT 1,
|
||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
deleted INT DEFAULT 0
|
||||
);
|
||||
|
||||
-- 就诊记录表
|
||||
CREATE TABLE IF NOT EXISTS visit (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
pet_id BIGINT NOT NULL,
|
||||
doctor_id BIGINT NOT NULL,
|
||||
customer_id BIGINT NOT NULL,
|
||||
symptoms TEXT,
|
||||
diagnosis TEXT,
|
||||
treatment_plan TEXT,
|
||||
visit_date DATE,
|
||||
status VARCHAR(20) DEFAULT 'PENDING',
|
||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
deleted INT DEFAULT 0
|
||||
);
|
||||
|
||||
-- 处方表
|
||||
CREATE TABLE IF NOT EXISTS prescription (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
visit_id BIGINT NOT NULL,
|
||||
doctor_id BIGINT NOT NULL,
|
||||
customer_id BIGINT NOT NULL,
|
||||
total_amount DECIMAL(10,2),
|
||||
status VARCHAR(20) DEFAULT 'ACTIVE',
|
||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
deleted INT DEFAULT 0
|
||||
);
|
||||
|
||||
-- 处方明细表
|
||||
CREATE TABLE IF NOT EXISTS prescription_item (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
prescription_id BIGINT NOT NULL,
|
||||
drug_id BIGINT NOT NULL,
|
||||
quantity INT NOT NULL,
|
||||
dosage VARCHAR(100),
|
||||
frequency VARCHAR(50),
|
||||
duration VARCHAR(50),
|
||||
usage_instructions TEXT,
|
||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
deleted INT DEFAULT 0
|
||||
);
|
||||
|
||||
-- 药品表
|
||||
CREATE TABLE IF NOT EXISTS drug (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
name VARCHAR(100) NOT NULL,
|
||||
category VARCHAR(50),
|
||||
manufacturer VARCHAR(100),
|
||||
specification VARCHAR(100),
|
||||
unit_price DECIMAL(10,2),
|
||||
stock_quantity INT DEFAULT 0,
|
||||
unit VARCHAR(20),
|
||||
status INT DEFAULT 1,
|
||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
deleted INT DEFAULT 0
|
||||
);
|
||||
|
||||
-- 订单表
|
||||
CREATE TABLE IF NOT EXISTS order_info (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
visit_id BIGINT,
|
||||
customer_id BIGINT NOT NULL,
|
||||
amount DECIMAL(10,2),
|
||||
status VARCHAR(20) DEFAULT 'UNPAID',
|
||||
payment_method VARCHAR(20),
|
||||
payment_time TIMESTAMP NULL,
|
||||
remark TEXT,
|
||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
deleted INT DEFAULT 0
|
||||
);
|
||||
|
||||
-- 预约表
|
||||
CREATE TABLE IF NOT EXISTS appointment (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
pet_id BIGINT NOT NULL,
|
||||
doctor_id BIGINT NOT NULL,
|
||||
customer_id BIGINT NOT NULL,
|
||||
appointment_date DATE NOT NULL,
|
||||
appointment_time TIME NOT NULL,
|
||||
reason TEXT,
|
||||
status VARCHAR(20) DEFAULT 'PENDING',
|
||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
deleted INT DEFAULT 0
|
||||
);
|
||||
|
||||
-- 疫苗接种记录表
|
||||
CREATE TABLE IF NOT EXISTS vaccine_record (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
pet_id BIGINT NOT NULL,
|
||||
vaccine_name VARCHAR(100) NOT NULL,
|
||||
dose_number INT,
|
||||
injection_date DATE,
|
||||
next_appointment_date DATE,
|
||||
doctor_id BIGINT,
|
||||
remark TEXT,
|
||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
deleted INT DEFAULT 0
|
||||
);
|
||||
|
||||
-- 库存入库表
|
||||
CREATE TABLE IF NOT EXISTS stock_in (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
drug_id BIGINT NOT NULL,
|
||||
quantity INT NOT NULL,
|
||||
unit_price DECIMAL(10,2),
|
||||
supplier VARCHAR(100),
|
||||
operator_id BIGINT,
|
||||
remark TEXT,
|
||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
deleted INT DEFAULT 0
|
||||
);
|
||||
|
||||
-- 库存出库表
|
||||
CREATE TABLE IF NOT EXISTS stock_out (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
drug_id BIGINT NOT NULL,
|
||||
quantity INT NOT NULL,
|
||||
unit_price DECIMAL(10,2),
|
||||
purpose VARCHAR(100), -- 用途:销售、损耗等
|
||||
operator_id BIGINT,
|
||||
remark TEXT,
|
||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
deleted INT DEFAULT 0
|
||||
);
|
||||
|
||||
-- 消息表
|
||||
CREATE TABLE IF NOT EXISTS message (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
sender_id BIGINT,
|
||||
receiver_id BIGINT NOT NULL,
|
||||
content TEXT NOT NULL,
|
||||
type VARCHAR(20) DEFAULT 'NOTICE', -- NOTICE通知, CHAT聊天
|
||||
status VARCHAR(20) DEFAULT 'UNREAD', -- UNREAD未读, READ已读
|
||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
deleted INT DEFAULT 0
|
||||
);
|
||||
|
||||
-- 公告表
|
||||
CREATE TABLE IF NOT EXISTS notice (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
title VARCHAR(200) NOT NULL,
|
||||
content TEXT NOT NULL,
|
||||
publisher_id BIGINT NOT NULL,
|
||||
publish_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
status INT DEFAULT 1,
|
||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
deleted INT DEFAULT 0
|
||||
);
|
||||
|
||||
-- 医疗记录表
|
||||
CREATE TABLE IF NOT EXISTS medical_record (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
visit_id BIGINT NOT NULL,
|
||||
record_type VARCHAR(50), -- CHECKUP体检, DIAGNOSIS诊断, TREATMENT治疗
|
||||
content TEXT,
|
||||
attachment_urls TEXT,
|
||||
doctor_id BIGINT,
|
||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
deleted INT DEFAULT 0
|
||||
);
|
||||
|
||||
-- 报表统计表
|
||||
CREATE TABLE IF NOT EXISTS report (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
report_type VARCHAR(50) NOT NULL, -- REVENUE收入, CUSTOMER客户, PET宠物, DRUG药品
|
||||
report_data JSON,
|
||||
period_start DATE,
|
||||
period_end DATE,
|
||||
generated_by BIGINT,
|
||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
deleted INT DEFAULT 0
|
||||
);
|
||||
Reference in New Issue
Block a user