use of fi.otavanopisto.pyramus.koski.model.lukio.LukionOppiaineenTunniste in project pyramus by otavanopisto.
the class KoskiInternetixLukioStudentHandler method studentToModel.
public OpiskeluoikeusInternetix studentToModel(Student student, String academyIdentifier) {
StudentSubjectSelections studentSubjects = loadStudentSubjectSelections(student, getDefaultSubjectSelections());
String studyOid = resolveInternetixOid(student, HANDLER_TYPE);
// Skip student if it is archived and the studyoid is blank
if (Boolean.TRUE.equals(student.getArchived()) && StringUtils.isBlank(studyOid)) {
return null;
}
if (student.getStudyStartDate() == null) {
koskiPersonLogDAO.create(student.getPerson(), student, KoskiPersonState.NO_STUDYSTARTDATE, new Date());
return null;
}
boolean defaultStudyProgramme = settings.getStudyProgrammeHandlerType(student.getStudyProgramme().getId()) == HANDLER_TYPE;
LukionOpiskeluoikeus opiskeluoikeus = new LukionOpiskeluoikeus();
opiskeluoikeus.setLahdejarjestelmanId(getLahdeJarjestelmaID(HANDLER_TYPE, student.getId()));
opiskeluoikeus.setAlkamispaiva(student.getStudyStartDate());
opiskeluoikeus.setPaattymispaiva(student.getStudyEndDate());
if (StringUtils.isNotBlank(studyOid)) {
opiskeluoikeus.setOid(studyOid);
}
opiskeluoikeus.setLisatiedot(getLisatiedot(student));
OpintojenRahoitus opintojenRahoitus = opintojenRahoitus(student);
StudyEndReasonMapping lopetusSyy = opiskelujaksot(student, opiskeluoikeus.getTila(), opintojenRahoitus);
boolean laskeKeskiarvot = lopetusSyy != null ? lopetusSyy.getLaskeAinekeskiarvot() : false;
boolean sisällytäVahvistus = lopetusSyy != null ? lopetusSyy.getSisällytäVahvistaja() : false;
boolean lukionOppimääräSuoritettu = lopetusSyy != null ? lopetusSyy.isLukionOppimääräSuoritettu() : false;
opiskeluoikeus.setOppimaaraSuoritettu(lukionOppimääräSuoritettu || sisällytäVahvistus);
KoskiStudyProgrammeHandlerParams handlerParams = getHandlerParams(HANDLER_TYPE);
// toimipiste-oid joko a) handlerParams:sta b) studyprogramme-asetuksista c) yleisesti kaikelle asetettu academyIdentifier
String toimipisteOID = StringUtils.isNotBlank(handlerParams.getToimipisteOID()) ? handlerParams.getToimipisteOID() : settings.getToimipisteOID(student.getStudyProgramme().getId(), academyIdentifier);
assessmentsToModel(opiskeluoikeus, student, studentSubjects, laskeKeskiarvot, sisällytäVahvistus, toimipisteOID, defaultStudyProgramme);
// Aineopiskelija
boolean eiSuorituksia = CollectionUtils.isEmpty(opiskeluoikeus.getSuoritukset());
if (eiSuorituksia) {
LukionOppiaineenTunniste oppiaineenTunniste = new LukionOppiaineenSuoritusEiTiedossa();
LukionOppiaineenSuoritus oppiaineenSuoritus = new LukionOppiaineenSuoritus(oppiaineenTunniste);
LukionOppiaineenOppimaaranSuoritus oppiaineenOppimaaranSuoritus = LukionOppiaineenOppimaaranSuoritus.from(oppiaineenSuoritus, Kieli.FI, new OrganisaationToimipisteOID(toimipisteOID));
opiskeluoikeus.addSuoritus(oppiaineenOppimaaranSuoritus);
}
return new OpiskeluoikeusInternetix(opiskeluoikeus, eiSuorituksia);
}
use of fi.otavanopisto.pyramus.koski.model.lukio.LukionOppiaineenTunniste in project pyramus by otavanopisto.
the class LukioOppiaineenOppimaaraData method getTestStudentMinimal.
public static Oppija getTestStudentMinimal() {
Oppija oppija = new Oppija();
oppija.setHenkilo(new HenkiloUusi("111111A111C", "Sally", "Student", "Sally"));
LukionOpiskeluoikeus opiskeluoikeus = new LukionOpiskeluoikeus();
oppija.addOpiskeluoikeus(opiskeluoikeus);
OpiskeluoikeusJakso jakso = new OpiskeluoikeusJakso(new Date(), OpiskeluoikeudenTila.lasna);
opiskeluoikeus.getTila().addOpiskeluoikeusJakso(jakso);
OrganisaationToimipiste toimipiste = new OrganisaationToimipisteOID(ACADEMYOID);
LukionOppiaineenTunniste koulutusmoduuli = new LukionOppiaineenSuoritusMuuValtakunnallinen(KoskiOppiaineetYleissivistava.HI, false);
LukionSuoritus suoritus = new LukionOppiaineenOppimaaranSuoritus(koulutusmoduuli, Kieli.FI, toimipiste);
opiskeluoikeus.addSuoritus(suoritus);
return oppija;
}
use of fi.otavanopisto.pyramus.koski.model.lukio.LukionOppiaineenTunniste in project pyramus by otavanopisto.
the class LukioOppiaineenOppimaaraData method getTestStudent.
public static Oppija getTestStudent() {
Oppija oppija = new Oppija();
oppija.setHenkilo(new HenkiloUusi("111111A111C", "Sally", "Student", "Sally"));
LukionOpiskeluoikeus opiskeluoikeus = new LukionOpiskeluoikeus();
oppija.addOpiskeluoikeus(opiskeluoikeus);
Date paattymispaiva = date(2017, 10, 10);
opiskeluoikeus.setPaattymispaiva(paattymispaiva);
OpiskeluoikeusJakso jakso = new OpiskeluoikeusJakso(new Date(), OpiskeluoikeudenTila.lasna);
jakso.setOpintojenRahoitus(new KoodistoViite<OpintojenRahoitus>(OpintojenRahoitus.K1));
opiskeluoikeus.getTila().addOpiskeluoikeusJakso(jakso);
opiskeluoikeus.getTila().addOpiskeluoikeusJakso(new OpiskeluoikeusJakso(paattymispaiva, OpiskeluoikeudenTila.valmistunut));
opiskeluoikeus.setLahdejarjestelmanId(getLahdeJarjestelmaID(1l));
OrganisaationToimipiste toimipiste = new OrganisaationToimipisteOID(ACADEMYOID);
LukionOppiaineenTunniste koulutusmoduuli = new LukionOppiaineenSuoritusMuuValtakunnallinen(KoskiOppiaineetYleissivistava.HI, false);
LukionOppiaineenOppimaaranSuoritus suoritus = new LukionOppiaineenOppimaaranSuoritus(koulutusmoduuli, Kieli.FI, toimipiste);
opiskeluoikeus.addSuoritus(suoritus);
// Kurssi 1
LukionKurssinTunniste kurssinTunniste = new LukionKurssinTunnisteValtakunnallinenOPS2015(LukionKurssit.ÄI1, LukionKurssinTyyppi.pakollinen);
LukionKurssinSuoritus kurssi = new LukionKurssinSuoritus(kurssinTunniste);
kurssi.addArviointi(new KurssinArviointiNumeerinen(ArviointiasteikkoYleissivistava.GRADE_9, paattymispaiva));
suoritus.addOsasuoritus(kurssi);
// Kurssi 2
kurssinTunniste = new LukionKurssinTunnistePaikallinen(new PaikallinenKoodi("ÄI123", kuvaus("ABC")), LukionKurssinTyyppi.syventava, kuvaus("ABC"));
kurssi = new LukionKurssinSuoritus(kurssinTunniste);
kurssi.addArviointi(new KurssinArviointiSanallinen(ArviointiasteikkoYleissivistava.GRADE_S, paattymispaiva, kuvaus("S")));
suoritus.addOsasuoritus(kurssi);
return oppija;
}
use of fi.otavanopisto.pyramus.koski.model.lukio.LukionOppiaineenTunniste in project pyramus by otavanopisto.
the class LukioOppimaaraData method getTestStudent.
public static Oppija getTestStudent() {
Oppija oppija = new Oppija();
oppija.setHenkilo(new HenkiloUusi("111111A111C", "Sally", "Student", "Sally"));
LukionOpiskeluoikeus opiskeluoikeus = new LukionOpiskeluoikeus();
oppija.addOpiskeluoikeus(opiskeluoikeus);
Date paattymispaiva = date(2017, 10, 10);
opiskeluoikeus.setPaattymispaiva(paattymispaiva);
OpiskeluoikeusJakso jakso = new OpiskeluoikeusJakso(new Date(), OpiskeluoikeudenTila.lasna);
jakso.setOpintojenRahoitus(new KoodistoViite<OpintojenRahoitus>(OpintojenRahoitus.K1));
opiskeluoikeus.getTila().addOpiskeluoikeusJakso(jakso);
opiskeluoikeus.getTila().addOpiskeluoikeusJakso(new OpiskeluoikeusJakso(paattymispaiva, OpiskeluoikeudenTila.valmistunut));
opiskeluoikeus.setLahdejarjestelmanId(getLahdeJarjestelmaID(1l));
OrganisaationToimipiste toimipiste = new OrganisaationToimipisteOID(ACADEMYOID);
LukionOppimaaranSuoritus suoritus = new LukionOppimaaranSuoritus(LukionOppimaara.aikuistenops, Kieli.FI, toimipiste);
opiskeluoikeus.addSuoritus(suoritus);
// Oppiaine
LukionOppiaineenTunniste koulutusmoduuli = new LukionOppiaineenSuoritusAidinkieli(OppiaineAidinkieliJaKirjallisuus.AI1, true);
LukionOppiaineenSuoritus oppiaine = new LukionOppiaineenSuoritus(koulutusmoduuli);
suoritus.addOsasuoritus(oppiaine);
// Oppiaineen arviointi
oppiaine.addArviointi(new LukionOppiaineenArviointi(ArviointiasteikkoYleissivistava.GRADE_9, paattymispaiva));
// Kurssi 1
LukionKurssinTunniste kurssinTunniste = new LukionKurssinTunnisteValtakunnallinenOPS2015(LukionKurssit.ÄI1, LukionKurssinTyyppi.pakollinen);
LukionKurssinSuoritus kurssi = new LukionKurssinSuoritus(kurssinTunniste);
kurssi.addArviointi(new KurssinArviointiNumeerinen(ArviointiasteikkoYleissivistava.GRADE_9, paattymispaiva));
oppiaine.addOsasuoritus(kurssi);
// Kurssi 2
kurssinTunniste = new LukionKurssinTunnistePaikallinen(new PaikallinenKoodi("ÄI123", kuvaus("ABC")), LukionKurssinTyyppi.syventava, kuvaus("ABC"));
kurssi = new LukionKurssinSuoritus(kurssinTunniste);
kurssi.addArviointi(new KurssinArviointiSanallinen(ArviointiasteikkoYleissivistava.GRADE_S, paattymispaiva, kuvaus("S")));
oppiaine.addOsasuoritus(kurssi);
return oppija;
}
use of fi.otavanopisto.pyramus.koski.model.lukio.LukionOppiaineenTunniste in project pyramus by otavanopisto.
the class KoskiInternetixLukioStudentHandler method getSubject.
private OppiaineenSuoritusWithCurriculum<LukionOppiaineenSuoritus> getSubject(OpiskelijanOPS creditOPS, Student student, List<Long> educationTypes, Subject subject, StudentSubjectSelections studentSubjects, Map<String, OppiaineenSuoritusWithCurriculum<LukionOppiaineenSuoritus>> map) {
String subjectCode = subjectCode(subject);
String mapKey = String.valueOf(creditOPS) + subjectCode;
if (map.containsKey(mapKey)) {
return map.get(mapKey);
}
boolean matchingEducationType = educationTypes != null && subject.getEducationType() != null && educationTypes.contains(subject.getEducationType().getId());
// MATHEMATICS
if (matchingEducationType && isMathSubject(subjectCode)) {
if (StringUtils.equals(subjectCode, "MAY") && isMathSubject(studentSubjects.getMath())) {
// MAY is mapped to either MAB/MAA unless neither is specified
subjectCode = studentSubjects.getMath();
mapKey = String.valueOf(creditOPS) + subjectCode;
if (map.containsKey(mapKey)) {
return map.get(mapKey);
}
}
if (StringUtils.equals(subjectCode, studentSubjects.getMath())) {
LukionOppiaineenTunniste tunniste = new LukionOppiaineenSuoritusMatematiikka(OppiaineMatematiikka.valueOf(subjectCode), isPakollinenOppiaine(student, KoskiOppiaineetYleissivistava.MA));
return map(map, mapKey, creditOPS, tunniste, subject);
} else
return null;
}
if (matchingEducationType && StringUtils.equals(subjectCode, "ÄI")) {
if (StringUtils.equals(subjectCode, studentSubjects.getPrimaryLanguage())) {
LukionOppiaineenTunniste tunniste = new LukionOppiaineenSuoritusAidinkieli(OppiaineAidinkieliJaKirjallisuus.AI1, isPakollinenOppiaine(student, KoskiOppiaineetYleissivistava.AI));
return map(map, mapKey, creditOPS, tunniste, subject);
} else
return null;
}
if (matchingEducationType && StringUtils.equals(subjectCode, "S2")) {
if (StringUtils.equals(subjectCode, studentSubjects.getPrimaryLanguage())) {
LukionOppiaineenTunniste tunniste = new LukionOppiaineenSuoritusAidinkieli(OppiaineAidinkieliJaKirjallisuus.AI7, isPakollinenOppiaine(student, KoskiOppiaineetYleissivistava.AI));
return map(map, mapKey, creditOPS, tunniste, subject);
} else
return null;
}
if (matchingEducationType && studentSubjects.isAdditionalLanguage(subjectCode)) {
if (subjectCode.length() > 2) {
String langCode = settings.getSubjectToLanguageMapping(subjectCode.substring(0, 2).toUpperCase());
Kielivalikoima kieli = Kielivalikoima.valueOf(langCode);
if (kieli != null) {
KoskiOppiaineetYleissivistava valinta = studentSubjects.isALanguage(subjectCode) ? KoskiOppiaineetYleissivistava.A1 : studentSubjects.isA1Language(subjectCode) ? KoskiOppiaineetYleissivistava.A1 : studentSubjects.isA2Language(subjectCode) ? KoskiOppiaineetYleissivistava.A2 : studentSubjects.isB1Language(subjectCode) ? KoskiOppiaineetYleissivistava.B1 : studentSubjects.isB2Language(subjectCode) ? KoskiOppiaineetYleissivistava.B2 : studentSubjects.isB3Language(subjectCode) ? KoskiOppiaineetYleissivistava.B3 : null;
LukionOppiaineenTunniste tunniste = new LukionOppiaineenSuoritusVierasKieli(valinta, kieli, isPakollinenOppiaine(student, valinta));
return map(map, mapKey, creditOPS, tunniste, subject);
} else {
logger.log(Level.SEVERE, String.format("Koski: Language code %s could not be converted to an enum.", langCode));
koskiPersonLogDAO.create(student.getPerson(), student, KoskiPersonState.UNKNOWN_LANGUAGE, new Date(), langCode);
return null;
}
}
}
String[] religionSubjects = new String[] { "UE", "UO" };
if (matchingEducationType && ArrayUtils.contains(religionSubjects, subjectCode)) {
// Only the religion that student has selected is reported
if (StringUtils.equals(subjectCode, studentSubjects.getReligion())) {
mapKey = String.valueOf(creditOPS) + "KT";
if (map.containsKey(mapKey))
return map.get(mapKey);
KoskiOppiaineetYleissivistava kansallinenAine = KoskiOppiaineetYleissivistava.KT;
LukionOppiaineenTunniste tunniste = new LukionOppiaineenSuoritusMuuValtakunnallinen(kansallinenAine, isPakollinenOppiaine(student, kansallinenAine));
return map(map, mapKey, creditOPS, tunniste, subject);
} else
return null;
}
if (matchingEducationType && EnumUtils.isValidEnum(KoskiOppiaineetYleissivistava.class, StringUtils.upperCase(subjectCode))) {
// Common national subject
KoskiOppiaineetYleissivistava kansallinenAine = KoskiOppiaineetYleissivistava.valueOf(StringUtils.upperCase(subjectCode));
LukionOppiaineenTunniste tunniste = new LukionOppiaineenSuoritusMuuValtakunnallinen(kansallinenAine, isPakollinenOppiaine(student, kansallinenAine));
return map(map, mapKey, creditOPS, tunniste, subject);
} else {
// Other local subject
PaikallinenKoodi paikallinenKoodi = new PaikallinenKoodi(subjectCode, kuvaus(subject.getName()));
LukionOppiaineenSuoritusPaikallinen tunniste = new LukionOppiaineenSuoritusPaikallinen(paikallinenKoodi, false, kuvaus(subject.getName()));
return map(map, mapKey, creditOPS, tunniste, subject);
}
}
Aggregations