NSILM

Üldkirjeldus

Teenus võimaldab kustutada meeskonnaliikme andmed hindamiselt.

Seotud andmeobjektid:

NSIL-126 - Getting issue details... STATUS NSIL-171 - Getting issue details... STATUS NSIL-834 - Getting issue details... STATUS NSIL-1246 - Getting issue details... STATUS

Eeltingimused ja kasutusõigused

  • Kui tegemist on asutusepõhise hindamisega (assessmentScope = INSTITUTIONAL):
    • Kasutajal peab olema hindamise valdkonnaga seotud hindamise meeskonna liikmete haldamise õigus ja kasutaja peab olema seotud asutusega, mis on seotud hindamisega. 
      • Classifier.classifierItemCode = Assessment.domain
      • Classifier.classifierAttributeDefinitionCode =ASSESSMENT_TEAM_MEMBER_MANAGE_PRIVILEGE
      • Classifier.attributeValue = Kasutaja poolt valitud rolli privileegide hulgas olev privileeg.
      • Assessment.institution.id = Kasutaja poolt valitud rolliga seotud asutus.
  • Kui tegemist on isikupõhise hindamisega (assessmentScope =INDIVIDUAL) ja mittehierarhilise hindamisega või hierarhilise hindamise peamise hindamisega (assessmentHierarchyType = null või MAIN_ASSESSMENT (assessmentScope = INDIVIDUAL!= SUB_ASSESSMENT)):
    • Päringu käivitanud kasutaja on isik, kelle suhtes hindamist läbi viiakse.
      • Assessment.personalCode = Päringu käivitanud isiku isikukood.
    • Päringu käivitanud kasutaja on seotud hindamisega seotud asutusega.
      • Assessment.institution.id = Kasutaja poolt valitud rolliga seotud asutus.
    • Päringu käivitanud kasutajal on hindamisega seotud asutuses hindamisega seotud ametikoht.
      • Assessment.jobSite = Kasutaja poolt valitud rolliga seotud asutusega seotud ametikoht.
  • Kui kasutaja on hindamise meeskonna liige (Kehtib asutusepõhistel ja isikupõhistel hindamistel).
    • Kasutajal peab olema hindamise valdkonnaga seotud hindamise meeskonna liikmete haldamise õigus töödeldava hindamisega seoses ja kasutaja peab olema seotud hindamisega. 
      • AssessmentTeamMember.personalCode = Päringu käivitanud isiku isikukood.
      • AssessmentTeamMember.objectStatus = CURRENT
      • Classifier.classifierItemCode = Assessment.domain
      • Classifier.classifierAttributeDefinitionCode = ASSESSMENT_TEAM_MEMBER_MANAGE_PRIVILEGE
      • Classifier.attributeValue = Kasutaja poolt valitud rolli privileegide hulgas olev privileeg.
  • Kui tegemist on isikupõhise hierarhilise hindamise alamhindamisega (assessmentHierarchyType = SUB_ASSESSMENT), siis meeskonna liikmeid kustutada ei saa.

Sisendid

AtribuutKohustuslikkus, mitmesusTüüpVaikeväärtus, valideerimineKirjeldus, täiendav info
assessmentId1String
  • Hindamine ei tohi olla kustutatud.
    • Assessment.id = assessmentId
  • Hindamine ei tohi olla lõpetatud.
    • Assessment.endDate > Päringu teostamise aeg või Assessment.endDate = null.
Hindamise id.
memberId1String
  • Meeskonna liige ei tohi olla kustutatud.
    • AssessmentTeamMember.id = memberId
  • Kui tegemist on isikupõhise hindamisega ja kui kustutatakse vaikimisi rollis olevat isikut, siis ei tohi kustutatav meeskonna liige olla isik, kelle suhtes hindamist teostatakse.
    • Kui Assessment.assessmentScope = INDIVIDUAL ja AssessmentTeamMember.roleType klassifikaatori atribuut ASSESSMENT_ROLE ROLE_SCOPE = DEFAULT_ROLE, siis memberId != AssessmentTeamMember.id, mille AssessmentTeamMember.personalCode = Assessment.personalCode
      • Kui tegemist on isikupõhise hindamisega ja kustutatakse isikut, kelle suhtes hindamine läbi viiakse ja kasutaja ei ole vaikimisi rollis. siis saab teda kustutada.
        • Kui Assessment.assessmentScope = INDIVIDUAL ja AssessmentTeamMember.roleType klassifikaatori atribuut ASSESSMENT_ROLE ROLE_SCOPE != DEFAULT_ROLE, siis memberId != AssessmentTeamMember.id, mille AssessmentTeamMember.personalCode = Assessment.personalCode
  • Kui tegemist on isikupõhise hierarhilise hindamise peamise hindamisega ja meeskonnaliikme hindamine on arhiveeritud, siis meeskonnaliiget kustutada ei saa.
    • Assessment.assessmentHierarchyType  = MAIN_ASSESSMENT, mille
      • id = sisendis esitatud assessmentId
    • Assessment.archivedAt != null, mille
      • Assessment.id = AssessmentTeamMember.subAssessmentId
  • Kui tegemist on isikupõhise hierarhilise hindamise peamise hindamisega ja meeskonna liikmele on kaasatud hindamine suunatud ja hindamise enesehindamine on kinnitatud, siis meeskonnaliiget kustutada ei saa.
    • Assessment.assessmentHierarchyType  = MAIN_ASSESSMEN
    • AssessmentTeamMember.subAssessmentId != null
    • AssessmentPhase.confirmationTime != null, mille AssessmentPhase.assessmentId = Sisendis esitatud assessmentId ja AssessmentPhase.phaseType = Enesehindamine
Meeskonna liikme id.

Väljundid

AtribuutKohustuslikkus, mitmesusTüüpKirjeldus, täiendav info
Sama, mis GS: Assessment: API: POST /quality-api/assessments/{id}/team-members#V%C3%A4ljundid

Tegevused

  1. Süsteem kontrollib, kas kasutajal on õigust päringut teostada.
    1. Kui kasutajal ei ole õigust päringut teostada, siis lõpetatakse päringu töötlemine ja tagastatakse http veakood.
  2. Süsteem kontrollib, kas andmed vastavad nõuetele.
    1. Kui andmed ei vasta nõuetele, siis lõpetatakse päringu töötlemine ja tagastatakse http veakood.
  3. Süsteem otsib päringus esitatud tingimustele vastava hindamisega seotud meeskonnaliikme andmed.
    • Süsteem otsib AssessmentTeamMember objekti, mille
      • id = memberId väärtus sisendist.
      • assessmentId = Sisendis esitatud assessmentId väärtus.
      • objectStatus = CURRENT 
        1. Kui tingimustele vastavat objekti ei leitud, siis lõpetatakse päringu töötlemine ja tagastatakse http veakood.
  4. Süsteem kontrollib, kas leitud meeskonna liikme roll meeskonna juht ja, kas tegemist on hindamise raames viimase kehtiva meeskonna juhiga.
    • Tingimused:
      • Leitud AssessmentTeamMember.roleType = TEAM_LEAD 
        • Kui tegemist on meeskonna juhiga, siis kontrollib süsteem, kas hindamisel on veel mõni liige rolliga meeskonna juht
          • Süsteem otsib AssessmentTeamMember objekte, mille
            • assessmentId = Sisendis esitatud assessmentId väärtus.
            • id != memberId väärtus sisendist.
            • roleType = TEAM_LEAD
            • objectStatus = CURRENT 
              1. Kui tingimustele vastavat objekti ei leitud, siis lõpetatakse päringu töötlemine ja tagastatakse http veakood.
  5. Kui kustutatakse meeskonna liiget (ASSESSMENT_ROLE ROLE_SCOPE = DEFAULT_ROLE), mitte vastajat (vastaja kustutamisel kontrolli ei rakendata), siis Süsteem kontrollib, kas meeskonna liige on seotud mõne tegemata tööülesandega.
    1. Süsteem otsib meeskonna liikme kustutamata ja tegemata tööülesandeid.
      • Süsteem otsib assessmentTask objekte, mille
        • id = AssessmentTaskAssignee.assessmentTaskId, mille
          • AssessmentTaskAssignee.teamMemberId = Sisendis esitatud memberId väärtus.
          • AssessmentTaskAssigneeobjectStatus = CURRENT
        • assessmentId = Sisendis esitatud assessmentId väärtus.
        • done = false
        • objectStatus = CURRENT 
          1. Kui leiti vähemalt üks tingimustele vastav tööülesanne, siis lõpetatakse päringu töötlemine ja tagastatakse http veakood.
  6. Süsteem kustutab hindamise meeskonnaliikme andmed.
    • Süsteem kustutab leitud AssessmentTeamMember objekti andmeid andmebaasist.
  7. Kui meeskonna liikmel on kaasatud hindamisi, siis kustutab süsteem kaasatud hindamise, sellega seotud alamobjektid, sh põhihindamisele loodud tööülesande, ja failid andmebaasist ning failihoidlast.
    • AssessmentTeamMember.subAssessmentId =Assessmen.id
    • Põhihindamises kaasatud hindaja tööülesande kustutamine:
      • AssessmentTask objekt, mille subAssessmentId = AssessmentTeamMember.subAssessmentId
  8. Süsteem tagastab kustutatud andmed.