将数据库从H2更改为MySQL
This commit is contained in:
@@ -54,6 +54,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.mysql</groupId>
|
<groupId>com.mysql</groupId>
|
||||||
<artifactId>mysql-connector-j</artifactId>
|
<artifactId>mysql-connector-j</artifactId>
|
||||||
|
<version>${mysql.version}</version>
|
||||||
<scope>runtime</scope>
|
<scope>runtime</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
@@ -83,13 +84,6 @@
|
|||||||
<scope>runtime</scope>
|
<scope>runtime</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<!-- H2 Database -->
|
|
||||||
<dependency>
|
|
||||||
<groupId>com.h2database</groupId>
|
|
||||||
<artifactId>h2</artifactId>
|
|
||||||
<scope>runtime</scope>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<!-- Lombok -->
|
<!-- Lombok -->
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.projectlombok</groupId>
|
<groupId>org.projectlombok</groupId>
|
||||||
|
|||||||
@@ -8,33 +8,30 @@ spring:
|
|||||||
name: pet-hospital
|
name: pet-hospital
|
||||||
|
|
||||||
datasource:
|
datasource:
|
||||||
driver-class-name: org.h2.Driver
|
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||||
url: jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE;MODE=MYSQL;
|
url: jdbc:mysql://localhost:3306/pet_hospital_dev?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2B8
|
||||||
username: sa
|
username: root
|
||||||
password: password
|
password: password
|
||||||
hikari:
|
hikari:
|
||||||
maximum-pool-size: 10
|
maximum-pool-size: 20
|
||||||
minimum-idle: 5
|
minimum-idle: 10
|
||||||
connection-timeout: 30000
|
connection-timeout: 30000
|
||||||
|
idle-timeout: 600000
|
||||||
|
max-lifetime: 1800000
|
||||||
|
|
||||||
jackson:
|
jackson:
|
||||||
time-zone: GMT+8
|
time-zone: GMT+8
|
||||||
date-format: yyyy-MM-dd HH:mm:ss
|
date-format: yyyy-MM-dd HH:mm:ss
|
||||||
|
|
||||||
h2:
|
|
||||||
console:
|
|
||||||
enabled: true
|
|
||||||
path: /h2-console
|
|
||||||
|
|
||||||
jpa:
|
jpa:
|
||||||
hibernate:
|
hibernate:
|
||||||
ddl-auto: create-drop
|
ddl-auto: update
|
||||||
show-sql: true
|
show-sql: true
|
||||||
|
|
||||||
sql:
|
sql:
|
||||||
init:
|
init:
|
||||||
mode: always
|
mode: always
|
||||||
schema-locations: classpath*:schema-h2.sql
|
schema-locations: classpath*:schema.sql
|
||||||
data-locations: classpath*:data.sql
|
data-locations: classpath*:data.sql
|
||||||
|
|
||||||
mybatis-plus:
|
mybatis-plus:
|
||||||
|
|||||||
@@ -25,6 +25,10 @@ mybatis-plus:
|
|||||||
logic-not-delete-value: 0
|
logic-not-delete-value: 0
|
||||||
mapper-locations: classpath*:mapper/**/*.xml
|
mapper-locations: classpath*:mapper/**/*.xml
|
||||||
|
|
||||||
|
# 数据库配置
|
||||||
|
database:
|
||||||
|
type: mysql
|
||||||
|
|
||||||
# JWT配置
|
# JWT配置
|
||||||
jwt:
|
jwt:
|
||||||
secret: pet-hospital-secret-key-2024-guanpengfei-graduate-design
|
secret: pet-hospital-secret-key-2024-guanpengfei-graduate-design
|
||||||
|
|||||||
@@ -1,242 +0,0 @@
|
|||||||
-- 如果表不存在则创建表,如果存在则添加缺失的列
|
|
||||||
|
|
||||||
-- 检查并创建appointment表或添加缺失列
|
|
||||||
CREATE TABLE IF NOT EXISTS appointment (
|
|
||||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
customer_id BIGINT NOT NULL,
|
|
||||||
pet_id BIGINT NOT NULL,
|
|
||||||
doctor_id BIGINT,
|
|
||||||
department VARCHAR(50),
|
|
||||||
appointment_date DATE,
|
|
||||||
time_slot VARCHAR(20), -- 添加这个缺失的列
|
|
||||||
status VARCHAR(20) DEFAULT 'PENDING',
|
|
||||||
remark TEXT,
|
|
||||||
cancel_time TIMESTAMP NULL,
|
|
||||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
||||||
deleted INT DEFAULT 0
|
|
||||||
);
|
|
||||||
|
|
||||||
-- 检查并创建visit表
|
|
||||||
CREATE TABLE IF NOT EXISTS visit (
|
|
||||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
appointment_id BIGINT,
|
|
||||||
customer_id BIGINT NOT NULL,
|
|
||||||
pet_id BIGINT NOT NULL,
|
|
||||||
doctor_id BIGINT NOT NULL,
|
|
||||||
symptoms TEXT,
|
|
||||||
diagnosis TEXT,
|
|
||||||
treatment_plan TEXT,
|
|
||||||
status VARCHAR(20) DEFAULT 'PENDING',
|
|
||||||
total_amount DECIMAL(10,2),
|
|
||||||
payment_status VARCHAR(20) DEFAULT 'UNPAID',
|
|
||||||
payment_method VARCHAR(20),
|
|
||||||
payment_time TIMESTAMP NULL,
|
|
||||||
start_time TIMESTAMP,
|
|
||||||
end_time TIMESTAMP,
|
|
||||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
||||||
deleted INT DEFAULT 0
|
|
||||||
);
|
|
||||||
|
|
||||||
-- 检查并创建prescription表
|
|
||||||
CREATE TABLE IF NOT EXISTS prescription (
|
|
||||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
visit_id BIGINT,
|
|
||||||
doctor_id BIGINT,
|
|
||||||
customer_id BIGINT,
|
|
||||||
total_amount DECIMAL(10,2),
|
|
||||||
status VARCHAR(20) DEFAULT 'DRAFT',
|
|
||||||
remark TEXT,
|
|
||||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
||||||
deleted INT DEFAULT 0
|
|
||||||
);
|
|
||||||
|
|
||||||
-- 检查并创建prescription_item表
|
|
||||||
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
|
|
||||||
);
|
|
||||||
|
|
||||||
-- 检查并创建order_info表
|
|
||||||
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
|
|
||||||
);
|
|
||||||
|
|
||||||
-- 检查并创建drug表
|
|
||||||
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
|
|
||||||
);
|
|
||||||
|
|
||||||
-- 检查并创建pet表
|
|
||||||
CREATE TABLE IF NOT EXISTS pet (
|
|
||||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
owner_id BIGINT NOT NULL,
|
|
||||||
name VARCHAR(50) NOT NULL,
|
|
||||||
species VARCHAR(50),
|
|
||||||
breed VARCHAR(100),
|
|
||||||
gender VARCHAR(10), -- 修改为VARCHAR以支持MALE/FEMALE
|
|
||||||
birthday DATE, -- 添加birthday字段而不是age
|
|
||||||
weight DOUBLE, -- 添加weight字段
|
|
||||||
photo VARCHAR(255), -- 添加photo字段
|
|
||||||
remark TEXT, -- 添加remark字段
|
|
||||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
||||||
deleted INT DEFAULT 0
|
|
||||||
);
|
|
||||||
|
|
||||||
-- 检查并创建doctor表
|
|
||||||
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
|
|
||||||
);
|
|
||||||
|
|
||||||
-- 检查并创建user表
|
|
||||||
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
|
|
||||||
);
|
|
||||||
|
|
||||||
-- 检查并创建medical_record表
|
|
||||||
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
|
|
||||||
);
|
|
||||||
|
|
||||||
-- 检查并创建message表
|
|
||||||
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
|
|
||||||
);
|
|
||||||
|
|
||||||
-- 检查并创建notice表
|
|
||||||
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
|
|
||||||
);
|
|
||||||
|
|
||||||
-- 检查并创建report表
|
|
||||||
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
|
|
||||||
);
|
|
||||||
|
|
||||||
-- 检查并创建stock_in表
|
|
||||||
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
|
|
||||||
);
|
|
||||||
|
|
||||||
-- 检查并创建stock_out表
|
|
||||||
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
|
|
||||||
);
|
|
||||||
|
|
||||||
-- 检查并创建vaccine_record表
|
|
||||||
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
|
|
||||||
);
|
|
||||||
@@ -1,79 +1,59 @@
|
|||||||
-- 用户表
|
-- 如果表不存在则创建表,如果存在则添加缺失的列
|
||||||
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
|
|
||||||
);
|
|
||||||
|
|
||||||
-- 宠物表
|
-- 检查并创建appointment表或添加缺失列
|
||||||
CREATE TABLE IF NOT EXISTS pet (
|
CREATE TABLE IF NOT EXISTS appointment (
|
||||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||||
name VARCHAR(50) NOT NULL,
|
customer_id BIGINT NOT NULL,
|
||||||
species VARCHAR(50),
|
pet_id BIGINT NOT NULL,
|
||||||
breed VARCHAR(100),
|
doctor_id BIGINT,
|
||||||
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),
|
department VARCHAR(50),
|
||||||
title VARCHAR(50),
|
appointment_date DATE,
|
||||||
phone VARCHAR(20),
|
time_slot VARCHAR(20), -- 添加这个缺失的列
|
||||||
email VARCHAR(100),
|
status VARCHAR(20) DEFAULT 'PENDING',
|
||||||
avatar VARCHAR(255),
|
remark TEXT,
|
||||||
status INT DEFAULT 1,
|
cancel_time TIMESTAMP NULL,
|
||||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||||
deleted INT DEFAULT 0
|
deleted INT DEFAULT 0
|
||||||
);
|
);
|
||||||
|
|
||||||
-- 就诊记录表
|
-- 检查并创建visit表
|
||||||
CREATE TABLE IF NOT EXISTS visit (
|
CREATE TABLE IF NOT EXISTS visit (
|
||||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||||
|
appointment_id BIGINT,
|
||||||
|
customer_id BIGINT NOT NULL,
|
||||||
pet_id BIGINT NOT NULL,
|
pet_id BIGINT NOT NULL,
|
||||||
doctor_id BIGINT NOT NULL,
|
doctor_id BIGINT NOT NULL,
|
||||||
customer_id BIGINT NOT NULL,
|
|
||||||
symptoms TEXT,
|
symptoms TEXT,
|
||||||
diagnosis TEXT,
|
diagnosis TEXT,
|
||||||
treatment_plan TEXT,
|
treatment_plan TEXT,
|
||||||
visit_date DATE,
|
|
||||||
status VARCHAR(20) DEFAULT 'PENDING',
|
status VARCHAR(20) DEFAULT 'PENDING',
|
||||||
|
total_amount DECIMAL(10,2),
|
||||||
|
payment_status VARCHAR(20) DEFAULT 'UNPAID',
|
||||||
|
payment_method VARCHAR(20),
|
||||||
|
payment_time TIMESTAMP NULL,
|
||||||
|
start_time TIMESTAMP,
|
||||||
|
end_time TIMESTAMP,
|
||||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||||
deleted INT DEFAULT 0
|
deleted INT DEFAULT 0
|
||||||
);
|
);
|
||||||
|
|
||||||
-- 处方表
|
-- 检查并创建prescription表
|
||||||
CREATE TABLE IF NOT EXISTS prescription (
|
CREATE TABLE IF NOT EXISTS prescription (
|
||||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||||
visit_id BIGINT NOT NULL,
|
visit_id BIGINT,
|
||||||
doctor_id BIGINT NOT NULL,
|
doctor_id BIGINT,
|
||||||
customer_id BIGINT NOT NULL,
|
customer_id BIGINT,
|
||||||
total_amount DECIMAL(10,2),
|
total_amount DECIMAL(10,2),
|
||||||
status VARCHAR(20) DEFAULT 'ACTIVE',
|
status VARCHAR(20) DEFAULT 'DRAFT',
|
||||||
|
remark TEXT,
|
||||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||||
deleted INT DEFAULT 0
|
deleted INT DEFAULT 0
|
||||||
);
|
);
|
||||||
|
|
||||||
-- 处方明细表
|
-- 检查并创建prescription_item表
|
||||||
CREATE TABLE IF NOT EXISTS prescription_item (
|
CREATE TABLE IF NOT EXISTS prescription_item (
|
||||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||||
prescription_id BIGINT NOT NULL,
|
prescription_id BIGINT NOT NULL,
|
||||||
@@ -88,7 +68,22 @@ CREATE TABLE IF NOT EXISTS prescription_item (
|
|||||||
deleted INT DEFAULT 0
|
deleted INT DEFAULT 0
|
||||||
);
|
);
|
||||||
|
|
||||||
-- 药品表
|
-- 检查并创建order_info表
|
||||||
|
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
|
||||||
|
);
|
||||||
|
|
||||||
|
-- 检查并创建drug表
|
||||||
CREATE TABLE IF NOT EXISTS drug (
|
CREATE TABLE IF NOT EXISTS drug (
|
||||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||||
name VARCHAR(100) NOT NULL,
|
name VARCHAR(100) NOT NULL,
|
||||||
@@ -104,52 +99,106 @@ CREATE TABLE IF NOT EXISTS drug (
|
|||||||
deleted INT DEFAULT 0
|
deleted INT DEFAULT 0
|
||||||
);
|
);
|
||||||
|
|
||||||
-- 订单表
|
-- 检查并创建pet表
|
||||||
CREATE TABLE IF NOT EXISTS order_info (
|
CREATE TABLE IF NOT EXISTS pet (
|
||||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||||
visit_id BIGINT,
|
owner_id BIGINT NOT NULL,
|
||||||
customer_id BIGINT NOT NULL,
|
name VARCHAR(50) NOT NULL,
|
||||||
amount DECIMAL(10,2),
|
species VARCHAR(50),
|
||||||
status VARCHAR(20) DEFAULT 'UNPAID',
|
breed VARCHAR(100),
|
||||||
payment_method VARCHAR(20),
|
gender VARCHAR(10), -- 修改为VARCHAR以支持MALE/FEMALE
|
||||||
payment_time TIMESTAMP NULL,
|
birthday DATE, -- 添加birthday字段而不是age
|
||||||
remark TEXT,
|
weight DOUBLE, -- 添加weight字段
|
||||||
|
photo VARCHAR(255), -- 添加photo字段
|
||||||
|
remark TEXT, -- 添加remark字段
|
||||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||||
deleted INT DEFAULT 0
|
deleted INT DEFAULT 0
|
||||||
);
|
);
|
||||||
|
|
||||||
-- 预约表
|
-- 检查并创建doctor表
|
||||||
CREATE TABLE IF NOT EXISTS appointment (
|
CREATE TABLE IF NOT EXISTS doctor (
|
||||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||||
pet_id BIGINT NOT NULL,
|
name VARCHAR(50) NOT NULL,
|
||||||
doctor_id BIGINT NOT NULL,
|
department VARCHAR(50),
|
||||||
customer_id BIGINT NOT NULL,
|
title VARCHAR(50),
|
||||||
appointment_date DATE NOT NULL,
|
phone VARCHAR(20),
|
||||||
appointment_time TIME NOT NULL,
|
email VARCHAR(100),
|
||||||
reason TEXT,
|
avatar VARCHAR(255),
|
||||||
status VARCHAR(20) DEFAULT 'PENDING',
|
status INT DEFAULT 1,
|
||||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||||
deleted INT DEFAULT 0
|
deleted INT DEFAULT 0
|
||||||
);
|
);
|
||||||
|
|
||||||
-- 疫苗接种记录表
|
-- 检查并创建user表
|
||||||
CREATE TABLE IF NOT EXISTS vaccine_record (
|
CREATE TABLE IF NOT EXISTS `user` (
|
||||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||||
pet_id BIGINT NOT NULL,
|
username VARCHAR(50) NOT NULL UNIQUE,
|
||||||
vaccine_name VARCHAR(100) NOT NULL,
|
phone VARCHAR(20),
|
||||||
dose_number INT,
|
email VARCHAR(100),
|
||||||
injection_date DATE,
|
password VARCHAR(255) NOT NULL,
|
||||||
next_appointment_date DATE,
|
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
|
||||||
|
);
|
||||||
|
|
||||||
|
-- 检查并创建medical_record表
|
||||||
|
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,
|
doctor_id BIGINT,
|
||||||
remark TEXT,
|
|
||||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||||
deleted INT DEFAULT 0
|
deleted INT DEFAULT 0
|
||||||
);
|
);
|
||||||
|
|
||||||
-- 库存入库表
|
-- 检查并创建message表
|
||||||
|
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
|
||||||
|
);
|
||||||
|
|
||||||
|
-- 检查并创建notice表
|
||||||
|
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
|
||||||
|
);
|
||||||
|
|
||||||
|
-- 检查并创建report表
|
||||||
|
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
|
||||||
|
);
|
||||||
|
|
||||||
|
-- 检查并创建stock_in表
|
||||||
CREATE TABLE IF NOT EXISTS stock_in (
|
CREATE TABLE IF NOT EXISTS stock_in (
|
||||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||||
drug_id BIGINT NOT NULL,
|
drug_id BIGINT NOT NULL,
|
||||||
@@ -163,7 +212,7 @@ CREATE TABLE IF NOT EXISTS stock_in (
|
|||||||
deleted INT DEFAULT 0
|
deleted INT DEFAULT 0
|
||||||
);
|
);
|
||||||
|
|
||||||
-- 库存出库表
|
-- 检查并创建stock_out表
|
||||||
CREATE TABLE IF NOT EXISTS stock_out (
|
CREATE TABLE IF NOT EXISTS stock_out (
|
||||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||||
drug_id BIGINT NOT NULL,
|
drug_id BIGINT NOT NULL,
|
||||||
@@ -177,53 +226,16 @@ CREATE TABLE IF NOT EXISTS stock_out (
|
|||||||
deleted INT DEFAULT 0
|
deleted INT DEFAULT 0
|
||||||
);
|
);
|
||||||
|
|
||||||
-- 消息表
|
-- 检查并创建vaccine_record表
|
||||||
CREATE TABLE IF NOT EXISTS message (
|
CREATE TABLE IF NOT EXISTS vaccine_record (
|
||||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||||
sender_id BIGINT,
|
pet_id BIGINT NOT NULL,
|
||||||
receiver_id BIGINT NOT NULL,
|
vaccine_name VARCHAR(100) NOT NULL,
|
||||||
content TEXT NOT NULL,
|
dose_number INT,
|
||||||
type VARCHAR(20) DEFAULT 'NOTICE', -- NOTICE通知, CHAT聊天
|
injection_date DATE,
|
||||||
status VARCHAR(20) DEFAULT 'UNREAD', -- UNREAD未读, READ已读
|
next_appointment_date DATE,
|
||||||
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,
|
doctor_id BIGINT,
|
||||||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
remark TEXT,
|
||||||
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,
|
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||||
deleted INT DEFAULT 0
|
deleted INT DEFAULT 0
|
||||||
|
|||||||
Reference in New Issue
Block a user