CCU HTM - Hệ thống Quản lý Bệnh nhân Đơn vị Chăm sóc Tích cực
CCU HTM là một ứng dụng web quản lý bệnh nhân cho Đơn vị Chăm sóc Tích cực (CCU), tập trung vào việc theo dõi chỉ số dinh dưỡng, quản lý chuyển tuyến, và tạo báo cáo. Ứng dụng được phát triển sử dụng Flask và có giao diện trực quan dựa trên Tailwind CSS.
Tính năng chính
- Quản lý hồ sơ bệnh nhân: Theo dõi thông tin cá nhân, chỉ số BMI, nhóm máu, và lịch sử nhập viện
- Theo dõi chỉ số sinh lý: Ghi nhận và phân tích các chỉ số quan trọng như nhịp tim, huyết áp, FiO2, nhiệt độ
- Hệ thống chuyển tuyến: Quản lý quy trình chuyển tuyến từ yêu cầu đến hoàn thành
- Quản lý thủ thuật dinh dưỡng: Ghi nhận và theo dõi các thủ thuật dinh dưỡng cho bệnh nhân
- Tạo báo cáo: Tạo và xuất báo cáo theo nhiều định dạng khác nhau (Excel, PDF)
- Tải lên và xử lý dữ liệu CSV: Nhập dữ liệu hàng loạt từ các file CSV
- Dashboard trực quan: Hiển thị thống kê và biểu đồ trực quan về tình trạng bệnh nhân và hoạt động của đơn vị
- Hệ thống cảnh báo: Cảnh báo tự động khi phát hiện các chỉ số bất thường
Yêu cầu hệ thống
- Python 3.8+
- MySQL 5.7+ hoặc MariaDB 10.2+
- Trình duyệt web hiện đại (Chrome, Firefox, Edge)
- Kết nối Internet (cho các thành phần CDN)
Cài đặt
- Sao chép mã nguồn:
git clone https://gitlab.uwe.ac.uk/bvn2-minh/ccu-htm.git
cd ccu-htm
- Tạo và kích hoạt môi trường ảo:
python -m venv venv
# Trên Windows
venv\Scripts\activate
# Trên Linux/Mac
source venv/bin/activate
- Cài đặt các gói phụ thuộc:
pip install -r requirements.txt
- Cấu hình cơ sở dữ liệu:
Tạo file
instance/config.py
với nội dung sau:
SECRET_KEY = 'your-secret-key'
SQLALCHEMY_DATABASE_URI = 'mysql://username:password@localhost/ccu_htm'
SQLALCHEMY_TRACK_MODIFICATIONS = False
UPLOAD_FOLDER = 'uploads'
- Chạy ứng dụng sử dụng menu trợ giúp:
# Trên Windows
run_ccu.bat
Menu hiển thị các tùy chọn sau:
- 1. Initialize the database (includes migration): Khởi tạo cơ sở dữ liệu và thực hiện migration
- 2. Run the application: Khởi động hệ thống CCU HTM
- 3. Create admin account: Tạo tài khoản quản trị viên
- 4. Update database schema: Kiểm tra và cập nhật cấu trúc CSDL
- 5. Exit: Đóng chương trình
Để cài đặt hệ thống lần đầu, hãy chọn lần lượt tùy chọn 1 và 3 trước khi chạy ứng dụng.
Hoặc chạy trực tiếp từ dòng lệnh:
# Khởi tạo cơ sở dữ liệu và migration
python run.py --init --migrate
# Tạo tài khoản admin (nếu cần)
python run.py --admin
# Chạy ứng dụng
python run.py --clean
Sử dụng
- Truy cập ứng dụng qua trình duyệt tại địa chỉ:
http://localhost:5000
- Đăng nhập với tài khoản mặc định:
- Email: admin@ccuhtm.com
- Password: admin
Cấu trúc dự án
ccu_bvnm/
├── app/ # Thư mục ứng dụng chính
│ ├── models/ # Định nghĩa các model dữ liệu
│ │ ├── patient.py # Model bệnh nhân và cuộc gặp
│ │ ├── referral.py # Model chuyển tuyến
│ │ ├── report.py # Model báo cáo
│ │ ├── measurement.py # Model đo lường sinh lý
│ │ ├── procedure.py # Model thủ thuật
│ │ ├── uploaded_file.py # Model file tải lên
│ │ └── user.py # Model người dùng
│ ├── routes/ # Các blueprint và controller
│ │ ├── dashboard.py # Route cho dashboard
│ │ ├── patients.py # Route quản lý bệnh nhân
│ │ ├── report.py # Route quản lý báo cáo
│ │ ├── upload.py # Route xử lý tải lên
│ │ └── users.py # Route quản lý người dùng
│ ├── static/ # Tài nguyên tĩnh
│ │ ├── css/ # Stylesheet
│ │ ├── js/ # JavaScript
│ │ └── img/ # Hình ảnh
│ ├── templates/ # Template HTML
│ │ ├── base.html # Template cơ sở
│ │ ├── dashboard.html # Trang dashboard
│ │ ├── patients.html # Trang danh sách bệnh nhân
│ │ └── report.html # Trang báo cáo
│ ├── utils/ # Tiện ích và hàm hỗ trợ
│ │ ├── csv_handler.py # Xử lý file CSV
│ │ └── report_generator.py # Tạo báo cáo
│ └── __init__.py # Khởi tạo ứng dụng Flask
├── migrations/ # Các file migration cơ sở dữ liệu
├── uploads/ # Thư mục lưu trữ file tải lên
├── instance/ # Cấu hình riêng của từng máy
├── run.py # Điểm khởi chạy ứng dụng
├── run_ccu.bat # File batch để chạy trên Windows
└── requirements.txt # Danh sách các gói phụ thuộc
Các chức năng chính
Dashboard
- Hiển thị tổng quan về số lượng bệnh nhân, chuyển tuyến, và báo cáo
- Biểu đồ phân phối BMI của bệnh nhân
- Cảnh báo về các vấn đề cần chú ý
- Dòng thời gian các hoạt động gần đây
Quản lý bệnh nhân
- Thêm, xem, chỉnh sửa thông tin bệnh nhân
- Theo dõi lịch sử cuộc gặp và chỉ số sinh lý
- Tạo chuyển tuyến cho bệnh nhân
- Xem báo cáo liên quan đến bệnh nhân
Quản lý chuyển tuyến
- Tạo yêu cầu chuyển tuyến mới
- Theo dõi trạng thái chuyển tuyến
- Ghi nhận phản hồi và kết quả
Báo cáo
- Tạo báo cáo đánh giá dinh dưỡng
- Tạo báo cáo thống kê theo ngày, tuần, tháng
- Xuất báo cáo dưới dạng Excel hoặc PDF
Tải lên dữ liệu
- Tải lên file CSV chứa dữ liệu bệnh nhân
- Xác thực và xử lý dữ liệu tự động
- Xem lịch sử tải lên và kết quả xử lý
Đóng góp và phát triển
Dự án được phát triển bởi nhóm sinh viên năm 2 tại Đại học West of England. Nếu bạn muốn đóng góp:
- Fork dự án
- Tạo nhánh tính năng mới (
git checkout -b feature/amazing-feature
) - Commit thay đổi của bạn (
git commit -m 'Add some amazing feature'
) - Push lên nhánh (
git push origin feature/amazing-feature
) - Tạo Pull Request
Giấy phép
Phần mềm này được phân phối dưới giấy phép MIT. Xem tệp LICENSE để biết thêm thông tin.