Xây dựng hệ thống quản lý việc ủng hộ và phân bổ hàng cứu trợ lũ lụt cho huyện Hòa Văng – Đà NẵngMỞ ĐẦU Hằng năm mỗi khi mùa mưa bão đến khúc ruột miền Trung, có hàng ngàn ngôinhà bị đổ
Trang 1ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
XÂY DỰNG HỆ THỐNG QUẢN LÝ VIỆC ỦNG HỘ
VÀ PHÂN BỔ HÀNG CỨU TRỢ LŨ LỤT CHO
HUYỆN HÒA VANG – ĐÀ NẴNG
Sinh viên thực hiện :Nguyễn Kim An
Trang 2Đà Nẵng, tháng/2022
Trang 3ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
XÂY DỰNG HỆ THỐNG QUẢN LÝ VIỆC ỦNG HỘ
VÀ PHÂN BỔ HÀNG CỨU TRỢ LŨ LỤT CHO
HUYỆN HÒA VANG – ĐÀ NẴNG
Giảng viên hướng dẫn duyệt
Đà Nẵng, tháng/2022
Trang 4i
Trang 5LỜI NÓI ĐẦU
Lời đầu tiên, em xin gửi lời cảm ơn chân thành đến quý thầy cô đã giúp đỡ chúng
em thực hiện đề tài này Đặc biệt là TS Hoàng Thị Mỹ Lệ đã tận tình giúp đỡ em trong suốt quá trình thực hiện đề tài tốt nghiệp này.
Đồng thời, em cũng xin cảm ơn quý thầy cô thuộc ngành Công nghệ thông tin khoa Công nghệ số, trường Đại học Sư phạm Kỹ thuật -Đại học Đà Nẵng đã truyền đạt những kiến thức cần thiết và những kinh nghiệm quý báu cho chúng em trong suốt thời gian 4 năm trên giảng đường để em có thể thực hiện tốt đề tài này Đặc biệt, em xin gởi lời cảm ơn chân thành tới TS Hoàng Thị Mỹ Lệ, cùng ThS Nguyễn Thị Hà Quyên - giáo viên chủ nhiệm lớp 18T3 đã giúp đỡ em rất nhiều trong quá trình học tập và công việc.
Trong quá trình thực hiện đề tài, do kiến thức và thời gian còn hạn chế nên không thể tránh khỏi những sai sót Vì vậy em mong quý thầy, cô thông cảm và góp ý để
em có thể hoàn thiện đề tài Và những lời góp ý đó có thể giúp em có thể tránh được những sai lầm sau này Em xin chân thành cảm ơn!
ii
Trang 6CAM ĐOAN
Em xin cam đoan:
1 Những nội dung trong luận văn này do em thực hiện dưới sự hướng dẫn của
Trang 7MỤC LỤC
MỤC LỤC iv
DANH MỤC BẢNG BIỂU viii
DANH MỤC HÌNH VẼ ix
DANH MỤC CHỮ VIẾT TẮT TIẾNG VIỆT Lỗi! Thẻ đánh dấu không được xác định DANH MỤC CHỮ VIẾT TẮT TIẾNG ANH xi
MỞ ĐẦU 1
1 Mục tiêu đề tài 1
2 Đối tượng nghiên cứu và phạm vi nghiên cứu 2
a Đối tượng nghiên cứu 2
b Phạm vi nghiên cứu 2
3 Phương pháp nghiên cứu 2
4 Giải pháp công nghệ 2
5 Cấu trúc đồ án 2
Chương 1 CƠ SỞ LÝ THUYẾT 3
1.1 Ngôn ngữ xây dựng Website 3
1.1.1 HTML 3
1.1.2 CSS 3
1.1.3 Boostraps 4
1.1.4 C# 4
1.1.5 ASP Net 5
1.2 Hệ quản trị cơ sở dữ liệu SQL Server 5
1.2.1 SQL Server là gì 5
iv
Trang 81.2.2 Mục đích sử dụng SQL Server 5
Chương 2 PHÂN TÍCH THIẾT KẾ HỆ THỐNG 6
2.1 Tác nhân hệ thống 6
2.2 Đặc tả yêu cầu phần mềm 6
2.2.1 Quản trị viên 6
2.2.2 Cán bộ huyện 6
2.2.3 Cán bộ xã/ phường 6
2.2.4 Mạnh thường quân 7
2.3 Sơ đồ Use-case 7
2.4 Sơ đồ hoạt động 8
2.4.1 Đăng ký ủng hộ 8
2.4.2 Cập nhật danh sách ủng hộ 9
2.4.3 Tạo đợt cứu trợ 10
2.4.4 Cập nhật danh sách cứu trợ 10
2.5 Kịch bản cho Use-case 11
2.5.1 Đăng ký ủng hộ 11
2.5.2 Cập nhật danh sách ủng hộ 12
2.5.3 Tạo đợt cứu trợ 13
2.5.4 Cập nhật danh sách cứu trợ 13
2.6 Sơ đồ ERD 15
2.7 Các bảng dữ liệu 16
2.7.1.1 Bảng Danh mục hàng 16
2.7.1.2 Bảng Hàng 17
2.7.1.3 Bảng Quyền 17
2.7.1.4 Bảng Người dùng 18
v
Trang 92.7.1.5 Bảng Ủng hộ 19
2.7.1.6 Bảng Chi tiết ủng hộ 20
2.7.1.7 Bảng Xã 21
2.7.1.8 Bảng Hoàn cảnh gia đình 21
2.7.1.9 Bảng Mức độ thiệt hại 22
2.7.1.10 Bảng Đợt cứu trợ 23
2.7.1.11 Bảng Chi tiết cứu trợ 23
2.7.1.12 Bảng Danh sách cứu trợ 24
2.7.1.13 Bảng Hộ gia đình 25
Chương 3 XÂY DỰNG CHƯƠNG TRÌNH 26
3.1 Công cụ xây dựng chương trình 26
3.2 Giao diện chương trình 26
3.2.1 Giao diện trang quản lí tài khoản 26
3.2.2 Giao diện trang quản lí hộ gia đình 27
3.2.3 Giao diện trang quản lí danh mục hàng 27
3.2.4 Giao diện trang quản lí hàng 28
3.2.5 Giao diện trang quản lí mức độ thiệt hại 28
3.2.6 Giao diện trang quản lí hoàn cảnh gia đình 29
3.2.7 Giao diện trang quản lí bài viết 29
3.2.8 Giao diện trang quản lí đợt cứu trợ 30
3.2.9 Giao diện trang quản lí ủng hộ 30
3.2.10 Giao diện trang quản lí cứu trợ 31
3.2.11 Giao diện trang tin tức 32
3.2.12 Giao diện trang đăng kí ủng hộ 33
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 35
vi
Trang 103.3 Kết luận 35
3.4 Hướng phát triển 35
TÀI LIỆU THAM KHẢO 36
TÀI LIỆU THAM KHẢO 37
vii
Trang 11DANH MỤC BẢNG BIỂU
Bảng 2.1: Scenario đăng ký ủng hộ 11
Bảng 2.2: Scenario cập nhật danh sách ủng hộ 12
Bảng 2.3: Scenario cập nhật danh sách ủng hộ 13
Bảng 2.4: Scenario cập nhật danh sách cứu trợ 13
Bảng 2.5: Danh mục hàng (dbo.Category) 16
Bảng 2.6: Hàng (dbo.Goods) 17
Bảng 2.7: Quyền (dbo.Role) 17
Bảng 2.8: Người dùng (dbo.Users) 18
Bảng 2.9: Ủng hộ (dbo.Donations) 19
Bảng 2.10: Chi tiết ủng hộ (dbo.DonationDetails) 20
Bảng 2.11: Xã (dbo.Commues) 21
Bảng 2.12: Hoàn cảnh gia đình (dbo.Policy) 21
Bảng 2.13: Mức độ thiệt hại (dbo.Damages) 22
Bảng 2.14: Đợt cứu trợ (dbo.Succor) 23
Bảng 2.15: Chi tiết cứu trợ (dbo.SuccorDefault) 23
Bảng 2.16: Danh sách cứu trợ (dbo.SuccorHistory) 24
Bảng 2.17: Hộ gia đình (dbo.Family) 25
viii
Trang 12DANH MỤC HÌNH VẼ
Hình 2.1: Sơ đồ Use-case 7
Hình 2.2: Sơ đồ hoạt động đăng ký ủng hộ 8
Hình 2.3: Sơ đồ hoạt động cập nhật danh sách ủng hộ 9
Hình 2.4: Sơ đồ hoạt động tạo đợt cứu trợ 10
Hình 2.5: Sơ đồ hoạt động tạo đợt cứu trợ 11
Hình 2.6: Sơ đồ ERD 15
Hình 2.7: Bảng Category 16
Hình 2.8: Bảng Goods 17
Hình 2.9: Bảng Roles 18
Hình 2.10: Bảng Users 19
Hình 2.11: Bảng Donations 20
Hình 2.12: Bảng DonationDetails 20
Hình 2.13: Bảng Communes 21
Hình 2.14: Bảng Policy 22
Hình 2.15: Bảng Damages 22
Hình 2.16: Bảng Succor 23
Hình 2.17: Bảng SuccorDefault 24
Hình 2.18: Bảng SuccorHistory 24
Hình 2.19: Bảng Family 25
Hình 3.1: Giao diện trang quản lí tài khoản 26
Hình 3.2: Giao diện trang quản lí hộ gia đình 27
Hình 3.3: Giao diện trang quản lí danh mục 27
Hình 3.4: Giao diện trang quản lí hàng 28
Hình 3.5: Giao diện trang quản lí mức độ thiệt hại 28
Hình 3.6: Giao diện trang quản lí hoàn cảnh gia đình 29
Hình 3.7: Giao diện trang quản lí hoàn cảnh gia đình 29
Hình 3.8: Giao diện trang quản lí đợt cứu trợ 30
Hình 3.9: Giao diện trang quản lí ủng hộ 30
Hình 3.10: Giao diện trang quản lí cứu trợ 31
ix
Trang 13Hình 3.11: Giao diện trang tin tức 32Hình 3.12: Giao diện trang đăng kí ủng hộ 33
x
Trang 14DANH MỤC CHỮ VIẾT TẮT TIẾNG ANH
1 HTML Hyper Text Markup
Language Ngôn ngữ đánh dấu siêu văn bản
2 CSS Cascading Style Sheets
Trang 15Xây dựng hệ thống quản lý việc ủng hộ và phân bổ hàng cứu trợ lũ lụt cho huyện Hòa Văng – Đà Nẵng
MỞ ĐẦU
Hằng năm mỗi khi mùa mưa bão đến khúc ruột miền Trung, có hàng ngàn ngôinhà bị đổ sập nhiều ha lúa hoa màu và cây công nghiệp bị mất trắng, trường học, bệnhviện và các công trình công cộng bị hư hỏng, ngập lụt, huyết mạch giao thông bị chiacắt, … nhiều gia đình, cụ già, em nhỏ lâm vào cảnh khó khăn cùng cực, mất ngườithân, thiếu lương thực, thiếu nước và không còn mái ấm để che mưa che nắng Mưa lũkhông chỉ gây thiệt hại nặng nề về tài sản mà còn gây những mất mát đau thương chonhững người dân
Nhằm xoa dịu đi những vết thuơng mà thiên tai đã gây ra cho những người dânnơi đây đã có rất nhiều cá nhân, tổ chức, nghệ sĩ, những người nổi tiếng đã đứng rakêu gọi mọi người cùng chung tay hỗ trợ những người dân bị ảnh hưởng bởi lũ lụt.Tuy nhiên những hoạt động kêu gọi ủng hộ và phân bổ cho người dân này đều làphong trào tự phát và không có một tổ chức nào giám sát việc này Vì vậy đã có nhiều
cá nhân lợi dụng việc này mà trục lợi cho cá nhân Những người ủng hộ, mạnh thườngquân muốn ủng hộ lũ lụt cũng phải tìm kiếm một nơi mà họ có thể đặt lòng tin
Để tiếp cận và góp phần đẩy mạnh sự minh bạch trong việc kêu gọi ủng hộ lũ lụt,
em đã tìm hiểu và xây dựng webiste “Quản lý việc ủng hộ và phân bố hàng cứu trợ lũ lụtcho huyện Hòa Vang – Đà Nẵng”
1 Mục tiêu đề tài
Xây dựng một Website quản lý việc ủng hộ và phân bố hàng cứu trợ lũ lụt chohuyện Hòa Vang – Đà Nẵng giúp việc ủng hộ của người dân được rõ ràng và minhbạch, quản lý kho hàng một cách hợp lý và truyền tải thông tin của các đợt cứu trợ đếnngười dân và chính quyền Website sẽ bao gồm các chức năng nhằm mục đích:
- Giúp việc kiểm tra và thống kê hàng cứu trợ rõ ràng và chính xác số lượng, theocác đợt cứu trợ, đợt kêu gọi ủng hộ
- Cho phép các nhà hảo tâm xem và tìm kiếm các thông tin như: các đợt kêu gọiủng hộ, các đợt phân bổ cứu trợ và lịch sử ủng hộ
- Cho phép nhân viên kho lập các phiếu nhập và xuất hàng cứu trợ
- Cho phép người ủng hộ xem thông tin về các đợt cứu trợ, danh sách nhữngngười ủng hộ và danh sách những người được cứu trợ
- Cho phép cán bộ phường xã cập nhật danh sách những người sẽ được cứu trợ
Trang 16Xây dựng hệ thống quản lý việc ủng hộ và phân bổ hàng cứu trợ lũ lụt cho huyện Hòa Văng – Đà Nẵng
- Cho phép cán bộ huyện tạo bài viết về các đợt cứu trợ
2 Đối tượng nghiên cứu và phạm vi nghiên cứu
a Đối tượng nghiên cứu
- Hàng cứu trợ lũ lụt
- Người ủng hộ
b Phạm vi nghiên cứu
Áp dụng cho huyện Hòa Vang – Đà Nẵng
3 Phương pháp nghiên cứu
- Nghiên cứu lý thuyết thu thập thông tin qua internet, tài liệu, sách để tìm đượccác cơ sở lý thuyết liên quan đến vấn đề mình nghiên cứu
- Nghiên cứu quy trình ủng hộ và phân bổ hàng cứu trợ lũ lụt thực tế
- Triển khai thực nghiệm xây dựng website
4 Giải pháp công nghệ
- Ngôn ngữ lập trình: C#, NET Framework
- Hệ quản trị cơ sở dữ liệu : SQL Server
- Công cụ hỗ trợ: Visual Studio 2019, Microsoft SQL Server Management Tools18
5 Cấu trúc đồ án
Bài báo cáo đồ án bao gồm các phần
Mở đầu
Chương 1: Cơ sở lý thuyết
Chương 2: Phân tích thiết kế hệ thống
Chương 3: Xây dựng chương trình
Kết luận và hướng phát triển
Trang 17Xây dựng hệ thống quản lý việc ủng hộ và phân bổ hàng cứu trợ lũ lụt cho huyện Hòa Văng – Đà Nẵng
Chương 1
CƠ SỞ LÝ THUYẾT1.1 Ngôn ngữ xây dựng Website
1.1.1 HTML
Hình 1.1 Ngôn ngữ đánh dấu siêu văn bản HTML
HTML là một ngôn ngữ đánh dấu được thiết kế ra để tạo nên các trang web trênWorld Wide Web Cùng với CSS và JavaScript, HTML là một trong những ngôn ngữquan trọng trong lĩnh vực thiết kế website
Trang 18Xây dựng hệ thống quản lý việc ủng hộ và phân bổ hàng cứu trợ lũ lụt cho huyện Hòa Văng – Đà Nẵng
1.1.3 Boostraps
Hình 1.3 Framework Bootstrap
Bootstrap: là một framework bao gồm các HTML, CSS và JavaScript templatedùng để phát triển website chuẩn responsive Bootstrap cho phép quá trình thiết kếwebsite diễn ra nhanh chóng và dễ dàng hơn dựa trên những thành tố cơ bản sẵn cónhư typography, forms, buttons, tables, grids, navigation, image carousels…
1.1.4 C#
C# (hay C sharp) là một ngôn ngữ lập trình đơn giản, được phát triển bởi đội ngũ
kỹ sư của Microsoft vào năm 2000 C# là ngôn ngữ lập trình hiện đại, hướng đối tượng
và được xây dựng trên nền tảng của hai ngôn ngữ mạnh nhất là C++ và Java
Hình 1.4 Ngôn ngữ C#
Trang 19Xây dựng hệ thống quản lý việc ủng hộ và phân bổ hàng cứu trợ lũ lụt cho huyện Hòa Văng – Đà Nẵng
1.1.5 ASP Net
Hình 1.5 Framework ASP.NET MVC
ASP.NET MVC là một framework tuyệt vời hỗ trợ pattern MVC cho ASP.NET.MVC là cụm từ viết tắt của Model-View-Controller, nó phân chia pattern của ứngdụng thành 3 phần - model, controller và view
- Model giúp lưu trữ dữ liệu của ứng dụng và trạng thái của nó Nó là một cơ
sở dữ liệu hoặc cũng có thể chỉ là một tập tin XML
- View được coi là một giao diện người dùng được sử dụng bởi khách truycập trang web của bạn để nhìn thấy các dữ liệu
- Controller chịu trách nhiệm xử lý các tương tác của người dùng với trangweb
1.2 Hệ quản trị cơ sở dữ liệu SQL Server
1.2.1 SQL Server là gì
- Phần mềm được Microsoft phát triển dựa trên RDBMS
- Cũng là một ORDBMS (Hệ quản trị cơ sở dữ liệu quan hệ đối tượng)
- Một nền tảng độc lập
- Phần mềm sử dụng cả giao diện dòng lệnh và giao diện GUI
- Hỗ trợ ngôn ngữ SQL (trước đây là SEQUEL – ngôn ngữ truy vấn tiếng anh cócấu trúc) – vốn là sản phẩm của IBM
1.2.2 Mục đích sử dụng SQL Server
- Tạo cơ sở dữ liệu
- Duy trì cơ sở dữ liệu
- Phân tích dững liệu bằng SSAS – SQL Server Analysis Services
- Tạo báo cáo bằng SSRS – SQL Server Reporting Services
Trang 20Xây dựng hệ thống quản lý việc ủng hộ và phân bổ hàng cứu trợ lũ lụt cho huyện Hòa Văng – Đà Nẵng
- Thực hiện quá trình ETL (Extract – Transform – Load ) bằng SSIS – SQL ServerIntegration Services
Chương 2 PHÂN TÍCH THIẾT KẾ HỆ THỐNG2.1 Tác nhân hệ thống
- Quản trị viên
- Cập nhật thông tin các nhân
- Quản lý tài khoản
- Cập nhật thông tin cá nhân
- Xem danh sách đăng kí ủng hộ
- Cập nhật danh sách đăng kí ủng hộ
- Cập nhật đợt cứu trợ
- Xem danh sách cứu trợ
- Cập nhật bài viết kêu gọi hỗ trợ
2.2.3 Cán bộ xã/ phường
- Đăng nhập
- Cập nhật thông tin cá nhân
Trang 21Xây dựng hệ thống quản lý việc ủng hộ và phân bổ hàng cứu trợ lũ lụt cho huyện Hòa Văng – Đà Nẵng
- Xem danh sách cứu trợ
- Xem danh sách cứu trợ
- Đăng ký tài khoản
Trang 22Xây dựng hệ thống quản lý việc ủng hộ và phân bổ hàng cứu trợ lũ lụt cho huyện Hòa Văng – Đà Nẵng
2.4 Sơ đồ hoạt động
2.4.1 Đăng ký ủng hộ
Hình 2.4.1.1.1.1: Sơ đồ hoạt động đăng ký ủng hộ
Trang 23Xây dựng hệ thống quản lý việc ủng hộ và phân bổ hàng cứu trợ lũ lụt cho huyện Hòa Văng – Đà Nẵng
2.4.2 Cập nhật danh sách ủng hộ
Hình 2.4.2.1.1.1: Sơ đồ hoạt động cập nhật danh sách ủng hộ
Trang 24Xây dựng hệ thống quản lý việc ủng hộ và phân bổ hàng cứu trợ lũ lụt cho huyện Hòa Văng – Đà Nẵng
2.4.3 Tạo đợt cứu trợ
Hình 2.4.3.1.1.1: Sơ đồ hoạt động tạo đợt cứu trợ
Trang 25Xây dựng hệ thống quản lý việc ủng hộ và phân bổ hàng cứu trợ lũ lụt cho huyện Hòa Văng – Đà Nẵng
2.4.4 Cập nhật danh sách cứu trợ
Trang 26Xây dựng hệ thống quản lý việc ủng hộ và phân bổ hàng cứu trợ lũ lụt cho huyện Hòa Văng – Đà Nẵng
Hình 2.4.4.1.1.1: Sơ đồ hoạt động tạo đợt cứu trợ
2.5 Kịch bản cho Use-case
2.5.1 Đăng ký ủng hộ
Bảng 2.5.1.1.1.1.1: Scenario đăng ký ủng hộ
Tên Usecase Đăng ký ủng hộ
Mô tả Mạnh thường quân muốn đăng ký ủng hộ lũ lụt
Actors Mạnh thường quân
Đầu vào Mạnh thường quân đã đăng nhập thành công hệ thống
Thông tin cá nhân, tổ chức ủng hộDanh sách hàng cứu trợ và số lượng đăng kí
Đầu ra Đăng kí thành công
Các bước thực
hiện
1 Actor chọn đăng ký ủng hộ
2 Actor nhập thông tin người ủng hộ
3 Actor chọn loại hàng cứu trợ
4 Actor nhập số lượng
5 Actor nhấn nút “Đăng kí”
6 Đăng kí thành công – Kết thúc Usecase
Tên Usecase Cập nhật danh sách ủng hộ
Mô tả Cán bộ huyện muốn cập nhật danh sách ủng hộ khi nhận được
hàng cứu trợ gửi đến
Đầu vào Thông tin người ủng hộ
Actor đã đăng nhập thành công hệ thống
Đầu ra Cập nhật thành công
Trang 27Xây dựng hệ thống quản lý việc ủng hộ và phân bổ hàng cứu trợ lũ lụt cho huyện Hòa Văng – Đà Nẵng
Các bước thực
hiện
1 Actor chọn quản lý danh sách ủng hộ
2 Actor tìm kiếm theo thông tin của người ủng hộ
Tên Usecase Tạo đợt cứu trợ
Mô tả Cán bộ huyện muốn tạo đợt cứu trợ cho người dân
Đầu vào Danh sách gia đình được nhận hỗ trợ
Actor đã đăng nhập thành công hệ thống
Đầu ra Tạo đợt cứu trợ thành công
Các bước thực
hiện
1 Actor chọn quản lý đợt cứu trợ
2 Actor chọn thêm đợt cứu trợ
3 Actor nhập thông tin đợt cứu trợ
4 Actor nhấn nút thêm đợt cứu trợ
5 Actor chọn chi tiết đợt cứu trợ
6 Actor chọn loại hàng cứu trợ và nhập số lượng phân bổ
7 Actor nhấn nút Lưu
8 Actor chọn quản lý danh sách cứu trợ -> chọn thêm
9 Actor chọn đợt cứu trợ và hộ gia đình được phân bổ
Trang 28Xây dựng hệ thống quản lý việc ủng hộ và phân bổ hàng cứu trợ lũ lụt cho huyện Hòa Văng – Đà Nẵng
hợp động
ngoại lệ
2.5.4 Cập nhật danh sách cứu trợ
Bảng 2.5.4.1.1.1.1: Scenario cập nhật danh sách cứu trợ
Tên Usecase Cập nhật danh sách ủng hộ
Mô tả Cán bộ xã muốn cập nhật danh sách cứu trợ sau khi đã phân
bổ cho người dân
Đầu vào Danh sách đã phân bổ
Actor đã đăng nhập thành công hệ thống
Đầu ra Cập nhật thành công
Các bước thực
hiện
1 Actor chọn quản lý danh sách cứu trợ
2 Actor tìm kiếm theo thông tin đợt cứu trợ