Merge branch 'feature/disable3'

# Conflicts:
#	application/core/MY_Controller.php
This commit is contained in:
Monique
2021-11-24 21:47:54 +01:00
4 changed files with 98 additions and 35 deletions
+87 -24
View File
@@ -6,10 +6,12 @@ class Rapmatrix extends MY_Controller
{
parent::__construct();
$models = array("shared/Organisaties_model",
"monpas/Ijkpunten_model",
"monpas/Filledversions_model",
"monpas/Orgversies_model",
"monpas/Modules_model",
"monpas/Scores_model",
"monpas/Scorekleuren_model",
"monpas/Sorteringen_model",
"monpas/Sorteerlabels_model",
"monpas/Sorteerlabelsorg_model",
@@ -74,28 +76,30 @@ class Rapmatrix extends MY_Controller
$criteriumID = $this->clean_input('criteriumid');
$orgversieID = $this->clean_input('orgversieid');
$toporg = $this->clean_input('toporg');
$ijkpunten = $this->Orgversies_model->getijkpunten($orgversieID);
$ijkpunten = $this->Ijkpunten_model->getijkpuntenMetIndicatoren($orgversieID);
$aantalY = count($ijkpunten);
$kleurtabel = $this->kleurcodes->getkleurlegenda();
$orgversie = $this->Orgversies_model->get_record_by_id($orgversieID);
$scoretype = $orgversie->scoretype;
$kleuren = $this->setKleuren($orgversie);
$erzijnscores = false;
if ($orgsoort == 4) {//schoolniveau
if ($orgversie->vorm == 2) {
$labels = $this->getIndividueleMatrix($orgID, $orgversieID, $aantalY, $kleuren);
$labels = $this->getIndividueleMatrix($orgID, $orgversieID, $aantalY, $scoretype);
//geef individuele scores + het gemiddelde
}
if ($orgversie->vorm == 1){
$labels = $this->getSchoolMatrix($orgID, $orgversieID, $aantalY, $kleuren);//schoolversie
$labels = $this->getSchoolMatrix($orgID, $orgversieID, $aantalY, $scoretype);//schoolversie
}
}
if ($orgsoort < 4) {//bestuurs- / kamer- of swv-niveau
if ($criteriumID == 0) {//scholen ordenen per bestuur
$labels = $this->getBestuurMatrix($orgID, $orgversieID, $aantalY, $kleuren);
$labels = $this->getBestuurMatrix($orgID, $orgversieID, $ijkpunten, $scoretype);
}
if ($criteriumID > 0) {//scholen ordenen met een ander criterium
$labels = $this->getCriteriumMatrix($orgID, $orgsoort, $criteriumID, $orgversieID, $aantalY, $kleuren);
@@ -252,18 +256,18 @@ class Rapmatrix extends MY_Controller
private function getIndividueleMatrix($orgID, $orgversieID, $aantalY, $kleuren){
private function getIndividueleMatrix($orgID, $orgversieID, $aantalY, $scoretype){
$scores = $this->getLeerkrachtscores($orgID, $orgversieID);
$labels = $this->getGemiddeldeScores($scores, $aantalY, $kleuren);
$labels = $this->getGemiddeldeScores($scores, $aantalY, $scoretype);
return $labels;
}
private function getSchoolMatrix($orgID, $orgversieID, $aantalY, $kleuren)
private function getSchoolMatrix($orgID, $orgversieID, $aantalY, $scoretype)
{
$scores = $this->getSchoolScores($orgID, $orgversieID);
$labels = $this->getGemiddeldenSchool($scores, $aantalY,$orgversieID, $kleuren);
$labels = $this->getGemiddeldenSchool($scores, $aantalY,$orgversieID, $scoretype);
return $labels;
}
@@ -277,11 +281,11 @@ class Rapmatrix extends MY_Controller
}
private function getBestuurMatrix($orgID, $orgversieID, $aantalY, $kleuren)
private function getBestuurMatrix($orgID, $orgversieID, $ijkpunten, $scoretype)
{
$scholen = $this->getScholenPerBestuur($orgID);
$scores = $this->getScoresBijBesturen($scholen, $orgversieID);
$labels = $this->getGemiddeldeScores($scores, $aantalY, $kleuren);
$labels = $this->getGemiddeldeScores($scores, $ijkpunten, $scoretype);
return $labels;
}
@@ -362,7 +366,7 @@ class Rapmatrix extends MY_Controller
private function getGemiddeldenSchool($labels, $aantalY, $orgversieID, $kleuren)
private function getGemiddeldenSchool($labels, $aantalY, $orgversieID, $scoretype)
{
$orgversie = $this->Orgversies_model->get_record_by_id($orgversieID);
@@ -401,8 +405,11 @@ private function getGemiddeldenSchool($labels, $aantalY, $orgversieID, $kleuren)
}
}
// }
$kleur = $this->Scorekleuren_model->getGemiddeldeKleur($scoretype, $user->scores[$i]->gem);
$user->scores[$i]->kleur = $kleur->kleurcode;
$user->scores[$i]->kleurcode = $kleur->kleurcode;
$user->scores[$i]->kleur = $this->getkleur($user->scores[$i]->gem, $kleuren);
}
else{
$user->scores[$i] = new stdClass();
@@ -418,7 +425,11 @@ private function getGemiddeldenSchool($labels, $aantalY, $orgversieID, $kleuren)
} else {
$user->scores[$aantalY]->gem = null;
}
$user->scores[$aantalY]->kleur = $this->getkleur($user->scores[$aantalY]->gem, $kleuren);
$kleur = $this->Scorekleuren_model->getGemiddeldeKleur($scoretype, $user->scores[$aantalY]->gem);
$user->scores[$aantalY]->kleur = $kleur->kleurcode;
$user->scores[$aantalY]->kleurcode = $kleur->kleurcode;
} // if scores
};// foreach bg rijen
$label->users = array_values($label->users);
@@ -604,23 +615,30 @@ private function getScoresBijCriterium($labels, $orgversieID){
return $labels;
}
private function getGemiddeldeScores($labels, $aantalY, $kleuren){
private function getGemiddeldeScores($labels, $ijkpunten, $scoretype){
$aantalY = count($ijkpunten);
$waarden = 0;
$nvt = [];
if ($labels) {
//$aantalscores = 0;
foreach ($labels as $label) {
for ($i = 0; $i < $aantalY; $i++) {
$sumscore[$i] = 0;
};
$aantalrijen = 0;
$aantalresults = array();
for ($i = 0; $i < $aantalY; $i++) {
$aantalresults[$i] = 0;
$nvt[$i] = 0;
}; // for i
if ($label->users) {
foreach ($label->users as $user) {
$sumscorerij = 0;
$aantalscores = 0;
if ($user->scores) {
@@ -628,12 +646,13 @@ private function getGemiddeldeScores($labels, $aantalY, $kleuren){
for ($i = 0; $i < $aantalY; $i++) {
if(isset($user->scores[$i])) {
if($user->scores[$i]->disabled == 'F' &&
($user->scores[$i]->aantalvier == 0 ||
(isset($user->scores[$i]->disablenvt) && $user->scores[$i]->disablenvt == 'F' ||
isset($user->scores[$i]->aantalvier) && ($user->scores[$i]->aantalvier == 0 ||
($user->scores[$i]->aantalvier > 0 &&
$user->scores[$i]->aantalnvt != $user->scores[$i]->aantalvier ))){
// if ($user->scores[$i]->gem == '' || $user->scores[$i]->gem == null) {
// // doe niks
// } else {
$user->scores[$i]->aantalnvt != $user->scores[$i]->aantalvier )))){
//
$aantalscores++;
$sumscore[$i] = $sumscore[$i] + $user->scores[$i]->gem;
$aantalresults[$i] = $aantalresults[$i] + 1;
@@ -643,25 +662,55 @@ private function getGemiddeldeScores($labels, $aantalY, $kleuren){
// }
}
}
$user->scores[$i]->kleur = $this->getkleur($user->scores[$i]->gem, $kleuren);
$user->scores[$i]->kleur = $user->scores[$i]->kleurcode;
if(!isset($user->scores[$i]->disablenvt)){
$user->scores[$i]->disablenvt= 'F';
if($user->scores[$i]->aantalvier > 0 &&
$user->scores[$i]->aantalvier && $user->scores[$i]->aantalnvt)
$user->scores[$i]->disablenvt= 'T';
}
if($user->scores[$i]->disablenvt == 'T') $nvt[$i]++;
}
else{
$user->scores[$i] = new stdClass();
$user->scores[$i]->gem = new stdClass();
$user->scores[$i]->kleur = new stdClass();
$user->scores[$i]->disabled = new stdClass();
$user->scores[$i]->disablenvt = new stdClass();
$user->scores[$i]->gem = null;
$user->scores[$i]->kleur = '#cccccc';
$user->scores[$i]->kleurcode = '#cccccc';
$user->scores[$i]->disablenvt= 'F';
$user->scores[$i]->disabled= $ijkpunten[$i]->disabled;
}
};
$user->scores[$aantalY] = new stdClass();
$user->scores[$aantalY]->gem = new stdClass();
$user->scores[$aantalY]->kleur = new stdClass();
$user->scores[$aantalY]->kleurcode = new stdClass();
$user->scores[$aantalY]->disabled = new stdClass();
$user->scores[$aantalY]->disablenvt = new stdClass();
if ($aantalscores > 0) {
$user->scores[$aantalY]->gem = round($sumscorerij / $aantalscores);
$kleur = $this->Scorekleuren_model->getGemiddeldeKleur($scoretype, $user->scores[$aantalY]->gem);
$user->scores[$aantalY]->kleur = $kleur->kleurcode;
$user->scores[$aantalY]->kleurcode = $kleur->kleurcode;
} else {
$user->scores[$aantalY]->gem = null;
$user->scores[$aantalY]->kleur = '#cccccc';
$user->scores[$aantalY]->kleurcode = '#cccccc';
}
$user->scores[$aantalY]->kleur = $this->getkleur($user->scores[$aantalY]->gem, $kleuren);
$user->scores[$aantalY]->disabled = 'F';
$user->scores[$aantalY]->disablenvt = 'F';
} // if scores
};// foreach bg rijen
@@ -682,6 +731,7 @@ private function getGemiddeldeScores($labels, $aantalY, $kleuren){
$sumscore[$i] = round($sumscore[$i] / $aantalresults[$i]);
$waarden2++;
};
$labeltot = $labeltot + $sumscore[$i];
$labeltotaantal++;
} else {
@@ -691,8 +741,15 @@ private function getGemiddeldeScores($labels, $aantalY, $kleuren){
$label->users[$rijcount]->scores[$i] = new stdClass();
if ($waarden2 > 0) {
$label->users[$rijcount]->scores[$i]->gem = $sumscore[$i];
$label->users[$rijcount]->scores[$i]->kleur = $this->getkleur($label->users[$rijcount]->scores[$i]->gem, $kleuren);
}
$kleur = $this->Scorekleuren_model->getGemiddeldeKleur($scoretype, $label->users[$rijcount]->scores[$i]->gem);
$label->users[$rijcount]->scores[$i]->kleurcode = $kleur->kleurcode;
$label->users[$rijcount]->scores[$i]->kleur = $kleur->kleurcode;
}
$label->users[$rijcount]->scores[$i]->disabled = $ijkpunten[$i]->disabled;
$label->users[$rijcount]->scores[$i]->disablenvt = 'F';
if($nvt[$i] > 0 && $nvt[$i] == $aantalresults[$i]) $label->users[$rijcount]->scores[$i]->disablenvt = 'T';
};
$label->users[$rijcount]->scores[$aantalY] = new stdClass();
if ($labeltotaantal > 0 && round($labeltot / $labeltotaantal) > 0) {
@@ -702,9 +759,15 @@ private function getGemiddeldeScores($labels, $aantalY, $kleuren){
};
if ($label->users[$rijcount]->scores[$aantalY]->gem) {
$label->users[$rijcount]->scores[$aantalY]->kleur = $this->getkleur($label->users[$rijcount]->scores[$aantalY]->gem, $kleuren);
$kleur = $this->Scorekleuren_model->getGemiddeldeKleur($scoretype, $label->users[$rijcount]->scores[$aantalY]->gem);
$label->users[$rijcount]->scores[$aantalY]->kleur = $kleur-> kleurcode;
$label->users[$rijcount]->scores[$aantalY]->kleurcode = $kleur-> kleurcode;
}
$label->users[$rijcount]->scores[$aantalY]->disabled = 'F';
$label->users[$rijcount]->scores[$aantalY]->disablenvt = 'F';
}; // if label->rijen
}
}
+1 -2
View File
@@ -55,8 +55,7 @@ class MY_Controller extends CI_Controller{
// public $version = '1.17.70'; // bopropswop
// public $version = '1.17.72'; // data2mysql fout
// public $version = '1.17.73'; // 0-waarden aantal tlvs in omvang extra ondersteuning
// public $version = '1.17.74'; // mogelijkheid tot uitzetten extra ondersteuning in divmeters
public $version = '1.17.75'; // uitzetten ijpunten en in lijst nvt niet meetellen
public $version = '1.17.75'; // mogelijkheid tot uitzetten extra ondersteuning in divmeters
public $partituurid;
public $globProfielVersieID = 1;
@@ -132,7 +132,7 @@ class Organisaties_model extends MY_Model{
WHERE BG.valtonder_id = {$kamerid}
AND O.actief = 1
AND O.soort = 4
ORDER BY O.naamkort";
ORDER BY BG.naamkort, O.naamkort";
return $this->get_query_result();
}
@@ -206,7 +206,7 @@ class Organisaties_model extends MY_Model{
FROM tb_organisaties
WHERE valtonder_id = {$toplevelid}
AND id <> {$toplevelid}
AND actief = 1";
AND actief = 1 ";
if ($sublevelid) {$this->sql .=" AND id ={$sublevelid} " ; } ;
$this->sql .= " ORDER BY naamkort ";
@@ -271,7 +271,7 @@ class Organisaties_model extends MY_Model{
AND O1.id <> O3.valtonder_id
AND O2.id <> O2.valtonder_id
AND O1.actief = 1
ORDER BY O1.naam ";
ORDER BY O1.naamkort ";
return $this->get_query_result();
}
@@ -291,7 +291,8 @@ class Organisaties_model extends MY_Model{
function getorgdetails($id){
$this->sql="SELECT id, soort, brin, naamkort, naam, plaats,valtonder_id, actief,monbas, mondiv
FROM tb_organisaties
WHERE id= {$id}";
WHERE id= {$id}
ORDER BY naamkort ";
return $this->get_query_row();
}
function hasdependent($orgid){
@@ -336,7 +337,7 @@ class Organisaties_model extends MY_Model{
WHERE O.valtonder_id = $orgid
AND O.id <> $orgid
AND O.actief = 1
ORDER BY O.naamkort";
ORDER BY O.naamkort ";
return $this->get_query_result();
}
function getall(){
+4 -4
View File
@@ -191,12 +191,12 @@
<th class="clickable"
data-bind="click: $parent.fToonToelichting"
style=" text-align:center; font-size: x-small; padding: 3px; border: 2px solid white; width: 30px;">
style=" text-align:center; font-size: x-small; padding: 3px; border: 2px solid white; width: 35px;">
<span data-bind="text: nummer, attr:{'title' : omschrijving}">
</span>
</th>
<!-- /ko -->
<th style=" border: 2px solid white; width: 30px;"> gem</th>
<th style=" border: 2px solid white; width: 35px;"> gem</th>
</tr>
</thead>
@@ -227,7 +227,7 @@
<span data-bind="text: subject "></span>
</td>
<!-- ko foreach: results-->
<td style="text-align:right; color:#ffffff; width:30px; padding:; border: 3px solid white; "
<td style="text-align:right; color:#ffffff; width:35px; padding:; border: 3px solid white; "
data-bind="text: gem, style:{ backgroundColor: colorcode}, css: {matrixstreep: $parent.subject == 'gemiddeld'}">
</td>
<!-- /ko-->
@@ -245,7 +245,7 @@
</td>
<!-- ko foreach: results-->
<td style=" text-align:right; color:#ffffff; width: 30px; padding: 3px; border: 2px solid white"
<td style=" text-align:right; color:#ffffff; width: 35px; padding: 3px; border: 2px solid white"
data-bind="text: gem, style:{ backgroundColor: colorcode}">
<!-- width: $root.kolombreedte()+'px',-->
</td>