PM: API: Goal: POST /planning-api/goals/{goalId}/activities/{goalActivityId}/tasks
Üldkirjeldus
Teenus võimaldab lisada eesmärgi tegevusele uue tööülesande.
Seotud andmeobjektid:
Seotud Jira taskid
NSIL-849 - Getting issue details... STATUS
NSIL-1169 - 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.
- Kasutajal on seos eesmärgi asutusega ja sama asutuse eesmärkide lisamise ja muutmise õigus.
- 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.
- Kasutaja on eesmärgi omanik ja tal on seos eesmärgi asutuse ja ametikohaga.
- 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 = 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
| Atribuut | Kohustuslikkus, mitmesus | Tüüp | Vaikeväärtus, valideerimine | Kirjeldus, täiendav info |
|---|---|---|---|---|
goalActivityId | 1 | String |
| Viide eesmärgi tegevusele, millele tööülesanne lisatakse. |
goalId | 1 | String |
| Eesmärgi unikaalne identifikaator, millega tegevus on seotud. |
| taskName | 1 | String |
| Tööülesande pealkiri. |
| goalTeamMemberId | 1 | String |
| Viide tööülesande vastutajaks määratud meeskonnaliikmele. |
| startDate | 0..1 | Date |
| Tööülesande algus kuupäev. |
| endDate | 1 | Date |
| Tööülesande lõpu kuupäev. |
| taskDescription | 0..1 | String |
| Tööülesande pikem kirjeldus. |
| fundings | 0..* | Array |
| Tööülesande rahastuse allikas. |
| fundings.year | 1 | Number |
| Aasta, millesse rahastus planeeritud. |
| fundings.amount | 1 | Number |
| Planeeritud rahastuse summa eurodes. |
| fundings.description | 0..1 | String |
| Rahastuse allika kirjeldus. |
Väljundid
Atribuut | Kohustuslikkus, mitmesus | Tüüp | Kirjeldus, täiendav info |
|---|---|---|---|
| id | 1 | String | Eesmärgi tegevuse tööülesande unikaalne identifikaator. |
| goalActivityId | 1 | String | Viide tegevusele, millega tööülesanne on seotud. |
goalId | 1 | String | Viide eesmärgile, millega tegevus on seotud. |
| taskName | 1 | String | Tööülesanne pealkiri. |
| goalTeamMemberId | 1 | String | Viide tööülesande vastutajaks määratud meeskonnaliikmele. |
| goalTeamMemberName | 0..1 | String | Tööülesande eest vastutava eesmärgi meeskonnaliikme nimi. |
| startDate | 0..1 | Date | Tööülesande alguskuupäev. |
| endDate | 1 | Date | Tööülesande lõpukuupäev. |
| taskDescription | 0..1 | String | Tööülesande pikem kirjeldus. |
| done | 1 | Boolean | Märge, kas tööülesanne on tehtud või mitte. |
| fundings | 0..* | Array | Tööülesande rahastuse allikas. Tööülesandel võib olla 0..n rahastuse allikat. |
| fundings.year | 1 | Number | Aasta, millesse rahastus planeeritud. |
| fundings.amount | 1 | Number | Planeeritud rahastuse summa eurodes. |
| fundings.description | 0..1 | String | Rahastuse allika kirjeldus. |
Tegevused
- Süsteem kontrollib, kas kasutajal on õigust päringut teostada.
- Kui õigust pole, lõpetatakse päringu töötlemine ja tagastatakse http veakood.
- Süsteem kontrollib, kas sisendandmed vastavad nõuetele.
- Kui andmed ei vasta nõuetele, lõpetatakse päringu töötlemine ja tagastatakse http veakood.
- Süsteem kontrollib, kas sisendis esitatud eesmärk (goalId) eksisteerib ja kas päringu käivitanud kasutajal on õigus seda hallata.
- Kontroll toimub vastavalt üldreeglites kirjeldatud loogikale.
- Kui eesmärki ei leita või see ei vasta üldreeglitele, lõpetatakse päringu töötlemine ja tagastatakse http veakood.
- Süsteem kontrollib, kas tegevus, millele üritatakse tööülesannet lisada, eksisteerib ja kas see on seotud eesmärgiga.
- Süsteem otsib Objektid#GoalActivity objekti, mille:
- id = Sisendis esitatud "goalActivityId" väärtus
- goalId = Sisendis esitatud "goalId" väärtus.
- Kui tegevust ei leita, lõpetatakse päringu töötlemine ja tagastatakse http veakood.
- Süsteem otsib Objektid#GoalActivity objekti, mille:
- Süsteem kontrollib, kas tööülesande eest vastutavaks määratud meeskonnaliige eksisteerib ja kas ta kuulub eesmärgi meeskonda.
- Süsteem otsib Objektid#Goal objekti, mille:
- id = Sisendis esitatud "goalId" väärtus
- teamMembers nimekirjas on sisendis esitatud "goalTeamMemberId" väärtus
- Kui tingimustele vastavat eesmärki ei leita, lõpetatakse päringu töötlemine ja tagastatakse http veakood.
- Süsteem otsib Objektid#Goal objekti, mille:
- Süsteem kontrollib loodava tööülesande algus- ja lõpukuupäevade korrektsust:
- Süsteem kontrollib järgmiste tingimuste täitmist:
- Sisendis esitatud "startDate" on:
- varasem või võrdne sisendis esitatud "endDate"-ga,
- ning hilisem või võrdne sisendis esitatud tegevuse (goalActivityId) algus kuupäevaga (varem leitud Objektid#GoalActivity.startDate)
- Sisendis esitatud "endDate" on:
- tänane kuupäev või hilisem,
- hilisem või võrdne sisendis esitatud "startDate"-ga (kui see on määratud)
- ning varasem või võrdne sisendis esitatud tegevuse (goalActivityId) lõpu kuupäevaga (varem leitud Objektid#GoalActivity.endDate)
- Sisendis esitatud "startDate" on:
- Kui sisendis esitatud andmed ei vasta tingimustele, lõpetatakse päringu töötlemine ja tagastatakse HTTP-veakood.
- Süsteem kontrollib järgmiste tingimuste täitmist:
- Süsteem lisab eesmärgile uue tööülesande:
- Süsteem loob uue Objektid#GoalActivityTask objekti, mille:
- id = UUID
- goalId = Sisendis esitatud "goalId" väärtus
- goalActivityId = Sisendis esitatud "goalActivityId" väärtus
- taskName = Sisendis esitatud "taskName" väärtus
- goalTeamMemberId = Sisendis esitatud "goalTeamMemberId" väärtus
- startDate = Sisendis esitatud "startDate" väärtus (kui on määratud)
- endDate = Sisendis esitatud "endDate" väärtus
- taskDescription = Sisendis esitatud "taskDescription" väärtus
- done = false
- Süsteem lisab loodavale Objektid#GoalActivityTask objektile sisendis esitatud fundings objektid:
- year = Sisendis esitatud "fundings.year" väärtus
- amount = Sisendis esitatud "fundings.amount" väärtus
- description = Sisendis esitatud "fundings.description" väärtus
- Süsteem loob uue Objektid#GoalActivityTask objekti, mille:
- Süsteem otsib tööülesande eest vastutavaks määratud meeskonnaliikme nime:
- Süsteem otsib Objektid#GoalTeamMember objekti, mille:
- id = Sisendis esitatud "goalTeamMemberId" väärtus
- Süsteem otsib Objektid#GoalTeamMember objekti, mille:
- Süsteem tagastab eemärgile lisatud tööülesande andmed, sh tööülesande eest vastutavaks määratud meeskonnaliikme nime.