NSILM

Üldkirjeldus

Teenus võimaldab salvestada eesmärgi staatuseks "Arhiveeritud". Seejuures lõpetatakse kõik eesmärgiga seotud tegevused ja tööülesanded.

Seotud andmeobjektid:

Seotud Jira taskid

NSIL-945 - Getting issue details... STATUS

Eeltingimused ja kasutusõigused

  • Kui tegemist on asutusepõhise eesmärgiga (Goal.goalScope = INSTITUTIONAL):
    • Kasutajal on seos eesmärgi asutusega ja sama asutuse eesmärkide arhiveerimise ja kustutamise õigus
      • Goal.institution.id = Kasutaja poolt valitud rolliga seotud asutus
      • Õigust reguleerib privileeg: HSILM_PLANNING_GOAL_ARCHIVE_DELETE.
  • Kui tegemist on isikupõhise eesmärgiga (Goal.goalScope = INDIVIDUAL):
    • Kasutaja on eesmärgi omanik ja tal on seos eesmärgi asutuse ja ametikohaga.
      • Goal.personalCode = Kasutaja isikukood
      • Goal.institution.id = Kasutaja poolt valitud rolliga seotud asutus
      • Goal.jobsite = Kasutaja poolt valitud rolliga seotud ametikoht
      • Eraldi privileegi ei ole vaja.
  • Või kasutaja on eesmärgi meeskonnas ja planeerimise meeskonna liikme rollil on eesmärkide arhiveerimise ja kustutamise õigus.
    • Goal.goalScope = INSTITUTIONAL või INDIVIDUAL
    • Goal.teamMembers.id = GoalTeamMember.id, mille personalCode = Kasutaja isikukood
    • Õigust reguleerib privileeg: HSILM_PLANNING_GOAL_ARCHIVE_DELETE.

Planeerimise mooduli kasutusrollide ja õiguste kohta saab täpsemalt infot leida lehelt Kasutusõigused ja rollid.

Sisendid

AtribuutKohustuslikkus, mitmesusTüüpVaikeväärtus, valideerimineKirjeldus, täiendav info

goalId

1

String
  • Eesmärk peab eksisteerima ja ei tohi olla aktiveeritud.
    • goalId = Goal.id, mille archived = false
Viide eesmärgile, mida arhiveeritakse.

Väljundid

Atribuut

Kohustuslikkus, mitmesus

TüüpKirjeldus, täiendav info
Samad mis teenusel PM: API: Goal: POST /planning-api/goals.

Ärireegel

  1. Eesmärgi arhiveerimisel muudetakse selle olek arhiveerituks ning eesmärk eemaldatakse aktiivsete eesmärkide järjestusest.
  2. Kõik eesmärgiga seotud tegevused ja tööülesanded lõpetatakse, s.t:
    1. Kõigile tegevustele ja tööülesannetele, mille lõpukuupäev on hilisem kui jooksev kuupäev, määratakse lõpukuupäevaks tänane kuupäev.
      1. Kui lõpukuupäev on minevikus või täna, jääb see muutmata.
    2. Kõik seotud lõpetamata tööülesanded märgitakse lõpetatuks (done = true).

Tegevused

  1. Süsteem kontrollib, kas kasutajal on õigus päringut teostada.
    1. Kui õigust pole, lõpetatakse päringu töötlemine ja tagastatakse http veakood.
  2. Süsteem kontrollib, kas sisendandmed vastavad nõuetele.
    1. Kui andmed ei vasta nõuetele, lõpetatakse päringu töötlemine ja tagastatakse http veakood.
  3. Süsteem kontrollib, kas sisendis esitatud eesmärk (goalId) eksisteerib ja kas päringu käivitanud kasutajal on õigus seda hallata.
    1. Kontroll toimub vastavalt üldreeglites kirjeldatud loogikale.
    2. Kui eesmärki ei leita või see ei vasta üldreeglitele, lõpetatakse päringu töötlemine ja tagastatakse http veakood.

  4. Süsteem uuendab asutuse/isiku kehtivate eesmärkide järjestus:
    1. Süsteem otsib eesmärki, mis järgneb arhiveeritavale eesmärgile asutuse/isiku kehtivate eesmärkide nimekirjas: 
      1. Süsteem otsib Objektid#Goal objekti, mille:
        1. previousGoalId = Sisendis esitatud "goalId" väärtus
    2. Süsteem uuendab leitud eesmärgi puhul sellele eelneva eesmärgi viite:
      1. Süsteem uuendab leitud Objektid#Goal objekti andmeid:
        1. previousGoalId = Objektid#Goal.previousGoalId, mille id = Sisendis esitatud "goalId" väärtus.
  5. Süsteem märgib eesmärgi arhiveerituks ja eemaldab selle kehtivate eesmärkide nimekirjast. 
    1. Süsteem uuendab leitud Objektid#Goal objekti andmeid:
      1. archived = true
      2. previousGoalId = NULL
  6. Süsteem märgib kõik eesmärgiga seotud tegevused lõpetatuks:
    1. Süsteem otsib Objektid#GoalActivity objektid, mille:
      1. goalId =  Sisendis esitatud "goalId" väärtus
      2. endDate on hilisem kui jooksev kuupäev
    2. Süsteem uuendab leitud objektide andmeid järgmiselt:
      1. endDate = jooksev kuupäev
  7. Süsteem märgib kõik seotud tööülesanded lõpetatuks:
    1. Süsteem otsib Objektid#GoalActivityTask objektid, mille:
      1. goalId =  Sisendis esitatud "goalId" väärtus
    2. Süsteem uuendab leitud objektide andmeid järgmiselt:
      1. done = true
      2. Kui endDate on hilisem kui jooksev kuupäev, määratakse selle väärtuseks jooksev kuupäev.
  8. Süsteem tagastab arhiveeritud eesmärgi andmed.