Aszinkron jobok és értesítések: adatmodell, végpontok, jogosultság
A fő jobok és értesítések adatmodellje, a NAV-lekérés indítása és időkerete, a csengő végpontjai, a felhasználónkénti szűrés és a jogkulcsok besorolása.
Az aszinkron „fő job” lista a NAV számla-lekérések haladását, állapotát és queue-tétel számlálóit mutatja; a fejléc csengője és az Értesítések lista ugyanennek az értesítési táblának két nézete. A fő rendszergazda minden jobot lát, más felhasználó a sajátjait; értesítést mindenki csak a sajátját.
Adatmodell
A táblanevek a telepítés saját előtagjával állnak az adatbázisban.
| Tábla | Szerep | Kapcsolat |
|---|---|---|
job | fő job: típus, haladás, státusz, felhasználó | a queue-tételek a jobhoz kötődnek |
cron_queue | a job tételei | job-azonosító |
notification | értesítések: típus, olvasottság, kézbesítettség, forrás-link | user_id, job-azonosító |
Végpontok
| Végpont | Működés | Jog |
|---|---|---|
job.list, .progress, .cancel, .notificationspage | lapozott lista; haladás-térkép; leállítás (rekord és letöltött eredmény megmarad); átirányítás az értesítésekre filter_job_id-val | list |
job.delete | a kijelöltek törlése saját vagy super szűréssel | delete |
job.navquery | NAV-lekérés a számla-szűrőből: cégenkénti időablakok (csak aktív, adószámos, NAV-belépős cég), majd a szinkron időkeretig (job_sync_budget beállítás, alap 8 mp) a worker meghívása; kész eredménynél azonnali válasz, egyébként 202 Accepted | finance/invoice + navdata |
job.testquery | diagnosztikai teszt-job egy rögzített céggel és rögzített időszakkal | finance/invoice + navdata |
job.notifications | a felhasználó ki nem küldött értesítései (legfeljebb 20) felugró üzenetnek, majd kézbesítettre állítás | bejelentkezés |
job.bell | olvasatlan szám, 5 legutóbbi, 10 kézbesítetlen (ezek kézbesítettre állítása) | bejelentkezés |
job.bellread | minden saját értesítés olvasott | bejelentkezés |
notification.list, .markread, .markreadall | szűrő: típus, olvasottság, job; a megnézés nem jelöl olvasottat | list |
notification.delete | kijelölt saját értesítések fizikai törlése | delete |
notification.deleteall | minden saját értesítés törlése darabszámmal | deleteall (BASE) |
A forrás-linket egy biztonságos link-képző állítja elő.
Jogosultság
system/job:listbesorolás nélküli,deleteésdebugnincs a seedekben.system/notification:listbesorolás nélküli,deleteallBASE,deleteésdebugnincs a seedekben.- Tartalmi hatókör: a job-modell
user_idés super szerint szűr; az értesítés-modell minden műveletnél a sajátuser_id-ra.
Ismert korlátok
A job.testquery rögzített cég-azonosítóval és rögzített időszakkal fut, csak diagnosztikára.