NSILM

Üldkirjeldus

Teenus võimaldab muuta tegevuse asukohta eesmärgi tegevuste järjekorras.

Seotud andmeobjektid:

Seotud Jira taskid

NSIL-848 - 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 lisamise ja muutmise õigus
      • Goal.institution.id = Kasutaja poolt valitud rolliga seotud asutus
      • Õigust reguleerib privileeg: HSILM_PLANNING_GOAL_MANAGE.
  • 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 = Päringu käivitanud 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 lisamise ja muutmise õigus.
    • Goal.goalScope = INSTITUTIONAL või INDIVIDUAL
    • Goal.teamMembers.id = GoalTeamMember.id, mille personalCode = Päringu käivitanud kasutaja isikukood
    • Õigust reguleerib privileeg: HSILM_PLANNING_GOAL_MANAGE.

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

goalActivityId

1

String
  • Tegevus peab eksisteerima ja olema seotud sisendis esitatud eesmärgiga.
    • goalActivityId = GoalActivity.id, mille goalId = sisendis esitatud goalId
Tegevuse unikaalne identifikaator, mille asukohta tegevuste järjekorras muudetakse.

targetGoalActivityId

1

String
  • Tegevus peab eksisteerima ja olema seotud sisendis esitatud eesmärgiga.
    • targetGoalActivityId = GoalActivity.id, mille goalId = sisendis esitatud goalId
Tegevuse unikaalne identifikaator, millega liigutatav tegevus vahetab asukohta.

goalId

1

String
  • Eesmärk peab eksisteerima ja ei tohi olla arhiveeritud.
    • goalId = Goal.id, mille archived = false
Eesmärgi unikaalne identifikaator, millele liigutatavad tegevused kuuluvad.

Väljundid

Atribuut

Kohustuslikkus, mitmesus

TüüpKirjeldus, täiendav info

goalActivityId

1

StringTegevuse unikaalne identifikaator, mis põhjustas tegevuste järjekorda muutmise.

previousGoalActivityId

1

StringTegevuse unikaalne identifikaator, mis eelneb goalActivityId tegevusele tegevuste järjekorras.

Tegevused

  1. Süsteem kontrollib, kas kasutajal on õigust päringut teostada.
    1. Kui kasutajal ei ole õigust, 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 päringu käivitanud kasutajal on õigus hallata eesmärgi (goalId) andmeid.
    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 kontrollib, kas mõlemad sisendis esitatud tegevused eksisteerivad ja on seotud eesmärgiga:
    1. Süsteem otsib Objektid#GoalActivity objekte, mille:
      1. id = Sisendis esitatud "goalActivityId"/"targetGoalActivityId" väärtus.
      2. goalId = Sisendis esitatud "goalId" väärtus.
      3. Kui mõnda tegevustest ei leita, lõpetatakse päringu töötlemine ja tagastatakse http veakood.
  5. Süsteem kontrollib, kas tegevust (goalActivityId) liigutatakse ainult ühe positsiooni võrra:
    1. Süsteem otsib mõlemat sisendis esitatud tegevust ja kontrollib, kas üks tegevus viitab teisele oma "previousGoalActivityId" väärtuses.
      1. Süsteem otsib Objektid#GoalActivity objekti, mille:
        1. id =  Sisendis esitatud "goalActivityId" väärtus.
        2. Süsteem kontrollib, kas leitud Objektid#GoalActivity.previousGoalActivityId = Sisendis esitatud "targetGoalActivityId" väätus.
      2. Süsteem otsib Objektid#GoalActivity objekti, mille:
        1. id =  Sisendis esitatud "targetGoalActivityId" väärtus.
        2. Süsteem kontrollib, kas leitud Objektid#GoalActivity.previousGoalActivityId = Sisendis esitatud "goalActivityId" väärtus.
      3. Kui ükski tegevus ei vasta tingimustele või mõlemad vastavad, lõpetatakse päringu töötlemine ja tagastatakse http veakood.
  6. Süsteem uuendab liigutatava tegevuse positsiooni järjekorras:
    1.  Süsteem otsib Objektid#GoalActivity objekti, mille:
      1. id =  Sisendis esitatud "goalActivityId" väärtus.
    2. Süsteem uuendab leitud objekti andmeid:
      1. previousGoalActivityId = Objektid#GoalActivity.previousGoalActivityId, mille id = Sisendis esitatud "targetGoalActivityId" väärtus.
  7. Süsteem uuendab ka eesmärgi kõigi teiste tegevuste previousGoalActivityId väärtusi, mis järgnevad goalActivityId ja targetGoalActivityId tegevusele.
    1. Süsteem otsib kõik tegevused, mille järjekorda peab uuendama.
    2. Iga leitud tegevuse previousGoalActivityId väärtus uuendatakse.  
  8. Süsteem tagastab tegevuse andmed, mis põhjustas eesmärgi tegevuste järjekorda muutmise.