Praca zespołowa

Dwóch lub więcej koordynatorów może równolegle układać grafik. raTool pokazuje obecność, synchronizuje zmiany i wykrywa konflikty zapisu.

Praca zespołowa

W większych stacjach grafiku nie układa jeden koordynator - często pracują nad nim dwie lub więcej osób równolegle (np. koordynator stacji + koordynatorzy poszczególnych ZRM-ów). raTool wspiera tę pracę: pokazuje, kto akurat ma otwarty grafik, na bieżąco synchronizuje zmiany między edytorami i wykrywa konflikty zapisu, jeśli dwie osoby modyfikują to samo miejsce.

Wskaźnik obecności

Po wejściu w Budowanie grafiku raTool publikuje informację o Twojej obecności i pobiera listę innych edytorów, którzy mają otwartą tę samą stronę. Nad siatką pojawia się odznaka obecności:

  • Tekst - np. „1 osoba edytuje", „2 osoby edytują", „5 osób edytuje".
  • Awatary - do czterech pierwszych osób (z imienia, ze zdjęciem profilowym lub inicjałem). Jeśli jest więcej, kolejne reprezentuje „+N".

Odznaka znika, gdy jesteś sam (lub gdy inni opuszczą stronę). Twoja własna obecność nie jest wliczana do licznika - widzisz tylko innych.

Synchronizacja w czasie rzeczywistym

Każda zmiana zapisana przez innego edytora pojawia się w Twoim widoku automatycznie, bez odświeżania. Gdy ktoś inny zapisze grafik:

  • Komórki, które zmienił, aktualizują się w Twoim widoku (np. nowo przypisany ratownik pojawia się w komórce).
  • raTool pokazuje toast w prawym dolnym rogu z komunikatem „{imię} zaktualizował grafik". Jeśli zmian było więcej naraz, dodatkowo widzisz licznik: „{imię} zaktualizował grafik (3 zmiany)".

Toasty są agregowane - jeśli ten sam edytor zapisze kilka razy w krótkim odstępie, raTool grupuje powiadomienia, by Cię nie zalewać.

Konflikt zapisu

Gdy zaczynasz przypisywać ratowników, raTool zapamiętuje stan komórek, który widzisz. Jeśli w tym samym czasie ktoś inny zmodyfikuje te same komórki i zapisze przed Tobą, Twoja próba zapisu wykryje konflikt.

Wtedy raTool pokazuje dialog „Konflikt przy zapisywaniu (N slotów)" ze szczegółową listą spornych miejsc. Dla każdego widzisz:

  • Data, zmiana, ZRM, pozycja - który slot dokładnie.
  • Chciałeś przypisać: imię ratownika - Twoja zaplanowana zmiana.
  • Obecnie przypisany: imię ratownika - to, co aktualnie jest w bazie po zapisie kogoś innego.

Masz dwie opcje:

  • „Zostaw aktualne" - przyjmujesz wersję drugiego edytora dla spornych slotów. Twoje pozostałe (niesporne) zmiany zapisują się normalnie.
  • „Wymuś moje zmiany" - nadpisujesz cudze decyzje swoimi. raTool zapisze wszystko, co miałeś w pamięci - w tym sporne sloty z Twoim przydziałem.

Po wyborze dialog się zamyka, a stan grafiku zostaje uzgodniony.

Utracona synchronizacja

Jeśli przeglądarka straci połączenie z serwerem na dłużej (np. długi sleep laptopa, problem z siecią), raTool może utracić bieżący kontakt. Wtedy zobaczysz komunikat „Utracono synchronizację z serwerem. Odśwież stronę, aby zobaczyć aktualny grafik." - odśwież stronę w przeglądarce (Cmd+R na macOS, F5 na Windows). Stan zostanie pobrany od nowa, łącznie z wszelkimi zmianami zapisanymi przez innych w trakcie rozłączenia.

Co widzą inni edytorzy

raTool pokazuje innym koordynatorom fakt Twojej obecności (imię, awatar) i Twoje zapisane zmiany. Nie pokazuje:

  • Co aktualnie zaznaczasz w popoverze (przed kliknięciem w nazwisko ratownika).
  • Niezapisanych zmian w pamięci Twojej przeglądarki.
  • Nawigacji w obrębie siatki.

Inaczej mówiąc: synchronizacja działa per-zapis, nie per-klik. Edycja jest lokalna, dopóki nie klikniesz „Zapisz grafik".

Najlepsze praktyki przy pracy zespołowej

  • Komunikujcie się poza raTool (telefon, czat zespołowy), gdy zaczynacie układać razem - łatwiej podzielić odpowiedzialności (np. „ja biorę ZRM-y typu S, ty bierzesz typu P").
  • Zapisuj często - im rzadziej zapisujesz, tym większa szansa konfliktu.
  • Patrz na odznakę obecności - jeśli widzisz kogoś, kto akurat edytuje ten sam ZRM, daj mu kilka minut zanim zaczniesz w tym samym miejscu.
  • Po konflikcie czytaj listę - dialog pokazuje dokładnie, którzy ratownicy są w grze. Decyzję podejmuj świadomie, nie automatem.

Co może pójść nie tak

  • Nie widzę odznaki obecności mimo że ktoś inny jest na stronie - sprawdź połączenie internetowe; obecność wymaga aktywnego kanału WebSocket. Odśwież stronę.
  • Toast „X zaktualizował grafik" pojawia się, ale komórki się nie zmieniają - błąd synchronizacji. Odśwież stronę.
  • Konflikt mimo że nikt inny nie edytuje - najprawdopodobniej zostawiłeś otwartą drugą kartę z tym samym grafikiem i tam wprowadziłeś zmiany. Zamknij duplikaty.

Co dalej?