Mục tiêu:• Lưu trữ và cập nhật đầy đủ thông tin của trẻ mồ côi, nhân viên, người nhận nuôi, người gửi trẻ và mạnh thường quân.. Bộ phận Quản lý: • Đăng nhập • Đăng xuất • Cấp tài khoản c
Trang 1ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
ĐỀ TÀI:
XÂY DỰNG HỆ THỐNG QUẢN LÝ TRUNG TÂM BẢO TRỢ XÃ
HỘI (TRẠI TRẺ MỒ CÔI) Môn học : Thực tập chuyên môn thiết kế cơ sở dữ liệu
2 TS Hoàng Thị Mỹ Lệ
Nhóm : 26
Thành viên :Phan Thị Hoài Anh – 2050531200106
Đà Nẵng, tháng 10 năm 2022
Trang 2MỤC LỤC
TÓM TẮT 5
LỜI MỞ ĐẦU 6
I Mục tiêu: 7
II Tác nhân: 7
1 Bộ phận Quản lý 7
2 Người gửi trẻ 7
3 Người nhận nuôi 7
4 Trẻ trong trại mồ côi 7
III Chức năng của các tác nhân: 7
1 B ph n Qu n lý:ộ ậ ả 7
2 Ngườ ử ẻ 7i g i tr : 3 Người nh n nuôi:ậ 8
4 Tr trong Tr i môồ côiẻ ạ 8
IV Sơ đồ Usecase 8
V Kịch bản cho Usecase (Scenario) 9
1 B ph n Qu n lý:ộ ậ ả 9
1.1 Usecase “Cấấp tài kho n cho tr ”:ả ẻ 9
1.2 Usecase “C p nh t thông tin tr ”:ậ ậ ẻ 9
1.3 Usecase “Duy t khai báo thông tin tr ”:ệ ẻ 9
1.4 Usecase “Xác nh n đã nh n tr ”:ậ ậ ẻ 9
1.5 Usecase “Duy t hôồ s nh n nuôi”:ệ ơ ậ 9
1.6 Usecase “Xác nh n đã giao tr ”:ậ ẻ 10
1.7 Usecase “Tìm kiếấm thông tin tr ho c ngẻ ặ ười nh n nuôi ho c ngậ ặ ườ ử ẻ 10i g i tr ”: 2 Tr trong TMC:ẻ 11
2.1 Usecase “Đăng nh p”:ậ 11
2.2 Usecase “Đăng xuấất”: 12
2.3 Usecase “C p nh t thông tin cá nhấn”:ậ ậ 12
3 Ngườ ử ẻ 12i g i tr : 3.1 Usecase “Đăng ký tài kho n”ả 12
Người muốn nhận nuôi / Người gửi trẻ 12
3.2 Usecase “Khai báo thông tin tr ”:ẻ 12
Người gửi trẻ 13
Trang 34 Người nh n nuôi:ậ 13
4.1 Usecase “Đăng ký nh n nuôi”:ậ 13
4.2 Usecase “Xem thông tin tr nh n nuôi”ẻ ậ 15
VI Sơ đồ hoạt động: 15
1 Đăng ký tài kho nả 15
2 Đăng nh pậ 16
3 Tìm kiếấm – l cọ 17
4 Đăng ký nh n nuôiậ 18
5 Duy t hôồ s nh n nuôiệ ơ ậ 19
VII ERD: 20
VIII Các bảng dữ liệu: 20
1 Bộ phận Quản lý: 20
2 Người gửi trẻ: 21
3 Người nhận nuôi: 22
4 Trẻ trong Trại mồ côi 23
IX Các mối quan hệ giữa các bảng: 24
1 Table NguoiGuiTre 24
alter table NguoiGuiTre 24
2 Table DonDangKyGuiTre 24
3 Table DuyetDonGuiTre 24
4 Table tableXNNT 24
5 Table tableTre 24
6 tableTaiKhoanNNN 24
7 Table NguoiNhanNuoi 24
8 Table DonDangKyNhanNuoi 25
9 Table DuyetDKNhanNuoi 25
10 tableXNGT 25
X Trigger, Hàm, Thủ tục: 25
1 T đ ng c p nh t tài kho n b ng tableTaiKhoanTre môỗi khi insert/ update vào b ng tableTreự ộ ậ ậ ả ở ả ả 25
2 T đ ng c p nh t idDonGuiTre b ng DuyetDonGuiTre môỗi khi insert/ update vào b ng ự ộ ậ ậ ở ả ả DonDangKyGuiTre 25
3 T đ ng c p nh t idDonGuiTre b ng DuyetDKNhanNuoi môỗi khi insert/ update vào b ng ự ộ ậ ậ ở ả ả DonDangKyNhanNuoi 26
DANH SÁCH CÁC KÝ HIỆU, CHỮ VIẾT TẮT 27
Trang 4TÓM TẮT
Tên đề tài: Xây Dựng Hệ Thống Quản Lý Trung Tâm Bảo Trợ Xã Hội (Trại Trẻ Mồ Côi) Sinh viên thực hiện: Phan Thị Hoài Anh – 2050531200106 – Lớp: 20T1
Nguyễn Văn Chương – 2050531200114 – Lớp: 20T1
Lê Gia Hân – 2050531200139 – Lớp: 20T1
Nguyễn Việt Long – 2050531200223 – Lớp: 20T2
Trang 5LỜI MỞ ĐẦU
Trại trẻ mồ côi là mô hình xã hội là mô hình xã hội được xây dựng khá sớm tại Việt Nam Được biết đến với nhiều tên gọi như cô nhi viện, mái ấm tình thương, đây là cơ sở tiếp nhận, chăm sóc và giáo dục trẻ mồ côi trên khắp đất nước.
Trại trẻ mồ côi thường được thành lập với sự giúp đỡ của các cơ quan nhà nước, tổ chức xã hội và mạnh thường quân Với mục đích cung cấp chỗ ở và nuôi dưỡng trẻ em mất cha mẹ, trại mồ côi được trang bị cơ sở vật chất đầy đủ cùng nguồn kinh phí hỗ trợ để duy trì hoạt động chăm sóc các bé hàng ngày.
Hệ thống được tạo ra nhằm mục đích có thể quản lý Trại mồ côi mộ tcách chặt chẽ, nắm bát được mọi tình hình và minh bạch trong mọi tình huống.
Trang 6I Mục tiêu:
• Lưu trữ và cập nhật đầy đủ thông tin của trẻ mồ côi, nhân viên, người nhận nuôi, người gửi trẻ và mạnh thường quân.
• Truy vấn thông tin một cách dễ dàng
• Giúp minh bạch trong việc nhận ủng hộ từ mạnh thường quân.
• Giảm được các công việc thủ công, tiết kiệm thời gian và nguồn nhân lực
• Thay thế các thủ tục như đăng kí, làm hồ sơ bằng tin học hóa.
II Tác nhân:
2 Người gửi trẻ
3 Người nhận nuôi
4 Trẻ trong trại mồ côi
III Chức năng của các tác nhân:
1 Bộ phận Quản lý:
• Đăng nhập
• Đăng xuất
• Cấp tài khoản cho trẻ
• Xem thông tin trẻ trong TMC
• Cập nhật thông tin trẻ
• Xem thông tin người gửi trẻ
• Xem khai báo thông tin trẻ
• Duyệt khai báo thông tin trẻ
• Xác nhận đã nhận trẻ
• Xem thông tin người nhận nuôi
• Xem hồ sơ nhận nuôi
• Duyệt hồ sơ nhận nuôi
• Xác nhận đã giao trẻ
• Xem thông báo của người nhận nuôi/ người gửi trẻ/ mạnh thường quân
• Tìm kiếm thông tin trẻ/người nhận nuôi/người gửi trẻ
Trang 72 Người gửi trẻ:
• Đăng ký tài khoản
• Đăng nhập
• Đăng xuất
• Khai báo thông tin trẻ
• Xem thông tin cá nhân
• Cập nhật thông tin cá nhân
• Xem thông báo từ bộ phận quản lý
3 Người nhận nuôi:
• Đăng ký tài khoản
• Đăng nhập
• Đăng xuất
• Cập nhật thông tin cá nhân
• Xem thông tin cá nhân
• Đăng ký nhận nuôi
• Xem thông tin trẻ nhận nuôi
• Xem thông báo từ bộ phận quản lý
4 Trẻ trong Trại mồ côi
• Đăng nhập
• Đăng xuất
• Xem thông tin cá nhân
• Cập nhật thông tin cá nhân
Trang 8IV Sơ đồ Usecase
V Kịch bản cho Usecase (Scenario)
1 Bộ phận Quản lý:
1.1 Usecase “Cấp tài khoản cho trẻ”:
Usecase Name Cấp tài khoản cho trẻ
Trang 9Basic Flow
1 Actor truy cập hệ thống – Bắt đầu use-case
“Cấp tài khoản”
3 Actor nhập tạo tài khoản và mật khẩu, sau đó chọn nút “Cấp
và cho phép tài khoản truy cập vào hệ thống – Usecase dừng lại
5 Alternative
6 Exception
Flow
3b Hệ thống xác thực thông tin đăng nhập không thành công
và hiển thị thông báo 3b1 Actor nhấn nút “Đăng nhập lại” – Use-case trở lại bước 3 3b2 Actor nhấn nút “Thoát” – Use-case dừng lại
1.2 Usecase “Cập nhật thông tin trẻ”:
1.3 Usecase “Duyệt khai báo thông tin trẻ”:
1.4 Usecase “Xác nhận đã nhận trẻ”:
1.5 Usecase “Duyệt hồ sơ nhận nuôi”:
Use case name Duyệt hồ sơ nhận nuôi
Description Actor xem, xét duyệt duyệt hồ sơ nhận nuôi
Basic flow 1 Actor nhấn vào “Cá nhân”(giao diện 1) – Bắt đầu use case
2 Actor chọn mục “Duyệt hồ sơ nhận nuôi ”(giao diện 2)
3 Actor xem duyệt hồ sơ nhận nuôi (thông tin cá nhân,…)=> Nhấn “Đồng ý”(giao diện 2)
4 Hệ thống kiểm tra xuất thông báo đăng ký thành công đến người đăng ký và lưu thông tin – Kết thúc use case
Alternative
Trang 10Exception flow
1.6 Usecase “Xác nhận đã giao trẻ”:
1.7 Usecase “Tìm kiếm thông tin trẻ hoặc người nhận nuôi hoặc người gửi trẻ”:
1 Use case name Tìm kiếm
2 Description Người dùng muốn tìm kiếm các thông tin theo nhu cầu của họ
3 Actors Người muốn nhận nuôi/Nhân viên/MTQ/Quản lý/Admin
4 Input Đăng nhập hệ thống thành công, nhập từ khóa vào thanh tìm kiếm
trong giao diện 1.
5 Output Hiện ra kết quả tìm kiếm.
Họ có thể xem chi tiết các kết quả.
1 Actor chọn nút back trên trang web Use case dừng lại
1 Actor chọn logo giao diện trên trang web Use case dừng lại
2 Actor chọn kết quả tìm kiếm là bài đăng Use case dừng lại
Trang 114 Actor truy cập website– Bắt đầu use-case
5 Actor chọn chức năng Cá Nhân -> Đăng nhập
6 Actor nhập tài khoản và mật khẩu, sau đó chọn nút “Đăng nhập” Hệ thống xác thực thông tin đăng nhập thành công
và cho phép truy cập vào hệ thống – Use-case dừng lại
11 Alternative
12 Exception
Flow
3b Hệ thống xác thực thông tin đăng nhập không thành công
và hiển thị thông báo 3b1 Actor nhấn nút “Đăng nhập lại” – Use-case trở lại bước 3 3b2 Actor nhấn nút “Thoát” – Use-case dừng lại
2.2 Usecase “Đăng xuất”:
2.3 Usecase “Cập nhật thông tin cá nhân”:
3 Người gửi trẻ:
3.1 Usecase “Đăng ký tài khoản”
Use case name Đăng ký tài khoản
1 Description
(Miêu tả)
Người dùng muốn đăng ký để xem thông tin, đăng ký và nộp
hồ sơ nhận nuôi/ gửi thông tin trẻ
2 Actors Người muốn nhận nuôi / Người gửi trẻ
3 Input Người dùng nhập số điện thoại và các thông tin cơ bản như Họ
tên, ngày sinh, SDT, địa chỉ, số CMND…
4 Output Thông báo đã đăng ký thành công
Trang 12Người dùng có thể xem/ chỉnh sửa thông tin mình đã đặt
5 Basic flow
(Luồng cơ
bản)
ký ở góc trên bên phải hệ thống (giao diện 1) – Bắt đầu use case
như Người muốn nhận nuôi, Người gửi trẻ (giao diện 2)
thông tin đăng kí) - Kết thúc use case
3 Mật khẩu được đặt bao gồm ký tự viết hoa, ký tự thường và
5a Quản lí hoặc Admin xem xét dựa trên các điều khoản mà
có thể đồng ý/từ chối thông tin đăng ký – Kết thúc use case
7 Exception
flow
3.2 Usecase “Khai báo thông tin trẻ”:
Use case name Khai báo thông tin trẻ
8 Description
(Miêu tả)
Người dùng muốn điền vào form để gửi thông tin trẻ mồ côi được gửi.
9 Actors Người gửi trẻ
10 Input Người dùng nhập số điện thoại và các thông tin cơ bản như Họ
tên, ngày sinh, SDT, địa chỉ, số CMND…
11 Output Thông báo đã gửi thông tin trẻ thành công và chờ Bộ phận
phải hệ thống – Bắt đầu use case
Trang 13thiết được yêu cầu trong Form
10 Actor nhận thông báo khai báo thành công – Kết thúc use case
3 Mật khẩu được đặt bao gồm ký tự viết hoa, ký tự thường và
5a Quản lí hoặc Admin xem xét dựa trên các điều khoản mà
có thể đồng ý/từ chối thông tin đăng ký – Kết thúc use case
14 Exception
flow
4 Người nhận nuôi:
4.1 Usecase “Đăng ký nhận nuôi”:
Usecase Name Đăng ký nhận nuôi
1 Description 5 Actor muốn đăng kí thông tin để làm hồ sơ nhận nuôi trẻ
2 Actor 6 Người muốn nhận nuôi
3 Input Người dùng đăng nhập hệ thống thành công, tiến hành đăng kí thông tin
4 Output 7 Actor hoàn thành hồ sơ đăng ký nhận nuôi và chờ duyệt
Trang 144.2 Usecase “Xem thông tin trẻ nhận nuôi”
VI.Sơ đồ hoạt động:
1 Đăng ký tài khoản
Trang 152 Đăng nhập
Trang 163 Tìm kiếm – lọc
Trang 174 Đăng ký nhận nuôi
Trang 185 Duyệt hồ sơ nhận nuôi
Trang 19Cập nhật thông tin trẻ
TableTre
Trang 20Duyệt khai báo thông tin trẻ
TableDuyetDonGuiTre
khóa ngo i ạ Id Đ n khai báo g i tr ơ ử ẻ
Xác nhận đã nhận trẻ
TableXNNT
Duyệt hồ sơ nhận nuôi
TableDuyetDKNhanNuoi
khóa ngo i ạ Id Đ n đăng ký nh n nuôi ơ ậ
Xác nhận đã giao trẻ
TableBangXNGT
2 Người gửi trẻ:
Đăng ký tài khoản
TableTaiKhoanNGT
Trang 21TenDangNhap Varchar Tến đăng nh p ậ
Khai báo thông tin trẻ
TableDonDangKyGuiTre
Cập nhật thông tin cá nhân
TableNguoiGuiTre
Trang 22Cập nhật thông tin cá nhân
TableNguoiNhanNuoi
Đăng ký nhận nuôi
TableDonNhanNuoi
4 Trẻ trong Trại mồ côi
Cập nhật thông tin cá nhân
TableTre
Trang 23NgayNhan Date Ngày nh n tr ậ ẻ
IX Các mối quan hệ giữa các bảng:
1 Table NguoiGuiTre
alter table NguoiGuiTre
add constraint FK_NguoiGuiTre_idNGT FOREIGN KEY(idNGT)REFERENCES tableTaiKhoanNGT(idNGT)
alter table DonDangKyGuiTre
add constraint FK_DDKGT_idNGT FOREIGN KEY(idNGT )REFERENCES NguoiGuiTre(idNGT)
alter table DuyetDonGuiTre
add constraint FK_DuyetDGT_idDonGT FOREIGN KEY(idDonGuiTre)REFERENCES
alter table tableXNNT
add constraint FK_tableXNNT_idDonGT FOREIGN KEY(idDonGuiTre)REFERENCES
DuyetDonGuiTre idDonGuiTre( )
ON DELETE CASCADE
ONUPDATECASCADE
5 Table tableTre
alter table tableTre
add constraint FK_tableTre_idNGT FOREIGNKEY (idNGT)REFERENCES NguoiguiTre(idNGT )
alter table tableTaiKhoanNNN
add constraint unique_tenDangNhap_TKNNN UNIQUE (TenDangNhap)
Trang 247 Table NguoiNhanNuoi
alter table NguoiNhanNuoi
add constraint FK_NguoiNhanNuoi_idNNN FOREIGN KEY(idNNN)REFERENCES tableTaiKhoanNNN(idNNN)
alter table DonDangKyNhanNuoi
add constraint FK_DDKNN_idNNN FOREIGN KEY(idNNN )REFERENCES NguoiNhanNuoi(idNNN)
alter table DuyetDKNhanNuoi
add constraint FK_DuyetDKNN_idDonNN FOREIGN KEY(idDonNN)REFERENCES
alter table tableXNGT
add constraint FK_tableXNGT_idDonNN FOREIGN KEY(idDonNN)REFERENCES DuyetDKNhanNuoi(idDonNN)
DECLARE @idTre char( )7
DECLARE @matKhau varchar(20)
IF ((selectCOUNT(idTre )from tableTre ) > (selectCOUNT(idTre)from
Trang 252 Tự động cập nhật idDonGuiTre ở bảng DuyetDonGuiTre mỗi khi insert/ update vào bảng DonDangKyGuiTre
CREATEORALTER TRIGGER tg_DonDangKyGuiTre_idDonGuiTre
ON DonDangKyGuiTre
FOR INSERT,UPDATE
AS
BEGIN
DECLARE @idDon char( )7
IF ((selectCOUNT(idDonGuiTre)from DonDangKyGuiTre )> select
COUNT(idDonGuiTre)from DuyetDonGuiTre))
DECLARE @idDon char( )7
IF ((selectCOUNT(idDonNN)from DonDangKyNhanNuoi ) > (selectCOUNT(idDonNN)from DuyetDKNhanNuoi))
Trang 26DANH SÁCH CÁC KÝ HIỆU, CHỮ VIẾT TẮT
1 TMC: Trại mồ côi
2 ĐK: Đăng ký
3 NNN: người nhận nuôi