Celem przewodnim aplikacji jest zachęcenie pracowników do podjęcia aktywności fizycznej w trakcie podróży do pracy, przesiadając się z samochodów oraz kominukacji publicznej na rower.
-
Obsługa kont użytkownika:
i. rejestracja
ii. logowanie
iii. wylogowywanie -
Drużyny:
i. możliwość stworzenia własnej drużyny
ii. możliwość dołączenia do istniejącej drużyny
iii. możliwość przeglądania listy istniejących drużyn iv. dostęp do widoku drużynowego po dołączeniu -
Trasy:
i. możliwość wgrania własnej trasy z pliku w formacie .GPX
ii. możliwość przeglądania własnych tras ich oraz podsumowań w formie statystyk takich jak: dystans, czas, średnia prędkość, maksymalna prędkość
iii. możliwość wyświetlenia własnych tras na mapie -
Statystyki drużynowe:
i. możliwość przeglądywania statystyk drużynowych w postaci podsumowania zdobytych punktów w wybranym przedziale czasowym przez każdego członka drużyny
-
Pokrycie kodu:
-
Zrealizowane funkcjonalności:
- konfiguracja Kubernetesa oraz Dockerhuba
- konfiguracja oraz modyfikacje Jenkinsa
- wartstwa serwisów (Spring)
- serwisy oraz kontrolery dotyczące użytkowników (User service)
- serwisy oraz kontrolery dotyczące tras oraz statystyk (Route service)
- wartstwa dostępu do danych:
- implementacja obsługi niestandardowych pól (Postgis)
-
Github
i. Commity: 142
ii. Linie kodu: 13929
- Pokrycie kodu:
- Zrealizowane funkcjonalności:
- Integracja z Kafka (Kafka service)
- konsument
- producent
- Konfiguracja Jenkinsa, Nexusa
- Konfiguracja bazy danych Postgres
- Generacja DDL w pgModeler
- Github
i. Commity: 44
ii. Linie kodu: 347
- Pokrycie kodu: 30.79%
- Zrealizowane funkcjonalności:
i. Front-end- konfiguracja i instalacja Angular 7
- komplet komponentów (m. in. do logowania, rejestracji, uploadu i wyświetlania tras, obsługi mapy, obsługi zespołów, wyświetlania statystyk)
- serwisy do łączenia z RESTem
- kompletny interfejs użytkownika
- Github
i. Commity: 30
ii. Linie kodu: 15649
- Pokrycie kodu:
- Zrealizowane funkcjonalności:
i. DevOps:- konfiguracja Jenkinsa + blueocean
- konfiguracja Sonarqube i Jacoco
ii. Warstwa dostępu do danych:
* Generacja DAO oraz POJOs w JOOQ
iii. Warstwa serwisów:
* Implementacja kontrolerów oraz serwisów
dotyczących przynależności do drużyn (Membership service) oraz samych drużyn (Team Service).
- Github
i. Commity: 30
ii. Linie kodu: 864
Aplikacja może zostać zbudowana za pomocą mavena z odpowiediednim pom.xml, który uruchomi osobne budowanie dla obydwu modułów (backendu oraz frontendu):
git clone https://github.com/pik-ride2work/Ride2Work.git
cd Ride2Work/
mvn clean install
Przed wywołaniem komendy należy pamiętać o dostarczeniu odpowiednich plików properities z hasłem do bazy danych oraz konfiguracją kafki.
Aplikacja może zostać uruchomiona na Dockerze/Kubernetesie z wykorzystaniem udostępnionego obrazu na stronie: Link.