Gdy winnica jest dzielona — na przykład dlatego, że jedna połowa jest wydzierżawiana lub obsadzana nową odmianą winorośli — trzeba było dotychczas usunąć istniejącą winnicę i założyć dwie nowe. Przy tym ginęły wszystkie powiązane dane: zadania, zgłoszenia, rejestracja czasu.
Od teraz robi się to bezpośrednio na mapie: przeciągnij linię przez winnicę, a powierzchnia zostaje automatycznie przecięta na dwie części. Obie nowe winnice zachowują swoje powiązanie z oryginałem — zadania, zgłoszenia i rejestracje czasu pozostają zachowane.
Brzmi to prosto, ale było technicznie dość wymagające. Logika dzielenia poligonów musi radzić sobie ze wszystkimi możliwymi kształtami: powierzchnie wklęsłe, powierzchnie z dziurami oraz przypadki graniczne, gdzie linia przebiega dokładnie przez wierzchołek. Używamy do tego biblioteki Turf.js po stronie klienta i walidujemy wynik jeszcze raz po stronie serwera.
W ramach funkcji dzielenia przepracowaliśmy cały edytor powierzchni. Punkty można przesuwać bardziej intuicyjnie, uchwyty są większe i lepiej widoczne, a obsługa na urządzeniach dotykowych działa znacznie lepiej.
Najważniejsze ulepszenia w przeglądzie:
Zamiast zaczynać od zera, nowe gospodarstwa startują teraz z typowymi zadaniami winiarskimi: cięcie, wiązanie, odlistnianie, przerzedzanie, ochrona roślin, koszenie skarp i wiele więcej. Typy można w każdej chwili dostosować, uzupełnić lub usunąć.
47 typów zestawiliśmy wspólnie z winiarzami z Wachau, Burgenlandu i Południowej Styrii. Obejmują cały cykl roczny i są nazwane tak, jak jest to przyjęte w niemieckojęzycznym winiarstwie.
W tle nastąpiła duża aktualizacja techniczna: Spring Boot 4 z Hibernate 7 na serwerze, Angular 21 w dashboardzie i Riverpod 3 w aplikacji mobilnej. Te aktualizacje przynoszą lepszą wydajność i umożliwiają nam szybsze dostarczanie kolejnych funkcji.
Migracja do Spring Boot 4 była największą zmianą techniczną od naszego startu — ale już się opłaca. Czas uruchamiania serwera skrócił się o połowę.
Dla was jako użytkowników nic widocznego się przez to nie zmienia — ale szybsza podstawa umożliwia nam dostarczanie kolejnych funkcji znacznie szybciej.