50 Mờ s Usecase UC-41 Tớn Usecase Thớm đ i tõc Tõc nhđn Ng i qu n lý Mụ t Ng i qu n lý cú quy n thớm đ i tõc i u ki n b t đ u Ng i qu n lý đờ đ ng nh p i u ki n k t thỳc Lu ng c b n 1. giao di n “Danh sõch cõc đ i tõc c a t ch c”, nh n ch n “Thớm m i”
2. H th ng đi u h ng t i măn hỡnh “Thớm đ i tõc m i”
3. Nh p đ y đ cõc thụng tin vă ch n “Thớm”
4. H th ng thụng bõo “Thớm đ i tõc thănh cụng” vă tr
v măn hỡnh danh sõch Ngo i l Lu ng thay th Yớu c u phi ch c n ng B ng 45: Usecase Thớm đ i tõc Mờ s Usecase UC-42 Tớn Usecase C p nh t thụng tin đ i tõc Tõc nhđn Ng i qu n lý Mụ t Ng i qu n lý cú quy n c p nh t thụng tin đ i tõc i u ki n b t đ u Ng i qu n lý đờ đ ng nh p i u ki n k t thỳc Lu ng c b n 1. giao di n “Danh sõch cõc đ i tõc c a t ch c”, nh n ch n “S a” đ i tõc mong mu n
2. H th ng đi u h ng t i măn hỡnh “Ch nh s a thụng tin
đ i tõc”
3. Thay đ i cõc thụng tin vă ch n “L u”đ hoăn t t 4. H th ng thụng bõo “ ờ l u thụng tin đ i tõc” vă tr v
măn hỡnh danh sõch Ngo i l Lu ng thay th Yớu c u phi ch c n ng B ng 46: Usecase C p nh t thụng tin đ i tõc Mờ s Usecase UC-43 Tớn Usecase Xúa đ i tõc
51 Tõc nhđn Ng i qu n lý Mụ t Ng i qu n lý cú quy n xúa đ i tõc i u ki n b t đ u Ng i qu n lý đờ đ ng nh p i u ki n k t thỳc Lu ng c b n 1. giao di n “Danh sõch cõc đ i tõc c a t ch c”, nh n ch n “Xúa” vă xõc nh n “OK” đ i tõc mong mu n 2. H th ng thụng bõo “Xúa thănh cụng” vă lăm m i danh
sõch Ngo i l Lu ng thay th Yớu c u phi ch c n ng B ng 47: Usecase xúa đ i tõc Mờ s Usecase UC-44
Tớn Usecase Xem thụng tin thănh viớn Tõc nhđn Thănh viớn
Mụ t Thănh viớn cú quy n xem thụng tin cõc thănh viớn trong cựng khu v c c a mỡnh
i u ki n b t đ u Thănh viớn đờ đ ng nh p
i u ki n k t thỳc Lu ng c b n
1. thanh đi u h ng nh n ch n “Thănh viớn”.
2. H th ng chuy n t i giao di n “Danh sõchthănh viớn”.
3. Ch n m t thănh viớn đ xem chi ti t thụng tin 4. H th ng s chuy n t i giao di n “Thụng tin thănh
viớn” Ngo i l
Lu ng thay th
Yớu c u phi ch c n ng
B ng 48: Usecase Xem thụng tin thănh viớn
Mờ s Usecase UC-45
Tớn Usecase Thớm thănh viớn Tõc nhđn Ng i qu n lý
Mụ t Ng i qu n lý cú quy n thớm thănh viớn văo t ch c
i u ki n b t đ u Ng i qu n lý đờ đ ng nh p
52 Lu ng c b n
1. giao di n “Danh sõch thănh viớn”, nh n ch n “Thớm
thănh viớn”
2. H th ng chuy n sang giao di n “Thớm thănh viớn m i”
3. i n thụng tin vă nh n “Thớm”đ hoăn t t Ngo i l
Lu ng thay th
Yớu c u phi ch c n ng
B ng 49: Usecase thớm thănh viớn
Mờ s Usecase UC-46
Tớn Usecase C p nh t thụng tin thănh viớn Tõc nhđn Ng i qu n lý
Mụ t Ngt ch c i qu n lý cú quy n c p nh t thụng tin c a thănh viớn trong
i u ki n b t đ u Ng i qu n lý đờ đ ng nh p
i u ki n k t thỳc Lu ng c b n
1. giao di n “Thụng tin thănh viớn”, nh n ch n “C p nh t”
2. H th ng chuy n sang giao di n “C p nh t thụng tin
thănh viớn”, chnh s a thụng tin vă nh n ch n “L u”đ
hoăn t t. Ngo i l
Lu ng thay th
Yớu c u phi ch c n ng
B ng 50: Usecase C p nh t thụng tin thănh viớn
Mờ s Usecase UC-47
Tớn Usecase Xúa thănh viớn Tõc nhđn Ng i qu n lý
Mụ t Ngviớn c a t ch c i qu n lý cú quy n xúa thănh viớn kh i danh sõch thănh
i u ki n b t đ u Ng i qu n lý đờ đ ng nh p
i u ki n k t thỳc
Lu ng c b n 1.2. C a s xõc nh n hi n lớn, nh n ch n xõc nh n giao di n “Danh sõch thănh viớn”, nh n ch n nỳt xúa. đ xúa thănh viớn
Ngo i l
53 Yớu c u phi ch c n ng
B ng 51: Usecase Xúa thănh viớn
Mờ s Usecase UC-48
Tớn Usecase Xem danh sõch vai trũ Tõc nhđn Ng i qu n lý
Mụ t Ngch c i qu n lý cú quy n xem danh sõch cõc vai trũ trong t
i u ki n b t đ u Ng i qu n lý đờ đ ng nh p
i u ki n k t thỳc
Lu ng c b n 1.2. H th ng chuy n sang giao di n hi n th danh sõch cõc thanh đi u h ng, nh n ch n “Vai trũ” vai trũ trong t ch c
Ngo i l Lu ng thay th Yớu c u phi ch c n ng
B ng 52: Usecase Xem danh sõch vai trũ
Mờ s Usecase UC-49 Tớn Usecase T o vai trũ Tõc nhđn Ng i qu n lý
Mụ t Ngphõt sinh i qu n lý cú quy n t o m t vai trũ m i trong t ch c khi
i u ki n b t đ u Ng i qu n lý đờ đ ng nh p
i u ki n k t thỳc
Lu ng c b n 1.2. H th ng chuy n sang giao di giao di n “Danh sõch vai trũ” ch n “Tn “T o vai trũ”o vai trũ m i”
3. i n thụng tin vă nh n “T o” Ngo i l Lu ng thay th Yớu c u phi ch c n ng B ng 53: Usecase T o vai trũ Mờ s Usecase UC-50 Tớn Usecase C p nh t vai trũ
54 Tõc nhđn Ng i qu n lý
Mụ t Ng i qu n lý cú quy n c p nh t vai trũ trong t ch c
i u ki n b t đ u Ng i qu n lý đờ đ ng nh p
i u ki n k t thỳc Lu ng c b n
1. giao di n “Danh sõch vai trũ”, nh n ch n vai trũ vă nh n văo bi u t ng ch nh s a c a s hi n ra. 2. H th ng chuy n sang giao di n “C p nh t vai trũ”
3. Ch nh s a vă nh n “L u thay đ i” Ngo i l
Lu ng thay th
Yớu c u phi ch c n ng
B ng 54: Usecase C p nh t vai trũ
Mờ s Usecase UC-51 Tớn Usecase Xúa vai trũ Tõc nhđn Ng i qu n lý
Mụ t Ng i qu n lý cú quy n xúa m t vai trũ trong t ch c
i u ki n b t đ u Ng i qu n lý đờ đ ng nh p
i u ki n k t thỳc
Lu ng c b n 1. xúa vă xõc nh giao di n “Danh sõch vai trũ”, nhn đ xúa n ch n bi u t ng Ngo i l
Lu ng thay th
Yớu c u phi ch c n ng
B ng 55: Usecase xúa vai trũ
Mờ s Usecase UC-52
Tớn Usecase Xem thụng tin tăi s n đ c c p phõt Tõc nhđn Thănh viớn
Mụ t Thănh viớn cú quy n xem l i thụng tin v cõc tăi st ch c c p phõt cho b n thđn s d ng n đang đ c
i u ki n b t đ u Thănh viớn đờ đ ng nh p
i u ki n k t thỳc
55 2. H th ng chuy n đ n măn hỡnh “Danh sõch tăi s n đ c
đ c c p phõt”, ch n m t dũng c n xem chi ti t
3. H th ng s chuy n t i măn hỡnh “Chi ti t thụng tin c p
phõt” Ngo i l
Lu ng thay th
Yớu c u phi ch c n ng
B ng 56: Usecase xem thụng tin tăi s n đ c c p phõt
Mờ s Usecase UC-53
Tớn Usecase Bõo h ng m t tăi s n Tõc nhđn Thănh viớn
Mụ t Thănh viớn cú quy n bõo h ng m t tăi s n
i u ki n b t đ u Thănh viớn đờ đ ng nh p
i u ki n k t thỳc
Lu ng c b n
1. măn hỡnh “Chi ti t thụng tin c p phõt”, ch n “Bõo
h ng”
2. H th ng đi u h ng đ n giao di n “Bõo h ng m t tăi s n”, nh p thụng tin c n thi t, ch n “G i”
3. H th ng bõo “G i thụng tin thănh cụng” vă quay l i măn hỡnh “Chi ti t thụng tin c p phõt”
Ngo i l 1.a. Ngo i l 1 Thụng tin b thi u, h th ng s –B c 2: thụng bõo “Vui lũng
nh p đ cõc thụng tin c n thi t” Lu ng thay th
Yớu c u phi ch c n ng
B ng 57: Usecase bõo h ng m t tăi s n
Mờ s Usecase UC-54
Tớn Usecase Chia s tăi s n đ c c p phõt Tõc nhđn Thănh viớn
Mụ t Thănh viớn cú quy n chia s quy n s d ng tăi s n v i m t thănh viớn khõc trong t ch c
i u ki n b t đ u Thănh viớn đờ đ ng nh p
i u ki n k t thỳc Lu ng c b n
1. măn hỡnh “Chi ti t thụng tin c p phõt”, ch n “Chia
s ”
2. H th ng hi n th giao di n “Ch n ng i mu n chia s ”,
56 3. H th ng bõo “Chia s thănh cụng” vă quay l i măn
hỡnh “Chi ti t thụng tin c p phõt” Ngo i l
Lu ng thay th
Yớu c u phi ch c n ng
B ng 58: Usecase Chia s tăi s n đ c c p phõt
Mờ s Usecase UC-55
Tớn Usecase Yớu c u gia h n th i gian c p phõt Tõc nhđn Thănh viớn
Mụ t Thănh viớn cú quy n g i yớu c u xin gia h n th i gian c p phõt tăi s n.
i u ki n b t đ u Thănh viớn đờ đ ng nh p
i u ki n k t thỳc Lu ng c b n
1. giao di n “Chi ti t thụng tin c p phõt”, nh n ch n
“Yớu c u gia h n”
2. H th ng chuy n sang giao di n “Yớu c u gia h n”
3. Thănh viớn ch n “Ngăy thu h i” mong mu n vă thớm
“Ghi chỳ” (n u cú), sau đú nh n “G i” đ hoăn t t Ngo i l
Lu ng thay th
Yớu c u phi ch c n ng
B ng 59: Usecase yớu c u gia h n th i gian c p phõt
Mờ s Usecase UC-56
Tớn Usecase Xem danh sõch tăi s n đ c phĩp m n Tõc nhđn Thănh viớn
Mụ t Thănh viớn thu c t ch c cú quy n xem danh sõch tăi sphĩp m n n đ c
i u ki n b t đ u Thănh viớn đờ đ ng nh p
i u ki n k t thỳc Lu ng c b n
1. thanh đi u h ng, nh n ch n “Tăi s n c a tụi”
2. Danh m c x xu ng, nh n ch n “Xin c p phõt”
3. H th ng chuy n sang giao di n hi n th danh sõch tăi s n đ c phĩp m n
Ngo i l
57 Yớu c u phi ch c n ng
B ng 60: Usecase Xem danh sõch tăi s n đ c phĩp m n
Mờ s Usecase UC-57
Tớn Usecase G i yớu c u c p phõt tăi s n Tõc nhđn Thănh viớn
Mụ t Thănh viớn thu c t ch c cú quy n g i yớu c u xin c p phõt tăi s n đ ph c v cho cụng vi c
i u ki n b t đ u Thănh viớn đờ đ ng nh p
i u ki n k t thỳc
Lu ng c b n
1. giao di n “Danh sõch tăi s n đ c phĩp m n”, nh n ch n văo tăi s n c n m n
2. H th ng chuy n sang giao di n hi n th chi ti t tăi s n, nh n ch n “Xin c p phõt”
3. H th ng chuy n sang giao di n “Yớu c u c p phõt”,
ch n ngăy c p phõt vă ngăy thu h i, sau đú nh n “G i yớu c u”đ hoăn t t
Ngo i l
Lu ng thay th
Yớu c u phi ch c n ng
B ng 61: Usecase G i yớu c u c p phõt tăi s n
Mờ s Usecase UC-58
Tớn Usecase G i đ xu t mua tăi s n Tõc nhđn Thănh viớn
Mụ t Thănh viớn thu c t ch c cú quy n g i khi cú nhu c u trong cụng vi c đ xu t mua m i tăi s n
i u ki n b t đ u Thănh viớn đờ đ ng nh p
i u ki n k t thỳc
Lu ng c b n
1. giao di n “Danh sõch tăi s n đ c phĩp m n”, nh n ch n “ xu t mua”
2. H th ng chuy n sang giao di n “ xu t mua tăi s n”,
nh p đ y đ thụng tin vă nh n “G i”
3. H th ng hi n thụng bõo “G i đ xu t thănh cụng” vă
quay l i măn hỡnh danh sõch Ngo i l
Lu ng thay th
Yớu c u phi ch c n ng
58 Mờ s Usecase UC-59
Tớn Usecase Xem yớu c u đờ g i Tõc nhđn Thănh viớn
Mụ t Thănh viớn cú quy n xem l i cõc yớu c u mă bg i lớn h th ng n thđn mỡnh đờ
i u ki n b t đ u Thănh viớn đờ đ ng nh p
i u ki n k t thỳc Lu ng c b n
1. thanh đi u h ng ch n Tăi s n c a tụi / Cõc yớu c u
đờ g i
2. H th ng chuy n sang giao di n “Danh sõch yớu c u”,
nh n ch n văo m t dũng khi c n xem chi ti t Ngo i l
Lu ng thay th
Yớu c u phi ch c n ng
B ng 63: Usecase xem yớu c u đờ g i
Mờ s Usecase UC-60
Tớn Usecase Xúa yớu c u đờ g i Tõc nhđn Thănh viớn
Mụ t Thănh viớn cú quy n xúa cõc yớu c u mă blớn h th ng v i đi u ki n yớu c u ch a đ c ngn thđn mỡnh đờ gi qu n lý i ph n h i
i u ki n b t đ u Thănh viớn đờ đ ng nh p
i u ki n k t thỳc Lu ng c b n
1. giao di n “Danh sõch yớu c u”, ch n “Xúa” cõc yớu
c u mong mu n 2. H th ng xõc nh n m t l n n a, ch n “OK” đ xõc nh n xúa Ngo i l 1. Ngo i l 1 –B c 2: c. N u yớu c u đờ đ c qu n lý ph n h i, hi n thụng
bõo “Thụng tin đờ đ c duy t, b n khụng cú quy n
xúa” Lu ng thay th
Yớu c u phi ch c n ng
59
4. THI T K H TH NG
4.1. Ki n trỳc h th ng
Hỡnh 7: Ki n trỳc t ng th c a h th ng
Cõc thănh ph n, l p trong ki n trỳc h th ng:
Reverse Proxy Server: Lă mõy ch y quy n đ đ m b o tớnh b o m t vă qu n lý. IIS cú th l y HTTP Request vă th c hi n m t s cõc x lý nh ghi log, l c request, rewrite-url tr c khi g i sang cho Kestrel.
Kestrel: lă m t web server đa n n t ng. Nú đ c phõt tri n đ ch y ng d ng ASP.NET Core trớn b t c n n t ng năo. Nú đ c thớm văo m c đnh trong ng d ng ASP.NET Core. Nhi m v c a Kestrel lă nh n request t Proxy Server vă đnh tuy n t i cõc Controller. Kestrel khụng ph i lă m t web server đ y đ tớnh n ng. Nh ng nú nhanh, tuy nhiớn nú khụng đ m nh đ ch y Kestrel m t mỡnh trớn mụi tr ng.
S d ng k t h p Kestrel v i c ISS s mang l i nh ng l i ớch nh :
• B o m t: Nú cú th h n ch vi c ph i ra ngoăi nh ng gỡ khụng c n thi t vă nú c ng cho chỳng ta cõc tựy ch n v c u hỡnh vă b o v ng d ng.
60 • Căi đ t SSL: Ch cõc mõy ch y quy n c n cõc ch ng ch SSL, cũn cõc server năy cú th lăm vi c v i ng d ng c a b n trớn m ng n i b s dựng HTTP thu n.
• L c cõc Request, ghi log vă rewrite-URL… • Nú cú th restart ng d ng n u b crash
L p Controller: lă thănh ph n đ u tiớn nh n request t ng i dung t kestrel. Khi ng i dựng truy c p URL qua trỡnh duy t, ASP.NET Core routing s map request đú văo controller c th . Controller thụng qua cõc d ch v t l p Domain Service Layer đ l y d li u t model, ho c c p nh t d li u c a model, cựng v i đú Controller s l y cõc UI component c n thi t t React App k t h p v i d li u t model đ g i v cho Client thụng qua cõc web server.
L p Business Logic Layer (BLL): Ch a t t c cõc nghi p v logic, cõc răng bu c đi u ki n, x lý d li u thụ t DAL g i lớn.
L p Data Access Layer (DAL): lă l p giao ti p v i c s d li u, s d ng Entity