54 lines
2.1 KiB
PHP
54 lines
2.1 KiB
PHP
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
|
|
|
|
/** Sorteerlabels_model februari 2018 */
|
|
|
|
class Sorteerlabels_model extends MY_Model{
|
|
|
|
protected $tablename = 'tb_sorteerlabels';
|
|
|
|
function __construct(){
|
|
parent::__construct();
|
|
$models = array('');
|
|
$this->load->model($models);
|
|
}
|
|
function get_labels($criteriumid){
|
|
$this->sql =" SELECT id as waardeid, sortering_id, naam, volgorde
|
|
FROM tb_sorteerlabels
|
|
WHERE sortering_id = {$criteriumid}
|
|
ORDER BY volgorde, id ";
|
|
return $this->get_query_result();
|
|
}
|
|
|
|
function getSchoolLabel($schoolid, $criteriumid){
|
|
$this->sql = " SELECT L.id
|
|
FROM tb_sorteerlabels L
|
|
JOIN tb_sorteerlabels_org O ON L.id = O.label_id
|
|
WHERE L.sortering_id = {$criteriumid}
|
|
AND O.organisatie_id = {$schoolid} ";
|
|
return $this->get_query_row('id');
|
|
}
|
|
|
|
function orgsEnSopsPerCriterium($schooljaarnr,$criteriumID,$orgid, $orglist){
|
|
$this->sql =" SELECT O.id, O.soort, O.naamkort, O.plaats, O.brin, COALESCE(L.naam, 'niet ingedeeld') AS label,
|
|
COALESCE(L.naam, 'ZZZZ') AS ordening,
|
|
CASE WHEN C.id IS NULL THEN 'F'
|
|
ELSE 'T'
|
|
END AS sop
|
|
|
|
FROM tb_organisaties O
|
|
LEFT JOIN tb_sorteerlabels_org OL ON O.id = OL.organisatie_id
|
|
LEFT JOIN tb_sorteerlabels L ON OL.label_id = L.id
|
|
LEFT JOIN tb_sorteringen S ON L.sortering_id = S.id
|
|
LEFT JOIN tb_compactsops C ON O.id = C.organisatie_id
|
|
|
|
WHERE O.id IN ({$orglist})
|
|
AND (S.id = {$criteriumID} OR S.id IS NULL)
|
|
AND O.id <> {$orgid}
|
|
AND O.soort = 4
|
|
AND (C.schooljaarnummer = {$schooljaarnr} OR C.id IS NULL)
|
|
GROUP BY O.id
|
|
ORDER BY ordening, O.soort, O.naamkort ";
|
|
|
|
return $this->get_query_result();
|
|
}
|
|
} |