NSILM

Üldkirjeldus

Teenus võimaldab lisada arengukavale sektsiooni.

Seotud andmeobjektid:

Seotud Jira taskid

NSIL-994 - Getting issue details... STATUS

Eeltingimused ja kasutusõigused

  • Kui tegemist on asutusepõhise arengukavaga (DevelopmentPlan.developmentPlanScope = INSTITUTIONAL):
    • Kasutajal peab olema seos arengukava asutusega ning sama asutuse arengukava lisamise ja muutmise õigus
      • DevelopmentPlan.institution.id = Kasutaja poolt valitud rolliga seotud asutus
      • Õigust reguleerib privileeg: HSILM_PLANNING_DEV_PLAN_MANAGE.
  • Kui tegemist on isikupõhise arengukavaga (DevelopmentPlan.developmentPlanScope = INDIVIDUAL):
    • Kasutaja peab olema arengukava omanik ja tal peab olema seos nii arengukava asutuse kui ka ametikohaga.
      • DevelopmentPlan.personalCode = Kasutaja isikukood
      • DevelopmentPlan.institution.id = Kasutaja poolt valitud rolliga seotud asutus
      • DevelopmentPlan.jobsite = Kasutaja poolt valitud rolliga seotud ametikoht
    • Eraldi privileegi ei ole vaja.
  • Arhiivi ja meeskonnaliikme rolli valinud kasutaja ei saa muuta arengukava.

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

developmentPlanId

1

String
  • Peab eksisteerima ja olema muudetav.
    • DevelopmentPlan.id = developmentPlanId
    • DevelopmentPlan.editable = true
Arengukava unikaalne identifikaator.
name1String
  • Peab olema 3 - 250 tähemärki.
Arengukava sektsiooni pealkirjana kuvatav nimetus.
previousSectionId1String
  • Kui on määratud, peab see eksisteerima ja kuuluma samasse arengukavasse.
    • DevelopmentPlanSection.id = previousSectionId
    • DevelopmentPlanSection.developmentPlanId = developmentPlanId

Viide sektsioonile, mis eelneb uuele sektsioonile arengukava sektsioonide järjekorras. 

Kui väärtus on NULL, kuvatakse sektsioon esimesena.

Väljundid

AtribuutKohustuslikkus, mitmesusTüüpKirjeldus, täiendav info
id

1

StringArengukava sektsiooni unikaalne identifikaator.
developmentPlanId

1

StringViide arengukavale, kuhu sektsioon kuulub.
name1StringArengukava sektsiooni pealkiri.
previousSectionId0..1String

Viide sektsiooni ID-le, mis eelneb käesolevale sektsioonile arengukava sektsioonide järjestuses. 

Kui väärtus puudub, tähendab see, et sektsioon kuvatakse esimesena. 

hidden1StringMäärab, kas sektsioon lisatakse jagatavasse arengukava versiooni (PDF või URL).

Tegevused

  1. Süsteem kontrollib, kas kasutajal on õigust päringut teostada.
    1. Kui kasutajal puudub vastav õigus, 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 arengukava (developmentPlanId) eksisteerib ja on muudetav:

    1. Otsitakse Objektid#DevelopmentPlan objekti, mille:
      1. id =  sisendis esitatud developmentPlanId väärtus.
      2. editable = true
    2. Kui arengukava ei leita, lõpetatakse päringu töötlemine ja tagastatakse http veakood.
  4. Kui sisendis esitatud previousSectionId != NULL, kontrollib süsteem, kas selline sektsioon eksisteerib ja kuulub samasse arengukavasse:
    1. Otsitakse Objektid#DevelopmentPlanSection objekti, mille:
      1. id =  sisendis esitatud previousSectionId väärtus
      2. developmentPlanId = sisendis esitatud developmentPlanId väärtus
    2. Kui sobivat sektsiooni ei leita, lõpetatakse päringu töötlemine ja tagastatakse http veakood.
  5. Süsteem lisab arengukavale uue sektsiooni.
    1. Luuakse Objektid#DevelopmentPlanSection objekt järgmiste väärtustega:
      1. id = UUID
      2. developmentPlanId = sisendis esitatud developmentPlanId väärtus
      3. name = sisendis esitatud name väärtus
      4. previousSectionId = sisendis esitatud previousSectionId väärtus. 
      5. hidden = false
  6. Süsteem uuendab sektsioonide järjekorda:
    1. Otsitakse sektsioon, mis hetkeseisuga järgneb sisendis esitatud previousSectionId väärtusega sektsioonile:
      1. Otsitakse Objektid#DevelopmentPlanSection objekti, mille:
        1. id != just loodud sektsiooni ID (Objektid#DevelopmentPlanSection.id)
        2. developmentPlanId = sisendis esitatud developmentPlanId väärtus 
        3. previousSectionId = sisendis esitatud previousSectionId väärtus. 
      2. Kui sobivat sektsiooni ei leita, logitakse viga.
    2. Kui sobiv sektsioon leitakse, uuendatakse see järgmiselt:
      1. previousSectionId = just loodud sektsiooni ID (Objektid#DevelopmentPlanSection.id)
  7. Süsteem tagastab loodud arengukava sektsiooni andmed.