You are on page 1of 62

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT HƯNG YÊN

LƯU THỊ THU HÀ

THIẾT KẾ VÀ XÂY DỰNG WEBSITE


CHO BỆNH VIỆN ĐA KHOA HƯNG HÀ

ĐỒ ÁN TỐT NGHIỆP

HƯNG YÊN – 2018


Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

2
BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT HƯNG YÊN

LƯU THỊ THU HÀ

THIẾT KẾ VÀ XÂY DỰNG WEBSITE


CHO BỆNH VIỆN ĐA KHOA HƯNG HÀ

NGÀNH: CÔNG NGHỆ THÔNG TIN

CHUYÊN NGÀNH: KỸ THUẬT PHẦN MỀM

ĐỒ ÁN TỐT NGHIỆP

NGƯỜI HƯỚNG DẪN


TS. NGUYỄN VĂN HẬU

HƯNG YÊN – 2018


Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

MỤC LỤC

MỤC LỤC........................................................................................................3

DANH SÁCH HÌNH VẼ..................................................................................6

DANH SÁCH BẢNG BIỂU.............................................................................8

DANH SÁCH TỪ VIẾT TẮT..........................................................................9

CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI....................................................10

1.1 Lý do chọn đề tài..............................................................................10

1.2 Mục tiêu của đề tài...........................................................................11

1.3 Giới hạn và phạm vi của đề tài.........................................................11

1.4 Nội dung thực hiện...........................................................................11

1.5 Phương pháp tiếp cận.......................................................................12

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT.............................................................13

2.1 Giới thiệu mô hình MVC.................................................................13

2.1.1 Xuất xứ........................................................................................13

2.1.2 Kiến trúc của mô hình MVC........................................................13

2.1.3 Đặc điểm của mô hình MVC.......................................................14

2.2 Mô hình MVC trong ASP.NET........................................................15

2.2.1 Giới thiệu tổng quan....................................................................15

2.2.2 Khái quát các thành phần của ASP.NET MVC............................15

2.2.3 So sánh ASP.NET MVC với ASP.NET.......................................16

2.2.4 Lợi ích của mô hình ASP.NET MVC..........................................17

2.3 Tổng quan về LINQ to SQL.............................................................18

2.3.1 LINQ là gì?..................................................................................18

4
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

2.3.2 LINQ to SQL là gì?.....................................................................18

CHƯƠNG 3: NỘI DUNG THỰC HIỆN......................................................19

3.1 Phát biểu bài toán.............................................................................19

3.2 Yêu cầu của hệ thống.......................................................................19

3.3 Biểu đồ UseCase..............................................................................22

3.3.1 Danh sách các Actor....................................................................22

3.3.2 Danh sách UseCase......................................................................22

3.3.3 Biểu đồ UseCase mức tổng quát..................................................23

3.3.4 Đặc tả UseCase............................................................................23

3.4 Biểu đồ lớp.......................................................................................30

3.4.1 Biểu đồ lớp (mức phân tích)........................................................30

3.4.2 Danh sách các lớp đối tượng và quan hệ......................................31

3.5 Biểu đồ tuần tự.................................................................................32

3.6 Thiết kế cơ sở dữ liệu của hệ thống..................................................35

3.7 Thiết kế đặc tả giao diện..................................................................49

3.7.1 Một số giao diện chính của hệ thống...........................................49

3.6.2 Một số giao diện chính của CMS.................................................54

CHƯƠNG 4: KẾT LUẬN............................................................................60

4.1 Kết quả đạt được của đề tài..............................................................60

4.2 Hạn chế của đề tài............................................................................60

4.3 Hướng phát triển của đề tài..............................................................61

TÀI LIỆU THAM KHẢO...............................................................................62

5
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

DANH SÁCH HÌNH VẼ

Hình 2-1: Các thành phần chính của mô hình MVC.......................................13

Hình 2-2: Nền tảng ASP.NET MVC Framword.............................................14

Hình 3-1: UseCase mức tổng quát..................................................................22

Hình 3-2: UseCase Quản lý tin tức.................................................................23

Hình 3-3: UseCase Quản lý danh mục tin tức.................................................23

Hình 3-4: UseCase Quản lý nhật ký hệ thống.................................................24

Hình 3-5: Use case Quản lý danh mục phân quyền.........................................24

Hình 3-6: Use case Quản lý tài khoản.............................................................25

Hình 3-7: Use case Quản lý bình luận.............................................................25

Hình 3-8: Use case Quản lý danh mục bác sĩ..................................................26

Hình 3-9: Use case Quản lý bệnh viện............................................................26

Hình 3-10: UseCase Quản lý chuyên khoa.....................................................27

Hình 3-11: UseCase Quản lý hình ảnh............................................................27

Hình 3-13: Use case Quản lý video.................................................................28

Hình 3-14: Use case Đăng bài viết..................................................................28

Hình 3-15: Biểu đồ lớp mức phân tích............................................................29

Hình 3-16: Biểu đồ tuần tự Đăng nhập...........................................................31

Hình 3-17: Biểu đồ tuần tự Thêm tin tức........................................................31

Hình 3-18: Biểu đồ tuần tự Sửa tin tức...........................................................32

Hình 3-19: Biểu đồ tuần tự Xóa tin tức...........................................................32

Hình 3-23: Biểu đồ tuần tự Thêm bác sĩ.........................................................33

Hình 3-24: Biểu đồ tuần tự Sửa thông tin bác sĩ.............................................33

6
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 3-25: Biểu đồ tuần tự Xóa bác sĩ............................................................34

Hình 3-26: Mô hình dữ liệu quan hệ...............................................................35

Hình 3-27: Giao diện trang chủ trên website...................................................48

Hình 3-28: Giao diện cơ sở vật chất, video, đội ngũ bác sĩ.............................49

Hình 3-29: Giao diện thông tin chi tiết bác sĩ.................................................50

Hình 3-30: Giao diện chi tiết tin tức...............................................................51

Hình 3-31: Giao diện trang liên hệ và chân trang............................................52

Hình 3-32: Giao diện đăng nhập tài khoản trên Website.................................53

Hình 3-33: Giao diện trang chủ trên CMS......................................................53

Hình 3-34: Giao diện trang hiển thị danh mục tin tức trên Website................54

Hình 3-35: Giao diện danh sách tin đã đăng...................................................55

Hình 3-36: Giao diện thêm mới tin tức...........................................................56

Hình 3-37: Giao diện trang chỉnh sửa tin tức..................................................57

Hình 3-38: Giao diện trang Nhật ký hệ thống.................................................58

7
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

DANH SÁCH BẢNG BIỂU

Bảng 3-1: Danh sách các Actor.......................................................................21

Bảng 3-2: Danh sách các UseCase..................................................................21

Bảng 3-3: Danh sách các lớp đối tượng và quan hệ........................................30

8
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

DANH SÁCH TỪ VIẾT TẮT

Từ viết tắt Từ đầy đủ Giải thích

ASP Active Server Page Là một mở rộng ISAPI, cung


cấp một khung làm việc cho các
ứng dụng phía Server

MVC Model, View, Controller Mẫu kiến trúc Model – View -


Controller

CNTT Công nghệ thông tin Công nghệ Thông tin

LINQ Languege Integrated Query Ngôn ngữ tích hợp truy vấn

HTML HyperText Markup Language Ngôn ngữ đánh dấu siêu văn
bản

CSS Cascading Style Sheets Ngôn ngữ quy định cách trình
bày của các thẻ html trên trang
web

CSDL Cơ sở dữ liệu Cơ sở dữ liệu

CMS Content Management System Hệ quản trị nội dung

9
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI

1.1 Lý do chọn đề tài

Thời đại nào cũng thế, sức khỏe luôn được đặt lên hàng đầu bởi vậy mới có
câu nói “Có sức khỏe là có tất cả”. Khi chất lượng cuộc sống ngày càng được tốt
hơn thì nhu cầu khám chữa bệnh chăm sóc sức khỏe của người dân ngày càng lớn.
Yêu cầu về dịch vụ đi kèm cũng đòi hỏi phải được nâng cao.

Trong khi các bệnh viện công đang trong tình trạng quá tải bởi nhu cầu khám
chữa bệnh thì có nhiều bệnh viện tư nhân được thành lập giúp cho người dân có
nhiều sự lựa chọn.

Kinh doanh trong lĩnh vực y tế khám chữa bệnh cũng như nhiều ngành nghề
kinh doanh khác, các doanh nghiệp tổ chức y tế chăm sóc sức khỏe đang phải đối
diện với nhiều áp lực về chất lượng dịch vụ, khả năng điều trị cũng như số lượng
các đối thủ cạnh tranh.

Vậy làm thế nào để quảng bá chất lượng dịch vụ của bệnh viện tới người dân
một cách hiệu quả? Sở hữu một website bệnh viện là phương tiện hiệu quả nhất
giúp cho bệnh viện của bạn vượt lên đối thủ cạnh tranh và quảng bá được dịch vụ
một cách thành công. Bên cạnh đó bệnh nhân có cơ hội tìm hiểu một cách dễ dàng
về dịch vụ khám chữa bệnh chăm sóc sức khỏe tại bệnh viện.

Là một bệnh viện tư đang phát triển, Bệnh viện Đa khoa Hưng Hà rất quan
tâm đến website của mình. Hiện tại Bệnh viện đã có một website nhưng do đã lâu
nên chưa thực sự thân thiện với người dùng, chưa có nhiều chức năng nhằm quảng
bá thương hiệu của bệnh viện, cũng như khách hàng khó tìm kiếm các thông
tin,...Vì vậy bệnh viện cần thay đổi website hiện tại để nâng cao chất lượng khám
chữa bệnh, quảng bá thương hiệu, thuận tiện cho người dùng tra cứu thông tin khám
chữa.

Là sinh viên ngành CNTT, em luôn mong muốn mình sẽ làm được gì đó để
ứng dụng những kiến thức đã học xây dựng được những sản phẩm có ứng dụng

10
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

thực tế. Với mong muốn áp dụng những kiến thức mình đã học được tạo ra sản
phẩm hoàn thiện có tính thực tế, đồng thời giúp nâng cao khả năng lập trình và đúc
rút được nhiều kinh nghiệm cho những công việc trong tương lai sau khi ra trường,
cùng với sự đồng ý của giáo viên hướng dẫn đề tài, em quyết định lựa chọn đề tài
“Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà” để làm đề tài
đồ án tốt nghiệp.

1.2 Mục tiêu của đề tài

Trình bày được các vấn đề liên quan đến APS.NET MVC và ứng dụng vào
xây dựng website Bệnh viện Đa khoa Hưng Hà

Xây dựng được website để nâng cao chất lượng khám chữa bệnh, quảng bá
thương hiệu, thuận tiện cho người bệnh khi tra cứu thông tin khám chữa bệnh,...cho
Bệnh viện Đa khoa Hưng Hà
Triển khai cài đặt và cấu hình Website trên môi trường Internet.

1.3 Giới hạn và phạm vi của đề tài

Đề tài xây dựng website Bệnh viện Đa khoa Hưng Hà sử dụng các công nghệ
lập trình như ASP.NET MVC, SQL Serve 2014 và công cụ lập trình Visual Studio
2015

1.4 Nội dung thực hiện

Nội dung thực hiện/nghiên cứu cụ thể như sau:

- Nghiên cứu công nghệ lập trình Website với ASP.NET MVC

- Phân tích yêu cầu và đề xuất giải pháp Website trên công nghệ .NET

- Thiết kế đặc tả hệ thống.

- Xây dựng Cơ sở dữ liệu.

- Lập trình cho các Module của hệ thống

- Kiểm thử hệ thống.

- Triển khai thực nghiệm hệ thống trên mạng Internet.


11
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

1.5 Phương pháp tiếp cận


- Cách tiếp cận : Nghiên cứu các ngôn ngữ lập trình Website như ASP.NET
MVC, LINQ to SQL, Jquery, HTML, CSS, JavaScritp, java..
- Sử dụng các phương pháp nghiên cứu:
o Phương pháp đọc tài liệu;
o Phương pháp phân tích mẫu;
o Phương pháp thực nghiệm.

12
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

2.1 Giới thiệu mô hình MVC

2.1.1 Xuất xứ

Bắt đầu vào những năm 70 của thế kỷ 20, tại phòng thí nghiệm Xerox PARC ở
Palo Alto. Sự ra đời của giao diện đồ họa (Graphical User Interface) và lập trình
hướng đối tượng (Object Oriented Programming) cho phép lập trình viên làm việc
với những thành phần đồ họa như những đối tượng đồ họa có thuộc tính và phương
thức riêng của nó. Không dừng lại ở đó, những nhà nghiên cứu ở Xerox PARC còn
đi xa hơn khi cho ra đời cái gọi là kiến trúc MVC (viết tắt của Model – View –
Controller). MVC được phát minh tại Xerox Parc vào những năm 70, bởi
TrygveReenskaug. MVC lần đầu tiên xuất hiện công khai là trong Smalltalk-80.
Sau đó trong một thời gian dài hầu như không có thông tin nào về MVC, ngay cả
trong tài liệu 80 Smalltalk. Các giấy tờ quan trọng đầu tiên được công bố trên MVC
là “A Cookbook for Using the Model-View-Controller User Interface Paradigm in
Smalltalk - 80”, bởi Glenn Krasner và Stephen Pope, xuất bản trong tháng 8 / tháng
9 năm 1988.

2.1.2 Kiến trúc của mô hình MVC

Trong kiến trúc MVC, một đối tượng đồ họa người dùng (GUI Component)
bao gồm 3 thành phần cơ bản: Model, View và Controller. Model có trách nhiệm
đối với toàn bộ dữ liệu cũng như trạng thái của đối tượng đồ họa. View chính là thể
hiện trực quan của Model, hay nói cách khác chính là giao diện của đối tượng đồ
họa. Và Controller điều khiển việc tương tác giữa đối tượng đồ họa với người sử
dụng cũng như những đối tượng khác.

13
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 2-1: Các thành phần chính của mô hình MVC

2.1.3 Đặc điểm của mô hình MVC

Lợi ích quan trọng nhất của mô hình MVC là nó giúp cho ứng dụng dễ bảo trì,
module hóa các chức năng, và được xây dựng nhanh chóng. MVC tách các tác vụ
của ứng dụng thành các phần riêng lẽ model, view, controller giúp cho việc xây
dựng ứng dụng nhẹ nhàng hơn. Dễ dàng thêm các tính năng mới, và các tính năng
cũ có thể dễ dàng thay đổi. MVC cho phép các nhà phát triển và các nhà thiết kế có
thể làm việc đồng thời với nhau. MVC cho phép thay đổi trong 1 phần của ứng
dụng mà không ảnh hưởng đến các phần khác. Sở dĩ như vậy vì kiến trúc MVC đã
tách biệt (decoupling) sự phụ thuộc giữa các thành phần trong một đối tượng đồ
họa, làm tăng tính linh động (flexibility) và tính tái sử dụng (reusebility) của đối
tượng đồ họa đó. Một đối tượng đồ họa bấy giờ có thể dễ dàng thay đổi giao diện
bằng cách thay đổi thành phần View của nó trong khi cách thức lưu trữ (Model)
cũng như xử lý (Controller) không hề thay đổi. Tương tự, ta có thể thay đổi cách
thức lưu trữ (Model) hoặc xử lý (Controller) của đối tượng đồ họa mà những thành
phần còn lại vẫn giữ nguyên.

Chính vì vậy mà kiến trúc MVC đã được ứng dụng để xây dựng rất nhiều
framework và thư viện đồ họa khác nhau. Tiêu biểu là bộ thư viện đồ họa của ngôn

14
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

ngữ lập trình hướng đối tượng SmallTalk (cũng do Xerox PARC nghiên cứu và phát
triển vào thập niên 70 của thế kỷ 20). Các Swing Components của Java cũng được
xây dựng dựa trên kiến trúc MVC. Đặc biệt là nền tảng ASP.NET MVC Framework
sẽ được em trình bày ở chương sau đây.

2.2 Mô hình MVC trong ASP.NET

2.2.1 Giới thiệu tổng quan

Mô hình MVC với những ưu điểm đã được ứng dụng nhiều trên các nền tảng
(framework) khác nhau, trong đó có một nền tảng (framework) nổi tiếng được nhiều
người biết đến và sử dụng đó là nền tảng (framework) ASP.NET MVC. Vậy
ASP.NET MVC là gì ? ASP.NET MVC là một nền tảng (framework) phát triển ứng
dụng web mới của Microsoft, nó kết hợp giữa tính hiệu quả và nhỏ gọn của mô hình
model-viewcontroller(MVC), những ý tưởng và công nghệ hiện đại nhất, cùng với
những thành phần tốt nhất của nền tảng ASP.NET hiện thời. Là một lựa chọn khác
bên cạnh nền tảng WebForm khi phát triển 1 ứng dụng web sử dụng ASP.NET.

2.2.2 Khái quát các thành phần của ASP.NET MVC

ASP.NET MVC cũng chia nhỏ một ứng dụng thành ba thành phần để cài đặt, mỗi
thành phần đóng một vai trò khác nhau và ảnh hưởng lẫn nhau, đó là models, views,
và controllers.

Hình 2-2: Nền tảng ASP.NET MVC Framword

15
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Models trong các ứng dụng dựa trên MVC là những thành phần có nhiệm vụ lưu trữ
thông tin, trạng thái của các đối tượng, thông thường nó là một lớp được ánh xạ từ
một bảng trong CSDL. Lấy ví dụ, chúng ta có lớp Giáo trình được sử dụng để mô tả
dữ liệu từ bảng Giáo trình trong SQL, bao gồm Mã giáo trình, Tên giáo trình...

Views chính là các thành phần chịu trách nhiệm hiển thị các thông tin lên cho người
dùng thông qua giao diện. Thông thường, các thông tin cần hiển thị được lấy từ
thành phần Models.

Controllers trong các ứng dụng kiểu MVC chịu trách nhiệm xử lý các tác động về
mặt giao diện, các thao tác đối với models, và cuối cùng là chọn một view thích hợp
để hiển thị ra màn hình. Trong kiến trúc MVC, View chỉ có tác dụng hiển thị giao
diện mà thôi, còn điều kiển dòng nhập xuất của người dùng vẫn do Controllers đảm
trách.

2.2.3 So sánh ASP.NET MVC với ASP.NET

Bạn đã được nghe qua về điểm yếu và giới hạn của ASP.NET WebForm truyền
thống, và làm thế nào mà ASP.NET MVC vượt qua những vấn đề này. Điều đó
không có nghĩa là ASP.NET WebForm đã chết mà chỉ là : Microsoft muốn mọi
người hiểu rằng có hai nền tảng song song nhau, hỗ trợ cho nhau, và cả hai đều là
đối tượng cho việc phát triển hiện tại. Nói chung, việc bạn chọn lựa giữa hai mô
hình còn tùy vào hoàn cảnh.

ASP.NET WebForm mang tới một trang web mà giao diện có thể lưu giữ trạng
thái, và cuối cùng thêm vào một lớp trừu tượng tinh vi nằm trên HTTP và HTML,
sử dụng ViewState và postback để tạo ra hiệu ứng của việc có trạng thái . Điều này
thích hợp với phong cách phát triển kéo và thả của Window Form, tức là bạn đặt
các đối tượng có giao diện lên trang và mã xử lý vào trình xử lý sự kiện của chúng.

MVC hòa vào bản chất không trạng thái của HTTP, làm việc chung với nó hơn là
chống lại. Điều này yêu cầu bạn phải hiểu thật sự cách làm việc của một ứng dụng
web, để đạt được điều đó, MVC cung cấp một cách tiếp cận đơn giản, mạnh mẽ và
hiện đại cho việc viết các ứng dụng web với mã có trật tự mà dễ dàng để kiểm thử

16
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

(test) và bảo trì sau này, giải phóng những phức tạp khó chịu và các giới hạn không
đáng có.

Điều đặc biệt là ASP.NET MVC có mã nguồn mở, không giống các nền tảng trước
đó, bạn có thể dễ dàng tải mã nguồn gốc của ASP.NET MVC, thậm chí bạn có thể
sửa đổi và tạo ra phiên bản của riêng bạn.

Có những tình huống mà ASP.NET WebForm khá tốt thậm chí còn tốt hơn
ASP.NET MVC. Ví dụ như các ứng dụng nhỏ, nội bộ mà trực tiếp kết nối thẳng vào
các bảng CSDL hoặc dẫn người sử dụng thông qua các trình hướng dẫn tự động
(wizard). Vì thế sẽ không cần phải lo lắng về băng thông do ViewState, không dính
dáng tới vấn đề tối ưu hóa hệ thống tìm kiếm, và không bị làm phiền về việc kiểm
thử (test) và bảo trì lâu dài. Sự tiện lợi của cách phát triển kiểu kéo thả của
ASP.NET WebForm làm mờ đi các điểm yếu của nó.

Nhưng mặt khác, nếu bạn viết 1 ứng dụng trên Internet, hoặc các ứng dụng nội bộ
lớn hơn, bạn sẽ hướng tới tốc độ download nhanh và tương thích trình duyệt chéo,
được xây dựng với chất lượng cao hơn, mã kiến trúc tốt thích hợp cho việc test tự
động, trong trường hợp đó ASP.NET MVC sẽ mang lại nhưng ưu điểm quan trọng.

2.2.4 Lợi ích của mô hình ASP.NET MVC

- Có tính mở rộng do có thể thay thế từng thành phần 1 cách dễ dàng
- Không sử dụng Viewstate, điều này làm các nhà phát triển dễ dàng điều
khiển ứng dụng của mình.
- Hệ thống định tuyến mới mạnh mẽ.
- Hỗ trợ tốt hơn cho test-driven development (TDD – mô hình phát triển kiểm
thử) cài đặt các kiểm thử đơn vị (unit tests) tự động, xác định và kiểm tra lại
các yêu cầu trước khi bắt tay vào viết code.
- Hỗ trợ kết hợp rất tốt giữa người lập trình và người thiết kế giao diện.
- Sử dụng các tính năng tốt nhất đã có của ASP.NET.

17
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

2.3 Tổng quan về LINQ to SQL

2.3.1 LINQ là gì?


- LINQ (Languege Integrated Query) là một thành phần của
Microsoft .NET Framework để mở rộng khả năng truy vấn dữ liệu cho
các ngôn ngữ lập trình .NET như C# và VB.NET…

- LINQ hỗ trợ hầu hết các dạng nguồn dữ liệu khác nhau, bao gồm cả đối
tượng bộ nhớ (LINQ to Object), XML (LINQ to XML), cơ sở dữ liệu
SQL Server (LINQ to SQL)…
- LINQ có từ phiên bản .NET Framework 3.5, do đó nếu muốn truy vấn dữ
liệu bằng LINQ thì tối thiểu chương trình phải được chạy trên nền tảng
3.5 hoặc mới hơn.

- Bản thân LINQ không phải là một công nghệ được tạo ra để thay thế
ADO.NET, chúng ta có thể làm việc với LINQ mà không dính tới cơ sở
dữ liệu. Tuy nhiên, LINQ to SQL, là một phần mở rộng của LINQ, cho
phép chúng ta có thể làm việc được với cơ sở dữ liệu SQL Server, trong
trường hợp này chúng ta có thể bỏ qua các câu lệnh ADO.NET mà chỉ
quan tâm tới cú pháp mà LINQ cung cấp.

2.3.2 LINQ to SQL là gì?


- LINQ to SQL là một phiên bản hiện thực hóa của O/RM (object relational

Mapping) có bên trong .NET Framework bản “Orcas” (nay là .NET 3.5),
nó cho phép bạn mô hình hóa một cơ sở dữ liệu dùng các lớp .NET. Sau
đó bạn có thể truy vấn cơ sở dữ liệu (CSDL) dùng LINQ, cũng như cập
nhật/thêm/xóa dữ liệu từ đó.

- LINQ to SQL hỗ trợ đầy đủ transaction, view và các stored procedure


(SP). Nó cũng cung cấp một cách dễ dàng để thêm khả năng kiểm tra tính
hợp lệ của dữ liệu và các quy tắc vào trong mô hình dữ liệu của bạn.

18
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

CHƯƠNG 3: NỘI DUNG THỰC HIỆN

3.1 Phát biểu bài toán

Hệ thống website Bệnh viện Đa khoa Hưng Hà cung cấp các chức năng như:
Tìm kiếm các dich vụ của bệnh viện, thông tin bác sỹ, giờ làm việc của bệnh viện,
các tin tức trên website; Khách hàng (bệnh nhân) có thể viết bình luận, gửi phản
hồi, góp ý cho bệnh viện.

Hệ thống Website Bệnh viện Đa khoa Hưng Hà cần đạt được những mục tiêu
sau:
1. Xây dựng được giao diện người dùng thân thiện. Người dùng có thể
xem các thông tin bệnh viện, bác sĩ, chuyên khoa, hoạt động của bệnh viện
qua các hình ảnh, tin tức, video
2. Người dùng có thể lựa chọn Bệnh viện Đa khoa Hưng Hà theo site
gần nơi mình nhất để tiện xem và thăm khám
3. Khi chọn 1 bài viết sẽ chuyển tới trang chi tiết của bài viết. Bên dưới
các bài viết liên quan
4. Xây dựng hoàn thiện giao diện trang quản trị với các chức năng như
quản lý danh mục tin tức, quản lý tin tức, quản lý hình ảnh, quản lý video,
quản lý văn bản, quản lý thông tin bệnh viện, quản lý thông tin chuyên khoa,
quản lý thông tin bác sĩ, quản lý bình luận
5. Xây dựng được tính năng bảo mật cao, phân quyền cho người sử dụng
6. Xây dựng tính năng xem nhật ký hoạt động

3.2 Yêu cầu của hệ thống

3.2.1 Yêu cầu chức năng

3.2.1.1. Đăng nhập

- Cung cấp chức năng đăng nhập cho người dùng.

- Yêu cầu người dùng đăng nhập khi muốn bình luận hay viết bài.

19
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.2.1.2. Xem thông tin bệnh viện theo site

- Hiển thị các bài viết theo site bệnh viện

- Khi người dùng chọn site bệnh viện nào thì Website sẽ chuyển tới trang có
bài viết thuộc bệnh viện đó.

- Hiển thị bài viết theo Tiếng Việt và Tiếng Anh. Nếu bài viết người đăng bài
chỉ đăng bằng Tiếng Viết thì hệ thống sẽ tự động sao chép bài viết Tiếng Việt đó
sang trang bằng Tiếng Anh

3.2.1.3. Xem thông tin trên trang chủ

- Hiển thị phần header là địa chỉ bệnh viện, số điện thoại cấp cứu, đường dây
nóng, link facebook, logo của bệnh viện

- Hiển thị phần thân trang là slide quảng bá hình ảnh, tìm kiếm, các box hình
ảnh nhằm quản bá hình ảnh bệnh viện như lý do chọn chúng tôi, các chuyên khoa;
video, đội ngũ bác sĩ, dịch vụ nổi bật, tin tức nổi bật, liên hệ.

+ Trang chuyên khoa: Hiển thị theo hình ảnh các box hình vuông để người
dùng lựa chọn các chuyên khoa. Khi nhấn vào sẽ hiển thị thông tin chi tiết, các bác
sĩ và bài viết về chuyên khoa đó

+ Trang dịch vụ nổi bật: Hiển thị các dịch vụ của bệnh viện theo các box hình
vuông để khách hàng dễ tìm kiếm. Khi click vào dịch vụ nào thì sẽ hiển thị các bài
viết về dịch vụ đó

+ Phần Đội ngũ bác sĩ: chia làm 2 tab là Bác sĩ nội viện và Bác sĩ ngoại viện.
Khi khách hàng click vào ảnh bác sĩ nào sẽ hiển thị các thông tin cơ bản của bác sĩ
đó

3.2.1.4. Bình luận bài viết

- Cho phép người dùng bình luận ở cuối mỗi bài viết.

- Khi người dùng nhấn bình luận cần nhập đầy đủ thông tin Họ tên và email.
Bình luận đó phải được duyệt bởi quản trị viên thì mới hiển thị lên trang chủ

20
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.2.1.5. Xem danh sách bài viết


- Đây là danh sách các bài viết trên Website được sắp xếp theo thứ tự giảm
dần theo thời gian đăng. Hiển thị phía bên phải nội dung chi tiết tin tức.

3.2.1.6. Xem chi tiết bài viết


- Hiển thị chi tiết của bài viết khi khách hàng click vào “Xem chi tiết bài viết”
- Chi tiết bài viết bao gồm: ngày đăng, số lượt xem, nội dung chi tiết của bài
viết khách hàng chọn, nguồn bài viết, tất cả các bình luận khách hàng, phần
bình luận của khách hàng, các tin tức liên quan.

3.2.1.7. Xem thông tin liên hệ


- Thông tin liên hệ của Website sẽ được hiển thị ở phần footer.

3.2.1.8. Chức năng tìm kiếm


- Người dùng có thể tìm kiếm bài viết bằng cách nhập các từ khóa tìm kiếm
vào ô tìm kiếm.
- Kết quả tìm kiếm sẽ được hiển thị để người dùng thao tác.

3.2.1.9. Chức năng đăng xuất

- Cung cấp chức năng đăng xuất cho các tài khoản quản trị.

- Khi người dùng sử dụng chức năng đăng xuất, Website sẽ chuyển đến trang
đăng nhập.

3.2.2 Yêu cầu phi chức năng


- Yêu cầu giao diện: thân thiện, dễ sử dụng với người dùng
- Tốc độ xử lý nhanh
- Tính an toàn và bảo mật
- Tính tương thích: tương thích với các trình duyệt Chrome, Cốc Cốc, Firefox,
Internet Explorer

21
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.3 Biểu đồ UseCase

3.3.1 Danh sách các Actor

Bảng 3-1: Danh sách các Actor

STT Tên Actor Ý nghĩa

1 Tổng quản trị Tổng điều hành toàn bộ website

2 Quản trị viên Nhân viên quản lý website

3 Người viết bài Người viết bài, viết tin tức cho website

4 Khách hàng (bệnh nhân) Xem thông tin trên website, viết bình luận

3.3.2 Danh sách UseCase

Bảng 3-2: Danh sách các UseCase

STT Tên chức năng Mô tả

-Bao gồm: tin đã đăng, tin chờ duyệt, tin


1. Quản lý tin tức không duyệt, tin đã xóa
-Thêm, sửa, xóa, tìm kiếm, duyệt tin tức

2. Quản lý danh mục tin tức Thêm, sửa, xóa, tìm kiếm danh mục tin tức

3. Quản lý nhật ký hệ thống Xem, xóa nhật ký hoạt động

4. Quản lý danh mục phân quyền Thêm, sửa, xóa quyền

5. Quản lý tài khoản Thêm, sửa, xóa, tìm kiếm tài khoản

6. Quản lý bình luận Xem, duyệt, xóa bình luận

7. Quản lý danh mục bác sỹ Thêm, sửa, xóa, tìm kiếm bác sỹ

8. Quản lý bệnh viện Thêm, sửa, xóa, tìm kiếm bệnh viện

9. Quản lý chuyên khoa Thêm, sửa, xóa, tìm kiếm chuyên khoa

22
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

10. Quản lý hình ảnh Thêm, sửa, xóa, tìm kiếm hình ảnh

11. Quản lý văn bản Thêm, sửa, xóa, tìm kiếm văn bản

12. Quản lý video Thêm, sửa, xóa, tìm kiếm video

13. Đăng bài viết Thêm, sửa, xóa, tìm kiếm bài viết

14. Viết bình luận Viết bình luận bài viêt

3.3.3 Biểu đồ UseCase mức tổng quát

System

DangBaiViet
VietBinhLuan

KhachHang QuanLyTinTuc
<<include>> <<include>> NguoiVietBai

QuanLyBinhLuan
QuanLyDanhMucTin
<<include>> <<include>>

<<include>>
QuanLyDMBacSy <<include>>
QuanLyNhatKyHeThong
DangNhap
TongQuanTri
QuanTriVien QuanLyChuyenKhoa <<include>>
<<include>>
QuanLyDMPhanQuyen
<<include>>
QuanLyHinhAnh <<include>>

<<include>>
QuanLyTaiKhoan
QuanLyVanBan

<<include>>
<<include>>
QuanLyVideo QuanLyBenhVien

Hình 3-3: UseCase mức tổng quát

3.3.4 Đặc tả UseCase


 UseCase “QuanLyTinTuc”

23
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Them
DangNhap
<<include>>
<<extend>>
Sua
<<include>>
<<include>>
<<extend>>

<<include>>
HienThiDanhSach
QuanLyTinTuc Duyet
<<extend>>
TongQuanTri <<include>>
<<extend>>

Xoa <<include>>

<<extend>>

TimKiem

Hình 3-4: UseCase Quản lý tin tức

 UseCase “Quản lý danh mục tin tức”

DangNhap Them

<<extend>>
<<include>>
<<include>>

<<extend>> Sua
<<include>>

QuanLyDanhMucTin
<<extend>> HienThiDanhSach
<<include>>
TongQuanTri
Xoa

<<extend>> <<include>>

TimKiem

Hình 3-5: UseCase Quản lý danh mục tin tức

 UseCase “Quản lý nhật ký hệ thống”

24
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

DangNhap
Them

<<extend>> <<include>>
<<include>>

<<extend>> Sua
<<include>>

QuanLyNhatKyHeThong HienThiDanhSach
<<extend>> <<include>>
TongQuanTri
Xoa

<<extend>> <<include>>

TimKiem

Hình 3-6: UseCase Quản lý nhật ký hệ thống

 UseCase “Quản lý danh mục phân quyền”

DangNhap

Sua
<<extend>> <<include>>
<<include>>

HienThiDanhSach
QuanLyDMPhanQuyen
<<include>>
TongQuanTri
<<extend>>
Xoa

Hình 3-7: Use case Quản lý danh mục phân quyền

 UseCase “Quản lý tài khoản”

25
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Them
DangNhap
<<include>>
<<extend>>
Sua
<<include>> <<include>>
<<extend>>
<<include>>
<<extend>> HienThiDanhSach
QuanLyTaiKhoan Khoa/MoTaiKhoan

TongQuanTri
<<extend>> <<include>>
Xoa
<<include>>
<<extend>>

TimKiem

Hình 3-8: Use case Quản lý tài khoản

 UseCase “Quản lý bình luận”

DangNhap

Duyet
<<include>> <<extend>> <<include>>

QuanLyBinhLuan HienThiDanhSach
QuanTriVien <<include>>

<<extend>> Xoa

Hình 3-9: Use case Quản lý bình luận

 UseCase “Quản lý danh mục bác sỹ ”

26
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

DangNhap

Them
<<extend>> <<include>>
<<include>>

<<extend>> Sua <<include>>


QuanLyDMBacSy
HienThiDanhSach
<<extend>> <<include>>
QuanTriVien

Xoa

<<include>>
<<extend>>

TimKiem

Hình 3-10: Use case Quản lý danh mục bác sĩ

 UseCase “Quản lý bệnh viện”

DangNhap Them

<<extend>> <<include>>
<<include>>
<<extend>> Sua <<include>>

QuanLyBenhVien HienThiDanhSach
<<extend>> <<include>>
QuanTriVien
Xoa

<<extend>> <<include>>

TimKiem

Hình 3-11: Use case Quản lý bệnh viện

 UseCase “Quản lý chuyên khoa”

27
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

DangNhap Them

<<extend>> <<include>>

<<include>>
Sua <<include>>
<<extend>>
HienThiDanhSach
QuanLyChuyenKhoa <<include>>
<<extend>>
QuanTriVien
Xoa

<<include>>
<<extend>>

TimKiem

Hình 3-12: UseCase Quản lý chuyên khoa

 UseCase “Quản lý hình ảnh”

Them
DangNhap

<<include>>
<<extend>>

<<include>>
Sua
<<extend>> <<include>>

HienThiDanhSach
QuanLyHinhAnh <<include>>
<<extend>>
QuanTriVien Xoa

<<extend>> <<include>>

TimKiem

Hình 3-13: UseCase Quản lý hình ảnh

 UseCase “Quản lý video”

28
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

DangNhap
Them

<<extend>> <<include>>
<<include>>

<<extend>> Sua <<include>>

QuanLyVideo HienThiDanhSach
<<extend>>
QuanTriVien
<<include>>
Xoa

<<extend>> <<include>>

TimKiem

Hình 3-14: Use case Quản lý video

 UseCase “Đăng bài viết ”

DangNhap Them

<<include>>
<<extend>>
<<include>>
Sua <<include>>
<<extend>>
HienThiDanhSach
DangBaiViet <<extend>> <<include>>
NguoiVietBai Xoa

<<include>>
<<extend>>

TimKiem

Hình 3-15: Use case Đăng bài viết

29
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.4 Biểu đồ lớp

3.4.1 Biểu đồ lớp (mức phân tích)

Department Doctor Role


Slide
+id +id +id
+id +site_id +department_id +name
+type +name_l +name_l +cssClass
+title_l +description_l +name_e
+title_e +detail_l +specially_l
+description_l +image_path +specially_e
+description_e +language_spoken 1
+active_flag
+image_path +created_by_user_id +quantification_l
+icon +lu_updated +quantification_e
+link 1 +experiences_l
+lu_user_id
+css_class +created_date +experiences_e
+ord +name_e 1..* +specially_interests_l
+active_flag +description_e +specially_interests_e
+site_id 1..*
+detail_e +image_path
+created_date +ord +gender
+link +timetable_l UserGroup
1..* +timetable_e
0..* +alias +id
+background_image +active_flag
+show_on_home +name
1 +ord
0..* +is_partner
Site
+position 1
+id 1 Video +created_date
+name_company_l
+video_id
+name_company_e
+video_title_l
+favicon
+video_description_l
+address_l
+video_title_e
+address_e
+video_description_e
+map AuditSystem
+video_thumbnail
+phone
+video_link
+fax 1 0..* +id
+created_date
+email +user_id
+created_by_user 1
+hotline +action_date
+ord 0..* 0..*
+emergency_number +action_description
+status User
+time_open +action_detail
+site_id
+active_flag 1 +active_flag
+id
+meta_description
+full_name 0..*
+meta_keyword
+user_name 0..*
+ord
1 +password
+created_date News
+email
+id +address
+title_l +image_path
+title_e +gender
Category +alias_l +created_by_user_id
Document
+alias_e 1 +created_date
+id 0..*
+image_path +active_flag +id
+name_l
+detail_l +group_id +category_id
+name_e 0..*
+alias_e +detail_e 1 +type
+alias_l +description_l 0..* +effective_from_date
+image_path +description_e +effective_to_date
+description_l +category_id +document_name
+description_e +ord +document_code
+parent_id +created_by_user_id +document_date
0..*
+menu_id +created_date +attach_file_path
+ord +lu_updated +bin_location
1 +description
+created_by_user +active_flag
+lu_user_id +hot_new +owner
1 Comment
+created_date +show_on_home +approved_date
+lu_updated +meta_description 0..* +id +approved_by
+active_flag +meta_keyword +new_id +created_by_user_id
+show_on_home +views +user_name +created_date_time
+link +copyright +email +lu_user_id
+type +site_id +message +lu_updated
+theme_type +type +created_date +active_flag
+site_id +link +active_flag +site_id
+level +department_id

Hình 3-16: Biểu đồ lớp mức phân tích

30
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.4.2 Danh sách các lớp đối tượng và quan hệ

Bảng 3-3: Danh sách các lớp đối tượng và quan hệ

STT Tên lớp/quan hệ Loại Ý nghĩa/Ghi chú

1. AuditSystem Lớp nhật ký hệ thống


2. Category Lớp danh mục tin tức
3. Comment Lớp bình luận
4. Department Lớp chuyên khoa
5. Doctor Lớp danh mục bác sỹ
6. Document Lớp văn bản
7. News Lớp tin tức
8. Role Lớp danh mục phân quyền
9. Site Lớp bệnh viện
10. Slide Lớp hình ảnh
11. User Lớp tài khoản
12. UserGroup Lớp nhóm tài khoản
13. Video Lớp video

31
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.5 Biểu đồ tuần tự

3.5.1 Đăng nhập

: User :FrmDangNhap :CtrlDangNhap :CSDL

1 : YeuCauDangNhap()
2 : YeuCau()

3 : HienThiTrangDangNhap

4 : NhapTenTaiKhoanVaMatKhau()
5 : KiemTraCacTruongDuLieu()

6 : GuiThongTinTaiKhoan()
7 : TruyVanKiemTraThongTn()

8 : GuiKetQuaTruyVan

9 : KiemTraXacMinhQuyen
seq KiemTraTonTaiCuaTaiKhoan

10 : HienThiTrangTuongUngVoiQuyen

11 : OLaiTrangDangNhapVaThognBaoLoi

Hình 3-17: Biểu đồ tuần tự Đăng nhập

3.5.2 Thêm Tin tức

: NguoiVietBai :FrmQuanLyTinTuc :CtrlQuanLyTinTuc :DanhMucTin :TinTuc :QuanTriWebsite

1 : YeuCauChucNang()
2 : LayDanhMucTin()
3 : LayDanhMucTin()

5 4

6 : NhapThongTinTinTuc()
7 : DanhMaTuDong()
8 : ThemTinTuc()
9 : DuyetTinTuc()

10
11
12

Hình 3-18: Biểu đồ tuần tự Thêm tin tức

32
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.5.3 Sửa Tin tức

:FrmQuanLyTinTuc :CtrlQuanLyTinTuc :TinTuc :DanhMucTin :TongQuanTri


: NguoiVietBai

1 : ChonTinTucCanSua()
2 : LayThongTinTinTuc() 3 : LayThongTinTinTuc()

5 4

6 : LayThongTinDanhMucTin()
7 : LayThongTinDanhMucTin()

8
9
10 : YeuCauCapNhat

11 : CapNhatThongTinTinTuc()
12 : CapNhatTinTuc()
13 : CapNhatTinTuc()
14 : DuyenTinTuc()

15
16
17
18

Hình 3-19: Biểu đồ tuần tự Sửa tin tức

3.5.4 Xóa Tin tức

: NguoiVietBai :FrmQuanLyTinTuc :CtrlQuanLyTinTuc :TinTuc

1 : ChonTinTuc()

2 : XacNhanXoa

opt XacNhanXoa

3 : ChonXoa()
4 : XacNhanXoa()
5 : XoaTinTuc()

7 6
8

9 : KhongXoa()
10 : KhongXoa() <<destroy>>
11 : Huy()

Hình 3-20: Biểu đồ tuần tự Xóa tin tức

33
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.5.5 Thêm Bác sĩ

: QuanTriVien :BacSi
:FrmQuanLyBacSi :CtrlQuanLyBacSi

1 : YeuCauChucNang()

2 : YeuCauNhapThongTinBacSi

3 : NhapThongTinBacSi()
4 : DanhMaTuDong()
5 : ThemBacSi()

6
7
8

Hình 3-21: Biểu đồ tuần tự Thêm bác sĩ

3.5.6 Sửa thông tin bác sĩ

:FrmQuanLyBacSi :CtrlQuanLyBacSi :BacSi


: QuanTriVien

1 : ChonBacSi()
2 : LayThongTinBacSi()
3 : LayThongTinBacSi()

5 4
6 : YeuCauNhapThongTinMoi

7 : NhapThongTinMoi()
8 : CapNhatThongTin()
9 : CapNhatThongTin()

10
11
12

Hình 3-22: Biểu đồ tuần tự Sửa thông tin bác sĩ

34
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.5.7 Xóa bác sĩ

:CtrlQuanLyBacSi :BacSi
: QuanTriVien :FrmQuanLyBacSi

1 : ChonBacSi()
2 : LayThonTinBacSi()
3 : LayThongTinBacSi()

4
5
6 : YeuCauXacNhanXoa

opt XacNhanXoa
7 : XacNhanXoa()
8 : XacNhanXoa()
9 : XoaBacSi()

10
11
12

13 : KhongXoa()
14 : KhongXoa() <<destroy>>
15 : Huy()

Hình 3-23: Biểu đồ tuần tự Xóa bác sĩ

3.6 Thiết kế cơ sở dữ liệu của hệ thống

Sau quá trình thiết kế, em đã xác định mô hình câu trúc của website trên database
như sau:

35
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 3-24: Mô hình dữ liệu quan hệ

36
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.6.1 Bảng AuditSystem

Lưu trữ thông tin nhật ký hệ thống của người dùng

Bảng 3-1: Bảng AuditSystem

Ràng
STT Tên trường Kiểu dữ liệu Mô tả
buộc
1. id uniqueidentifier Khóa chính Mã nhật ký hệ thống

2. user_id uniqueidentifier Khóa ngoại Mã người dùng

3. action_date datetime Thời gian hoạt động

4. action_description nvarchar(500) Mô tả hành động

5. action_detail ntext Chi tiết hành động

6. active_flag int Trạng thái

3.6.2 Bảng Category

Lưu trữ thông tin danh mục tin tức

Bảng 3-2: Bảng Category

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả


1. id uniqueidentifier Khóa chính Mã danh mục tin tức

2. name_l nvarchar(250) Tên danh mục tin tức


tiếng Việt
3. name_e nvarchar(250) Tên danh mục tin tức
tiếng Anh
4. alias nvarchar(250) Tên hiệu tin tức

5. image_path nvarchar(500) Đường dẫn ảnh

6. description_l ntext Mô tả bằng tiếng Việt

7. description_e ntext Mô tả bằng tiếng Anh

37
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

8. parent_id uniqueidentifier Mã danh mục cha

9. ord int Thứ tự sắp xếp

10. created_by_user uniqueidentifier Người tại bài viết

11. lu_user_id uniqueidentifier Khóa ngoại Mã người dùng đăng


nhập gần nhất
12. created_date datetime Thời gian tạo

13. lu_updated datetime Lần sửa gần nhất

14. active_flag int Trạng thái

15. show_on_home bit Hiển thi trên trang


chủ
16. hot_category bit Tin nổi bật

17. link nvarchar(500) Đường dẫn

18. type varchar(60) Tên chủ đề

19. theme_type varchar(50) Loại chủ để

20. site_id uniqueidentifier Khóa ngoại Mã bệnh viện

21. level int Cấp menu

3.6.3 Bảng Comment

Lưu trữ thông bình luận.

Bảng 3-3: Bảng Comment

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả


1. id uniqueidentifier Khóa chính Mã bình luận

2. new_id uniqueidentifier Khóa ngoại Mã tin tức

3. user_name nvarchar(150) Khóa ngoại Tên người bình luận

38
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

4. email nvarchar(150) Email người bình luận

5. message ntext Nội dung bình luận

6. created_date datetime Thời gian tạo bình luận

7. active_flag int Trạng thái

3.6.4 Bảng Department

Lưu trữ thông tin chuyên khoa


Bảng 3-4: Bảng Department

ST
Tên trường Kiểu dữ liệu Ràng buộc Mô tả
T
1. id uniqueidentifier Khóa chính Mã chuyên khoa

2. site_id uniqueidentifier Khóa ngoại Mã bệnh viện

3. name_l nvarchar(250) Tên tiếng Việt

description_l nvarchar(500) Mô tả bằng tiếng


4.
Việt
5. detail_l ntext Chi tiết

6. image_path nvarchar(500) Đường dẫn ảnh

7. active_flag int Trạng thái

created_by_user_id uniqueidentifier Khóa ngoại Mã người dùng tạo


8.
chuyên khoa

lu_updated datetime Thời gian sửa gần


9.
nhất

lu_user_id uniqueidentifier Khóa ngoại Mã người dùng đăng


10.
nhập gần nhất
11. created_date datetime Ngày tạo

12. name_e nvarchar(250) Tên tiếng Anh

39
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

description_e nvarchar(500) Mô tả bằng tiếng


13.
Anh

detail_e ntext Chi tiết bằng tiếng


14.
Anh

ord int Vị trí sắp xếp trên


15.
trang chủ
16. link nvarchar(500) Đường dẫn

alias nvarchar(350) Tên hiệu chuyên


17.
khoa
18. background_image nvarchar(500) Ảnh nền

3.6.5 Bảng Doctor

Lưu trữ thông tin cảu bác sĩ

Bảng 3-5: Bảng Doctor

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả


1. id uniqueidentifier Khóa chính Mã bác sỹ

2. department_id uniqueidentifier Khóa ngoại Mã chuyên khoa

3. name_l nvarchar(250) Tên tiếng Việt

4. name_e nvarchar(250) Tên tiếng Anh

5. language_spoken nvarchar(150) Ngôn ngữ

quantification_l nvarchar(500) Các chứng nhận bằng


6.
tiếng Việt

quantification_e nvarchar(500) Các chứng nhận bằng


7.
tiếng Anh

experiences_l nvarchar(500) Kinh nghiệm bằng tiếng


8.
Việt
9. experiences_e nvarchar(500) Kinh nghiệm bằng tiếng

40
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Anh

specially_interests_l nvarchar(500) Lĩnh vực chuyên sâu


10.
bằng tiếng Việt

specially_interests_e nvarchar(500) Lĩnh vực chuyên sâu


11.
bằng tiếng Anh
12. image_path nvarchar(500) Đường dẫn ảnh

13. gender int Giới tính

timetable_l ntext Thời gian làm việc bằng


14.
tiếng Việt

timetable_e ntext Thời gian làm việc bằng


15.
tiếng Anh
16. active_flag int Trạng thái

show_on_home bit Hiển thị trên trang chủ


17.
không
18. ord int Thứ tự sắp xếp

is_partner bit Là bác sỹ cộng tác


19.
không
20. created_date datetime Ngày tạo

3.6.6 Bảng Document

Lưu trữ thông tin văn bản của bệnh viện

Bảng 3-6: Bảng Document

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả


1. id uniqueidentifier Khóa chính Mã tài liệu

category_id uniqueidentifier Khóa ngoại Mã danh mục tin


2.
tức

41
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3. type int Loại tài liệu


4. effective_from_date datetime Ngày có hiệu lực
5. effective_to_date datetime Ngày hết hiệu lực
6. document_name nvarchar(500) Tên tài liệu
7. document_code nvarchar(100) Số quyết đinh
8. document_date datetime Ngày quyết định
9. attach_file_path varchar(500) Đường dẫn file
10. bin_location varchar(500) /file
11. description ntext Mô tả
12. owner nvarchar(500) Đơn vị sở hữu
13. approved_date datetime Ngày phê duyệt
14. approved_by nvarchar(250) Người phê duyệt
15. created_by_user_id uniqueidentifier Khóa ngoại Người tạo
16. created_date_time datetime Thời gian tạo

lu_user_id uniqueidentifier Khóa ngoại Mã người dùng


17.
đăng nhập gần nhất
18. lu_updated datetime Ngày sửa gần nhất
19. active_flag int Trạng thái
20. site_id uniqueidentifier Khóa ngoại Mã bệnh viện

3.6.7 Bảng News

Lưu trữ thông tin tin tức của bệnh viện.

42
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Bảng 3-7: Bảng News

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả


1. id uniqueidentifier Khóa chính Mã tin tức
2. title_l nvarchar(250) Tiêu đề bằng tiếng Việt
3. title_e nvarchar(250) Tiêu đề bằng tiếng Anh
4. alias nvarchar(250) Tên hiệu tin tức
5. image_path nvarchar(500) Đường dẫn ảnh
6. detail_l ntext Chi tiết bằng tiếng Việt
7. detail_e ntext Chi tiết bằng tiếng Anh
8. description_l ntext Mô tả bằng tiếng Việt
9. description_e ntext Mô tả bằng tiếng Anh
10. category_id uniqueidentifier Khóa ngoại Mã danh mục tin tức
11. ord int Vị trí sắp xếp tin

created_by_user_i uniqueidentifier Khóa ngoại Mã người tạo


12.
d
13. created_date datetime Ngày tạo
14. lu_updated datetime Lần sửa gần nhất
15. active_flag int Trạng thái
16. hot_new bit Tin nổi bật không

show_on_home bit Hiển thị trên trang chủ


17.
không
18. meta_description ntext Thẻ mô tả
19. meta_keyword ntext Thẻ từ khóa

43
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

20. views int Số lượt xem


21. copyright nvarchar(500) Nguồn tin
22. site_id uniqueidentifier Khóa ngoại Mã bệnh viện
23. type varchar(50) Loại tin tức
24. link nvarchar(500) Đường dẫn tin tức
25. department_id uniqueidentifier Khóa ngoại Mã chuyên khoa

3.6.8 Bảng Role

Lưu trữ thông tin phân quyền người dùng

Bảng 3-8: Bảng Role

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả


1 id Nvarchar(50) Khóa chính Mã phân quyền
2 name Nvarchar(100) Tên quyền

3.6.9 Bảng Site

Lưu trữ thông tin bệnh viện

Bảng 3-9: Bảng Site

ST
Tên trường Kiểu dữ liệu Ràng buộc Mô tả
T
1. id uniqueidentifier Khóa chính Mã bệnh viện
2. name_company_l nvarchar(250) Tên tiếng Việt
3. name_company_e nvarchar(250) Tên tiếng Anh
4. favicon nvarchar(500)
5. address_l nvarchar(500) Địa chỉ bằng tiếng

44
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Việt

address_e nvarchar(500) Địa chỉ bằng tiếng


6.
Anh
7. map nvarchar(500) Bản đồ
8. phone nvarchar(50) Số điện thoại bàn
9. fax nvarchar(50) Số fax
10. email nvarchar(50) Đại chỉ email
11. hotline nvarchar(50) Đường dây nong
12. emergency_number nvarchar(50) Số cấp cứu
13. active_flag int Trạng thái
14. meta_description ntext Thẻ mô tả
15. meta_keyword ntext Thẻ từ khóa
16. ord int Vị trí sắp xếp
17. created_date datetime Ngày tạo

3.6.10 Bảng Slide

Lưu trữ thông tin hình ảnh silde

Bảng 3-10: Bảng Slide

ST Tên trường Kiểu dữ liệu Ràng buộc Mô tả


T
1. id uniqueidentifier Khóa chính Mã hình ảnh
2. type varchar(50) Loại hình ảnh
3. title_l nvarchar(250) Tiêu đề tiếng Việt
4. title_e nvarchar(250) Tiêu đề tiếng Anh

45
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

5. description_l nvarchar(250) Mô tả bằng tiếng Việt


6. description_e nvarchar(250) Mô tả bằng tiếng Anh
7. image_path nvarchar(500) Đường dẫn ảnh
8. link nvarchar(150) link
9. ord int Vị trí sắp xếp
10. active_flag int Trạng thái
11. site_id uniqueidentifier Khóa ngoại Mã bệnh viện
12. created_date datetime Ngày tạo

3.6.11 Bảng User

Lưu trữ thông tin tài khoản người dùng

Bảng 3-11: Bảng User

ST
Tên trường Kiểu dữ liệu Ràng buộc Mô tả
T
1. id uniqueidentifier Khóa chính Mã quản trị viên
2. full_name nvarchar(150) Họ tên quản trị viên
3. user_name nvarchar(250) Tên đăng nhập
4. password varchar(32) Mật khẩu
5. email nvarchar(250) Email
6. address nvarchar(250) Địa chỉ
7. image_path nvarchar(500) Đường dẫn ảnh
8. gender int Giới tính
9. created_by_user_id uniqueidentifier Khóa ngoại Mã người tạo

46
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

10. created_date datetime Ngày tạo


11. active_flag int Trạng thái
12. group_id varchar(20) Nhóm quyền

3.6.12 Bảng UserGroup

Lưu thông tin nhóm tài khoản

Bảng 3-12: Bảng UserGroup

ST
Tên trường Kiểu dữ liệu Ràng buộc Mô tả
T
1. id varchar(20) Khóa chính Mã nhóm tài khoản
2. full_name nvarchar(150) Tên nhóm tài khoản

3.6.13 Bảng Credential

Lưu thông tin nhóm tài khoản

Bảng 3-13: Bảng UserGroup

ST
Tên trường Kiểu dữ liệu Ràng buộc Mô tả
T

1 user_group_id varchar(20) Khóa ngoại Mã nhóm tài khoản

2 role_id nvarchar(150) Khóa ngoại Mã phân quyền

3.6.14 Bảng Video

Lưu thông tin video

Bảng 3-14: Bảng Video

ST Tên trường Kiểu dữ liệu Ràng buộc Mô tả


T
1. video_id uniqueidentifier Khóa chính Mã video

47
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

2. video_title_l nvarchar(250) Tiêu đề tiếng Việt


3. video_description_l nvarchar(500) Mô tả bằng tiếng Việt
4. video_title_e nvarchar(250) Tiêu đề tiếng Anh
5. video_description_e nvarchar(500) Mô tả bằng tiếng Anh
6. video_thumbnail nvarchar(500) Đường dẫn đến video
7. video_link nvarchar(500) Link video
8. created_date datetime Ngày tạo
9. created_by_user uniqueidentifier Khóa ngoại Mã người tạo
10. ord int Vị trí sắp xếp
11. status int Trạng thái
12. site_id uniqueidentifier Khóa ngoại Mã bệnh viện

48
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.7 Thiết kế đặc tả giao diện

3.7.1 Một số giao diện chính của hệ thống

Hình 3-25: Giao diện trang chủ trên website

- Giao diện trang chủ người dùng bao gồm địa chỉ, số điện thoại cấp cứu,
đường dây nóng, facebook, logo của bệnh viện, menu chính, slide quảng bá hình
ảnh cho bệnh viện; ba box hình chữ nhật về dịch vụ bảo hiểm, tra cứu kết quả hình
ảnh, thời gian làm việc; box chức năng tìm kiếm, tra cứu dịch vụ, box lý do chọn
chúng tôi; cơ sở vật chất; video; đội ngũ bác sĩ; dịch vụ nổi bật; tin tức nổi bật; đăng
ký dịch vụ.

49
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 3-26: Giao diện cơ sở vật chất, video, đội ngũ bác sĩ

50
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

- Giao diện đội ngũ bác sỹ gồm hai tab là Bác sĩ nội viện và Bác sĩ ngoại viện.
Mỗi tab là các box hình ảnh và thông tin tên bác sĩ, chuyên khoa chính bác sĩ đang
làm việc. Muốn xem chi tiết các thông tin của bác sĩ nào thì click vào hình ảnh đó

Hình 3-27: Giao diện thông tin chi tiết bác sĩ

- Giao diện chi tiết bác sỹ gồm tên, chức danh, chuyên khoa, học vẫn, các hoạt
động chuyên ngành và các đề tài nghiên cứu của bác sĩ

51
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 3-28: Giao diện chi tiết tin tức

- Giao diện chi tiết một bài đăng tin tức bao gồm: tiêu đề, ngày đăng, số lượt
xem, nội dung tin tức, bình luận của người đọc, các tin tức mới

52
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 3-29: Giao diện trang liên hệ và chân trang

- Giao diện trang liên hệ bao gồm bản đồ; họ tên, số điện thoại, email, nội
dung phản hồi của khách hàng. Chân trang bao gồm logo, tên bệnh viện, địa chỉ, số
điện thoại, số fax, email, facebook, youtobe của bệnh viện, và bản đồ chỉ đường đến
bệnh viện.

53
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

3.6.2 Một số giao diện chính của CMS

Hình 3-30: Giao diện đăng nhập tài khoản trên Website

Hình 3-31: Giao diện trang chủ trên CMS

54
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 3-32: Giao diện trang hiển thị danh mục tin tức trên Website

55
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 3-33: Giao diện danh sách tin đã đăng

56
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 3-34: Giao diện thêm mới tin tức

57
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 3-35: Giao diện trang chỉnh sửa tin tức

58
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

Hình 3-36: Giao diện trang Nhật ký hệ thống

59
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

CHƯƠNG 4: KẾT LUẬN

4.1 Kết quả đạt được của đề tài

Sau thời gian thiết kế và xây dựng, em đã đạt được các kết quả sau:
 Tìm hiểu, nắm bắt được nghiệp vụ của đề tài để xây dựng website với
các chức năng cần thiết đề ra

 Về các chức năng của hệ thống:

- Xây dựng được website cho Bệnh viện Đa khoa Hưng Hà trên nền
web gồm các chức năng cơ bản đã hoàn thành sau:
+ Người dùng có thể xem thông tin bệnh viện, các chuyên khoa,
bác sĩ, dịch vụ của bệnh viện cùng các tin tức trên trang chủ của bệnh
viện
+ Xây dựng được trang quản trị với các chức năng quản lý danh
mục tin tức, quản lý tin tức, quản lý hình ảnh, quản lý video, quản lý
thông tin bệnh viện, quản lý thông tin chuyên khoa, quản lý thông tin
bác sĩ, quản lý bình luận với các thao tác như thêm, sửa, xóa, tìm kiếm
+ Xây dựng được tính năng bảo mật cao có khả năng phân
quyền đến từng chức năng
+ Xây dựng được tính năng xem nhật ký hệ thống
 Về mặt giao diện:
- Giao diện thân thiện, dễ sử dụng.
- Bố cục giao diện WebSite cân đối, hài hòa, hiển thị đủ nội dung cần
thiết
 Màu sắc hài hòa, trang nhã Triển khai sản phẩm trên môi trường
Internet thực tế

4.2 Hạn chế của đề tài

Hệ thống mới chỉ dừng lại ở các chức năng cơ bản, chưa có nhiều cơ chế bảo
mật API.

60
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

4.3 Hướng phát triển của đề tài

Trong thời gian nghiên cứu và thực hiện đề tài, tác giả đã vạch ra được hướng
phát triển tiếp theo của đề tài như sau:

 Bổ sung chức năng đạt lịch khám trực tiếp trên website

 Tối ưu hóa giao diện và hiệu năng nhằm tăng tốc độ của ứng dụng

 Hỗ trợ trên nền tảng android

61
Thiết kế và xây dựng website cho Bệnh viện Đa khoa Hưng Hà

TÀI LIỆU THAM KHẢO

[1] Adam Freeman, Pro ASP.NET MVC 5. American: Apress, 2013.

[2] Nguyễn Văn Quyết, Giáo trình Công nghệ Web và ứng dụng. Hưng Yên, Việt
Nam: Khoa Công nghệ Thông tin - UTEHY, 2010.

62

You might also like