195 lines
7.5 KiB
PHP
195 lines
7.5 KiB
PHP
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
|
|
|
|
/** Ambities_model januari 2015 */
|
|
|
|
class Ambities_model extends MY_Model{
|
|
|
|
|
|
protected $tablename = 'tb_ambities';
|
|
|
|
function __construct(){
|
|
parent::__construct();
|
|
$models = array('monpas/Ijkpunten_model');
|
|
$this->load->model($models);
|
|
}
|
|
function getambities( $orgid){
|
|
$this->sql="SELECT A.id, gem_score AS gemscore, x_ijkpunten AS xijkpunten , z_procent AS zprocent,
|
|
orgversie_id, A.organisatie_id, OV.geldigvanaf, OV.geldigtm, OV.periodenummer, OV.actief,
|
|
V.naam
|
|
FROM tb_ambities A
|
|
JOIN tb_orgversies OV ON OV.id = orgversie_id
|
|
JOIN tb_versies V ON V.id = OV.versie_id
|
|
WHERE A.organisatie_id = {$orgid}";
|
|
return $this->get_query_result();
|
|
}
|
|
function getambitie2($orgversieid, $orgid){
|
|
$this->sql="SELECT A.id, gem_score AS gemscore, x_ijkpunten AS xijkpunten , z_procent AS zprocent,
|
|
orgversie_id, OV.geldigvanaf, OV.geldigtm, OV.periodenummer, OV.actief,
|
|
V.naam
|
|
FROM tb_ambities A
|
|
JOIN tb_orgversies OV ON OV.id = A.orgversie_id
|
|
JOIN tb_versies V ON V.id = OV.versie_id
|
|
WHERE A.organisatie_id = {$orgid}
|
|
AND A.orgversie_id = {$orgversieid}";
|
|
return $this->get_query_row();
|
|
}
|
|
function getambitie($orgversieid, $orgid){
|
|
$this->sql="SELECT A.id, gem_score AS gemscore, x_ijkpunten AS xijkpuntenoud, COUNT(Y.id) AS xijkpunten, z_procent AS zprocent
|
|
FROM tb_ambities A
|
|
JOIN tb_orgversies OV ON A.orgversie_id = OV.id
|
|
JOIN tb_versies V ON OV.versie_id = V.id
|
|
JOIN tb_ijkpunten Y ON Y.versie_id = V.id
|
|
WHERE A.organisatie_id = {$orgid}
|
|
AND A.orgversie_id = {$orgversieid}
|
|
AND Y.disabled = 'F'
|
|
GROUP BY A.id ";
|
|
return $this->get_query_row();
|
|
}
|
|
function getdefault($aantalY){
|
|
// $result = array('id' => null, 'gemscore'=>80, 'xijkpunten'=>9, 'zprocent'=>60);
|
|
$result = new stdClass;
|
|
$result->id = 'null';
|
|
$result->gemscore = 80;
|
|
$minijkpunten = $aantalY * 0.8;
|
|
$result->xijkpunten = round($minijkpunten);
|
|
$result->zprocent= 60;
|
|
return $result;
|
|
}
|
|
function getdefault2($orgversieid ){
|
|
$this->sql = "SELECT 0 AS id , 80 AS gemscore, 9 AS xijkpunten , 60 AS zprocent,
|
|
OV.id AS orgversie_id,
|
|
OV.geldigvanaf, OV.geldigtm, OV.periodenummer, OV.actief,
|
|
V.naam
|
|
FROM tb_orgversies OV
|
|
JOIN tb_versies V ON V.id = OV.versie_id
|
|
WHERE OV.id = {$orgversieid}";
|
|
return $this->get_query_row();
|
|
}
|
|
function getOrgAmbities($orgversieid, $targetorgid){
|
|
$bgid = null;
|
|
$kamerid = null;
|
|
$swvid = null;
|
|
$organisatie = $this->Organisaties_model->get_record_by_id($targetorgid);
|
|
$soort = $organisatie->soort;
|
|
if ($soort ==4){
|
|
$bgid = $organisatie->valtonder_id;
|
|
$organisatie = $this->Organisaties_model->get_record_by_id($bgid);
|
|
$kamerid = $organisatie->valtonder_id;
|
|
$organisatie = $this->Organisaties_model->get_record_by_id($kamerid);
|
|
$swvid = $organisatie->valtonder_id;}
|
|
if ($soort== 3){
|
|
$bgid = $organisatie->id;
|
|
$kamerid = $organisatie->valtonder_id;
|
|
$organisatie = $this->Organisaties_model->get_record_by_id($kamerid);
|
|
$swvid = $organisatie->valtonder_id;
|
|
}
|
|
if ($soort ==2){
|
|
$kamerid = $organisatie->id;
|
|
$swvid = $organisatie->valtonder_id;
|
|
}
|
|
if ($soort ==1){
|
|
$swvid = $organisatie->id;
|
|
}
|
|
$ambitie = null;
|
|
if ($bgid){ $ambitie = $this->getambitie($orgversieid, $bgid);
|
|
}
|
|
if (!$ambitie && $kamerid){ $ambitie = $this->getambitie($orgversieid, $kamerid);}
|
|
if (!$ambitie && $swvid){$ambitie = $this->getambitie($orgversieid, $swvid);}
|
|
|
|
if (!$ambitie){
|
|
$aantalY = $this->Ijkpunten_model->telijkpunten($orgversieid);
|
|
$ambitie =$this->getdefault($aantalY);
|
|
};
|
|
return $ambitie;
|
|
}
|
|
|
|
function mh_get_ambities($moduleid, $ambitieorgs, $orgversieid = FALSE){
|
|
$this->sql = " SELECT A.id AS ambitieID,
|
|
A.gem_score AS gemscore,
|
|
A.x_ijkpunten AS xijkpunten,
|
|
A.z_procent AS zprocent,
|
|
OV.id AS orgversieID,
|
|
DATE_FORMAT( OV.geldigvanaf, '%d-%m-%Y') as geldigvanaf,
|
|
DATE_FORMAT( OV.geldigtm, '%d-%m-%Y') as geldigtm,
|
|
OV.periodenummer, V.naam,
|
|
O.soort AS soort,
|
|
concat_ws(' ', O.brin, O.naamkort) AS organisatie,
|
|
O.id AS orgID,
|
|
O2.naamkort AS versievan,
|
|
|
|
CASE WHEN O.soort = 1 THEN
|
|
'swv'
|
|
WHEN O.soort = 2 THEN
|
|
'regio'
|
|
WHEN O.soort = 3 THEN
|
|
'bestuur'
|
|
WHEN O.soort = 4 THEN
|
|
'school'
|
|
END AS ambitievan
|
|
|
|
FROM tb_orgversies OV
|
|
JOIN tb_versies V ON OV.versie_id = V.id
|
|
JOIN tb_ambities A ON A.orgversie_id = OV.id
|
|
JOIN tb_organisaties O ON A.organisatie_id = O.id
|
|
JOIN tb_organisaties O2 ON OV.organisatie_id = O2.id
|
|
WHERE A.organisatie_id IN ({$ambitieorgs})
|
|
AND V.modulenr = {$moduleid}
|
|
AND OV.actief = 1 ";
|
|
if($orgversieid) {
|
|
|
|
$this->sql .= " AND OV.id = {$orgversieid} ";
|
|
}
|
|
$this->sql.= " ORDER BY O.soort DESC ";
|
|
return $this->get_query_result();
|
|
}
|
|
|
|
function mh_get_ambitie_orgversie($orgversieid, $ambitieorgs, $toporgs){
|
|
$this->sql = " SELECT A.id AS ambitieID,
|
|
A.gem_score AS gemscore,
|
|
A.x_ijkpunten AS xijkpunten,
|
|
A.z_procent AS zprocent,
|
|
O.naamkort AS ambitievan,
|
|
OV.id AS orgversieID,
|
|
DATE_FORMAT( OV.geldigvanaf, '%d-%m-%Y') as geldigvanaf,
|
|
DATE_FORMAT( OV.geldigtm, '%d-%m-%Y') as geldigtm,
|
|
OV.periodenummer, V.naam,
|
|
O.soort AS soort,
|
|
concat_ws(' ', O.brin, O.naamkort) AS organisatie,
|
|
O.id AS orgID,
|
|
O2.naamkort AS versievan,
|
|
|
|
CASE WHEN O.soort = 1 THEN
|
|
'swv'
|
|
WHEN O.soort = 2 THEN
|
|
'regio'
|
|
WHEN O.soort = 3 THEN
|
|
'bestuur'
|
|
WHEN O.soort = 4 THEN
|
|
'school'
|
|
END AS ambitievan
|
|
|
|
|
|
|
|
|
|
FROM tb_orgversies OV
|
|
JOIN tb_versies V ON OV.versie_id = V.id
|
|
JOIN tb_ambities A ON A.orgversie_id = OV.id
|
|
JOIN tb_organisaties O ON A.organisatie_id = O.id
|
|
JOIN tb_organisaties O2 ON OV.organisatie_id = O2.id
|
|
|
|
WHERE A.organisatie_id IN ({$ambitieorgs})
|
|
AND OV.organisatie_id IN ({$toporgs})
|
|
AND OV.id = {$orgversieid}
|
|
ORDER BY soort DESC
|
|
LIMIT 1 ";
|
|
return $this->get_query_row();
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|