Problem i kontekst
Rozwiązanie rozszerza Jira Server/Data Center o plugin administracyjny, który pobiera dane o nieobecnościach z systemu HR i przekształca je w wpisy czasu pracy. Projekt obejmuje konfigurację źródła danych, mapowanie słownika nieobecności, preview synchronizacji, scheduler oraz warstwę diagnostyczną dla konfliktów i braków mapowań.
Co robi rozwiązanie
- pobiera dane nieobecności z jednego aktywnego źródła HR,
- rozbija rekordy na docelowe wpisy dzienne i godzinowe,
- mapuje działy i typy nieobecności na docelowe zgłoszenia,
- umożliwia manualny preview i execute na zapisanym snapshotcie,
- utrzymuje historię wykonań, konflikty, brakujących użytkowników i braki mapowań,
- uruchamia synchronizację cykliczną przez scheduler.
Architektura
flowchart LR
A[Administrator pluginu] --> UI[UI konfiguracji i operacji]
UI --> CFG[Konfiguracja AO]
UI --> PREV[Preview synchronizacji]
PREV --> HR[Zrodlo danych HR]
PREV --> MAP[Mapowanie typow i dzialow]
PREV --> EXEC[Manual execute / Scheduler]
EXEC --> TEMPO[Worklogi systemu czasu pracy]
EXEC --> HIST[(Historia i diagnostyka)]
Dlaczego w portfolio
- pokazuje złożoną integrację HR → Jira/Tempo z warstwą bezpiecznego preview,
- łączy konfigurację administracyjną, scheduler, persystencję i logikę domenową,
- dobrze reprezentuje projekt enterprise z naciskiem na idempotencję i diagnostykę operacji.
Anonimizacja
- usunięto nazwy instancji, adresy środowisk i konkretne grupy organizacyjne,
- pozostawiono jedynie klasę problemu i publicznie bezpieczną architekturę,
- pominięto szczegóły SQL i dane osobowe z warstwy HR.