mistakes fix

This commit is contained in:
s444417 2021-02-11 10:08:00 +01:00
parent 678de19395
commit cfa9c0aaef
10 changed files with 372 additions and 330 deletions

View File

@ -17,9 +17,9 @@ classcanvas 128266 class_ref 135050 // genrowanieRaportuSprzedazy
xyz 50.56 957.28 2000
end
classcanvas 128269 class_ref 141197 // IPlatnoscStrategy
classdiagramsettings member_max_width 0 class_drawing_mode class end
classdiagramsettings member_max_width 0 show_parameter_name yes class_drawing_mode class end
color yellow
xyzwh 1344.06 55.81 2000 380 113
xyzwh 1345.86 48.01 2000 380 133
end
classcanvas 128300 class_ref 135084 // ModulLogowania
classdiagramsettings member_max_width 0 end
@ -43,11 +43,11 @@ classcanvas 128525 class_ref 164226 // ManagerPlatnosciGotowkowej
end
classcanvas 128653 class_ref 178434 // ManagerPlatnosciKarta
classdiagramsettings member_max_width 0 end
xyzwh 1561.07 277.42 2000 222 93
xyzwh 1562.87 274.22 2000 222 93
end
classcanvas 129037 class_ref 171906 // Sprzedaz
classdiagramsettings member_max_width 0 end
xyz 588.78 422.91 2000
xyz 589.18 442.91 2000
end
classcanvas 129068 class_ref 142124 // ManagerDiagnozy
classdiagramsettings member_max_width 0 end
@ -83,27 +83,27 @@ classcanvas 130317 class_ref 128394 // AutomatKontroler
end
classcanvas 130434 class_ref 178562 // ManagerPlatnosci
classdiagramsettings member_max_width 0 end
xyz 901.73 57.65 2000
xyz 900.33 45.85 2000
end
classcanvas 130818 class_ref 185218 // ManagerSprzedazy
classdiagramsettings member_max_width 0 end
xyz 601.98 58.26 2000
xyz 602.98 48.26 2000
end
classcanvas 131884 class_ref 148780 // RaportZakonczeniaNaprawy
classdiagramsettings member_max_width 0 end
xyz 1443.78 721.23 2000
xyz 1441.98 765.83 2000
end
classcanvas 135426 class_ref 136462 // KatalogProduktow
classdiagramsettings member_max_width 0 end
xyz 239 58.7 2000
xyz 267 54.7 2000
end
classcanvas 137986 class_ref 198274 // ObliczanieReszty
classdiagramsettings member_max_width 0 end
xyz 1349.7 471.3 2005
xyz 1348.3 470.7 2005
end
classcanvas 138626 class_ref 198402 // ZwrotReszty
classcanvas 138626 class_ref 198402 // Kasetka
classdiagramsettings member_max_width 0 end
xyz 1365.3 613 2000
xyz 1350.3 619.2 2000
end
note 140162 "strategia platnosci"
xyzwh 1757 56 2000 159 41
@ -117,17 +117,17 @@ relationcanvas 128428 relation_ref 128044 // PrzesylaDane
decenter_begin 601
from ref 128044 z 2001 label "PrzesylaDane" italic max_width 255 xyz 1315 1382 2001 to ref 128300
no_role_a no_role_b
multiplicity_a_pos 1489 1434 3000 multiplicity_b_pos 1313 1287 3000
multiplicity_a_pos 1499 1426 3000 multiplicity_b_pos 1299 1282 3000
end
relationcanvas 128778 relation_ref 128138 // wykorzystuje
from ref 128266 z 2001 label "wykorzystuje" italic max_width 255 xyz 302 962 2001 to ref 128394
no_role_a no_role_b
multiplicity_a_pos 398 990 3000 multiplicity_b_pos 288 988 3000
multiplicity_a_pos 395 989 3000 multiplicity_b_pos 286 987 3000
end
relationcanvas 128906 relation_ref 128266 // tworzy
from ref 128394 z 2001 label "tworzy" italic max_width 255 xyz 670 968 2001 to ref 128138
no_role_a no_role_b
multiplicity_a_pos 767 995 3000 multiplicity_b_pos 609 993 3000
multiplicity_a_pos 768 994 3000 multiplicity_b_pos 608 992 3000
end
relationcanvas 128940 relation_ref 128300 // Komunikuje
from ref 128044 z 2001 label "Komunikuje" italic max_width 255 xyz 1432 1172 2001 to ref 128172
@ -137,157 +137,122 @@ end
relationcanvas 129196 relation_ref 128428 // Komunikuje
from ref 128172 z 2001 label "Komunikuje" italic max_width 255 xyz 1764 1164 2001 to ref 129068
no_role_a no_role_b
multiplicity_a_pos 1854 1199 3000 multiplicity_b_pos 1749 1197 3000
multiplicity_a_pos 1862 1197 3000 multiplicity_b_pos 1739 1196 3000
end
relationcanvas 129452 relation_ref 128556 // Stworz
from ref 129068 z 2001 label "Stworz" italic max_width 255 xyz 2136 1169 2001 to ref 129324
no_role_a no_role_b
multiplicity_a_pos 2195 1202 3000 multiplicity_b_pos 2074 1202 3000
multiplicity_a_pos 2202 1199 3000 multiplicity_b_pos 2063 1198 3000
end
relationcanvas 129836 relation_ref 128684 // Wykorzystuje
decenter_end 286
from ref 128044 z 2001 label "Wykorzystuje" italic max_width 255 xyz 1486 1039 2001 to ref 129708
no_role_a no_role_b
multiplicity_a_pos 1464 977 3000 multiplicity_b_pos 1364 1114 3000
multiplicity_a_pos 1472 998 3000 multiplicity_b_pos 1351 1131 3000
end
relationcanvas 129933 relation_ref 135053 // tworzy
from ref 129293 z 2001 label "tworzy" italic max_width 255 xyz 987 1463 2001 to ref 129805
no_role_a no_role_b
multiplicity_a_pos 1071 1492 3000 multiplicity_b_pos 937 1489 3000
multiplicity_a_pos 1075 1492 3000 multiplicity_b_pos 933 1489 3000
end
relationcanvas 130092 relation_ref 128812 // Naprawia i ZwracaRaport
from ref 129708 z 2001 label "Naprawia i ZwracaRaport" italic max_width 255 xyz 1692 1049 2001 to ref 128172
no_role_a no_role_b
multiplicity_a_pos 1604 1112 3000 multiplicity_b_pos 1547 1007 3000
multiplicity_a_pos 1607 1117 3000 multiplicity_b_pos 1551 1006 3000
end
relationcanvas 130348 relation_ref 135340 // ZwracaInformacje
decenter_begin 680
from ref 128300 z 2001 label "ZwracaInformacje" italic max_width 255 xyz 1455 1357 2001 to ref 128044
no_role_a no_role_b
multiplicity_a_pos 1397 1274 3000 multiplicity_b_pos 1609 1432 3000
multiplicity_a_pos 1381 1272 3000 multiplicity_b_pos 1624 1425 3000
end
relationcanvas 130573 relation_ref 135309 // wykorzystuje
from ref 130317 z 2001 label "wykorzystuje" italic max_width 255 xyz 578 1459 2001 to ref 129293
no_role_a no_role_b
multiplicity_a_pos 678 1486 3000 multiplicity_b_pos 547 1486 3000
multiplicity_a_pos 684 1486 3000 multiplicity_b_pos 544 1485 3000
end
relationcanvas 130701 relation_ref 135437 // wykorzystuje
from ref 130317 z 2001 label "wykorzystuje" italic max_width 255 xyz 423 1573 2001 to ref 130061
no_role_a no_role_b
multiplicity_a_pos 440 1630 3000 multiplicity_b_pos 441 1541 3000
multiplicity_a_pos 446 1629 3000 multiplicity_b_pos 446 1543 3000
end
relationcanvas 130829 relation_ref 135565 // wykorzystuje
from ref 129421 z 2001 label "wykorzystuje" italic max_width 255 xyz 260 1457 2001 to ref 130317
no_role_a no_role_b
multiplicity_a_pos 364 1486 3000 multiplicity_b_pos 227 1486 3000
multiplicity_a_pos 369 1485 3000 multiplicity_b_pos 222 1485 3000
end
relationcanvas 131213 relation_ref 135821 // tworzy
from ref 128397 z 2001 label "tworzy" italic max_width 255 xyz 657 389 2001 to ref 129037
from ref 128397 z 2001 label "tworzy" italic max_width 255 xyz 657 399 2001 to ref 129037
no_role_a no_role_b
multiplicity_a_pos 662 402 3000 multiplicity_b_pos 660 380 3000
multiplicity_a_pos 663 419 3000 multiplicity_b_pos 661 383 3000
end
relationcanvas 131469 relation_ref 135949 // wykorzystuje
from ref 130818 z 2001 label "wykorzystuje" italic max_width 255 xyz 637 213 2001 to ref 128397
from ref 130818 z 2001 label "wykorzystuje" italic max_width 255 xyz 638 218 2001 to ref 128397
no_role_a no_role_b
multiplicity_a_pos 658 242 3000 multiplicity_b_pos 657 193 3000
multiplicity_a_pos 660 240 3000 multiplicity_b_pos 659 206 3000
end
relationcanvas 132012 relation_ref 135468 // Tworzy
from ref 129708 z 2001 label "Tworzy" italic max_width 255 xyz 1523 814 2001 to ref 131884
from ref 129708 z 2001 label "Tworzy" italic max_width 255 xyz 1522 836 2001 to ref 131884
no_role_a no_role_b
multiplicity_a_pos 1513 767 3000 multiplicity_b_pos 1512 882 3000
multiplicity_a_pos 1529 815 3000 multiplicity_b_pos 1527 879 3000
end
relationcanvas 134018 relation_ref 178818 // wykorzystuje
decenter_begin 305
decenter_end 317
from ref 130818 z 2001 label "wykorzystuje" italic max_width 255 xyz 787 78 2001 to ref 130434
decenter_begin 509
decenter_end 526
from ref 130818 z 2001 label "wykorzystuje" italic max_width 255 xyz 786.5 104 2001 to ref 130434
no_role_a no_role_b
multiplicity_a_pos 886 109 3000 multiplicity_b_pos 759 108 3000
end
relationcanvas 135170 relation_ref 185730 // zwraca informacje
decenter_begin 629
decenter_end 611
from ref 130434 z 2001 label "zwraca informacje" italic max_width 255 xyz 765 114 2001 to ref 130818
no_role_a no_role_b
multiplicity_a_pos 759 145 3000 multiplicity_b_pos 886 146 3000
multiplicity_a_pos 881 132 3000 multiplicity_b_pos 762 132 3000
end
relationcanvas 135554 relation_ref 192258 // wykorzystuje
from ref 128386 z 2001 label "wykorzystuje" italic max_width 255 xyz 151 105 2001 to ref 135426
from ref 128386 z 2001 label "wykorzystuje" italic max_width 255 xyz 165 103 2001 to ref 135426
no_role_a no_role_b
multiplicity_a_pos 220 132 3000 multiplicity_b_pos 160 131 3000
multiplicity_a_pos 248 128 3000 multiplicity_b_pos 160 130 3000
end
relationcanvas 135682 relation_ref 192386 // ustawia produkt
from ref 135426 z 2001 label "ustawia produkt" italic max_width 255 xyz 439 106 2001 to ref 130818
from ref 135426 z 2001 label "ustawia produkt" italic max_width 255 xyz 453.5 103.5 2001 to ref 130818
no_role_a no_role_b
multiplicity_a_pos 583 132 3000 multiplicity_b_pos 391 132 3000
multiplicity_a_pos 583 129 3000 multiplicity_b_pos 419 128 3000
end
relationcanvas 136578 relation_ref 198914 // ustawia strategie
decenter_begin 252
decenter_end 298
from ref 130434 z 2001 label "ustawia strategie" italic max_width 255 xyz 1143 71 2001 to ref 128269
decenter_begin 423
decenter_end 451
from ref 130434 z 2001 label "ustawia strategie" italic max_width 255 xyz 1170 90 2001 to ref 128269
no_role_a no_role_b
multiplicity_a_pos 1324 99 3000 multiplicity_b_pos 1074 99 3000
multiplicity_a_pos 1326 115 3000 multiplicity_b_pos 1118 116 3000
end
relationcanvas 137346 relation_ref 199170 // uruchamia strategie
decenter_begin 97
decenter_end 363
from ref 128269 z 2001 label "uruchamia strategie" italic max_width 255 xyz 1315 202 2001 to ref 128525
decenter_begin 150
decenter_end 462
from ref 128269 z 2001 label "uruchamia strategie" italic max_width 255 xyz 1337 208 2001 to ref 128525
no_role_a no_role_b
multiplicity_a_pos 1360 252 3000 multiplicity_b_pos 1361 172 3000
multiplicity_a_pos 1383 250 3000 multiplicity_b_pos 1384 188 3000
end
relationcanvas 137474 relation_ref 199298 // uruchamia strategie
decenter_begin 699
decenter_end 228
from ref 128269 z 2001 label "uruchamia strategie" italic max_width 255 xyz 1540 186 2001 to ref 128653
decenter_begin 851
decenter_end 486
from ref 128269 z 2001 label "uruchamia strategie" italic max_width 255 xyz 1601 204 2001 to ref 128653
no_role_a no_role_b
multiplicity_a_pos 1591 255 3000 multiplicity_b_pos 1590 172 3000
end
relationcanvas 137730 relation_ref 199554 // zwraca informacje
decenter_begin 642
decenter_end 549
from ref 128269 z 2001 label "zwraca informacje" italic max_width 255 xyz 1143 109 2001 to ref 130434
no_role_a no_role_b
multiplicity_a_pos 1074 135 3000 multiplicity_b_pos 1324 134 3000
multiplicity_a_pos 1651 251 3000 multiplicity_b_pos 1650 188 3000
end
relationcanvas 138114 relation_ref 199682 // oblicza reszte
decenter_begin 402
decenter_end 300
from ref 128525 z 2006 label "oblicza reszte" italic max_width 255 xyz 1345 408 2006 to ref 137986
decenter_begin 479
decenter_end 421
from ref 128525 z 2006 label "oblicza reszte" italic max_width 255 xyz 1360 407 2006 to ref 137986
no_role_a no_role_b
multiplicity_a_pos 1371 449 3000 multiplicity_b_pos 1369 390 3000
multiplicity_a_pos 1386 447 3000 multiplicity_b_pos 1387 393 3000
end
relationcanvas 138754 relation_ref 199938 // zwraca reszte
decenter_begin 326
decenter_end 252
from ref 137986 z 2006 label "zwraca reszte" italic max_width 255 xyz 1347 552 2006 to ref 138626
decenter_begin 428
decenter_end 504
from ref 137986 z 2006 label "zwraca reszte" italic max_width 255 xyz 1359 561 2006 to ref 138626
no_role_a no_role_b
multiplicity_a_pos 1370 591 3000 multiplicity_b_pos 1370 533 3000
multiplicity_a_pos 1386 596 3000 multiplicity_b_pos 1387 548 3000
end
relationcanvas 138882 relation_ref 200066 // zwraca informacje
decenter_begin 744
decenter_end 670
from ref 137986 z 2006 label "zwraca informacje" italic max_width 255 xyz 1391 429 2006 to ref 128525
relationcanvas 140930 relation_ref 207234 // realizuje platnosc
decenter_begin 688
decenter_end 759
from ref 130434 z 2001 label "realizuje platnosc" italic max_width 255 xyz 1169 130 2001 to ref 128269
no_role_a no_role_b
multiplicity_a_pos 1430 390 3000 multiplicity_b_pos 1430 449 3000
end
relationcanvas 139010 relation_ref 200194 // zwraca informacje
decenter_begin 861
decenter_end 393
from ref 128525 z 2001 label "zwraca informacje" italic max_width 255 xyz 1430 228 2001 to ref 128269
no_role_a no_role_b
multiplicity_a_pos 1474 172 3000 multiplicity_b_pos 1474 252 3000
end
relationcanvas 139266 relation_ref 200450 // zwraca informacje
decenter_begin 694
decenter_end 976
from ref 128653 z 2001 label "zwraca informacje" italic max_width 255 xyz 1659 222 2001 to ref 128269
no_role_a no_role_b
multiplicity_a_pos 1695 172 3000 multiplicity_b_pos 1696 255 3000
end
relationcanvas 140034 relation_ref 200578 // zwrot informacji
decenter_begin 870
decenter_end 795
from ref 138626 z 2006 label "zwrot informacji" italic max_width 255 xyz 1403 571 2006 to ref 137986
no_role_a no_role_b
multiplicity_a_pos 1431 533 3000 multiplicity_b_pos 1433 591 3000
multiplicity_a_pos 1326 156 3000 multiplicity_b_pos 1118 156 3000
end
end

View File

@ -3,48 +3,69 @@ format 224
classinstance 128770 class_ref 164226 // ManagerPlatnosciGotowkowej
name "" xyz 628 546 2000
classinstance 128898 class_ref 178434 // ManagerPlatnosciKarta
name "" xyz 26 540 2000
name "" xyz 22 542 2000
classinstance 129282 class_ref 178562 // ManagerPlatnosci
name "" xyz 368 239 2006
name "" xyz 370 221 2006
classinstance 130946 class_ref 191746 // Klient
name "" xyz 4 121 2000
name "" xyz 46 34 2000
classinstance 131714 class_ref 128394 // AutomatKontroler
name "" xyz 371 127 2000
linkcanvas 129410 decenter_begin 467 decenter_end 586
from ref 128898 z 2007 to point 100 257
line 131330 z 2007 to ref 129282
dirscanvas 130690 z 1000 linkcanvas_ref 129410
backward_label "3 [if KARTA == formaPlatnosciId] powodzenieTransakcji := zrealizujPlatnosc(kwota:Money)" xyz 124 389 3000
linkcanvas 129538
from ref 129282 z 2007 to point 729 251
line 131458 z 2007 to ref 128770
dirscanvas 130818 z 1000 linkcanvas_ref 131458
forward_label "4 [else if GOTOWKA == formaPlatnosciId] powodzenieTransakcji := zrealizujPlatnosc(kwota:Money)" xyz 752 389 3000
name "" xyz 370 41 2000
classinstance 132738 class_ref 141197 // IPlatnoscStrategy
drawing_mode class name "" xyz 373 324 2000
classinstance 135170 class_ref 185218 // ManagerSprzedazy
name "" xyz 364 130 2000
linkcanvas 131842
from ref 130946 z 2001 to ref 131714
dirscanvas 131970 z 1000 linkcanvas_ref 131842
forward_label "1 wybranoFormePlatnosci(formaPlatnosciId:Int)" xyz 68 109 3000
linkcanvas 132482
from ref 131714 z 2007 to ref 129282
dirscanvas 132610 z 1000 linkcanvas_ref 132482
forward_label "1 wybranoFormePlatnosci(formaPlatnosciId:Int)" xyz 76 21 3000
linkcanvas 133762
from ref 132738 z 2001 to point 103 335
line 134402 z 2001 to ref 128898
dirscanvas 134146 z 1000 linkcanvas_ref 134402
forward_label "2 ustawFormePlatnosci(formaPlatnosciId:Int)" xyz 453 190 3000
forward_label "5 [if KARTA == formaPlatnosciId] zrealizujPlatnosc(kwota:Money)" xyz 124 431 3000
linkcanvas 133890 decenter_end 527
from ref 132738 z 2001 to point 738 337
line 134914 z 2001 to ref 128770
dirscanvas 134274 z 1000 linkcanvas_ref 134914
forward_label "6 [else if GOTOWKA == formaPlatnosciId] zrealizujPlatnosc(kwota:Money)" xyz 758 435 3000
linkcanvas 134018 decenter_begin 476
from ref 132738 z 2007 to ref 129282
dirscanvas 135042 z 1000 linkcanvas_ref 134018
backward_label "4 zrealizujPlatnosc()" xyz 452 278 3000
linkcanvas 135298
from ref 129282 z 2007 to ref 135170
dirscanvas 135426 z 1000 linkcanvas_ref 135298
backward_label "3 wykorzystajFormePlatnosci(formaPlatnosciId:Int)" xyz 454 181 3000
linkcanvas 135554
from ref 131714 z 2001 to ref 135170
dirscanvas 135682 z 1000 linkcanvas_ref 135554
forward_label "2 ustawIdFormyPlatnosci(formaPlatnosciId:Int)" xyz 453 91 3000
msgs
explicitmsg "wybranoFormePlatnosci(formaPlatnosciId:Int)"
forward ranks 1 "1" dirscanvas_ref 131970
msgs
explicitmsg "ustawFormePlatnosci(formaPlatnosciId:Int)"
forward ranks 2 "1.1" dirscanvas_ref 132610
explicitmsg "ustawIdFormyPlatnosci(formaPlatnosciId:Int)"
forward ranks 2 "1.1" dirscanvas_ref 135682
msgs
explicitmsg "wykorzystajFormePlatnosci(formaPlatnosciId:Int)"
backward ranks 3 "1.1.1" dirscanvas_ref 135426
no_msg
msgsend
explicitmsg "[if KARTA == formaPlatnosciId] powodzenieTransakcji := zrealizujPlatnosc(kwota:Money)"
backward ranks 3 "2" dirscanvas_ref 130690
msgsend
msg operation_ref 128013 // "zrealizujPlatnosc(in Kwota : Money)"
backward ranks 4 "2" dirscanvas_ref 135042
no_msg
explicitmsg "[else if GOTOWKA == formaPlatnosciId] powodzenieTransakcji := zrealizujPlatnosc(kwota:Money)"
forward ranks 4 "3" dirscanvas_ref 130818
explicitmsg "[if KARTA == formaPlatnosciId] zrealizujPlatnosc(kwota:Money)"
forward ranks 5 "3" dirscanvas_ref 134146
no_msg
explicitmsg "[else if GOTOWKA == formaPlatnosciId] zrealizujPlatnosc(kwota:Money)"
forward ranks 6 "4" dirscanvas_ref 134274
no_msg
msgsend
end

View File

@ -1,49 +1,57 @@
format 224
classinstance 128386 class_ref 178562 // ManagerPlatnosci
name "" xyz 364 540 2000
name "" xyz 363 493 2000
classinstance 128514 class_ref 185218 // ManagerSprzedazy
name "" xyz 359 395 2000
name "" xyz 359 379 2000
classinstance 130050 class_ref 191746 // Klient
name "" xyz 68 113 2000
name "" xyz 141 127 2000
classinstance 130434 class_ref 128394 // AutomatKontroler
name "" xyz 365 118 2000
name "" xyz 363 135 2000
classinstance 131842 class_ref 136462 // KatalogProduktow
name "" xyz 363 258 2000
linkcanvas 130562
name "" xyz 364 254 2000
linkcanvas 130562 decenter_begin 439
from ref 130050 z 2001 to ref 130434
dirscanvas 130690 z 1000 linkcanvas_ref 130562
forward_label "1 wybranoProdukt(produktId:Int)" xyz 136 99 3000
linkcanvas 131586
forward_label "1 wybranoProdukt(produktId:Int)" xyz 171 112 3000
linkcanvas 131586 decenter_begin 500
from ref 128514 z 2001 to ref 128386
dirscanvas 131714 z 1000 linkcanvas_ref 131586
forward_label "4 powodzeniePlatnosci := przyjmijPlatnosc(cena:Money)" xyz 446 473 3000
forward_label "5 przyjmijPlatnosc(cena:Money)" xyz 450 444 3000
linkcanvas 132738
from ref 131842 z 2001 to ref 128514
dirscanvas 133250 z 1000 linkcanvas_ref 132738
forward_label "3 ustawProdukt(nazwa:String, cena:Money)" xyz 448 332 3000
linkcanvas 132866
forward_label "4 ustawProdukt(nazwa:String, cena:Money)" xyz 448 322 3000
linkcanvas 132866 decenter_begin 510
from ref 130434 z 2001 to ref 131842
dirscanvas 132994 z 1000 linkcanvas_ref 132866
forward_label "2 cena := wybierzProdukt(produktId:Int)" xyz 447 194 3000
forward_label "2 wybierzProdukt(produktId:Int)" xyz 449 198 3000
linkcanvas 136066
from ref 131842 z 2001 to ref 130050
dirscanvas 136194 z 1000 linkcanvas_ref 136066
forward_label "3 cena:Money" xyz 235 224 3000
msgs
explicitmsg "wybranoProdukt(produktId:Int)"
forward ranks 1 "1" dirscanvas_ref 130690
msgs
explicitmsg "cena := wybierzProdukt(produktId:Int)"
explicitmsg "wybierzProdukt(produktId:Int)"
forward ranks 2 "1.1" dirscanvas_ref 132994
msgs
explicitmsg "cena:Money"
forward ranks 3 "1.1.1" dirscanvas_ref 136194
no_msg
explicitmsg "ustawProdukt(nazwa:String, cena:Money)"
forward ranks 3 "1.1.1" dirscanvas_ref 133250
forward ranks 4 "1.1.2" dirscanvas_ref 133250
no_msg
msgsend
msgsend
explicitmsg "powodzeniePlatnosci := przyjmijPlatnosc(cena:Money)"
forward ranks 4 "2" dirscanvas_ref 131714
explicitmsg "przyjmijPlatnosc(cena:Money)"
forward ranks 5 "2" dirscanvas_ref 131714
no_msg
msgsend
end

View File

@ -1,93 +1,54 @@
format 224
classinstance 128258 class_ref 164226 // ManagerPlatnosciGotowkowej
name "" xyz 390 13 2000 life_line_z 2000
classinstance 128386 class_ref 178562 // ManagerPlatnosci
name "" xyz 722 10 2000 life_line_z 2000
classinstance 128514 class_ref 185218 // ManagerSprzedazy
name "" xyz 989 13 2000 life_line_z 2000
classinstance 128642 class_ref 171906 // Sprzedaz
name "" xyz 1392 10 2000 life_line_z 2000
name "" xyz 386 21 2000 life_line_z 2000
classinstance 130562 class_ref 191746 // Klient
name "" xyz 19 13 2000 life_line_z 2000
classinstance 131842 class_ref 128394 // AutomatKontroler
name "" xyz 177 19 2000 life_line_z 2000
note 134658 "zwracanie wartosci z diagramu 2-2"
xyzwh 530 325 2000 201 69
note 134786 "zwracanie wartosci z diagramu 2-1"
xyzwh 850 373 2000 165 67
durationcanvas 129794 classinstance_ref 128386 // :ManagerPlatnosci
xyzwh 782 279 2010 11 79
end
durationcanvas 130050 classinstance_ref 128514 // :ManagerSprzedazy
xyzwh 1054 317 2010 11 102
end
durationcanvas 130306 classinstance_ref 128642 // :Sprzedaz
xyzwh 1426 401 2010 11 44
end
classinstance 134914 class_ref 198274 // ObliczanieReszty
name "" xyz 835 13 2000 life_line_z 2000
classinstance 135042 class_ref 198402 // Kasetka
name "" xyz 1066 18 2000 life_line_z 2000
durationcanvas 130690 classinstance_ref 130562 // :Klient
xyzwh 35 92 2010 11 45
xyzwh 35 122 2010 11 29
end
durationcanvas 131970 classinstance_ref 131842 // :AutomatKontroler
xyzwh 236 119 2010 11 46
end
durationcanvas 132994 classinstance_ref 131842 // :AutomatKontroler
xyzwh 236 257 2010 11 28
xyzwh 236 122 2010 11 42
end
durationcanvas 134018 classinstance_ref 128258 // :ManagerPlatnosciGotowkowej
xyzwh 490 122 2010 11 183
overlappingdurationcanvas 134274
xyzwh 496 183 2020 11 25
end
xyzwh 486 148 2010 11 65
end
durationcanvas 135170 classinstance_ref 134914 // :ObliczanieReszty
xyzwh 895 194 2010 11 51
end
durationcanvas 135426 classinstance_ref 135042 // :Kasetka
xyzwh 1095 233 2010 11 25
end
msg 130434 asynchronous
from durationcanvas_ref 130050
to durationcanvas_ref 130306
yz 401 2015 explicitmsg "()"
stereotype "<<create>>" xyz 1077 380 3000
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
args "czasWykonaniaTransakcji:DateTime,
nazwaProduktu:String,
cena:Money,
nazwaMetodyTransakcji:String,
statusSprzedazy:Boolean"
label_xy 1155 355
msg 131458 return
from durationcanvas_ref 134018
to durationcanvas_ref 129794
yz 281 2015 explicitmsg "powodzenieTransakcji:Boolean"
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
label_xy 536 259
msg 131714 return
from durationcanvas_ref 129794
to durationcanvas_ref 130050
yz 335 2020 explicitmsg "statusPlatnosci:Boolean"
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
label_xy 841 318
msg 132098 synchronous
from durationcanvas_ref 130690
to durationcanvas_ref 131970
yz 119 2030 explicitmsg "wprowadzonaKwota()"
yz 122 2030 explicitmsg "wprowadzonaKwota()"
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
args "wartosc:Money"
label_xy 19 94
msg 133122 return
from durationcanvas_ref 134018
to durationcanvas_ref 132994
yz 257 3005 explicitmsg "reszta:Money"
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
label_xy 335 234
label_xy 29 97
msg 134146 synchronous
from durationcanvas_ref 131970
to durationcanvas_ref 134018
yz 135 2015 explicitmsg "wprowadzonaKwota()"
yz 153 2015 explicitmsg "wprowadzonaKwota()"
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
args "wartosc:Money"
label_xy 265 112
reflexivemsg 134402 synchronous
to durationcanvas_ref 134274
yz 183 2025 explicitmsg "obliczReszte()"
label_xy 250 130
msg 135298 synchronous
from durationcanvas_ref 134018
to durationcanvas_ref 135170
yz 198 2015 explicitmsg "obliczReszte(doZaplacenia : Money, wprowadzonaKwota : Money)"
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
args "cena:Money, wprowadzonaKwota:Money"
label_xy 469 166
label_xy 501 171
msg 135554 synchronous
from durationcanvas_ref 135170
to durationcanvas_ref 135426
yz 234 2020 explicitmsg "zwrocReszte(money : Money)"
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
label_xy 918 212
end

View File

@ -1,78 +1,45 @@
format 224
classinstance 128258 class_ref 164226 // ManagerPlatnosciGotowkowej
name "" xyz 458 26 2000 life_line_z 2000
classinstance 128386 class_ref 178562 // ManagerPlatnosci
name "" xyz 723 26 2000 life_line_z 2000
classinstance 128514 class_ref 185218 // ManagerSprzedazy
name "" xyz 982 26 2000 life_line_z 2000
name "" xyz 468 27 2000 life_line_z 2000
classinstance 128642 class_ref 171906 // Sprzedaz
name "" xyz 1367 17 2000 life_line_z 2000
classinstance 130562 class_ref 191746 // Klient
name "" xyz 27 14 2000 life_line_z 2000
note 131330 "niepowodzenie"
xyzwh 606 306 2000 119 41
classinstance 131458 class_ref 128394 // AutomatKontroler
name "" xyz 232 28 2000 life_line_z 2000
name "" xyz 238 25 2000 life_line_z 2000
classinstance 132610 class_ref 198402 // Kasetka
name "" xyz 775 26 2000 life_line_z 2000
durationcanvas 129154 classinstance_ref 128258 // :ManagerPlatnosciGotowkowej
xyzwh 558 180 2010 11 116
end
durationcanvas 129794 classinstance_ref 128386 // :ManagerPlatnosci
xyzwh 783 280 2010 11 74
end
durationcanvas 130050 classinstance_ref 128514 // :ManagerSprzedazy
xyzwh 1047 342 2010 11 78
end
durationcanvas 130306 classinstance_ref 128642 // :Sprzedaz
xyzwh 1401 401 2010 11 44
xyzwh 568 179 2010 11 51
end
durationcanvas 130690 classinstance_ref 130562 // :Klient
xyzwh 43 144 2010 11 50
xyzwh 43 153 2010 11 41
end
durationcanvas 131842 classinstance_ref 131458 // :AutomatKontroler
xyzwh 291 154 2010 11 103
xyzwh 297 153 2010 11 43
end
durationcanvas 132738 classinstance_ref 132610 // :Kasetka
xyzwh 804 215 2010 11 28
end
msg 130434 asynchronous
from durationcanvas_ref 130050
to durationcanvas_ref 130306
yz 402 2015 explicitmsg "()"
stereotype "<<create>>" xyz 1070 381 3000
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
args "czasWykonaniaTransakcji:DateTime,
nazwaProduktu:String,
cena:Money,
nazwaMetodyTransakcji:String,
statusSprzedazy:Boolean"
label_xy 1164 377
msg 131074 return
from durationcanvas_ref 129154
to durationcanvas_ref 129794
yz 281 2015 explicitmsg "powodzenieTransakcji:Boolean"
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
label_xy 584 254
msg 131202 return
from durationcanvas_ref 129794
to durationcanvas_ref 130050
yz 343 2015 explicitmsg "statusPlatnosci:Boolean"
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
label_xy 850 326
msg 131970 synchronous
from durationcanvas_ref 130690
to durationcanvas_ref 131842
yz 155 2030 explicitmsg "zaprzestanieWprowadzaniaMonet()"
yz 154 2030 explicitmsg "zaprzestanieWprowadzaniaMonet()"
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
label_xy 59 134
label_xy 59 133
msg 132226 synchronous
from durationcanvas_ref 131842
to durationcanvas_ref 129154
yz 183 3005 explicitmsg "wprowadzonaKwota()"
yz 179 3005 explicitmsg "wprowadzonaKwota()"
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
args "wartosc:Money"
label_xy 317 157
msg 132482 return
label_xy 323 153
msg 132866 synchronous
from durationcanvas_ref 129154
to durationcanvas_ref 131842
yz 234 3005 explicitmsg "wartoscZwrotu:Money"
to durationcanvas_ref 132738
yz 215 2015 explicitmsg "zwrocWrzut()"
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
label_xy 359 208
args "wartosc:Money"
label_xy 602 194
end

51
models/167938.diagram Normal file
View File

@ -0,0 +1,51 @@
format 224
classinstance 128002 class_ref 191746 // Klient
name "" xyz 373 20 2000
classinstancecanvas 128130 classinstance_ref 128014 //
xyz 329 120 2000
end
classinstance 128258 class_ref 164226 // ManagerPlatnosciGotowkowej
name "" xyz 287 209 2000
classinstance 128386 class_ref 198274 // ObliczanieReszty
name "" xyz 328 314 2000
classinstance 128514 class_ref 198402 // Kasetka
name "" xyz 354 410 2000
linkcanvas 128642
from ref 128002 z 2001 to ref 128130
dirscanvas 130050 z 1000 linkcanvas_ref 128642
forward_label "1 wprowadzonaKwota(wartosc:Money)" xyz 412 82 3000
linkcanvas 128770
from ref 128130 z 2001 to ref 128258
dirscanvas 130562 z 1000 linkcanvas_ref 128770
forward_label "2 wprowadzonaKwota(wartosc:Money)" xyz 411 170 3000
linkcanvas 128898 decenter_end 495
from ref 128258 z 2001 to ref 128386
dirscanvas 130690 z 1000 linkcanvas_ref 128898
forward_label "3 obliczReszte(doZaplacenia : Money, wprowadzonaKwota : Money)" xyz 412 267 3000
linkcanvas 129026 decenter_end 550
from ref 128386 z 2001 to ref 128514
dirscanvas 130818 z 1000 linkcanvas_ref 129026
forward_label "4 zwrocReszte(monety : Money)" xyz 410 368 3000
msgs
explicitmsg "wprowadzonaKwota(wartosc:Money)"
forward ranks 1 "1" dirscanvas_ref 130050
msgs
explicitmsg "wprowadzonaKwota(wartosc:Money)"
forward ranks 2 "1.1" dirscanvas_ref 130562
msgs
explicitmsg "obliczReszte(doZaplacenia : Money, wprowadzonaKwota : Money)"
forward ranks 3 "1.1.1" dirscanvas_ref 130690
msgs
explicitmsg "zwrocReszte(monety : Money)"
forward ranks 4 "1.1.1.1" dirscanvas_ref 130818
no_msg
msgsend
msgsend
msgsend
msgsend
end

View File

@ -1,19 +1,16 @@
window_sizes 1920 1017 312 1603 859 105
window_sizes 1920 1017 408 1507 859 105
diagrams
active classdiagram_ref 141186 // design-model
1545 770 80 A1 0 83
collaborationdiagram_ref 154626 // 2-1-wprowadzenieNumeruProduktu
1316 687 100 A4 0 0
collaborationdiagram_ref 147970 // 2-2-wybranieFormyPlatnosci
1316 687 100 A2 0 0
sequencediagram_ref 154882 // 2-4-zaprzestanieWprowadzaniaMonet
1316 687 100 A2 0 0
1507 859 100 A1 0 153
end
show_stereotypes
selected class_ref 178434 // ManagerPlatnosciKarta
selected classdiagram_ref 141186 // design-model
open
class_ref 191746 // Klient
classinstance_ref 128014 //
attribute_ref 200066 // formaPlatnosciId
classinstance_ref 128654 //
class_ref 147853 // DodawanieProduktow
end
end

View File

@ -1,6 +1,6 @@
format 224
"models"
revision 44
revision 46
modified_by 2 "48516"
@ -1678,7 +1678,7 @@ format 224
activitydiagramsettings
end
classdiagram 141186 "design-model"
classdiagramsettings draw_all_relations no member_max_width 0 end
classdiagramsettings draw_all_relations no member_max_width 0 show_parameter_dir yes show_parameter_name yes end
size A1
end
@ -2304,7 +2304,7 @@ format 224
collaborationdiagram 154626 "2-1-wprowadzenieNumeruProduktu"
collaborationdiagramsettings end
size A4
size A3
end
collaborationdiagram 147970 "2-2-wybranieFormyPlatnosci"
@ -2312,11 +2312,16 @@ format 224
size A2
end
sequencediagram 154754 "2-3-wprowadzanieMonet"
sequencediagram 154754 "2-3-wprowadzanieMonetSeq"
sequencediagramsettings end
overlapping_bars size A2
end
collaborationdiagram 167938 "2-3-wprowadzanieMonetCom"
collaborationdiagramsettings end
size A4
end
sequencediagram 154882 "2-4-zaprzestanieWprowadzaniaMonet"
sequencediagramsettings end
overlapping_bars size A2
@ -2334,6 +2339,14 @@ format 224
end
classinstance 128014 ""
type class_ref 128394 // AutomatKontroler
attributes
end
relations
end
end
class 198274 "ObliczanieReszty"
visibility package
cpp_decl ""
@ -2360,7 +2373,7 @@ format 224
relation 199938 ---> name "zwraca reszte"
a role_name "" multiplicity "1" private
classrelation_ref 210306 // (zwraca reszte)
b multiplicity "1" parent class_ref 198402 // ZwrotReszty
b multiplicity "1" parent class_ref 198402 // Kasetka
end
classrelation 210434 // (zwraca informacje)
@ -2369,9 +2382,20 @@ format 224
classrelation_ref 210434 // (zwraca informacje)
b multiplicity "1" parent class_ref 164226 // ManagerPlatnosciGotowkowej
end
attribute 192898 "statusOperacji"
private explicit_type "Boolean"
cpp_decl ""
java_decl ""
php_decl ""
python_decl ""
idl_decl ""
mysql_decl ""
MysqlColumn
end
end
class 198402 "ZwrotReszty"
class 198402 "Kasetka"
visibility package
cpp_decl ""
java_decl ""
@ -2398,6 +2422,17 @@ format 224
classrelation_ref 210946 // (zwrot informacji)
b multiplicity "1" parent class_ref 198274 // ObliczanieReszty
end
attribute 193538 "statusOperacji"
private explicit_type "Boolean"
cpp_decl ""
java_decl ""
php_decl ""
python_decl ""
idl_decl ""
mysql_decl ""
MysqlColumn
end
end
class 141325 "SprzedazFactory"
@ -2481,7 +2516,8 @@ ${members}};
operation 128013 "zrealizujPlatnosc"
public explicit_return_type ""
nparams 0
nparams 1
param in name "Kwota" explicit_type "Money"
@ -2492,7 +2528,7 @@ ${members}};
operation 141954 "ustawStrategie"
public explicit_return_type ""
nparams 1
param in name "strategia" explicit_type "IPlatnoscStrategy"
param in name "strategia" type class_ref 141197 // IPlatnoscStrategy
@ -2532,12 +2568,23 @@ ${members}};
b multiplicity "1" parent class_ref 178434 // ManagerPlatnosciKarta
end
classrelation 209922 // (zwraca informacje)
relation 199554 ---> name "zwraca informacje"
classrelation 209922 // (ustawia powodzenie platnosci)
relation 199554 ---> name "ustawia powodzenie platnosci"
a role_name "" multiplicity "1" private
classrelation_ref 209922 // (zwraca informacje)
classrelation_ref 209922 // (ustawia powodzenie platnosci)
b multiplicity "1" parent class_ref 178562 // ManagerPlatnosci
end
attribute 193282 "statusOperacji"
private explicit_type "Boolean"
cpp_decl ""
java_decl ""
php_decl ""
python_decl ""
idl_decl ""
mysql_decl ""
MysqlColumn
end
end
class 136462 "KatalogProduktow"
@ -2604,6 +2651,7 @@ ${members}};
end
end
class 164994 "ZakupProduktu"
@ -2817,7 +2865,7 @@ ${members}};
end
operation 128386 "ustawFormePlatnosci"
operation 128386 "wykokrzystajFormePlatnosci"
public explicit_return_type ""
nparams 1
param in name "formaPlatnosciId" explicit_type "Int"
@ -2834,6 +2882,31 @@ ${members}};
classrelation_ref 209282 // (ustawia strategie)
b multiplicity "1" parent class_ref 141197 // IPlatnoscStrategy
end
classrelation 217474 // <unidirectional association>
relation 207106 --->
a role_name "" private
classrelation_ref 217474 // <unidirectional association>
b parent class_ref 141197 // IPlatnoscStrategy
end
classrelation 217730 // (realizuje platnosc)
relation 207234 ---> name "realizuje platnosc"
a role_name "" multiplicity "1" private
classrelation_ref 217730 // (realizuje platnosc)
b multiplicity "1" parent class_ref 141197 // IPlatnoscStrategy
end
attribute 193410 "statusOperacji"
private explicit_type "Boolean"
cpp_decl ""
java_decl ""
php_decl ""
python_decl ""
idl_decl ""
mysql_decl ""
MysqlColumn
end
end
class 178434 "ManagerPlatnosciKarta"
@ -2874,17 +2947,6 @@ ${members}};
b multiplicity "1" parent class_ref 178562 // ManagerPlatnosci
end
attribute 172802 "doZaplacenia"
private explicit_type "Money"
cpp_decl ""
java_decl ""
php_decl ""
python_decl ""
idl_decl ""
mysql_decl ""
MysqlColumn
end
operation 128514 "zrealizujPlatnosc"
public explicit_return_type ""
nparams 1
@ -2911,6 +2973,17 @@ ${members}};
classrelation_ref 210818 // (zwraca informacje)
b multiplicity "1" parent class_ref 141197 // IPlatnoscStrategy
end
attribute 193154 "statusOperacji"
private explicit_type "Blooean"
cpp_decl ""
java_decl ""
php_decl ""
python_decl ""
idl_decl ""
mysql_decl ""
MysqlColumn
end
end
class 164226 "ManagerPlatnosciGotowkowej"
@ -2923,17 +2996,6 @@ ${members}};
explicit_switch_type ""
mysql_decl ""
attribute 151682 "doZaplacenia"
private explicit_type "Money"
cpp_decl ""
java_decl ""
php_decl ""
python_decl ""
idl_decl ""
mysql_decl ""
MysqlColumn
end
attribute 151810 "wprowadzonaKwota"
private explicit_type "Money"
cpp_decl ""
@ -3014,6 +3076,17 @@ ${members}};
classrelation_ref 210562 // (zwraca informacje)
b multiplicity "1" parent class_ref 141197 // IPlatnoscStrategy
end
attribute 193026 "statusOperacji"
private explicit_type "Boolean"
cpp_decl ""
java_decl ""
php_decl ""
python_decl ""
idl_decl ""
mysql_decl ""
MysqlColumn
end
end
class 185218 "ManagerSprzedazy"
@ -3102,6 +3175,17 @@ ${members}};
classrelation_ref 135949 // (wykorzystuje)
b multiplicity "1" parent class_ref 141325 // SprzedazFactory
end
attribute 200066 "formaPlatnosciId"
private explicit_type "Int"
cpp_decl ""
java_decl ""
php_decl ""
python_decl ""
idl_decl ""
mysql_decl ""
MysqlColumn
end
end
class 171906 "Sprzedaz"
@ -3677,14 +3761,6 @@ ${members}};
overlapping_bars size A1
end
classinstance 128014 ""
type class_ref 128394 // AutomatKontroler
attributes
end
relations
end
end
classinstance 128142 ""
type class_ref 136462 // KatalogProduktow
attributes

View File

@ -13,8 +13,6 @@ Główni odbiorcy i oczekiwania względem systemu:
- Dział zaopatrzenia: odbiera raporty od automatu spożywczego
- Watchdog: Program wykrywający błędne działanie systemu.
Warunki wstępne:
----------------
@ -83,12 +81,12 @@ Wymagania specjalne:
- informacje o przebiegu każdego kroku transakcji są na bieżąco zapisywane w pamięci maszyny.
- numery produktów składają się z dwóch cyfr np. 01, 15
Wymagania technologiczne oraz ograniczenia na wprowadzane dane:
---------------------------------------------------------------
automat spożywczy jest podłączony do sieci internetowej za pomocą kabla sieciowego.
- automat spożywczy jest podłączony do sieci internetowej za pomocą kabla sieciowego.
- numery produktów składają się z dwóch cyfr np. 01, 15
Kwestie otwarte:
----------------

View File

@ -6,12 +6,10 @@
| Aktor | Cel |
|----------------------|---------------------------------------------------------------------------------|
| Klient | zakup produktów |
| Zaopatrzeniowiec | uzupełnienie brakujących produktów (lub tych które się kończą) |
| Zaopatrzeniowiec | aktualizuje stanu maszyny (w tym gotówkę) |
| Zaopatrzeniowiec | uzupełnienie brakujących produkty i monety |
| Serwisant | przeprowadzenie serwisu automatu |
| Serwisant | naprawa systemu w przypadku awarii |
| System płatniczy | realizacja transakcji gotówkowych i płatności kartą |
| Automat | maszyna wydająca posiłki i produkty |
| System płatniczy | realizacja transakcji gotówkowych i płatności kartą | |
| Dział zaopatrzeniowy | osoby odpowiedzialne za dostawę i zaopatrywanie automatu (w produkty i gotówkę) |
### Słownik:
@ -26,17 +24,17 @@
### UseCases:
**Use Case 1: Automat - Wysłanie komunikatu o stanie magazynowym produktów**
**Use Case 1: Dział zaopatrzeniowy - Wysłanie prośby o raport stanu magazynowego produktów**
Dział zaopatrzeniowy wysyła prośbę o raport stanu magazynowego wszystkich produktów do maszyny o odpowiednim ID. Automat sprawdza stan wszystkich produktów. Automat wysyła raport stanu do działu zaopatrzenia (ilość każdego z produktów).
**Use Case 2: Klient - zakup produktu**
Klient wprowadza dostępny numer produktu. Automat wyświetla konieczną do zapłacenia kwotę. Klient dokonuje płatności(patrz UC 3 lub UC4). Automat przygotowuje i wydaje produkt. Automat sprawdza stan magazynowy zakupionego produktu. Jeśli, stan magazynowy tego produktu jest równy minimalnemu stanowi magazynowemu, automat poprzez sieć internetową wysyła informację do działu zaopatrzenia ze swoim ID i ID produktu.
Klient wprowadza dostępny numer produktu. Automat wyświetla konieczną do zapłacenia kwotę. Klient dokonuje płatności(patrz UC 3 lub UC4). Automat przygotowuje i wydaje produkt. Automat sprawdza stan magazynowy zakupionego produktu.
**Use Case 3: Automat - płatność gotówką**
Klient wrzuca monety lub podaje banknoty. Automat sumuje pieniądze i wyświetla pozostałą wartość w czasie rzeczywistym. Jeśli wartość zamówienia zostanie osiągnięta, automat akceptuje płatność. Nadwyżka salda oznacza wydanie reszty. Jeżeli stan któregoś z nominałów jest mniejszy od minimalnego, automat wysyła informację do działu zaopatrzenia ze swoim ID, nominałem i jego ilością.
**Use Case 3: Klient - płatność gotówką**
Klient wrzuca monety lub podaje banknoty. Automat sumuje pieniądze i wyświetla pozostałą wartość w czasie rzeczywistym. Jeśli wartość zamówienia zostanie osiągnięta, automat akceptuje płatność. Automat wydaje resztę. Automat sprawdza stan magazynowy nominałow.
**Use Case 4: Automat - płatność kartą**
Klient wybiera płatność kartą. Automat uruchamia terminal. Terminal łączy się z serwisem płatniczym. Automat wyświetla wartość zamówienia na terminalu. Klient dokonuje płatności kartą. Automat wysyła dane potrzebne do przelewu. Automat przetwarza informacje zwrotną. Automat akceptuje transakcje.
**Use Case 4: Klient - płatność kartą**
Klient wybiera płatność kartą. Automat uruchamia terminal. Terminal łączy się z serwisem płatniczym. Automat wyświetla wartość zamówienia na terminalu. Klient dokonuje płatności kartą. Automat wysyła dane potrzebne do przelewu. Automat akceptuje transakcje.
**Use Case 5: Serwisant - Przeprowadzenie serwisu automatu - “diagnostyka automatu”**
Serwisant, przy pomocy dedykowanego systemu uruchamia opcję “diagnostyka automatu”. Automat zmienia swój stan z “gotowy do użytku” na “tryb diagnostyczny”. Automat przeprowadza przygotowaną procedurę diagnozy. Automat generuje raport i wysyła go do działu serwisu. Automat zmienia swój stan na “gotowy do użytku”.
@ -50,16 +48,16 @@ Zaopatrzeniowiec uzupełnia brakujący towar w automacie. Po uzupełnieniu wybie
**Use Case 8: Serwisant Naprawa automatu w przypadku awarii systemu**
Serwisant wyłącza automat. Następnie pobiera logi systemowe z automatu w celu ich analizy (znalezienia błędu). Po analizie serwisant podpina się do systemu i przełącza go w stan naprawy. Po naprawie serwisant przeprowadza scenariusz zakupu (patrz UC2) a następnie gdy przeszedł on testy to przełącza go w stan gotowości do działania.
**Use Case 9 Automat- Generowanie raportu ze sprzedaży**
**Use Case 9 Serwisant - Generowanie raportu ze sprzedaży**
Po wybraniu funkcji “Raport sprzedaży” automat generuje raport, w którym znajdują się informacje kiedy dany produkt został wykupiony i po jakim czasie od ostatniego uzupełninia towaru. Raport po wygenerowaniu zostanie wysłany na działu zaopatrzeniowego.
**Use Case 10 Zaopatrzeniowiec - Pobranie pieniędzy z automatu**
Zaopatrzeniowiec przełącza automat w stan pobrania pieniędzy. Czujniki w kasetce przeliczają ilość pieniędzy do wydania i następnie generują raport i wysyłają go do działu zaopatrzeniowego i właściciela automatu. Zaopatrzeniowiec pobiera pieniądze. Zaopatrzeniowiec wyłącza funkcję pobierania pieniędzy i przełącza automat w tryb “gotowy do użytku”.
**Use Case 11 Automat - Awaryjne wyłączenie się automatu**
**Use Case 11 Serwisant - Powiadomienie o awaryjnym wyłączeniu się automatu**
Automat jest odporny na pojawienie się błędów systemowych podczas działania. W przypadku natrafienia na jeden z nich, automat nie wyłącza się. Zostaje automatycznie pobierany raport błędu, a szczegółowe dane w nim zawarte zostają przesłane do specjalnego systemu powiadomień serwisanta.
**Use Case 12 Automat - Alarm przy próbie włamania**
**Use Case 12 Serwisant - Informacja o próbie włamania**
Automat za pomocą specjalnego czujnika wykrywa nieautoryzowane otwarcie. Oznacza to próbę włamania. Automat włącza alarm dźwiękowy oraz wysyła powiadomienie z dokładnym czasem oraz identyfikatorem maszyny. Serwisant otrzymuje powiadomienie w specjalnym systemie i jest w stanie wyłączyć alarm dźwiękowy zdalnie.