CLINICBOOKING BOOTSTRAP AI FINAL
Bản zip này đã chốt lại các ý bạn yêu cầu:
- Có file solution .sln
- Giao diện Bootstrap 5
- Có logo text
- Có banner lớn ở giữa
- Có footer
- Có chatbox Bootstrap đã chỉnh rõ ràng hơn
- Chatbox lưu đoạn chat vào SQL qua ChatSession + ChatMessage
- Có hỗ trợ AI qua OpenAI API, và fallback rule-based nếu chưa có API key
- Có đặt lịch, chống trùng lịch, thanh toán cọc demo, lịch sử khám
CÁCH CHẠY
1) Mở ClinicBooking.sln bằng Visual Studio
2) Sửa ConnectionStrings trong ClinicBooking/appsettings.json
3) Có thể thêm OpenAI API key nếu muốn trả lời bằng AI thật
4) Restore NuGet packages
5) Run project
TÀI KHOẢN MẪU
- admin@clinic.local / 123456
- patient@clinic.local / 123456
LƯU Ý
- Môi trường tạo file này không có dotnet SDK nên mình không build xác thực cuối cùng được.
- Đây là scaffold có cấu trúc hợp lý để bạn mở solution và chỉnh tiếp nếu cần.
- Startup đang dùng EnsureCreated để tiện chạy nhanh. Nếu muốn migration chuẩn, bạn có thể đổi sang Database.Migrate rồi Add-Migration / Update-Database.
BỔ SUNG
- Thanh đăng nhập/đăng xuất hiển thị theo trạng thái người dùng
- Dashboard admin có thống kê: lịch hôm nay, bác sĩ, bệnh nhân, cọc chờ xử lý, lịch đã xác nhận, tiền cọc hôm nay
- Trang quản lý lịch hẹn có tìm kiếm/lọc theo từ khóa, bác sĩ, trạng thái, ngày khám
DTO CONVERSION
- Added DTO folder similar to QLSP
- Added ViewModel folder similar to QLSP
- Controllers Home/Booking/History now map Entity -> DTO -> ViewModel
- Added Models/AppDbContext.cs like QLSP style
Cập nhật chatbot ChatGPT API:
- Chatbot không còn trả lời chính bằng bảng ChatbotKnowledge trong SQL.
- Chatbot gọi OpenAI Chat Completions API qua OpenAiChatService.
- Dữ liệu khoa và bác sĩ vẫn lấy từ SQL để đưa vào prompt, giúp AI gợi ý khoa/bác sĩ đúng theo phòng khám.
- Cấu hình API key trong ClinicBooking/appsettings.json:
"OpenAI": {
"ApiKey": "YOUR_OPENAI_API_KEY",
"BaseUrl": "https://api.openai.com/v1",
"Model": "gpt-4o-mini"
}
- Kết quả JSON gồm: reply, department, urgency, warning, options, suggestedDoctors.
Not written in Markdown, so it's shown here as plain text — view it formatted on GitHub.
C#
52.4%
HTML
45.4%
JavaScript
2.2%
CLINICBOOKING BOOTSTRAP AI FINAL
Bản zip này đã chốt lại các ý bạn yêu cầu:
- Có file solution .sln
- Giao diện Bootstrap 5
- Có logo text
- Có banner lớn ở giữa
- Có footer
- Có chatbox Bootstrap đã chỉnh rõ ràng hơn
- Chatbox lưu đoạn chat vào SQL qua ChatSession + ChatMessage
- Có hỗ trợ AI qua OpenAI API, và fallback rule-based nếu chưa có API key
- Có đặt lịch, chống trùng lịch, thanh toán cọc demo, lịch sử khám
CÁCH CHẠY
1) Mở ClinicBooking.sln bằng Visual Studio
2) Sửa ConnectionStrings trong ClinicBooking/appsettings.json
3) Có thể thêm OpenAI API key nếu muốn trả lời bằng AI thật
4) Restore NuGet packages
5) Run project
TÀI KHOẢN MẪU
- admin@clinic.local / 123456
- patient@clinic.local / 123456
LƯU Ý
- Môi trường tạo file này không có dotnet SDK nên mình không build xác thực cuối cùng được.
- Đây là scaffold có cấu trúc hợp lý để bạn mở solution và chỉnh tiếp nếu cần.
- Startup đang dùng EnsureCreated để tiện chạy nhanh. Nếu muốn migration chuẩn, bạn có thể đổi sang Database.Migrate rồi Add-Migration / Update-Database.
BỔ SUNG
- Thanh đăng nhập/đăng xuất hiển thị theo trạng thái người dùng
- Dashboard admin có thống kê: lịch hôm nay, bác sĩ, bệnh nhân, cọc chờ xử lý, lịch đã xác nhận, tiền cọc hôm nay
- Trang quản lý lịch hẹn có tìm kiếm/lọc theo từ khóa, bác sĩ, trạng thái, ngày khám
DTO CONVERSION
- Added DTO folder similar to QLSP
- Added ViewModel folder similar to QLSP
- Controllers Home/Booking/History now map Entity -> DTO -> ViewModel
- Added Models/AppDbContext.cs like QLSP style
Cập nhật chatbot ChatGPT API:
- Chatbot không còn trả lời chính bằng bảng ChatbotKnowledge trong SQL.
- Chatbot gọi OpenAI Chat Completions API qua OpenAiChatService.
- Dữ liệu khoa và bác sĩ vẫn lấy từ SQL để đưa vào prompt, giúp AI gợi ý khoa/bác sĩ đúng theo phòng khám.
- Cấu hình API key trong ClinicBooking/appsettings.json:
"OpenAI": {
"ApiKey": "YOUR_OPENAI_API_KEY",
"BaseUrl": "https://api.openai.com/v1",
"Model": "gpt-4o-mini"
}
- Kết quả JSON gồm: reply, department, urgency, warning, options, suggestedDoctors.
Not written in Markdown, so it's shown here as plain text — view it formatted on GitHub.
C#
52.4%
HTML
45.4%
JavaScript
2.2%