added gelSchool student choices report

parent 894d78f8
......@@ -38,27 +38,27 @@ function epal_theme() {
function epal_mail($key, &$message, $params) {
$options = array(
'langcode' => $message['langcode'],
);
);
switch ($key) {
case 'send_verification_code':
$message['from'] = \Drupal::config('system.site')->get('mail');
$message['subject'] = t('Σύστημα υποβολής ηλεκτρονικών δηλώσεων προτίμησης ΕΠΑΛ για το νέο σχολικό έτος: Επιβεβαίωση e-mail', $options);
$message['subject'] = t('Σύστημα υποβολής ηλεκτρονικών δηλώσεων προτίμησης για το νέο σχολικό έτος: Επιβεβαίωση e-mail', $options);
$message['body'][] = $params['message'];
break;
case 'massive_mail_unallocated':
$message['from'] = \Drupal::config('system.site')->get('mail');
$message['subject'] = t('Μη ικανοποίηση ηλεκτρονικής δήλωσης προτίμησης ΕΠΑΛ', $options);
$message['subject'] = t('Μη ικανοποίηση ηλεκτρονικής δήλωσης προτίμησης ', $options);
$message['body'][] = $params['message'];
break;
case 'massive_mail_located':
$message['from'] = \Drupal::config('system.site')->get('mail');
$message['subject'] = t('Ικανοποίηση ηλεκτρονικής δήλωσης προτίμησης ΕΠΑΛ', $options);
$message['subject'] = t('Ικανοποίηση ηλεκτρονικής δήλωσης προτίμησης', $options);
$message['body'][] = $params['message'];
break;
case 'help_desk':
$message['from'] = \Drupal::config('system.site')->get('mail');
$message['subject'] = t('Σύστημα υποβολής ηλεκτρονικών δηλώσεων προτίμησης ΕΠΑΛ για το νέο σχολικό έτος: Αίτημα Υποστήριξης', $options);
$message['subject'] = t('Σύστημα υποβολής ηλεκτρονικών δηλώσεων προτίμησης για το νέο σχολικό έτος: Αίτημα Υποστήριξης', $options);
$message['body'][] = $params['message'];
break;
}
......
......@@ -197,7 +197,7 @@ epal.findcapacityperschool:
requirements:
_user_is_logged_in: 'TRUE'
epal.applicant.creationpdf:
path: '/epal/pdf-application/{studentId}/{status}'
path: '/epal/pdf-application/{studentId}/{status}/{schname}/{schaddress}/{schtel}'
options:
_auth: [ 'basic_auth' ]
defaults:
......@@ -444,6 +444,14 @@ epal.schoolgel.report-gel-applications:
_controller: '\Drupal\epal\Controller\ReportsCreator::makeReportGelApplications'
requirements:
_user_is_logged_in: 'TRUE'
epal.schoolgel.report-gel-choices:
path: '/school/report-gel-choices'
options:
_auth: [ 'basic_auth' ]
defaults:
_controller: '\Drupal\epal\Controller\ReportsCreator::makeReportGelChoices'
requirements:
_user_is_logged_in: 'TRUE'
epal.dide.report-gel-distrib:
path: '/dide/didegel-distrib-report'
options:
......
......@@ -612,7 +612,8 @@ class ApplicationSubmit extends ControllerBase
//if ($applicationForm[0]['level_name'] != null)
$epalStudent->set('myschool_currentlevelname', $applicationForm[0]['level_name']);
//if ($applicationForm[0]['unittype_name'] != null)
$epalStudent->set('myschool_currentunittype', $applicationForm[0]['unittype_name']);
$epalStudent->set('myschool_currentunittype', $applicationForm[0]['unittype_name']);
//$epalStudent->set('second_period', $eggrafesConfig->activate_second_period->value);
$epalStudent->save();
}
......
......@@ -64,7 +64,7 @@ class PDFCreator extends ControllerBase {
);
}
public function createApplicantPDF(Request $request, $studentId, $status) {
public function createApplicantPDF(Request $request, $studentId, $status, $schname, $schaddress, $schtel) {
try {
if (!$request->isMethod('GET')) {
......@@ -163,6 +163,9 @@ class PDFCreator extends ControllerBase {
$this->initPdfHandler();
$this->createHeader($epalStudent,$status);
$this->createResult($epalStudent, $status, $schname, $schaddress, $schtel);
$ret = $this->createGuardianInfo($epalStudent);
if ($ret === ERROR_DECODING)
return $this->respondWithStatus([
......@@ -212,18 +215,86 @@ class PDFCreator extends ControllerBase {
$this->pdf->SetFont($this->fontBold, '', 16);
$this->pdf->MultiCell(0, 8, $this->prepareString('Ηλεκτρονική Δήλωση Προτίμησης ΕΠΑΛ'), 0, 'C');
$this->pdf->SetFont($this->fontBold, '', $this->fontSizeHeader);
$this->pdf->MultiCell(0, 8, $this->prepareString('με αριθμό δήλωσης: ' . $student->id->value . ' / ' . date('d-m-y (ώρα: H:i:s)', $student->changed->value)), 0, 'C');
//αλλαγή τιμής Β περιόδου..
if ($student->changed->value != 1529867143)
$this->pdf->MultiCell(0, 8, $this->prepareString('με αριθμό δήλωσης: ' . $student->id->value . ' / ' . date('d-m-y (ώρα: H:i:s)', $student->changed->value)), 0, 'C');
else
$this->pdf->MultiCell(0, 8, $this->prepareString('με αριθμό δήλωσης: ' . $student->id->value . ' / ' . date('d-m-y (ώρα: H:i:s)', $student->created->value)), 0, 'C');
$this->pdf->SetFont($this->fontLight, '', 11);
//if ($this->applicantsResultsDisabled === "1")
if ($status === "0" || $status === "3" || $status === "4" || $status === "5" || $status === "6" || $status === "7")
$this->pdf->MultiCell(0, 8, $this->prepareString('(Αρχική)'), 0, 'R');
else
else if ($status === "1" || $status === "2")
$this->pdf->MultiCell(0, 8, $this->prepareString('(Οριστική)'), 0, 'R');
$this->pdf->Ln();
}
private function createResult($student, $status, $schname, $schaddress, $schtel) {
$width = 45;
$height = 8;
if ($status == "1") {
$this->pdf->SetFont($this->fontBold, '', $this->fontSizeHeader);
$this->pdf->SetFillColor(255,178,102);
$this->pdf->MultiCell(0, $height, $this->prepareString('Αποτέλεσμα Τοποθέτησης'), 0, 'C',true);
$this->pdf->Ln(4);
$this->pdf->SetFont($this->fontLight, '', /*$this->fontSizeRegular*/ 12);
$msg = "Η αίτησή σας ικανοποιήθηκε. Έχετε επιλεγεί για να εγγραφείτε στο " . $schname .
". Παρακαλείστε να προσέλθετε ΑΜΕΣΑ στο σχολείο για να προχωρήσει η διαδικασία εγγραφής σας σε αυτό, προσκομίζοντας τα απαραίτητα δικαιολογητικά. " .
"Διεύθυνση σχολείου: " . $schaddress . ", Τηλέφωνο σχολείου: " . $schtel . ".";
$this->pdf->MultiCell(0, $height, $this->prepareString($msg), 0, 'J');
$this->pdf->Ln();
}
else if ($status == "3") {
$this->pdf->SetFont($this->fontBold, '', $this->fontSizeHeader);
$this->pdf->SetFillColor(255,178,102);
$this->pdf->MultiCell(0, $height, $this->prepareString('Αποτέλεσμα Τοποθέτησης'), 0, 'C',true);
$this->pdf->Ln(4);
$this->pdf->SetFont($this->fontLight, '', /*$this->fontSizeRegular*/ 12);
$msg = "Η αίτησή σας δεν ικανοποιήθηκε. Μπορείτε να κάνετε νέα αίτηση στην επόμενη περίοδο δηλώσεων προτίμησης.";
$this->pdf->MultiCell(0, $height, $this->prepareString($msg), 0, 'J');
$this->pdf->Ln();
}
else if ($status == "5") {
$this->pdf->SetFont($this->fontBold, '', $this->fontSizeHeader);
$this->pdf->SetFillColor(255,178,102);
$this->pdf->MultiCell(0, $height, $this->prepareString('Αποτέλεσμα Τοποθέτησης'), 0, 'C',true);
$this->pdf->Ln(4);
$this->pdf->SetFont($this->fontLight, '', /*$this->fontSizeRegular*/ 12);
$msg = "Δεν ήταν δυνατή η τοποθέτησή σας σε σχολείο λόγω του αποτελέσματος φοίτησης. " .
"Μπορείτε να προχωρήσετε σε τροποποίηση της αίτησης στη Β’ περίοδο αιτήσεων.";
$this->pdf->MultiCell(0, $height, $this->prepareString($msg), 0, 'J');
$this->pdf->Ln();
}
else if ($status == "6") {
$this->pdf->SetFont($this->fontBold, '', $this->fontSizeHeader);
$this->pdf->SetFillColor(255,178,102);
$this->pdf->MultiCell(0, $height, $this->prepareString('Αποτέλεσμα Τοποθέτησης'), 0, 'C',true);
$this->pdf->Ln(4);
$this->pdf->SetFont($this->fontLight, '', /*$this->fontSizeRegular*/ 12);
$msg = "Δεν ήταν δυνατή η τοποθέτησή σας σε σχολείο λόγω του τρέχοντος αποτελέσματος προαγωγής. " .
"Σε περίπτωση προαγωγής σας τις αμέσως επόμενες ημέρες θα τοποθετηθείτε σε σχολείο χωρίς καμία δική σας περαιτέρω ενέργεια." ;
$this->pdf->MultiCell(0, $height, $this->prepareString($msg), 0, 'J');
$this->pdf->Ln();
}
else if ($status == "7") {
$this->pdf->SetFont($this->fontBold, '', $this->fontSizeHeader);
$this->pdf->SetFillColor(255,178,102);
$this->pdf->MultiCell(0, $height, $this->prepareString('Αποτέλεσμα Τοποθέτησης'), 0, 'C',true);
$this->pdf->Ln(4);
$this->pdf->SetFont($this->fontLight, '', /*$this->fontSizeRegular*/ 12);
$msg = "Το αποτέλεσμα της προαγωγής σας δεν έχει καταχωρισθεί στo πληροφοριακό σύστημα του σχολείου (myschool). " .
"Παρακαλώ επικοινωνήστε με τον διευθυντή του σχολείου σας." ;
$this->pdf->MultiCell(0, $height, $this->prepareString($msg), 0, 'J');
$this->pdf->Ln();
}
}
private function createGuardianInfo($student) {
$width = 45;
......
......@@ -578,7 +578,8 @@ class SubmitedApplications extends ControllerBase
if ($epalStudent->finalized === "1")
$status = "1";
else if ($epalStudent->finalized === "0")
$status = "2";
//$status = "2"; Τροποποίηση για να βγαίνει μήνυμα ότι τοποθετήθηκε "κανονικά" και ας είναι ολιγομελές
$status = "1";
else if ( ($epalStudent->second_period === "0" && /*$studInDistr === false*/ $epalStudent->finalized === null) ||
($epalStudent->second_period === "1" && $epalStudent->changed < $dateStartInt) )
$status = "3";
......@@ -599,6 +600,11 @@ class SubmitedApplications extends ControllerBase
else
$status = "0";
if ($epalStudent->changed != 1529867143)
$appchanged = $epalStudent->changed;
else
$appchanged = $epalStudent->created;
$list[] = array(
'applicationId' => $epalStudent->id,
'am' => $am_decoded,
......@@ -626,7 +632,8 @@ class SubmitedApplications extends ControllerBase
'telnum' => $telnum_decoded,
'relationtostudent' => $epalStudent->relationtostudent,
'birthdate' => substr($epalStudent->birthdate, 8, 2).'/'.substr($epalStudent->birthdate, 5, 2).'/'.substr($epalStudent->birthdate, 0, 4),
'changed' => date('d/m/Y H:i', $epalStudent->changed),
//'changed' => date('d/m/Y H:i', $epalStudent->changed),
'changed' => date('d/m/Y H:i', $appchanged),
'epalSchoolsChosen' => $epalSchoolsChosen,
'applicantsResultsDisabled' => $applicantsResultsDisabled,
'applicantsAppModifyDisabled' => $applicantsAppModifyDisabled,
......
......@@ -47,7 +47,7 @@ gel.applicationdetails:
requirements:
_user_is_logged_in: 'TRUE'
gel.applicant.creationpdf:
path: '/gel/pdf-application/{studentId}/{status}'
path: '/gel/pdf-application/{studentId}/{status}/{schname}/{schaddress}/{schtel}'
options:
_auth: [ 'basic_auth' ]
defaults:
......
......@@ -732,6 +732,7 @@ class GelApplicationSubmit extends ControllerBase
//$this->logger->error($student["lastschool_class"]);
$isNight = $this->isNightSchool($student["lastschool_registrynumber"]);
//από ΓΕΛ
/*
if ( $student["lastschool_unittypeid"] == "4" ) {
if ($isNight && $student["lastschool_class"] == "1" && $student["nextclass"] != 1 && $student["nextclass"] != 5) {
//$this->logger->error("ΠΕΡΙΠΤΩΣΗ 1 Ή 8");
......@@ -758,6 +759,7 @@ class GelApplicationSubmit extends ControllerBase
return 1026;
}
}
*/
//από Γυμνάσιο
//Προσοχή! Δεν αντιμετωπίζουμε τα Γυμνάσια με Λυκειακες Τάξεις
......
......@@ -1671,6 +1671,7 @@ public function FindCoursesPerSchoolGel(Request $request)
$user = reset($users);
if ($user) {
$schoolid = $user->init->value;
//$schoolid = 1164;
$schools = $this->entityTypeManager->getStorage('gel_school')->loadByProperties(array('id' => $schoolid));
$school = reset($schools);
if (!$school) {
......@@ -1686,7 +1687,7 @@ public function FindCoursesPerSchoolGel(Request $request)
$userRoles = $user->getRoles();
$userRole = '';
foreach ($userRoles as $tmpRole) {
if ($tmpRole == 'gel' ||$tmpRole == 'gymlt') {
$userRole = $tmpRole;
}
......@@ -2024,6 +2025,7 @@ public function getStudentPerSchoolGel(Request $request, $classId)
$user = reset($users);
if ($user) {
$gelId = $user->init->value;
//$gelId = 1164;
//$this->logger->warning($gelId."kvdikos sxoleiou".$classId);
$schools = $this->entityTypeManager->getStorage('gel_school')->loadByProperties(array('id' => $gelId));
$school = reset($schools);
......@@ -2115,12 +2117,25 @@ public function getStudentPerSchoolGel(Request $request, $classId)
//$this->logger->warning($studentId."step2");
$studentIdNew = $gelStudent->id();
$choices = "";
$studentchoices = $this->entityTypeManager->getStorage('gel_student_choices')->loadByProperties(array('student_id' => $studentId));
//$studentchoices = $this->entityTypeManager->getStorage('gel_student_choices')->loadByProperties(array('student_id' => $studentId));
$sCon = $this->connection->select('gel_student_choices', 'eSchool')
->fields('eSchool', array('student_id', 'choice_id','order_id'))
->condition('eSchool.student_id', $studentId , '=');
$sCon -> orderBy('eSchool.order_id', 'ASC');
$studentchoices = $sCon->execute()->fetchAll(\PDO::FETCH_OBJ);
foreach ($studentchoices as $object) {
foreach ($studentchoices as $objects) {
//$this->logger->warning($studentId."choices");
$choices = $choices." ".($object -> choice_id ->entity->get('name')->value)."/" ;
}
//$choices = $choices." ".($object -> choice_id ->entity->get('name')->value)."/" ;
//}
$schoices = $this->entityTypeManager->getStorage('gel_choices')->loadByProperties(array('id' => $objects -> choice_id));
$schoice = reset($schoices);
$choices = $choices." ".($schoice -> name ->value )."/" ;
}
$crypt = new Crypt();
try {
......@@ -2203,7 +2218,8 @@ public function getStudentPerSchoolGel(Request $request, $classId)
//'birthdate' => substr($gelStudent->birthdate->value, 8, 10) . '/' . substr($gelStudent->birthdate->value, 6, 8) . '/' . substr($gelStudent->birthdate->value, 0, 4),
'birthdate' => date("d-m-Y", strtotime($gelStudent->birthdate->value)),
'checkstatus' => $gelStudent -> directorconfirm ->value,
'lock_delete' => $lock_delete,
//'lock_delete' => $lock_delete,
'lock_delete' => "0",
'created' => date('d/m/Y H:i', $gelStudent -> created ->value),
'choices' => $choices
......@@ -2224,11 +2240,20 @@ public function getStudentPerSchoolGel(Request $request, $classId)
$studentIdNew = $studentId;
$choices = "";
$studentchoices = $this->entityTypeManager->getStorage('gel_student_choices')->loadByProperties(array('student_id' => $studentId));
//$studentchoices = $this->entityTypeManager->getStorage('gel_student_choices')->loadByProperties(array('student_id' => $studentId));
foreach ($studentchoices as $objects) {
$choices = $choices." ".($objects -> choice_id ->entity->get('name')->value)."/" ;
$sCon = $this->connection->select('gel_student_choices', 'eSchool')
->fields('eSchool', array('student_id', 'choice_id','order_id'))
->condition('eSchool.student_id', $studentId , '=');
$sCon -> orderBy('eSchool.order_id', 'ASC');
$studentchoices = $sCon->execute()->fetchAll(\PDO::FETCH_OBJ);
foreach ($studentchoices as $objects) {
$schoices = $this->entityTypeManager->getStorage('gel_choices')->loadByProperties(array('id' => $objects -> choice_id));
$schoice = reset($schoices);
$choices = $choices." ".($schoice -> name ->value )."/" ;
}
$crypt = new Crypt();
......@@ -2301,7 +2326,8 @@ public function getStudentPerSchoolGel(Request $request, $classId)
//'birthdate' => substr($object->birthdate , 8, 10) . '/' . substr($object->birthdate , 6, 8) . '/' . substr($object->birthdate , 0, 4),
'birthdate' => date("d-m-Y", strtotime($object->birthdate )),
'checkstatus' => $object -> directorconfirm ,
'lock_delete' => $lock_delete,
//'lock_delete' => $lock_delete,
'lock_delete' => "0",
'created' => date('d/m/Y H:i', $object -> created ),
'choices' => $choices
......@@ -2451,7 +2477,7 @@ public function getSchoolGel(Request $request)
->loadByProperties(array('id' => $schoolid));
$CourseA = reset($CoursesA);
if ($CourseA) {
if ( $operation_shift == 'ΗΜΕΡΗΣΙΟ')
{
......@@ -2714,7 +2740,7 @@ public function getSchoolGel(Request $request)
}
}
......@@ -2723,7 +2749,7 @@ public function getSchoolGel(Request $request)
}
if ($CourseA) {
......@@ -3045,7 +3071,7 @@ public function ConfirmStudents(Request $request)
$userRole = $tmpRole;
}
}
if ($userRole === 'gel') {
if ($userRole === 'gel' || $tmpRole === 'gymlt') {
if ($content = $request->getContent()) {
$postData = json_decode($content);
$arr = $postData->students;
......
......@@ -510,12 +510,12 @@ class GelSubmittedApplications extends ControllerBase
else if ($gelStudent->school_id)
//υπάρχει σχολείο στον πίνακα gelstudenthighschool
$status = "1";
else if ($gelStudent->student_id != null && $gelStudent->school_id == null)
//υπάρχει ο μαθητής αλλά όχι το σχολείο στον πίνακα gelstudenthighschool
$status = "3";
else if ($gelStudent->lastschool_unittypeid == 40)
//ειδικές περιπτώσεις: μαθητές από ΣΔΕ / σχολεία εξωτερικού
$status = "3";
else if ($gelStudent->student_id != null && $gelStudent->school_id == null)
//υπάρχει ο μαθητής αλλά όχι το σχολείο στον πίνακα gelstudenthighschool
$status = "8";
else if ($gelStudent->student_id == null) {
//ο μαθητής δεν υπάρχει στον πίνακα gelstudenthighschool, άρα πάει αυτοδίκαια στο σχολείο τρέχουσας φοίτησης
$status = "4";
......@@ -552,6 +552,10 @@ class GelSubmittedApplications extends ControllerBase
else
$status = "0";
if ($gelStudent->changed != 1529867143)
$appchanged = $gelStudent->changed;
else
$appchanged = $gelStudent->created;
$list[] = array(
'applicationId' => $gelStudent->id,
......@@ -576,7 +580,8 @@ class GelSubmittedApplications extends ControllerBase
'telnum' => $telnum_decoded,
'relationtostudent' => $gelStudent->relationtostudent,
'birthdate' => substr($gelStudent->birthdate, 8, 2).'/'.substr($gelStudent->birthdate, 5, 2).'/'.substr($gelStudent->birthdate, 0, 4),
'changed' => date('d/m/Y H:i', $gelStudent->changed),
//'changed' => date('d/m/Y H:i', $gelStudent->changed),
'changed' => date('d/m/Y H:i', $appchanged),
'gelStudentChoices' => $gelStudentChoices,
//'schoolName' => $gelStudent->eeschfin_name,
//'schoolAddress' => $gelStudent->street_address,
......
......@@ -58,7 +58,7 @@ class PDFCreator extends ControllerBase {
);
}
public function createApplicantPDF(Request $request, $studentId, $status) {
public function createApplicantPDF(Request $request, $studentId, $status, $schname, $schaddress, $schtel) {
try {
if (!$request->isMethod('GET')) {
......@@ -140,6 +140,9 @@ class PDFCreator extends ControllerBase {
$this->initPdfHandler();
$this->createHeader($gelStudent,$status);
$this->createResult($gelStudent,$status, $schname, $schaddress, $schtel);
$ret = $this->createGuardianInfo($gelStudent);
if ($ret === ERROR_DECODΕ)
return $this->respondWithStatus([
......@@ -186,19 +189,98 @@ class PDFCreator extends ControllerBase {
$this->pdf->SetFont($this->fontBold, '', 16);
$this->pdf->MultiCell(0, 8, $this->prepareString('Ηλεκτρονική Δήλωση Προτίμησης ΓΕΛ'), 0, 'C');
$this->pdf->SetFont($this->fontBold, '', $this->fontSizeHeader);
$this->pdf->MultiCell(0, 8, $this->prepareString('με αριθμό δήλωσης: ' . $student->id->value . ' / ' . date('d-m-y (ώρα: H:i:s)', $student->changed->value)), 0, 'C');
if ($student->changed->value != 1529867143)
$this->pdf->MultiCell(0, 8, $this->prepareString('με αριθμό δήλωσης: ' . $student->id->value . ' / ' . date('d-m-y (ώρα: H:i:s)', $student->changed->value)), 0, 'C');
else
$this->pdf->MultiCell(0, 8, $this->prepareString('με αριθμό δήλωσης: ' . $student->id->value . ' / ' . date('d-m-y (ώρα: H:i:s)', $student->created->value)), 0, 'C');
$this->pdf->SetFont($this->fontLight, '', 11);
//if ($this->applicantsResultsDisabled === "1")
if ($status === "0" || $status === "2" || $status === "3" || $status === "5" || $status === "6" || $status === "7")
if ($status === "0" || $status === "2" || $status === "3" || $status === "5" || $status === "6" || $status === "7" || $status === "8")
$this->pdf->MultiCell(0, 8, $this->prepareString('(Αρχική)'), 0, 'R');
else
else if ($status === "1" || $status === "4" )
$this->pdf->MultiCell(0, 8, $this->prepareString('(Οριστική)'), 0, 'R');
$this->pdf->Ln();
}
private function createResult($student,$status, $schname, $schaddress, $schtel) {
$width = 45;
$height = 8;
if ($status == "1" || $status == "4") {
$this->pdf->SetFont($this->fontBold, '', $this->fontSizeHeader);
$this->pdf->SetFillColor(255,178,102);
$this->pdf->MultiCell(0, $height, $this->prepareString('Αποτέλεσμα Τοποθέτησης'), 0, 'C',true);
$this->pdf->Ln(4);
$this->pdf->SetFont($this->fontLight, '', /*$this->fontSizeRegular*/ 12);
$msg = "Η αίτησή σας ικανοποιήθηκε. Έχετε επιλεγεί για να εγγραφείτε στο " . $schname .
". Μπορείτε να προσέλθετε στο σχολείο για να ολοκληρωθεί η διαδικασία εγγραφής σας σε αυτό, " .
"προσκομίζοντας τα απαραίτητα δικαιολογητικά μέχρι την αρχή της σχολικής χρονιάς. " .
"Διεύθυνση σχολείου: " . $schaddress . ", Τηλέφωνο σχολείου: " . $schtel . ".";
$this->pdf->MultiCell(0, $height, $this->prepareString($msg), 0, 'J');
$this->pdf->Ln();
}
else if ($status == "3") {
$this->pdf->SetFont($this->fontBold, '', $this->fontSizeHeader);
$this->pdf->SetFillColor(255,178,102);
$this->pdf->MultiCell(0, $height, $this->prepareString('Αποτέλεσμα Τοποθέτησης'), 0, 'C',true);
$this->pdf->Ln(4);
$this->pdf->SetFont($this->fontLight, '', /*$this->fontSizeRegular*/ 12);
$msg = "Η αίτησή σας είναι σε κατάσταση διεκπεραίωσης από την οικεία Διεύθυνση Δευτεροβάθμιας Εκπαίδευσης.";
$this->pdf->MultiCell(0, $height, $this->prepareString($msg), 0, 'J');
$this->pdf->Ln();
}
else if ($status == "5") {
$this->pdf->SetFont($this->fontBold, '', $this->fontSizeHeader);
$this->pdf->SetFillColor(255,178,102);
$this->pdf->MultiCell(0, $height, $this->prepareString('Αποτέλεσμα Τοποθέτησης'), 0, 'C',true);
$this->pdf->Ln(4);
$this->pdf->SetFont($this->fontLight, '', /*$this->fontSizeRegular*/ 12);
$msg = "Δεν ήταν δυνατή η τοποθέτησή σας σε σχολείο λόγω του αποτελέσματος φοίτησης. " .
"Μπορείτε να προχωρήσετε σε τροποποίηση της αίτησης στη Β’ περίοδο αιτήσεων.";
$this->pdf->MultiCell(0, $height, $this->prepareString($msg), 0, 'J');
$this->pdf->Ln();
}
else if ($status == "6") {
$this->pdf->SetFont($this->fontBold, '', $this->fontSizeHeader);
$this->pdf->SetFillColor(255,178,102);
$this->pdf->MultiCell(0, $height, $this->prepareString('Αποτέλεσμα Τοποθέτησης'), 0, 'C',true);
$this->pdf->Ln(4);
$this->pdf->SetFont($this->fontLight, '', /*$this->fontSizeRegular*/ 12);
$msg = "Δεν ήταν δυνατή η τοποθέτησή σας σε σχολείο λόγω του τρέχοντος αποτελέσματος προαγωγής. " .
"Σε περίπτωση προαγωγής σας τις αμέσως επόμενες ημέρες θα τοποθετηθείτε σε σχολείο χωρίς καμία δική σας περαιτέρω ενέργεια." ;
$this->pdf->MultiCell(0, $height, $this->prepareString($msg), 0, 'J');
$this->pdf->Ln();
}
else if ($status == "7") {
$this->pdf->SetFont($this->fontBold, '', $this->fontSizeHeader);
$this->pdf->SetFillColor(255,178,102);
$this->pdf->MultiCell(0, $height, $this->prepareString('Αποτέλεσμα Τοποθέτησης'), 0, 'C',true);
$this->pdf->Ln(4);
$this->pdf->SetFont($this->fontLight, '', /*$this->fontSizeRegular*/ 12);
$msg = "Το αποτέλεσμα της προαγωγής σας δεν έχει καταχωρισθεί στo πληροφοριακό σύστημα του σχολείου (myschool). " .
"Παρακαλώ επικοινωνήστε με τον διευθυντή του σχολείου σας." ;
$this->pdf->MultiCell(0, $height, $this->prepareString($msg), 0, 'J');
$this->pdf->Ln();
}
else if ($status == "8") {
$this->pdf->SetFont($this->fontBold, '', $this->fontSizeHeader);
$this->pdf->SetFillColor(255,178,102);
$this->pdf->MultiCell(0, $height, $this->prepareString('Αποτέλεσμα Τοποθέτησης'), 0, 'C',true);
$this->pdf->Ln(4);
$this->pdf->SetFont($this->fontLight, '', /*$this->fontSizeRegular*/ 12);
$msg = "Η δήλωσή σας φαίνεται να έχει λάθος στοιχεία. Μπορείτε να προχωρήσετε σε τροποποίηση ή διαγραφή και νέα αίτηση " .
"κατά τη Β’ περίοδο αιτήσεων. Δώστε ιδιαίτερη προσοχή στα πεδία: Σχολείο τελευταίας φοίτησης " .
"(για τους ενεργούς μαθητές είναι το σχολείο που φοιτούν αυτή τη στιγμή), Τάξη τελευταίας φοίτησης, Τάξη φοίτησης στο ερχόμενο σχολικό έτος." ;
$this->pdf->MultiCell(0, $height, $this->prepareString($msg), 0, 'J');
$this->pdf->Ln();
}
}
private function createGuardianInfo($student) {
$width = 45;
......
......@@ -162,7 +162,7 @@ class CurrentUser extends ControllerBase
public function getApplicantUserData(Request $request)
{
//test
//for ($k=0;$k<14;$k++)
//for ($k=0;$k<1;$k++)
// $this->logger->warning(\Drupal::service('uuid')->generate() );
$authToken = $request->headers->get('PHP_AUTH_USER');
......
......@@ -22,6 +22,10 @@ import { IAppState } from "../../store/store";
<button type="button" class="btn btn-block" (click)="nav_to_reportpath(0)"><i class="fa fa-file-text"></i> Δηλώσεις Μαθητών</button>
</div>
<div *ngIf = "userRole == 'director_gel' ">
<button type="button" class="btn btn-block" (click)="nav_to_reportpath(1)"><i class="fa fa-file-text"></i> Επιλογές μαθητών</button>
</div>
</div>
`
......@@ -70,6 +74,9 @@ import { IAppState } from "../../store/store";
if (repId === 0) {
this.router.navigate(["/school/report-gel-applications"]);
}
else if (repId === 1) {
this.router.navigate(["/school/report-gel-choices"]);
}
}
}
import { NgRedux } from "@angular-redux/store";
import { Injectable } from "@angular/core";
import { Component, ElementRef, Input, OnDestroy, OnInit, ViewChild } from "@angular/core";
import { ActivatedRoute, Router } from "@angular/router";
import { LocalDataSource } from "ng2-smart-table";
import { BehaviorSubject, Subscription } from "rxjs/Rx";
import { API_ENDPOINT } from "../../app.settings";
import { HelperDataService } from "../../services/helper-data-service";
//import { IAppState } from "../../store/store";
import { CsvCreator } from "../minister/csv-creator";
import { ReportsSchema, TableColumn } from "../minister/reports-schema";
@Component({
selector: "report-gel-choices",
template: `
<div class="reports-container">
<div class = "loading" *ngIf="validCreator == 0" ></div>
<h5>Επιλογές μαθητών</h5>
<button type="submit" class="btn btn-alert pull-right" (click)="navigateBack()" > Επιστροφή</button>
<div *ngIf="validCreator == 1 ">
<!--<input #search class="search" type="text" placeholder="Αναζήτηση..." (keydown.enter)="onSearch(search.value)">-->
<div class="smart-table-container table table-hover table-striped" reportScroll>
<ng2-smart-table [settings]="settings" [source]="source"></ng2-smart-table>
</div>
</div>
<button type="button" class="alert alert-info pull-right" (click)="export2Csv()" [hidden]="validCreator != 1"><i class="fa fa-download"></i> Εξαγωγή σε csv</button>
</div>
`
})
@Injectable() export default class ReportGelChoices implements OnInit, OnDestroy {
private generalReport$: BehaviorSubject<any>;
private generalReportSub: Subscription;
private apiEndPoint = API_ENDPOINT;
private data;
private validCreator: number;
//private reportId: number;
private routerSub: any;
private source: LocalDataSource;
columnMap: Map<string, TableColumn> = new Map<string, TableColumn>();
@Input() settings: any;
private reportSchema = new ReportsSchema();
private csvObj = new CsvCreator();
constructor(
//private _ngRedux: NgRedux<IAppState>,
private _hds: HelperDataService,
private activatedRoute: ActivatedRoute,
private router: Router) {
this.generalReport$ = new BehaviorSubject([{}]);
this.validCreator = -1;
}
ngOnInit() {
this.createReport();
}
ngOnDestroy() {
if (this.generalReportSub)
this.generalReportSub.unsubscribe();
}
createReport() {
this.validCreator = 0;
let route = "/school/report-gel-choices/";
this.settings = this.reportSchema.reportGelChoices;
this.generalReportSub = this._hds.makeGelReports(route).subscribe(data => {
this.generalReport$.next(data);
this.data = data;
this.validCreator = 1;
this.source = new LocalDataSource(this.data);
this.columnMap = new Map<string, TableColumn>();
// pass parametes to csv class object
this.csvObj.columnMap = this.columnMap;
this.csvObj.source = this.source;
this.csvObj.settings = this.settings;
this.csvObj.prepareColumnMap();
},
error => {
this.generalReport$.next([{}]);
this.validCreator = -1;
console.log("Error Getting ReportGelChoices");
});
}
navigateBack() {
this.router.navigate(["/school/directorgel-reports"]);
}
//onSearch(query: string = "") {
// this.csvObj.onSearch(query);
//}
export2Csv() {
this.csvObj.export2Csv();
}
}
......@@ -524,11 +524,63 @@ export class ReportsSchema {
}
},