ĐẶT VẤN ĐỀ 1.TÍNH CẤP THIẾT CỦA ĐỀ TÀI. Hiện nay với tình hình dịch bệnh diễn ra phức tạp, việc gặp nhau để giao tiếp, trao đổi giữa người với người trở nên vô cùng khó khăn. Khi chúng ta có nhu cầu được khám chữa bệnh nhưng muốn hạn chế tiếp xúc người khác để tránh lây lan dịch bệnh, mà vẫn đảm bảo tìm được phòng khám hoàn toàn phù hợp với bệnh tình của bản thân, từ chuyên môn cho đến vị trí địa lý là điều khó có thể thực hiện được nếu không có một công cụ công nghệ hỗ trợ. Những năm gần đây, cùng với việc dịch bệnh ngày càng phức tạp thì các phòng khám cũng như y bác sĩ cũng xuất hiện ngày càng nhiều cho nên việc quản lý các thông tin y tế trở nên phức tạp và khó khăn hơn rất nhiều.
Để quản lý được lượng thông tin lớn và liên tục thì một công cụ hỗ trợ quản lý là cần thiết. Tuy nhiên, hiện nay chưa có nhiều công cụ phòng khám gia đình có thể đồng thời vừa đáp ứng được những nhu cầu của bệnh nhân, thân nhân mà vừa có thể hỗ trợ cho việc quản lý thông tin các chủ phòng khám và y bác sĩ. Vì vậy xây dựng hệ thống hỗ trợ đặt lịch khám gia đình giúp người dùng có thể dễ dàng tìm hiểu về một phòng khám hay y bác sĩ, thậm chí giúp người dùng có thể trao đổi với y bác sĩ để nhận được sự tư vấn từ họ mà không cần gặp mặt hạn chế tối đa sự lây nhiễm dịch bệnh. Đồng thời có thể hỗ trợ cho việc quản lý phòng khám của chủ phòng khám cũng trở nên dễ dàng và phòng khám cũng dễ dàng tiếp cận đến khách hàng của mình hơn.
Do đó, em quyết định chọn đề tài “Xây dựng hệ thống hỗ trợ đặt lịch khám bệnh tại phòng khám bác sĩ gia đình”.MỤC TIÊU THỰC HIỆN ĐỀ TÀI. Xây dựng một hệ thống giúp cho người sử dụng có thể tìm hiểu, tra cứu và đặt lịch khám bệnh trực tuyến cho bản thân hoặc người thân tại các phòng khám bác sĩ gia đình, cụ thể bao gồm: - Chủ phòng khám có thể đăng ký tài khoản và đưa thông tin phòng khám cùng với y bác sĩ của phòng khám lên website, kèm theo vị trí phòng khám để hiển thị lên bản đồ cho người khám bệnh có thể tìm thấy. Quản lý thông tin bệnh nhân, thân nhân, bác sĩ, hồ sơ khám bệnh, hóa đơn khám bệnh,… 1 - Bệnh nhân hoặc người thân có thể đăng ký tài khoản, tìm kiếm và xem các thông tin của các phòng khám (vị trí, thông tin, bằng cấp của y bác sĩ,…), trao đổi để nhận tư vấn, đặt lịch khám bệnh và đánh giá phòng khám, thực hiện khai báo y tế trước khi đặt lịch khám. Thông báo sẽ được gửi về email người khám nếu lịch đăng ký được phòng khám chấp nhận.
Trong thông báo sẽ có cả số khám bệnh và thời gian đề xuất đến khám. Có thể đặt câu hỏi nếu có vấn đề liên quan đến y tế mà bản thân chưa hiểu, nếu có bác sĩ hiểu về vấn đề nhìn thấy câu hỏi sẽ tiến hành trả lời để giải đáp thắc mắc. - Bác sĩ có thể kiểm tra các lịch đặt mà bệnh nhân đã đặt, xem lịch sử khám bệnh, giải đáp thắc mắc của bệnh nhân hay thân nhân. 2 CHƯƠNG 2: TỔNG QUAN VÀ CƠ SỞ LÝ THUYẾT 2.
Với bối cảnh dịch bệnh diễn ra phức tạp hiện nay, không ai có thể hoàn toàn an tâm khi bước chân ra đường để tiếp xúc với người khác. Chúng ta có thể hạn chế ra ngoài đến mức tối đa nhưng nhu cầu về sức khỏe, về khám chữa bệnh là không thể hạn chế. Do đó, cần phải tạo ra một công cụ có thể giúp con người hạn chế tiếp xúc người khác đến mức tối đa, để đảm bảo cho sức khỏe bản thân mà vẫn đáp ứng được các nhu cầu về sức khỏe và khám chữa bệnh.LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ. Hiện nay đã có nhiều website về thông tin y tế, đặt lịch khám bệnh, trao đổi với chuyên gia y tế,… Nhưng một công cụ có thể đồng thời đáp ứng được nhu cầu của bệnh nhân, thân nhân vừa hỗ trợ được chủ các phòng khám trong công tác quản lý thì còn ít.PHẠM VI CỦA ĐỀ TÀI.
Phạm vi của đề tài hướng tới đối tượng là các phòng khám, bác sĩ và người dùng trên cả nước.HƯỚNG GIẢI QUYẾT VẤN ĐỀ. Phân loại người dùng thành nhiều loại bao gồm User, Admin, ChuPhongKham và BacSi. Mỗi loại người dùng sẽ có giao diện khác nhau cùng với các chức năng khác nhau. Từ đó, mỗi loại người dùng sẽ sử dụng hệ thống với mục đích nhằm đáp ứng nhu cầu của bản thân.
Tìm hiểu về ngôn ngữ PHP và framework Laravel, Bingmap API để xây dựng hệ thống và tính năng được Bingmap API hỗ trợ sẵn. Tìm hiểu về công cụ quản lý cơ sở dữ liệu PhpMyAdmin để giúp cho việc lưu trữ toàn bộ dữ liệu của hệ thống nhằm phục vụ cho các tác vụ truy vấn vào cơ sở dữ liệu. Khái niệm về Laravel. Laravel là một PHP framework có mã nguồn mở và miễn phí, được xây dựng nhằm hỗ trợ phát triền phần mềm, ứng dụng theo kiến trúc MVC.
Hiện nay Laravel đang được sử dụng rất phổ biến. Những nguyên nhân khiến Laravel 3 được sử dụng rộng rãi là do laravel giúp các lập trình viên tiếp cận được những tính năng mới nhất mà PHP cung cấp, nhất là đối với namespaces, interfaces, overloading,. Nguồn tài nguyên của Laravel rất thân thiện với các lập trình viên và đa dạng tài liệu khác nhau để tham khảo. Ngoài ra, Laravel còn hỗ trợ hiệu quả cho việc tạo lập website hay các dự án trong thời gian ngắn.
Vì vậy nó được các công ty công nghệ và lập trình viên sử dụng rộng rãi để phát triển các sản phẩm của họ. Laravel là framework hỗ trợ rất tốt nhưng cũng không phải là không có khuyết điểm, vấn đề lớn nhất có thể kể đến của framework này là thiếu sự liên kết giữa các phiên bản, nếu cố cập nhật code, có thể khiến cho ứng dụng bị gián đoạn hoặc phá vỡ. Tìm hiểu về Bing Map API. Ứng dụng Bing Maps là một dịch vụ bản đồ trực tuyến trên web và app miễn phí do Microsoft cung cấp.
Ứng dụng hỗ trợ nhiều dịch vụ, tính năng cho người dùng, phổ biến là dò đường, chỉ đường, tìm vị trí. Bing Map API là phương pháp cho phép một website có thể sử dụng dịch vụ hoặc hiển thị nội dung của Bing Maps thông qua Bing Map API. Từ đó website có thể sử dụng các dịch vụ của Bing Maps như hiện bản đồ, di chuyển, phóng to, thu nhỏ,… 2. Tìm hiểu về Bootstrap.
Bootstrap là một framework bao gồm các HTML, CSS và Javascript template dùng để phát triển website chuẩn reponsive. Bootstrap cho phép quá trình thiết kế trở nên nhanh chóng và dễ dàng hơn dựa trên những thành tố cơ bản có sẵn như forms, buttons, tables, grids,… Bootstrap là bộ sưu tập các mã nguồn mở miễn phí và là công cụ dùng để tạo ra một mẫu website hoàn chỉnh. Những lý do khiến Bootstrap đang được sử dụng rất phổ biến là dễ dàng thao tác, chất lượng đầu ra hoàn hảo, và độ tương thích cao, nó có khả năng tương thích với mọi trình duyệt và nền tảng, đây là điều cực kỳ quan trọng và cần thiết trong trải nghiệm người dùng. Tìm hiểu về PhpMyAdmin.
PhpMyAdmin là công cụ mã nguồn mở được viết bằng ngôn ngữ PHP để giúp người dùng quản lý cơ sở dữ liệu của MySQL thông qua một trình duyệt web. Đây là công cụ quản trị MySQL phổ biến nhất được sử dụng bởi hàng triệu 4 người dùng trên toàn thế giới, đặc biệt là các nhà quản trị cơ sở dữ liệu hay database admintrator. Thay vì sử dụng giao diện cửa sổ dòng lệnh (command line interface), với trình duyệt web của mình, thông qua giao diện người dùng (user interface), PhpMyAdmin có thể thực hiện nhiều tác vụ như tạo, cập nhật, sửa đổi hoặc xóa bỏ cơ sở dữ liệu, bảng hoặc bản ghi; thực hiện báo cáo SQL; phân quyền và quản lý người dùng,… Đương nhiên phải có lý do, thì PhpMyAdmin mới được sử dụng rộng rãi đến như vậy bởi các người dùng trên toàn thế giới. Một vài lý do trong đó, thứ nhất là PhpMyAdmin giúp tăng hiệu quả công tác quản lý cơ sở dữ liệu, không chỉ được xem là một công cụ hoàn hảo để duyệt cơ sở dữ liệu, thực hiện truy vấn SQL, quản lý các đặc quyền người dùng, mà còn được coi là một công cụ quản trị đầy đủ tính năng.
Thứ hai là PhpMyAdmin có cộng đồng hỗ trợ lớn, với tính chất là một mã nguồn mở, PhpMyAdmin được phát triển bởi cộng đồng các lập trình viên trên toàn cầu. Do đó, ai biết lập trình đều có thể đóng góp mã lệnh của mình. Thứ ba là tính đa ngôn ngữ, Phần mềm hiện có sẵn trong 64 ngôn ngữ khác nhau, được duy trì bởi The PhpMyAdmin Project. Và một trong những điều tốt nhất của phpMyAdmin đó chính là hoàn toàn miễn phí.
Đã là một công cụ thì chắc hẳn phải có điểm mạnh, điểm yếu, ta vừa xem qua một vài điểm mạnh cơ bản khiến PhpMyAdmin được sử dụng rộng rãi, thì giờ đến với các hạn chế mà công cụ này chưa thể làm tốt được. Thứ nhất, chính vì PhpMyAdmin là một mã nguồn mở nên cũng có một số hạn chế nhất định về bảo mật. Tuy nhiên phiên bản PhpMyAdmin hiện tại đã được khắc phục tạm thời lỗi này. Dù vậy, để tránh rủi ro, tốt nhất bạn cũng nên hạn chế truy cập vào địa chỉ URL của PhpMyAdmin từ những địa chỉ IP cố định.
Thứ 2 là sao lưu dữ liệu chưa tốt, chức năng export/import còn một số thiếu sót 5 CHƯƠNG 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 3.THIẾT KẾ CƠ SỞ DỮ LIỆU. Cấu trúc các bảng dữ liệu. Từ các bước phân tích về các thực thể tham gia và hệ thống, các thuộc tính của thực thể, các mối quan hệ,. Tổng hợp lại để thiết kế chi tiết các bảng cơ sở dữ liệu dùng trong hệ thống như sau: Do tên cơ sở dữ liệu, tên bảng và tên trường sẽ được dùng trong các câu truy vấn và được đặt trong mã nguồn.
Để tránh lỗi và sự phức tạp hóa, em quy định cách đặt tên chung là tên cơ sở dữ liệu, bảng sẽ viết liền không dấu và viết thường(VD: phongkham, bacsi,.), tên các trường trong bảng sẽ viết liền không dấu và viết hoa chữ cái đầu mỗi chữ(VD: DiaChi , TenPhongKham,. Khóa chính sẽ viết in đậm và gạch chân, còn khóa ngoại sẽ được in đậm. Tên cơ sở dữ liệu: fdoctor.