Vlasnik izlazi iz DAL price za ovaj projekat - postaje samostalan proizvod. Preimenovanje je mehanicko (import putanje, imena fajlova/baze/UI naslova), NIJEDNA linija poslovne logike u internal/handler ili internal/service nije dirana - go build, go vet i go test ./... prolaze cisto pod novim imenom. - go.mod: module dal-license-server -> licence-server; 28 import linija u 13 .go fajlova usaglaseno - internal/config/config.go (+test): default DB_NAME licence_db - HTML sabloni (7 stranica) + 7 Playwright e2e spec fajlova: "DAL License Server" -> "Licence Server" u title/nav-brand, testovi usaglaseni u istom prolazu (nista ne moze da se razdvoji) - package.json/package-lock.json/.gitignore/.claude/project.json: ime projekta/binarnog fajla/work_dir - Usput: package.json je u repository.url nosio OTVORENU Gitea lozinku u cistom tekstu - uklonjena (URL sad bez kredencijala). Lozinka je i dalje u staroj git istoriji - preporuka: rotirati je posebno. - CLAUDE.md/README/API/TESTING/docs/SPEC/ARCHITECTURE/SETUP: naslovi, ASCII dijagrami, git clone URL, mysqldump primer, systemd predlozak u SETUP.md zamenjen stvarnim (obrazac terminia.service - journal log + graceful shutdown, ne stari minimalni predlozak) - Debrendiranje: "Univerzalni licencni server za sve DAL proizvode" -> "za vise proizvoda i klijenata"; potpis "Nenad Djukic / DAL d.o.o." -> "Nenad Djukic". NE dirano: nazivi ESIR/ARV/LIGHT_TICKET (tudji proizvodi, ne DAL brend), "DAL" kao stvaran naziv org-a u RBAC modelu (docs/loggerservice/README.md) - to je podatak, ne branding ovog servera. - docs/asp-terminia/, docs/loggerservice/: prozni pomeni imena servera Baza (dal_license_db -> licence_db) i deploy na 151 idu u posebnom koraku, posle preimenovanja Gitea repoa - vidi CLAUDE.md istorijsku belesku na dnu. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
64 lines
3.5 KiB
Markdown
64 lines
3.5 KiB
Markdown
# LoggerService — vizija i MVP (DOGOVORENO sa vlasnikom, 2026-07-24 uveče)
|
||
|
||
> Ovaj dokument je ISPRED svih ostalih u folderu: definiše ŠTA se gradi.
|
||
> Ostali fajlovi (01–05) opisuju delove; gde se razlikuju, ovaj je merodavan.
|
||
|
||
## Vizija
|
||
|
||
**LoggerService je samostalna aplikacija za servisne firme** — praćenje opreme,
|
||
ljudi i posla. **Kreće interno (vlasnikova firma), kasnije se PRODAJE drugim
|
||
servisnim firmama** (od prvog dana više-firmi u bazi — RBAC stablo iz 01).
|
||
|
||
Naši pametni terminali su **MODUL „Uređaji"** koji se **uključuje u opcijama**
|
||
po firmi — nisu centar aplikacije.
|
||
|
||
## Jezgro (uvek prisutno)
|
||
|
||
| # | Celina | Dogovor |
|
||
|---|---|---|
|
||
| 1 | **Firme/nalozi** | vlasnikova firma prva; multi-tenant od starta (orgs stablo + 4 role iz `01-rbac-model.md`) |
|
||
| 2 | **Oprema — KIČMA aplikacije** | tačno se prati **SVAKI komad** (serijalizovan): identitet, istorija, kod kog klijenta je ugrađen. Zalihe/delovi (količine) takođe postoje, ali serijalizovana oprema je suština |
|
||
| 3 | **Klijenti** | zavode se **pri otvaranju PRVOG naloga** za tog klijenta; uz klijenta se vezuju oprema, reklamacije i servisi |
|
||
| 4 | **Nalozi za posao** | tipovi: **ugradnja / servis / reklamacija** → dodeljen serviseru → ishod se upisuje u ISTORIJU OPREME |
|
||
| 5 | **Zaduženja** | ko je od servisera šta poneo/vratio (naslanja se na opremu/robu) |
|
||
| — | Evidencija rada (sati/obračun) | **KASNIJE** — vlasnik već ima softver za to |
|
||
|
||
## Modul „Uređaji" (uključiv u opcijama) — MVP obim
|
||
|
||
Za sada **najosnovnije**, sa dve tvrde odrednice od vlasnika:
|
||
|
||
1. **Upravljanje firmverom**: biće **VIŠE firmvera** (linija ASP: ASP-Terminia,
|
||
parking, garderoba…) — modul zna koji proizvod/verzija ide na koji uređaj i
|
||
omogućava podešavanje/dodelu FW (naslanja se na katalog `fw.terminia.net`,
|
||
vidi `03-provisioning-i-fw-katalog.md`).
|
||
2. **Direktno vezan za licencni server** (`licence-server`): modul
|
||
komunicira sa njim (proizvodi, licence po MAC-u, entitlements) — NE gradi
|
||
svoju paralelnu evidenciju licenci. Vidi paket [`docs/asp-terminia/`](../asp-terminia/README.md).
|
||
|
||
Uz to iz postojećeg: uređaji se sami javljaju (heartbeat/discovery formati u
|
||
`02-uredjaji-heartbeat-discovery.md`) → status u modulu.
|
||
|
||
**Prirodna sprega sa jezgrom:** terminal JE serijalizovana oprema (celina 2) —
|
||
modul „Uređaji" je specijalizacija komada opreme koji se uz to i sam javlja.
|
||
|
||
## Šta ovo menja u zadacima (04-zadaci.md)
|
||
|
||
- S1 (šema) se PROŠIRUJE jezgrom: `oprema` (serijalizovana, istorija),
|
||
`klijenti`, `nalozi` (ugradnja/servis/reklamacija), `zaduzenja`, `zalihe` —
|
||
pored već dogovorenih orgs/users/devices/entitlements/grants.
|
||
- „Dashboard" (S4) = MVP LoggerService aplikacije (jezgro), ne samo pregled
|
||
uređaja; modul „Uređaji" = toggle po firmi (entitlements).
|
||
- Infrastruktura je POSTAVLJENA 2026-07-24: `loggerservice.com` (+www) služi sa
|
||
151 (`/var/www/loggerservice`, nginx sajt `loggerservice`, Let's Encrypt);
|
||
`licenca.terminia.net` → backend 8090; `fw.terminia.net` → `/var/www/fw`.
|
||
|
||
## Redosled gradnje (predlog za agenta)
|
||
|
||
1. Šema jezgra (migracije, multi-tenant od starta) — uz postojeći MySQL.
|
||
2. Minimalni tok koji vlasnikova firma odmah koristi: **klijent (pri prvom
|
||
nalogu) → nalog (ugradnja) → komad opreme zaveden kod klijenta → istorija**.
|
||
3. Zaduženja.
|
||
4. Modul „Uređaji" (toggle): lista terminala + status + dodela FW + veza na
|
||
licencni server.
|
||
5. Prodajna spremnost (onboarding drugih firmi) — tek kad interno proradi.
|