190 lines
5.9 KiB
PHP
190 lines
5.9 KiB
PHP
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
|
|
|
|
class Inspectieafbeeldingen {
|
|
|
|
private $CI;
|
|
private $oordelen;
|
|
private $oordeel;
|
|
private $wensid;
|
|
private $labels;
|
|
private $swvid;
|
|
private $kleurcodes;
|
|
private $kleuren;
|
|
private $adviezen =[];
|
|
private $orgversie;
|
|
private $ijkpunten;
|
|
private $aantalY = 0;
|
|
private $rij = 708;
|
|
private $standaardorg = 250;
|
|
private $aantal = 15;
|
|
private $kolombreedte;
|
|
private $orgbreedte;
|
|
private $vantm;
|
|
private $inspectieafbeeldingen;
|
|
|
|
public function __construct($inspectieOordelen, $modulenr, $orgversieid, $orgid){
|
|
$this->CI = & get_instance();
|
|
$this->modulenr = $modulenr;
|
|
$this->orgversieid = $orgversieid;
|
|
$this->inspectieoordelen = $inspectieOordelen;
|
|
$this->orgid = $orgid;
|
|
$this->clusterid = 4;
|
|
$this->handle();
|
|
}
|
|
|
|
public function getInspectieAfbeeldingen(){
|
|
return $this->inspectieafbeeldingen;
|
|
}
|
|
|
|
private function handle(){
|
|
$this->setOordelen();
|
|
$this->setIJkpunten();
|
|
$this->telIJkpunten();
|
|
$this->setSWVid();
|
|
$this->setLabels();
|
|
$this->setKleurcodes();
|
|
$this->setKleuren();
|
|
$this->setPeriode();
|
|
$this->loopOordelen();
|
|
$this->setKolombreedte();
|
|
$this->setOrgbreedte();
|
|
$this->setInspectieAfbeeldingen();
|
|
}
|
|
|
|
private function setOordelen(){
|
|
$this->oordelen = $this->inspectieoordelen['oordelen'];
|
|
}
|
|
|
|
private function setIJkpunten(){
|
|
$this->ijkpunten = $this->inspectieoordelen['ijkpunten'];
|
|
}
|
|
|
|
private function telIJkpunten(){
|
|
if($this->ijkpunten){
|
|
$this->aantalY = count($this->ijkpunten);
|
|
}
|
|
}
|
|
|
|
private function setSWVid(){
|
|
$this->swvid = $this->CI->Organisaties_model->get_swvid($this->orgid);
|
|
}
|
|
|
|
private function setLabels(){
|
|
$this->labels = $this->CI->Labels_model->getalllabels($this->modulenr);
|
|
}
|
|
|
|
private function setKleurcodes(){
|
|
$this->kleurcodes = new Kleurcodes();
|
|
}
|
|
|
|
private function setKleuren(){
|
|
// $this->kleuren = $this->CI->Organisaties_model->getKleurcodesOrg($this->clusterid, $this->swvid);
|
|
$this->kleuren = new stdClass();
|
|
$this->kleuren->kleur1 = '#e08885';
|
|
$this->kleuren->kleur2 = '#ffcc80';
|
|
$this->kleuren->kleur3 = '#9fdf9f';
|
|
$this->kleuren->kleur4 = '#99d6ff';
|
|
|
|
$this->kleuren->organisatie_id = '0';
|
|
|
|
}
|
|
|
|
|
|
private function setPeriode(){
|
|
$this->orgversie = $this->CI->Orgversies_model->get_record_by_id($this->orgversieid);
|
|
$this->vantm = "Gegevens uit periode ".$this->orgversie->periodenummer." van ".mysql2date($this->orgversie->geldigvanaf)." t/m ".mysql2date($this->orgversie->geldigtm);
|
|
}
|
|
|
|
private function loopOordelen(){
|
|
if (!$this->oordelen) return;
|
|
foreach ($this->oordelen as $index => $this->oordeel) {
|
|
if(! isset($this->oordeel->normid)) return;
|
|
$this->setOordeelKleuren();
|
|
$this->setWensID();
|
|
$this->setWensKleuren();
|
|
$this->setAdvies();
|
|
}
|
|
}
|
|
|
|
private function setOordeelKleuren(){
|
|
switch ($this->oordeel->normid) {
|
|
case 1:
|
|
$this->oordeel->kleur = $this->kleuren->kleur1;
|
|
break;
|
|
case 2:
|
|
$this->oordeel->kleur = $this->kleuren->kleur2;
|
|
break;
|
|
case 3:
|
|
$this->oordeel->kleur = $this->kleuren->kleur3;
|
|
break;
|
|
case 4:
|
|
$this->oordeel->kleur = $this->kleuren->kleur4;
|
|
break;
|
|
default:
|
|
$this->oordeel->kleur = '#ffffff';
|
|
}
|
|
|
|
}
|
|
|
|
private function setWensID()
|
|
{
|
|
if (!$this->oordeel->wensid) {
|
|
$this->oordeel->wensid = 3;
|
|
}
|
|
}
|
|
private function setWensKleuren(){
|
|
|
|
switch ($this->oordeel->wensid) {
|
|
case 1:
|
|
$this->oordeel->wenskleur = $this->kleuren->kleur1;
|
|
break;
|
|
case 2:
|
|
$this->oordeel->wenskleur = $this->kleuren->kleur2;
|
|
break;
|
|
case 3:
|
|
$this->oordeel->wenskleur = $this->kleuren->kleur3;
|
|
break;
|
|
case 4:
|
|
$this->oordeel->wenskleur = $this->kleuren->kleur4;
|
|
break;
|
|
default:
|
|
$this->oordeel->wenskleur = '#ffffff';
|
|
}
|
|
|
|
}
|
|
|
|
private function setAdvies(){
|
|
if($this->oordeel->normid < $this->oordeel->wensid && $this->oordeel->normid != 0 && $this->oordeel->wensid != 0){
|
|
|
|
array_push($this->adviezen, ["nummer"=> $this->oordeel->nummer, "omschrijving" =>$this->oordeel->omschrijving]);
|
|
}
|
|
|
|
}
|
|
|
|
private function setKolombreedte(){
|
|
if($this->aantalY > 1) $this->aantal = $this->aantalY;
|
|
$kolombreedte = floor(($this->rij - $this->standaardorg)/$this->aantal);
|
|
$this->kolombreedte = $kolombreedte . 'px';
|
|
}
|
|
private function setOrgbreedte(){
|
|
if($this->aantalY > 1) $this->aantal = $this->aantalY;
|
|
$orgbreedte = floor($this->rij - ($this->aantal * $this->kolombreedte));
|
|
$this->orgbreedte = $orgbreedte . 'px';
|
|
}
|
|
|
|
private function setInspectieAfbeeldingen(){
|
|
$this->inspectieafbeeldingen =[
|
|
"module" => $this->modulenr,
|
|
"oordelen" => $this->oordelen,
|
|
"labels" => $this->labels,
|
|
"kleuren" => $this->kleuren,
|
|
"vantm" => $this->vantm,
|
|
"adviezen" => $this->adviezen,
|
|
"kolombreedte" => $this->kolombreedte,
|
|
"orgbreedte" => $this->orgbreedte,
|
|
"ijkpunten" => $this->ijkpunten,
|
|
"aantalY" => $this->aantalY
|
|
];
|
|
}
|
|
|
|
} |