330 lines
13 KiB
PHP
330 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;
|
|
if($groep->ondersteuning != 'F') $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->graph;
|
|
$orgid = $input->orgid;
|
|
$organisatie = $this->Organisaties_model->getOrganisatie($orgid);
|
|
$schooljaar = $input->schooljaar;
|
|
|
|
$today = date("d-m-Y");
|
|
$data= array("organisatie" => $organisatie,
|
|
"img" => $inputimage,
|
|
"schooljaar" => $schooljaar,
|
|
"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]);
|
|
}
|
|
|
|
|
|
} |