![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 270 Pomógł: 184 Dołączył: 7.10.2012 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Aplikacja generalnie polega na tym, że raportujemy sobie czas pracy możemy wprowadzać korekty itd.
Mam takich kilka scenariuszy:
Moje pytanie brzmi jak najlepiej będzie te scenariusze obsłużyć używając DateTime ? Macie jakieś pomysły ? Miał może ktoś z was kiedyś podobny problem i jest w stanie podzielić się wiedzą jak w łatwy sposób to można osiągnać? Chodzi mi najbardziej o problem w scenariuszach 2 i 3 wydają mi się najbardziej skomplikowane. Ten post edytował rad11 5.06.2018, 06:56:54 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 898 Pomógł: 48 Dołączył: 2.11.2005 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
SmokAnalog, ale walidacja to jedno, a scenariusze wyżej to co innego. Mi tutaj chodzi o to, że połowa tych problemów nie musi być rozwiązywana, a już na pewno nie powinna być rozwiązywana automatycznie. Np. to że masz prace nad taksiem A dzisiaj od 9 do 17 i dodajesz drugi task nad którym pracowałeś 11-12. Teraz wg scenariusza dzieli się bazowy task na 2 i po środku wstawia task b. Ale co jak użytkownik po zapisaniu zauważy, że taks B miał być z datą wczorajszą? Zmieni na wczorajszą, ale task A zostanie już z dziurą. Itd itp. Takie rzeczy będą zdarzały się nagminnie, bo ludzie się mylą.
MZ w backendzie tak jak pisałem wystarczy dać walidację czy taski na siebie nie nachodzą i jak nachodzą to zwracać wyjątek, a całą "logikę" żeby było dobrze zostawić użytkownikowi, bo to on wie co dokładnie chce zapisać - z dobrym interfejsem po prostu zrobi to co chce. Tj. w interfejsie sam musi ustalić podział tasku, czy tak go "przeciągać" aby nie nachodził na siebie itp. W backendzie wystarczy jedynie sprawdzać czy finalnie nic na siebie nie nachodzi i tyle. Ogólnie uważam, że oparcie tego na formularzach jest słabe i niewygodne z punktu widzenia użyteczności + powoduje sporo problemów pobocznych i osobiście uważam, że są błędne założenia wstępne np. z tym, że system automatycznie dzieli taski. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 03:42 |