Files
monpas/application/models/monpas/Ijkpunten_model.php
T
2021-11-19 10:31:31 +01:00

97 lines
3.1 KiB
PHP

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**Ijkpunten_model maart 2015 */
class Ijkpunten_model extends MY_Model{
protected $tablename = 'tb_ijkpunten';
function __construct(){
parent::__construct();
$models = array( 'shared/Organisaties_model',
'monpas/Scores_model');
$this->load->model($models);
}
function getijkpunten($orgversieid){
$this->sql="SELECT Y.id, Y.nummer,Y.omschrijving,Y.toelichting
FROM tb_orgversies OV
JOIN tb_ijkpunten Y ON Y.versie_id = OV.versie_id
WHERE OV.id ={$orgversieid}
ORDER BY Y.nummer ";
return $this->get_query_result();
}
function getijkpuntenMetIndicatoren($orgversieid){
$this->sql="SELECT Y.id, Y.nummer,Y.omschrijving,Y.toelichting, disabled
FROM tb_orgversies OV
JOIN tb_ijkpunten Y ON Y.versie_id = OV.versie_id
JOIN tb_indicatoren I ON Y.id = I.ijkpunt_id
WHERE OV.id ={$orgversieid}
GROUP BY Y.nummer
ORDER BY Y.nummer ";
return $this->get_query_result();
}
function telijkpunten($orgversieid){
$this->sql="SELECT COUNT(Y.id) AS aantalY
FROM tb_orgversies OV
JOIN tb_ijkpunten Y ON Y.versie_id = OV.versie_id
WHERE OV.id ={$orgversieid}
AND Y.disabled = 'F' ";
return $this->get_query_row('aantalY');
}
function getijkpunten1($versieid){
$this->sql="SELECT Y.id, Y.nummer,Y.omschrijving,Y.toelichting, Y.disabled
FROM tb_ijkpunten Y
WHERE Y.versie_id ={$versieid}
ORDER BY Y.nummer ";
return $this->get_query_result();
}
function getijkpunt($id)
{
$this->sql = "SELECT id, nummer,omschrijving,toelichting
FROM tb_ijkpunten
WHERE id ={$id} ";
return $this->get_query_row();
}
function getscores($orgversieid , $orgid){
$organisatie = $this->Organisaties_model->get_record_by_id($orgid);
$scores = null;
// als de organisatie een school is : haal de gemiddelde score op (als de 'ik-versie" wordt gebruikt
// let op als ik-versie dan moeten de gegevens van de users worden opgehaald maar
// dat gaat vanzelf omdat gezocht wordt naar organisatie (via filled versions);
// let op ja nee bezig wordt vertaald naar 10, 0 en 5
// let op ja nee nvt wordt vertaald naar 10 0 en niet meegerekend bij aantallen voor gem
if ($organisatie->soort ==4) {
$scores =$this->Scores_model->calculateschool($orgversieid, $orgid);
};
// als de organisatie geen school is: haal de gemiddeldse scores over alle organisaties op
if ($organisatie->soort == 3){
$scores = $this->Scores_model->calculateBG($orgversieid, $orgid);
}
if ($organisatie->soort== 1 || $organisatie->soort == 2){
if ($organisatie->soort == 2){
$bgs = $this->Organisaties_model->getorgsvanaf($organisatie->id);
}
if($organisatie->soort ==1){
$bgs = $this->Organisaties_model->getbgsonderswv($organisatie->id);
}
if ($bgs){
foreach($bgs as $bg){
$bglijst[] = $bg->id;
}
$lijst = implode(',',$bglijst);
$scores=$this->Scores_model->calculateBGs($orgversieid, $lijst);
}
}
return $scores;
}
}