diff --git a/application/controllers/monpas/Rapijkpunten.php b/application/controllers/monpas/Rapijkpunten.php index a9b2a4a..38f9d6c 100644 --- a/application/controllers/monpas/Rapijkpunten.php +++ b/application/controllers/monpas/Rapijkpunten.php @@ -16,6 +16,7 @@ class Rapijkpunten extends MY_Controller{ "monpas/Indicatoren_model", "monpas/Antwoordtypes_model", "monpas/Wenssituaties_model", + "monpas/Scorekleuren_model", "monpas/Scores_model", 'shared/Session_model', "monpas/Ambities_model", diff --git a/application/controllers/monpas/Rapmatrix.php b/application/controllers/monpas/Rapmatrix.php index 0b0317e..bc28f18 100644 --- a/application/controllers/monpas/Rapmatrix.php +++ b/application/controllers/monpas/Rapmatrix.php @@ -663,7 +663,8 @@ private function getGemiddeldeScores($labels, $ijkpunten, $kleuren, $scoretype){ } } - $user->scores[$i]->kleur = $this->Scorekleuren_model->getGemiddeldeKleur($scoretype, $user->scores[$i]->gem); + $kleur = $this->Scorekleuren_model->getGemiddeldeKleur($scoretype, $user->scores[$i]->gem); + $user->scores[$i]->kleur = $kleur->kleurcode; if(!isset($user->scores[$i]->disablenvt)){ $user->scores[$i]->disablenvt= 'F'; if($user->scores[$i]->aantalvier > 0 && diff --git a/application/core/MY_Controller.php b/application/core/MY_Controller.php index 67511f4..d4fcfd6 100644 --- a/application/core/MY_Controller.php +++ b/application/core/MY_Controller.php @@ -73,7 +73,8 @@ class MY_Controller extends CI_Controller{ // public $version = '1.17.97';// omvang geen grafiek bij 0 resultaten // public $version = '1.17.98';// instrumenten voor ouders // public $version = '1.17.99';// instrumenten ook voor leerlingen - public $version = '1.18.00';// alle instrumenten in het compact sop +// public $version = '1.18.00';// alle instrumenten in het compact sop + public $version = '1.18.01';// fout in resultaatmatrix diff --git a/application/libraries/monpas/Gemiddeldenafbeeldingen.php b/application/libraries/monpas/Gemiddeldenafbeeldingen.php index 77ad29f..8edc6ec 100644 --- a/application/libraries/monpas/Gemiddeldenafbeeldingen.php +++ b/application/libraries/monpas/Gemiddeldenafbeeldingen.php @@ -198,27 +198,12 @@ class Gemiddeldenafbeeldingen { } private function getKleur ($score){ - $grensnummer = 1; - if ($score>= $this->kleuren->grens1) $grensnummer = 2; - if ($score>= $this->kleuren->grens2) $grensnummer = 3; - if ($score>= $this->kleuren->grens3) $grensnummer = 4; - - switch ( $grensnummer) { - case 1: - $kleur = $this->kleuren->kleur1; - break; - case 2: - $kleur = $this->kleuren->kleur2; - break; - case 3: - $kleur = $this->kleuren->kleur3; - break; - case 4: - $kleur = $this->kleuren->kleur4; - break; - default: - $kleur = $this->kleuren->kleur1; - } + $kleur = $this->CI->Scorekleuren_model->getGemiddeldeKleur($score->scoretype, $score->gem); + $kleur = $kleur->kleurcode; + if(!$kleur) $kleur = '#ffffff'; + $this->score->kleur = $kleur; + + return $kleur; } @@ -243,14 +228,15 @@ class Gemiddeldenafbeeldingen { } private function loopIJkpunten2(){ if(!$this->ijkpunten) return; + $scoretype = $this->ijkpunten[0]->scoretype; foreach($this->ijkpunten as $index => $this->ijkpunt){ if(!isset($this->ijkpunt->score)){continue;}; if(! $this->ijkpunt->score) $this->ijkpuntscore = 0; $this->setScorenummer(); $this->rondScoresAf(); - $this->setScoreKleuren(); + $this->setScoreKleuren($scoretype); $this->addGewensteScores($index); - $this->setWenskleuren(); + $this->setWenskleuren($scoretype); $this->setAdvies(); $this->setResultatenOverzicht(); $this->telIJkpuntenok(); @@ -276,23 +262,31 @@ class Gemiddeldenafbeeldingen { $this->ijkpunt->score = round($this->ijkpunt->score); } - private function setScoreKleuren(){ - switch ($this->ijkpunt->huidig) { - case 1: - $this->ijkpunt->kleur = $this->kleuren->kleur1; - break; - case 2: - $this->ijkpunt->kleur = $this->kleuren->kleur2; - break; - case 3: - $this->ijkpunt->kleur = $this->kleuren->kleur3; - break; - case 4: - $this->ijkpunt->kleur = $this->kleuren->kleur4; - break; - default: - $this->ijkpunt->kleur = $this->kleuren->kleur1; - } + private function setScoreKleuren($scoretype){ + $kleur = $this->CI->Scorekleuren_model->getGemiddeldeKleur($scoretype, $this->ijkpunt->score); + $kleur = $kleur->kleurcode; + if(!$kleur) $kleur = '#ffffff'; + $this->i->kljkpunt = $kleur; + + + + +// switch ($this->ijkpunt->huidig) { +// case 1: +// $this->ijkpunt->kleur = $this->kleuren->kleur1; +// break; +// case 2: +// $this->ijkpunt->kleur = $this->kleuren->kleur2; +// break; +// case 3: +// $this->ijkpunt->kleur = $this->kleuren->kleur3; +// break; +// case 4: +// $this->ijkpunt->kleur = $this->kleuren->kleur4; +// break; +// default: +// $this->ijkpunt->kleur = $this->kleuren->kleur1; +// } } @@ -305,24 +299,31 @@ class Gemiddeldenafbeeldingen { } } - private function setWensKleuren(){ + private function setWensKleuren($scoretype){ if(!isset($this->ijkpunt->wens)) return; - switch ($this->ijkpunt->wens) { - case 1: - $this->ijkpunt->wenskleur = $this->kleuren->kleur1; - break; - case 2: - $this->ijkpunt->wenskleur = $this->kleuren->kleur2; - break; - case 3: - $this->ijkpunt->wenskleur = $this->kleuren->kleur3; - break; - case 4: - $this->ijkpunt->wenskleur = $this->kleuren->kleur4; - break; - default: - $this->ijkpunt->wenskleur = '#ffffff'; - } + + $kleur = $this->CI->Scorekleuren_model->getWensKleur($scoretype, $this->ijkpunt->wens); + if(!$kleur) $kleur = '#ffffff'; + $this->ijkpunt->wenskleur = $kleur; + + + +// switch ($this->ijkpunt->wens) { +// case 1: +// $this->ijkpunt->wenskleur = $this->kleuren->kleur1; +// break; +// case 2: +// $this->ijkpunt->wenskleur = $this->kleuren->kleur2; +// break; +// case 3: +// $this->ijkpunt->wenskleur = $this->kleuren->kleur3; +// break; +// case 4: +// $this->ijkpunt->wenskleur = $this->kleuren->kleur4; +// break; +// default: +// $this->ijkpunt->wenskleur = '#ffffff'; +// } } private function setAdvies(){ diff --git a/application/libraries/monpas/Schoolafbeeldingen.php b/application/libraries/monpas/Schoolafbeeldingen.php index a58f81b..53a0630 100644 --- a/application/libraries/monpas/Schoolafbeeldingen.php +++ b/application/libraries/monpas/Schoolafbeeldingen.php @@ -224,12 +224,13 @@ class Schoolafbeeldingen { private function loopScores2() { if (!$this->scores) return; + $scoretype = $this->scores[0]->scoretype; foreach ($this->scores as $index => $this->score) { $this->setScoreNummer(); $this->rondScoresAf(); - $this->setScoreKleuren(); + $this->setScoreKleuren($scoretype); $this->addGewensteScores($index); - $this->setWensKleuren(); + $this->setWensKleuren($scoretype); $this->setAdvies(); $this->setResultatenOverzicht(); $this->telIJKpuntenok(); @@ -257,23 +258,31 @@ class Schoolafbeeldingen { } - private function setScoreKleuren(){ - switch ($this->score->huidig) { - case 1: - $this->score->kleur = $this->kleuren->kleur1; - break; - case 2: - $this->score->kleur = $this->kleuren->kleur2; - break; - case 3: - $this->score->kleur = $this->kleuren->kleur3; - break; - case 4: - $this->score->kleur = $this->kleuren->kleur4; - break; - default: - $this->score->kleur = '#ffffff'; - } + private function setScoreKleuren($scoretype){ + + + $kleur = $this->CI->Scorekleuren_model->getGemiddeldeKleur($scoretype, $this->score->gem); + $kleur = $kleur->kleurcode; + if(!$kleur) $kleur = '#ffffff'; + $this->score->kleur = $kleur; + + +// switch ($this->score->huidig) { +// case 1: +// $this->score->kleur = $this->kleuren->kleur1; +// break; +// case 2: +// $this->score->kleur = $this->kleuren->kleur2; +// break; +// case 3: +// $this->score->kleur = $this->kleuren->kleur3; +// break; +// case 4: +// $this->score->kleur = $this->kleuren->kleur4; +// break; +// default: +// $this->score->kleur = '#ffffff'; +// } } @@ -284,28 +293,13 @@ class Schoolafbeeldingen { } } - private function setWensKleuren(){ + private function setWensKleuren($scoretype){ if(! isset($this->wensen)) return; if(!isset($this->score->wens)) return; - if($this->score->disabled == 'T') - {$this->score->wenskleur = '#ffffff'; - return;} - switch ($this->score->wens) { - case 1: - $this->score->wenskleur = $this->kleuren->kleur1; - break; - case 2: - $this->score->wenskleur = $this->kleuren->kleur2; - break; - case 3: - $this->score->wenskleur = $this->kleuren->kleur3; - break; - case 4: - $this->score->wenskleur = $this->kleuren->kleur4; - break; - default: - $this->score->wenskleur = '#ffffff'; - } + $kleur = $this->CI->Scorekleuren_model->getWensKleur($scoretype, $this->score->wens); + if(!$kleur) $kleur = '#ffffff'; + $this->score->wenskleur = $kleur; + } private function setAdvies(){ diff --git a/application/libraries/monpas/Schoolscores.php b/application/libraries/monpas/Schoolscores.php index b392e22..d1e16da 100644 --- a/application/libraries/monpas/Schoolscores.php +++ b/application/libraries/monpas/Schoolscores.php @@ -5,6 +5,7 @@ class Schoolscores private $CI; private $ijkpunten; private $scores; + private $score; private $ambities; private $wensen; private $schoolScores; @@ -57,7 +58,6 @@ class Schoolscores $this->scores = $this->CI->Scores_model->getgemscores($this->orgversieid, $this->orgid); } - private function setAmbities(){ $this->ambities = $this->CI->Ambities_model->getOrgAmbities($this->orgversieid, $this->orgid); } diff --git a/application/libraries/monpas/ijkpunten/Afbeeldingen.php b/application/libraries/monpas/ijkpunten/Afbeeldingen.php index 94759c5..7fa18ec 100644 --- a/application/libraries/monpas/ijkpunten/Afbeeldingen.php +++ b/application/libraries/monpas/ijkpunten/Afbeeldingen.php @@ -67,7 +67,7 @@ class Afbeeldingen { $this->setScores(); $this->setSWVid(); $this->setOrgversie(); - $this->setKleurcodes(); +// $this->setKleurcodes(); $this->setKleuren(); $this->loopScores1(); $this->setGemiddeldeScore(); @@ -185,10 +185,11 @@ class Afbeeldingen { private function loopScores2(){ if (!$this->scores) return; + $scoretype = $this->scores[0]->scoretype; foreach ($this->scores as $index => $this->score) { $this->setScoreNummer(); $this->rondScoresAf(); - $this->setScoreKleuren(); + $this->setScoreKleuren($scoretype); $this->setResultatenOverzicht(); $this->telIJkpuntenok(); } @@ -206,23 +207,29 @@ class Afbeeldingen { } - private function setScoreKleuren(){ - switch ($this->score->huidig) { - case 1: - $this->score->kleur = $this->kleuren->kleur1; - break; - case 2: - $this->score->kleur = $this->kleuren->kleur2; - break; - case 3: - $this->score->kleur = $this->kleuren->kleur3; - break; - case 4: - $this->score->kleur = $this->kleuren->kleur4; - break; - default: - $this->score->kleur = '#ffffff'; - } + private function setScoreKleuren($scoretype){ + $kleur = $this->CI->Scorekleuren_model->getGemiddeldeKleur($scoretype, $this->score->gem); + $kleur = $kleur->kleurcode; + if(!$kleur) $kleur = '#ffffff'; + $this->score->kleur = $kleur; + + +// switch ($this->score->huidig) { +// case 1: +// $this->score->kleur = $this->kleuren->kleur1; +// break; +// case 2: +// $this->score->kleur = $this->kleuren->kleur2; +// break; +// case 3: +// $this->score->kleur = $this->kleuren->kleur3; +// break; +// case 4: +// $this->score->kleur = $this->kleuren->kleur4; +// break; +// default: +// $this->score->kleur = '#ffffff'; +// } } private function setResultatenOverzicht(){ diff --git a/application/libraries/monpas/ijkpunten/Lijsten.php b/application/libraries/monpas/ijkpunten/Lijsten.php index 0a0e689..b5627f7 100644 --- a/application/libraries/monpas/ijkpunten/Lijsten.php +++ b/application/libraries/monpas/ijkpunten/Lijsten.php @@ -197,10 +197,6 @@ class Lijsten } } - - - - private function setSchoolScores(){ if ($this->soort != 4 || $this->lijst->vorm != 1) return; $this->schoolScores = new Schoolscores($this->lijst->orgversieid, $this->orgid); @@ -365,14 +361,15 @@ class Lijsten } private function loopVergelijkingScores(){ - if( (!isset($this->lijst->vergelijkingen) || !$this->lijst->vergelijkingen)) return; - for($i = 0; $i < count($this->lijst->vergelijkingen); $i++){ - $this->setVergelijkingScores($i); + if(!isset($this->lijst->vergelijkingen) || !$this->lijst->vergelijkingen) return; + + foreach($this->lijst->vergelijkingen AS $index => $vergelijking){ + $this->setVergelijkingScores($index); } } private function setVergelijkingScores($i){ - if($this->lijst->scores[$i]) { + if($this->lijst->scores && $this->lijst->scores[$i]) { $this->lijst->scores[$i]->gemV = $this->lijst->vergelijkingen[$i]->gem; $this->lijst->scores[$i]->kleurV = $this->lijst->vergelijkingen[$i]->kleur; $this->lijst->scores[$i]->disabledV = $this->lijst->vergelijkingen[$i]->disabled; diff --git a/application/models/monpas/Scorekleuren_model.php b/application/models/monpas/Scorekleuren_model.php index f1c60ef..c454db9 100644 --- a/application/models/monpas/Scorekleuren_model.php +++ b/application/models/monpas/Scorekleuren_model.php @@ -23,6 +23,17 @@ class Scorekleuren_model extends MY_Model{ return $this->get_query_row(); } + function getWensKleur($scoretype, $nummer){ + $this->sql="SELECT kleurcode + FROM tb_scorekleuren + WHERE scoretype = {$scoretype} + AND nummer = {$nummer} + AND disabled = 'F' "; + + return $this->get_query_row('kleurcode'); + } + + diff --git a/application/models/monpas/Scores_model.php b/application/models/monpas/Scores_model.php index df02327..290c67e 100644 --- a/application/models/monpas/Scores_model.php +++ b/application/models/monpas/Scores_model.php @@ -636,7 +636,7 @@ class Scores_model extends MY_Model{ function getgemscores($orgversieid, $orgids){ $gevuldeversies = $this->fGetGevuldeVersies($orgversieid, $orgids); if ($gevuldeversies) { - $this->sql = " SELECT Q.omschrijving, Q.toelichting, Q.ijkpunt_id, Q.kleurnummer, Q.disabled, Q.scoretype, + $this->sql = " SELECT Q.omschrijving, Q.toelichting, Q.ijkpunt_id, Q.disabled, Q.scoretype, CASE WHEN Q.aantalvier > 0 THEN CASE WHEN Q.aantalvier = Q.aantalnvt THEN 'T' @@ -644,11 +644,11 @@ class Scores_model extends MY_Model{ END ELSE 'F' END AS disablenvt, - Q.sumscores/Q.sumgewicht AS gem, Q.kleurcode, Q.nummer, Q.ondergrens, Q.bovengrens + Q.sumscores/Q.sumgewicht AS gem, Q.nummer FROM ( SELECT Y.omschrijving, Y.toelichting,Y.id as ijkpunt_id, - Y.nummer, Y.disabled, SC.scoretype, SK.nummer AS kleurnummer, - SK.kleurcode, SK.ondergrens, SK.bovengrens, + Y.nummer, Y.disabled, SC.scoretype, + SUM(CASE WHEN Y.disabled = 'T' THEN 0 WHEN Y.disabled = 'F' THEN CASE WHEN SC.scoretype = 1 @@ -715,12 +715,9 @@ class Scores_model extends MY_Model{ FROM tb_scores SC JOIN tb_indicatoren I ON I.id = SC.indicator_id JOIN tb_ijkpunten Y ON Y.id = SC.ijkpunt_id - JOIN tb_scorekleuren SK ON SK.scoretype = SC.scoretype WHERE SC.filledversion_id IN ({$gevuldeversies}) - AND SK.disabled = Y.disabled GROUP BY SC.ijkpunt_id - ORDER BY Y.nummer ) AS Q - HAVING Q.ondergrens <= gem AND Q.bovengrens > gem "; + ORDER BY Y.nummer ) AS Q "; } else return false; return $this->get_query_result(); diff --git a/application/views/monpas/pages/matrix.php b/application/views/monpas/pages/matrix.php index f73de08..c2fb544 100644 --- a/application/views/monpas/pages/matrix.php +++ b/application/views/monpas/pages/matrix.php @@ -227,6 +227,7 @@ +