Files
monpas/application/controllers/monpas/Diversiteit.php
T
2021-07-10 16:25:16 +02:00

332 lines
13 KiB
PHP

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Diversiteit extends MY_Controller{
function __construct(){
parent::__construct();
$models = array( "shared/Users_model",
"monpas/Ondersteuningsvormen_model",
"monpas/Aantalxondersteuningsvorm_model",
"monpas/Leerkrachten_model",
"monpas/Groepen_model",
"shared/Schooljaren_model","Phantom_model",
"monpas/Ondersteuningtijden_model",
"monpas/Dq_model",
"monpas/Diversiteits_model",
"monpas/Combifactoren_model");
$this->load->model($models);
$this->load->helper('string');
if ( ! $this->check_online_status() ) {
echo json_encode( array('offline' => TRUE) );
die;
};// if
}
function getgroepen(){
//TODO clean input
if (!$this->userid) die;
$orgid = $this->clean_input('orgID');
$schooljaarnr = $this->clean_input('schooljaar');
$module = $this->clean_input('module');
$groepen = $this->Groepen_model->getgroepen($orgid, $schooljaarnr, $module);
if ($groepen) {
foreach ($groepen as $groep) {
$groepasarray = explode(';', $groep->niveau);
$groep->combi = count($groepasarray);
$groep->tijden = new stdClass;
$groep->tijden = $this->Ondersteuningtijden_model->getgroeptijden($groep->id);
}
}
echo json_encode($groepen);
}
function getgroepenso(){
//TODO clean input
if (!$this->userid) die;
$orgid = $this->uri->segment(4);
$schooljaarnr = $this->uri->segment(5);
$ondersteuning = 'T';
$groepen = $this->Groepen_model->getgroepenSboSo($orgid, $schooljaarnr);
if($groepen) {
foreach ($groepen as $groep) {
if($groep->ondersteuning == 'F'){
$ondersteuning = 'F';
continue;
}
$groepasarray = explode(';', $groep->niveau);
$groep->combi = count($groepasarray);
$groep->tijden = new stdClass;
$groep->tijden = $this->Ondersteuningtijden_model->getgroeptijden($groep->id);
}
}
echo json_encode(['groepen' =>$groepen, 'ondersteuning' =>$ondersteuning]);
}
function getondersteuningsvormen(){
if (!$this->userid) die;
$orgid = $this->clean_input("orgid");
$schooljaarnr = $this->clean_input("schooljaarnr");
$module = $this->clean_input("module");
$minnivo = $this->clean_input("minnivo");
$maxnivo = $this->clean_input("maxnivo");
$os =$this->Diversiteits_model->getosvormen($orgid, $schooljaarnr, $minnivo, $maxnivo, $module);
echo json_encode($os);
}
function pdfdiversiteitbar(){
$inputstring = $this->input->post('data');
$input = json_decode($inputstring);
$inputimage = $input->image;
$orgid = $input->orgid;
$organisatie = $this->Organisaties_model->getOrganisatie($orgid);
$schooljaarnr = $input->schooljaarnr;
$schooljaarnaam = $this->Schooljaren_model->get_fieldvalue(array("schooljaarnr"=>$schooljaarnr),"naam");
$today = date("d-m-Y");
$data= array("organisatie" => $organisatie,
"inputimage" => $inputimage,
"schooljaarnaam" => $schooljaarnaam,
"vandaag" => $today);
$html = $this->load->view("monpas/reports/diversiteitbar", $data, true);
$filenaam="diversiteit";
$this->Phantom_model->create_pdf($html, $filenaam, FALSE, FALSE, FALSE);
}
function printaantallen(){
$orgid = $this->uri->segment(4);
$schooljaarnr = $this->uri->segment(5);
$organisatie = $this->Organisaties_model->getOrganisatie($orgid);
$schooljaarnaam = $this->Schooljaren_model->get_fieldvalue(array("schooljaarnr"=>$schooljaarnr),"naam");
$schooltotaal = 0;
$schoolgewogentot = 0;
$schoolsom1 = 0;
$schoolsom2 = 0;
$schoolsom3 = 0;
$schoolsom4 = 0;
$schooldiversiteit = 0;
$schooldq = 0;
$groepen = $this->Groepen_model->getgroepen($orgid, $schooljaarnr);
if ($groepen){
foreach($groepen as $groep){
$schooltotaal = $schooltotaal + $groep->totaantal;
$schoolsom1 = $schoolsom1 + $groep->som1;
$schoolsom2 = $schoolsom2 + $groep->som2;
$schoolsom3 = $schoolsom3 + $groep->som3;
$schoolsom4 = $schoolsom4 + $groep->som4;
$schooldiversiteit = $schooldiversiteit + $groep->som1 + (1.5 * $groep->som2) + (2 * $groep->som3) + (4 * $groep->som4) ;
if ((strpos($groep->niveau, '1') !== false) || (strpos($groep->niveau, '2') !== false) ){
$schoolgewogentot = $schoolgewogentot + 22; }
else {
$schoolgewogentot = $schoolgewogentot + 24; }
}; // foreach
}// if
$schooldq = round($schooldiversiteit / $schoolgewogentot , 2);
$today = date("d-m-Y");
$aantalgroepen = sizeof($groepen);
$richtlijn=array('85%', '10%','3%','25');
$data=array('organisatie' => $organisatie,
"schooljaarnaam" => $schooljaarnaam,
"schooltotaal" => $schooltotaal,
"schooldiversiteit" => $schooldiversiteit,
"schooldq" => $schooldq,
"schoolgewogentot"=>$schoolgewogentot,
"schoolsom1" => $schoolsom1,
"schoolsom2" => $schoolsom2,
"schoolsom3" => $schoolsom3,
"schoolsom4" => $schoolsom4,
"aantalgroepen" =>$aantalgroepen,
"vandaag" => $today,
"richtlijn" =>$richtlijn);
$html = $this->load->view("monpas/reports/diversiteitaantallen", $data, true);
$filenaam="diversiteitaantallen";
$this->Phantom_model->create_pdf($html, $filenaam, FALSE, FALSE, FALSE);
}
function printaantallensboso(){
$orgid = $this->uri->segment(4);
$schooljaarnr = $this->uri->segment(5);
$organisatie = $this->Organisaties_model->getOrganisatie($orgid);
$schooljaarnaam = $this->Schooljaren_model->get_fieldvalue(array("schooljaarnr"=>$schooljaarnr),"naam");
$schooltotaal = 0;
$sbogewogentot = 0;
$sogewogentot = 0;
$schoolgewogentot = 0;
$schoolsom5 = 0;
$schoolsom6 = 0;
$schoolsom7 = 0;
$schoolsom8 = 0;
$sbodiversiteit = 0;
$sodiversiteit = 0;
$schooldiversiteit = 0;
$schooldq = 0;
$groepen = $this->Groepen_model->getgroepenSboSo($orgid, $schooljaarnr);
if ($groepen){
foreach($groepen as $groep){
$schooltotaal = $schooltotaal + $groep->totaantal;
$schoolsom5 = $schoolsom5 + $groep->som5;
$schoolsom6 = $schoolsom6 + $groep->som6;
$schoolsom7 = $schoolsom7 + $groep->som7;
$schoolsom8 = $schoolsom8 + $groep->som8;
$sbodiversiteit = $sbodiversiteit + (2 * $groep->som5);
$sodiversiteit = $sodiversiteit + (3 * $groep->som6) + (4 * $groep->som7) + (5 * $groep->som8);
$sogewogentot = $sogewogentot + 12;
if ((strpos($groep->niveau, '1') !== false) || (strpos($groep->niveau, '2') !== false) ){
$sbogewogentot = $sbogewogentot + 15; }
else {
$sbogewogentot = $sbogewogentot + 12; }
}; // foreach
}// if
$sbodq = $sbodiversiteit/$sbogewogentot;
$sodq = $sodiversiteit/$sodiversiteit;
$schooldq = round( $sbodq + $sodq, 2);
$today = date("d-m-Y");
$aantalgroepen = sizeof($groepen);
$richtlijn=array('85%', '10%','3%','25');
$data=array('organisatie' => $organisatie,
"schooljaarnaam" => $schooljaarnaam,
"schooltotaal" => $schooltotaal,
"schooldiversiteit" => $schooldiversiteit,
"schooldq" => $schooldq,
"schoolgewogentot" =>$schoolgewogentot,
"schoolsom5" => $schoolsom5,
"schoolsom6" => $schoolsom6,
"schoolsom7" => $schoolsom7,
"schoolsom8" => $schoolsom8,
"aantalgroepen" =>$aantalgroepen,
"vandaag" => $today,
"richtlijn" =>$richtlijn);
$html = $this->load->view("monpas/reports/diversiteitaantallenso", $data, true);
$filenaam="diversiteitaantallenso";
$this->Phantom_model->create_pdf($html, $filenaam, FALSE, FALSE, FALSE);
}
function printquotienten(){
//TODO clean input
$inputstring = $this->input->get('json');
$input = json_decode($inputstring);
$today = date("d-m-Y");
$organisatie = $this->Organisaties_model->getOrganisatie($input->orgid);
$schooljaarnaam = $this->Schooljaren_model->get_fieldvalue(array("schooljaarnr"=>$input->schooljaarnr),"naam");
$groepen = $input->groepen;
$data=array( "organisatie" => $organisatie,
"schooljaarnaam" => $schooljaarnaam,
"vandaag" => $today,
"groepen" => $groepen);
$html=$this->load->view("monpas/reports/diversiteitquotienten", $data, true);
$filenaam="diversiteitquotienten";
$this->Phantom_model->create_pdf($html,$filenaam, FALSE,FALSE,FALSE);
}
function printtotaaltijden(){
$inputstring = $this->input->get('json');
$input = json_decode($inputstring);
$today = date("d-m-Y");
$organisatie = $this->Organisaties_model->getOrganisatie($input->orgid);
$schooljaarnaam = $this->Schooljaren_model->get_fieldvalue(array("schooljaarnr"=>$input->schooljaarnr),"naam");
$data=array( "organisatie" => $organisatie,
"schooljaarnaam" => $schooljaarnaam,
"vandaag" => $today,
"totalen" => $input->totalen);
$html=$this->load->view("monpas/reports/tijdtotalen", $data, true);
$filenaam="tijdtotalen";
$this->Phantom_model->create_pdf($html,$filenaam, FALSE,FALSE,FALSE);
}
function printondersteuningsmatrix(){
$inputstring = $this->input->get('json');
$input = json_decode($inputstring);
$today = date("d-m-Y");
$organisatie = $this->Organisaties_model->getOrganisatie($input->orgid);
$schooljaarnaam = $this->Schooljaren_model->get_fieldvalue(array("schooljaarnr"=>$input->schooljaarnr),"naam");
$data=array( "organisatie" => $organisatie,
"schooljaarnaam" => $schooljaarnaam,
"vandaag" => $today,
"groepen" => $input->groepen,
"schoolDQ" => $input->schoolDQ,
"schooltot" => $input->schooltot);
$html=$this->load->view("monpas/reports/ondersteuningsmatrix", $data, true);
$filenaam="ondersteuningsmatrix";
$this->Phantom_model->create_pdf($html,$filenaam, FALSE,FALSE,FALSE);
}
function printdiversiteitmatrix(){
$inputstring = $this->input->post('data');
$input = json_decode($inputstring);
$today = date("d-m-Y");
$organisatie = $this->Organisaties_model->getOrganisatie($input->orgid);
$schooljaarnaam = $this->Schooljaren_model->get_fieldvalue(array("schooljaarnr"=>$input->schooljaarnr),"naam");
$data=array( "organisatie" => $organisatie,
"schooljaarnaam" => $schooljaarnaam,
"vandaag" => $today,
"basis" => $input->regels1,
"basisplus" => $input->regels2,
'extra' => $input->regels3,
'extraplus' =>$input->regels4,
'dq' =>$input->regels5);
$html=$this->load->view("monpas/reports/diversiteitmatrix", $data, true);
$filenaam="diversiteitmatrix";
$this->Phantom_model->create_pdf($html,$filenaam, FALSE,FALSE,[1,1]);
}
function printdiversiteitmatrixsboso(){
$inputstring = $this->input->post('data');
$input = json_decode($inputstring);
$today = date("d-m-Y");
$organisatie = $this->Organisaties_model->getOrganisatie($input->orgid);
$schooljaarnaam = $this->Schooljaren_model->get_fieldvalue(array
("schooljaarnr"=>$input->schooljaarnr),"naam");
$min = 5;
$max = 8;
$vormen =$this->Diversiteits_model->getosvormen($input->orgid, $input->schooljaarnr, $min, $max);
$data=array("organisatie" => $organisatie,
"schooljaarnaam" => $schooljaarnaam,
"vandaag" => $today,
"groepen" => $input->groepen,
"schooltotaal" => $input->leerlingaantal,
'ondersteuningsvormen' => $vormen,
'schoolsom5' => $input->schoolsom5,
'schoolsom6' => $input->schoolsom6,
'schoolsom7' => $input->schoolsom7,
'schoolsom8' => $input->schoolsom8,
'schooldq' => $input->schooldq,
'schooldiversiteit' => $input->schooldiversiteit);
$html=$this->load->view("monpas/reports/diversiteitmatrixso", $data, true);
$filenaam="diversiteitmatrixso";
$this->Phantom_model->create_pdf($html,$filenaam, FALSE,FALSE,[1,1]);
}
function getnormaantallen(){
if (!$this->userid) die;
$orgid = $this->uri->segment(4);
$schooltype = $this->uri->segment(5);
$combifactoren = '';
$normaantallen =[];
if($schooltype === 'REGULIER'){
$normaantallen = $this->Diversiteits_model->getnormaantallen($orgid, 'REGULIER');
$combifactoren = $this->Combifactoren_model->getfactoren($orgid);
}
if($schooltype === 'SPECIAAL'){
$sbo = $this->Diversiteits_model->getnormaantallen($orgid, 'SBO');
$so = $this->Diversiteits_model->getnormaantallen($orgid, 'SO');
$normaantallen =['sbo'=>$sbo, 'so' => $so];
}
echo json_encode(['normaantallen' =>$normaantallen,
'combifactoren'=>$combifactoren]);
}
}