format 224 classcanvas 128027 class_ref 154473 // System classdiagramsettings member_max_width 0 end xyz 394.4 1335.4 2000 end classcanvas 128155 class_ref 128105 // ZarzadzanieZamowieniamiController classdiagramsettings member_max_width 0 end xyz 1737.5 1279.45 2000 end note 128233 "Tworzenie potraw poprzez fabryke umozliwi zminimalizowanie ilosci bledow jakie jestesmy w stanie popelnic recznie tworzac potrawy za kazdym razem jak ich potrzebujemy. Wszystkie przepisy znajda sie w jednej spójnej klasie, przez co latwiejszy bedzie sposob weryfikacji poprawnosci kodu. Fabryka powoduje rowniez hermetyzacje kodu i ukrycie zlozonosci procesu tworzenia potraw." xyzwh 1189.4 281.2 2000 387 101 classcanvas 128283 class_ref 128233 // ZarzadcaZamowien classdiagramsettings member_max_width 0 end xyz 1737.5 988.1 2000 end classcanvas 128361 class_ref 174057 // IStrategiaSposobuUiszczaniaPlatnosci classdiagramsettings member_max_width 0 end xyz 612.75 918 2000 end classcanvas 128411 class_ref 128283 // Zamowienie classdiagramsettings member_max_width 0 end xyzwh 1760.25 425.95 2000 363 222 end classcanvas 128489 class_ref 174185 // FabrykaPromocji classdiagramsettings member_max_width 0 end xyz 2249.05 525.9 2000 end classcanvas 128539 class_ref 141289 // MenedzerBazyDanych classdiagramsettings member_max_width 0 end xyz 1244.95 1018.3 2000 end classcanvas 128667 class_ref 141417 // BazaDanych classdiagramsettings member_max_width 0 end xyz 1244.95 1203.55 2000 end classcanvas 128795 class_ref 147945 // FabrykaPotraw classdiagramsettings member_max_width 0 end xyz 1585.6 305.2 2000 end classcanvas 128923 class_ref 128155 // Potrawa classdiagramsettings member_max_width 0 end xyz 1833.5 279.25 2000 end classcanvas 129051 class_ref 128411 // Platnosc classdiagramsettings member_max_width 0 end xyz 494.75 662.25 2000 end classcanvas 129179 class_ref 128667 // Produkt classdiagramsettings member_max_width 0 end xyz 2116.1 291.85 2000 end note 129257 "Ze wzgeldu na wzorzec high cohesion i nalozenie dodatkowych ograniczen na tworzenie promocji wykorzystujemy fabryke strategii. Dodatkowe ograniczenia moga byc typu: promocja jest dostepna tylko we wtorki, lub promocja ma termin waznosci do..." xyzwh 2248.5 424.9 2000 309 87 classcanvas 129307 class_ref 128795 // Spizarnia classdiagramsettings member_max_width 0 end xyz 2110.6 164.85 2005 end note 129385 "Strategia obliczania znizki w celu prostego sposobu na obliczanie znizki w sposob modularny. Wykorzystanie strategii pozwoli na dowolny ich dobor, laczenie i przekazywanie w prosty sposob do klasy obliczajacej koszt zamowienia. Instancje klas implementujace IStrategiaObliczaniaZnizki sa zapisywane do zamowienia a potem wykorzystywane za pomoca tej klasy w celu obliczenia jej kosztow." xyzwh 2615 568.4 2000 309 113 classcanvas 129435 class_ref 129947 // PotrawaNiestandardowa classdiagramsettings member_max_width 0 end xyz 95.65 404.5 2005 end classcanvas 129513 class_ref 174313 // IStrategiaObliczaniaZnizki classdiagramsettings member_max_width 0 end xyz 2276.55 622.8 2005 end classcanvas 129563 class_ref 130331 // IloscProduktu classdiagramsettings member_max_width 0 end xyz 2134.6 39.55 2000 end classcanvas 129691 class_ref 144283 // Dostawa classdiagramsettings member_max_width 0 end xyz 2487.8 178.55 2000 end classcanvas 129819 class_ref 161001 // PotrawaNiestandardowaHandler classdiagramsettings member_max_width 0 end xyz 81.45 517.15 2000 end classcanvas 129947 class_ref 167529 // PlatnoscController classdiagramsettings member_max_width 0 end xyz 274.25 1012.75 2000 end classcanvas 130025 class_ref 174441 // StrategiaObliczaniaZnizkiOStalaWartosc classdiagramsettings member_max_width 0 end xyz 2274.85 752.8 2000 end classcanvas 130075 class_ref 137627 // PolaczenieZBankiemHandler classdiagramsettings member_max_width 0 end xyz 1029.85 698.95 2005 end classcanvas 130281 class_ref 174569 // StrategiaObliczaniaZnizkiZaZestaw classdiagramsettings member_max_width 0 end xyz 1983.35 752.4 2006 end note 130537 "Przykladowe klasy implementujace interfejs IStrategiaObliczaniaZnizki" xyzwh 2327.1 815.9 2000 147 61 classcanvas 131355 class_ref 134761 // StrategiaObliczaniaZnizkiProcentowej classdiagramsettings member_max_width 0 end xyz 2570.65 752.8 2000 end classcanvas 131433 class_ref 174697 // StrategiaSposobuUiszczaniaPlatnosciGotowka classdiagramsettings member_max_width 0 end xyz 895.5 832.5 2000 end classcanvas 131689 class_ref 174825 // StrategiaSposobuUiszczaniaPlatnosciKarta classdiagramsettings member_max_width 0 end xyz 895 918 2000 end classcanvas 131945 class_ref 174953 // StrategiaSposobuUiszczaniaPlatnosciPrzezBonPodarunkowy classdiagramsettings member_max_width 0 end xyz 895.25 1004.6 2006 end note 135145 "W celu zwiekszenia spojnosci klasy Platnosc kod odpowiedzialny za uiszczanie platnosci jest wydzielony do osobnych klas. W zaleznosci od wybranego sposobu platnosci uzywana jest odpowiednia strategia." xyzwh 643.2 969 2000 190 103 note 135529 "Przykladowe klasy implementujace interfejs IStrategiaSposobuUiszczaniaPlatnosci" xyzwh 1150.7 916.4 2000 226 48 relationcanvas 128105 relation_ref 128105 // tworzy decenter_end 527 from ref 128795 z 2001 label "tworzy" italic max_width 255 xyz 1795 306.5 2001 to ref 128923 no_role_a no_role_b multiplicity_a_pos 1818 330 3000 multiplicity_b_pos 1801 330 3000 end relationcanvas 128617 relation_ref 134633 // korzysta z decenter_begin 552 from ref 128411 z 2001 label "korzysta z" italic max_width 255 xyz 2161.5 531 3000 to ref 128489 no_role_a no_role_b multiplicity_a_pos 2245 553 3000 multiplicity_b_pos 2134 553 3000 end relationcanvas 129641 relation_ref 134889 // tworzy instancje implementujace interfejs from ref 128489 z 2006 label "tworzy instancje implementujace interfejs" italic max_width 255 xyz 2416.5 585.5 3000 to ref 129513 no_role_a no_role_b multiplicity_a_pos 2388 603 3000 multiplicity_b_pos 2385 573 3000 end relationcanvas 130203 relation_ref 128027 // uzywa from ref 128155 z 2001 label "uzywa" italic max_width 255 xyz 1111 1374 2001 to ref 128027 no_role_a no_role_b multiplicity_a_pos 530 1376 3000 multiplicity_b_pos 1725 1376 3000 end relationcanvas 130331 relation_ref 128155 // uzywa from ref 129947 z 2001 label "uzywa" italic max_width 255 xyz 462 1241.5 2001 to ref 128027 no_role_a no_role_b multiplicity_a_pos 439 1313 3000 multiplicity_b_pos 438 1171 3000 end relationcanvas 130459 relation_ref 128283 // uzywa from ref 128155 z 2001 label "uzywa" italic max_width 255 xyz 1943.5 1227.5 2001 to ref 128283 no_role_a no_role_b multiplicity_a_pos 1922 1188 3000 multiplicity_b_pos 1922 1264 3000 end relationcanvas 130587 relation_ref 128411 // agreguje from ref 128283 z 2001 label "agreguje" italic max_width 255 xyz 1946 817 2001 to ref 128411 no_role_a no_role_b multiplicity_a_pos 1922 657 3000 multiplicity_b_pos 1922 971 3000 end relationcanvas 130715 relation_ref 128539 // agreguje from ref 128411 z 2001 label "agreguje" italic max_width 255 xyz 1942 380.5 2001 to ref 128923 no_role_a no_role_b multiplicity_a_pos 1924 368 3000 multiplicity_b_pos 1924 406 3000 end relationcanvas 130793 relation_ref 135529 // korzysta z decenter_begin 504 decenter_end 512 from ref 129051 z 2001 label "korzysta z" italic max_width 255 xyz 719 843.5 3000 to ref 128361 no_role_a no_role_b multiplicity_a_pos 698 900 3000 multiplicity_b_pos 698 796 3000 end relationcanvas 130843 relation_ref 128667 // posluguje sie from ref 128283 z 2001 label "posluguje sie" italic max_width 255 xyz 1659 1088.5 2001 to ref 128539 no_role_a no_role_b multiplicity_a_pos 1640 1092 3000 multiplicity_b_pos 1729 1092 3000 end relationcanvas 130921 relation_ref 135657 // geometry VHV unfixed from ref 131355 z 2006 to point 2695.9 712.9 line 134121 z 2006 to point 2402.8 712.9 line 134249 z 2006 to ref 129513 no_role_a no_role_b no_multiplicity_a no_multiplicity_b end relationcanvas 130971 relation_ref 128795 // obsluguje decenter_begin 505 decenter_end 505 from ref 128539 z 2001 label "obsluguje" italic max_width 255 xyz 1447.5 1169.5 2001 to ref 128667 no_role_a no_role_b multiplicity_a_pos 1424 1186 3000 multiplicity_b_pos 1424 1163 3000 end relationcanvas 131049 relation_ref 135785 // from ref 130025 z 2006 to ref 129513 no_role_a no_role_b no_multiplicity_a no_multiplicity_b end relationcanvas 131099 relation_ref 128923 // korzysta z decenter_begin 37 decenter_end 912 from ref 128411 z 2001 label "korzysta z" italic max_width 255 xyz 1776 379 2001 to ref 128795 no_role_a no_role_b multiplicity_a_pos 1757 354 3000 multiplicity_b_pos 1759 408 3000 end relationcanvas 131177 relation_ref 135913 // decenter_begin 509 from ref 130281 z 2007 to point 2110.2 712.9 line 133225 z 2007 to point 2400.2 714.6 line 136041 z 2007 to ref 129513 no_role_a no_role_b no_multiplicity_a no_multiplicity_b end relationcanvas 131227 relation_ref 129051 // zawiera decenter_begin 527 decenter_end 559 from ref 128923 z 2001 label "zawiera" italic max_width 255 xyz 2064.5 310 2001 to ref 129179 no_role_a no_role_b multiplicity_a_pos 2108 329 3000 multiplicity_b_pos 2048 329 3000 end relationcanvas 131561 relation_ref 136041 // from ref 131433 z 2001 to point 855.5 855.5 line 132969 z 2001 to point 855.5 940 line 133097 z 2001 to ref 128361 no_role_a no_role_b no_multiplicity_a no_multiplicity_b end relationcanvas 131611 relation_ref 129307 // uzywa geometry VH unfixed decenter_begin 508 from ref 129819 z 2001 label "uzywa" italic max_width 255 xyz 237.5 995.5 2001 to point 232 1357 line 133865 z 2001 to ref 128027 no_role_a no_role_b multiplicity_a_pos 383 1376 3000 multiplicity_b_pos 218 647 3000 end relationcanvas 131817 relation_ref 136169 // from ref 131689 z 2001 to ref 128361 no_role_a no_role_b no_multiplicity_a no_multiplicity_b end relationcanvas 132073 relation_ref 136297 // from ref 131945 z 2007 to point 855.5 1026 line 132457 z 2007 to point 855.5 940 line 132585 z 2007 to ref 128361 no_role_a no_role_b no_multiplicity_a no_multiplicity_b end relationcanvas 133275 relation_ref 129819 // korzysta z decenter_end 690 from ref 129819 z 2001 label "korzysta z" italic max_width 255 xyz 1052 561.5 2001 to ref 128411 no_role_a no_role_b multiplicity_a_pos 1746 584 3000 multiplicity_b_pos 391 582 3000 end relationcanvas 133403 relation_ref 129947 // agreguje decenter_begin 71 from ref 128411 z 2006 label "agreguje" italic max_width 255 xyz 1060.5 429 2006 to ref 129435 no_role_a no_role_b multiplicity_a_pos 364 445 3000 multiplicity_b_pos 1742 445 3000 end relationcanvas 133531 relation_ref 130075 // korzysta z decenter_begin 510 decenter_end 527 from ref 129819 z 2006 to point 40 580 line 133481 z 2006 to point 40 211.5 line 133609 z 2006 label "korzysta z" italic max_width 255 xyz 1052.5 199 2006 to ref 129307 no_role_a no_role_b multiplicity_a_pos 2097 216 3000 multiplicity_b_pos 67 588 3000 end relationcanvas 133659 relation_ref 130203 // przechowuje from ref 129307 z 2006 label "przechowuje" italic max_width 255 xyz 2265.5 138 2006 to ref 129563 no_role_a no_role_b multiplicity_a_pos 2245 129 3000 multiplicity_b_pos 2244 149 3000 end relationcanvas 134171 relation_ref 130459 // zawiera decenter_end 477 from ref 129307 z 2006 label "zawiera" italic max_width 255 xyz 2269 263.5 2006 to ref 129179 no_role_a no_role_b multiplicity_a_pos 2248 274 3000 multiplicity_b_pos 2245 254 3000 end relationcanvas 134299 relation_ref 130587 // jest zawarty w decenter_begin 345 decenter_end 128 from ref 129179 z 2001 to point 2221.4 452.8 line 135785 z 2001 label "jest zawarty w" italic max_width 255 xyz 2139.5 440.5 2001 to ref 128411 no_role_a no_role_b multiplicity_a_pos 2134 459 3000 multiplicity_b_pos 2208 355 3000 end relationcanvas 134427 relation_ref 130715 // przechowuje geometry VH unfixed decenter_end 527 from ref 129691 z 2001 to point 2511 82 line 133737 z 2001 label "przechowuje" italic max_width 255 xyz 2420 69.5 2001 to ref 129563 no_role_a no_role_b multiplicity_a_pos 2400 91 3000 multiplicity_b_pos 2497 161 3000 end relationcanvas 134555 relation_ref 130843 // aktualizuje decenter_begin 541 decenter_end 527 from ref 129691 z 2006 label "aktualizuje" italic max_width 255 xyz 2426 194 2006 to ref 129307 no_role_a no_role_b multiplicity_a_pos 2419 216 3000 multiplicity_b_pos 2469 216 3000 end relationcanvas 134633 relation_ref 136681 // decenter_begin 156 decenter_end 837 from ref 129513 z 2006 to point 2318.2 608.8 line 134889 z 2006 to ref 128411 no_role_a no_role_b no_multiplicity_a no_multiplicity_b end relationcanvas 134683 relation_ref 130971 // korzysta z geometry VH unfixed decenter_end 518 from ref 129947 z 2001 label "korzysta z" italic max_width 255 xyz 461 861.5 2001 to point 451 726 line 133993 z 2001 to ref 129051 no_role_a no_role_b multiplicity_a_pos 479 734 3000 multiplicity_b_pos 440 994 3000 end relationcanvas 134811 relation_ref 131099 // posluguje sie decenter_begin 504 decenter_end 505 from ref 129051 z 2001 to point 712.1 621.5 line 132713 z 2001 label "posluguje sie" italic max_width 255 xyz 1048.5 610 2001 to point 1444 621.5 line 132841 z 2001 to ref 128539 no_role_a no_role_b multiplicity_a_pos 1424 1001 3000 multiplicity_b_pos 700 644 3000 end relationcanvas 134939 relation_ref 131227 // posluguje sie decenter_begin 518 decenter_end 541 from ref 129051 z 2006 label "posluguje sie" italic max_width 255 xyz 948 715 2006 to ref 130075 no_role_a no_role_b multiplicity_a_pos 1014 735 3000 multiplicity_b_pos 939 735 3000 end relationcanvas 135067 relation_ref 131355 // uzywa from ref 129947 z 2001 label "uzywa" italic max_width 255 xyz 928 1074 2001 to ref 128539 no_role_a no_role_b multiplicity_a_pos 1229 1097 3000 multiplicity_b_pos 648 1096 3000 end relationcanvas 137499 relation_ref 137883 // obsluguje decenter_begin 508 decenter_end 509 from ref 129819 z 2006 label "obsluguje" italic max_width 255 xyz 235.5 490 2006 to ref 129435 no_role_a no_role_b multiplicity_a_pos 218 480 3000 multiplicity_b_pos 218 502 3000 end end