You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							208 lines
						
					
					
						
							6.0 KiB
						
					
					
				
			
		
		
	
	
							208 lines
						
					
					
						
							6.0 KiB
						
					
					
				| <?php | |
| defined('BASEPATH') OR exit('No direct script access allowed'); | |
|  | |
| /** | |
| * Regio model | |
| */ | |
| class Uitslag_model extends CI_Model | |
| { | |
| 	 | |
| 	public function __construct() | |
| 	{ | |
| 		parent::__construct(); | |
| 	} | |
| 	 | |
| 	public function get_subgroep_list() | |
| 	{ | |
| 		$this->db->select('subgroep.id AS id, | |
| 			subgroep.naam AS naam, | |
| 			subgroep.themanaam AS themanaam, | |
| 			subgroep.nummer AS nummer, | |
| 			groep.naam AS groepsnaam, | |
| 			groep.plaats AS plaats'); | |
| 		$this->db->from('subgroep'); | |
| 		$this->db->where('subgroep.regioid', $this->session->regio); | |
| 		$this->db->where('subgroep.jaar', date('Y')); | |
| 		$this->db->join('groep', 'subgroep.groepid=groep.id', 'left'); | |
| 		$this->db->order_by('nummer', 'ASC'); | |
| 		 | |
| 		$query = $this->db->get(); | |
| 		 | |
| 		return $query->result_array(); | |
| 	} | |
| 	 | |
| 	public function get_subgroep($subgroepid) | |
| 	{ | |
| 		$this->db->select('subgroep.id AS id, | |
| 			subgroep.naam AS naam, | |
| 			subgroep.themanaam AS themanaam, | |
| 			subgroep.nummer AS nummer, | |
| 			groep.naam AS groepsnaam, | |
| 			groep.plaats AS plaats'); | |
| 		$this->db->from('subgroep'); | |
| 		$this->db->where('subgroep.regioid', $this->session->regio); | |
| 		$this->db->where('subgroep.jaar', date('Y')); | |
| 		$this->db->where('subgroep.id', $subgroepid); | |
| 		$this->db->join('groep', 'subgroep.groepid=groep.id', 'left'); | |
| 		 | |
| 		$query = $this->db->get(); | |
| 		 | |
| 		return $query->row_array(); | |
| 	} | |
| 	 | |
| 	public function get_spelgebieden_list() | |
| 	{ | |
| 		$this->db->select('id, naam'); | |
| 		$this->db->from('spelgebied'); | |
| 		$this->db->where('regioid', $this->session->regio); | |
| 		$this->db->where('jaar', date('Y')); | |
| 		$this->db->order_by('naam', 'ASC'); | |
| 		 | |
| 		$query = $this->db->get(); | |
| 		 | |
| 		return $query->result_array(); | |
| 	} | |
| 	 | |
| 	public function get_config($configname) | |
| 	{ | |
| 		$this->db->select('value'); | |
| 		$this->db->from('config'); | |
| 		$this->db->where('regioid', $this->session->regio); | |
| 		$this->db->where('jaar', date('Y')); | |
| 		$this->db->where('name', $configname); | |
| 		 | |
| 		$query = $this->db->get(); | |
| 		 | |
| 		return $query->row()->value; | |
| 	} | |
| 	 | |
| 	public function get_subgroep_punten($subgroepid) | |
| 	{ | |
| 		$this->db->select('SUM('.$this->db->dbprefix('resultaat').'.score/'.$this->db->dbprefix('lijst').'.ronde) AS score, | |
| 			spelgebied.id AS spelgebiedid, | |
| 			'); | |
| 		$this->db->from('resultaat'); | |
| 		 | |
| 		$this->db->where('resultaat.regioid', $this->session->regio); | |
| 		$this->db->where('vragen.jaar', date('Y')); | |
| 		$this->db->where('resultaat.subgroepid', $subgroepid); | |
| 		 | |
| 		$this->db->join('vragen', 'resultaat.vraagid=vragen.id', 'left'); | |
| 		$this->db->join('onderdeel', 'vragen.onderdeelid=onderdeel.id', 'left'); | |
| 		$this->db->join('spelgebied', 'onderdeel.spelgebiedid=spelgebied.id', 'left'); | |
| 		$this->db->join('lijst', 'vragen.lijstid=lijst.id', 'left'); | |
| 		 | |
| 		$this->db->group_by('spelgebied.naam'); | |
| 		 | |
| 		$this->db->order_by('spelgebied.id', 'ASC'); | |
| 		 | |
| 		$query = $this->db->get(); | |
| 		 | |
| 		return $query->result_array(); | |
| 	} | |
| 	 | |
| 	public function get_max_punten() | |
| 	{ | |
| 		$this->db->select('SUM('.$this->db->dbprefix('vragen').'.score) AS maxscore,  | |
| 			spelgebied.naam AS naam, | |
| 			spelgebied.id AS spelgebiedid, | |
| 			spelgebied.gewicht AS gewicht'); | |
| 		$this->db->from('vragen'); | |
| 		 | |
| 		$this->db->where('vragen.regioid', $this->session->regio); | |
| 		$this->db->where('vragen.jaar', date('Y')); | |
| 		 | |
| 		$this->db->join('onderdeel', 'vragen.onderdeelid=onderdeel.id', 'left'); | |
| 		$this->db->join('spelgebied', 'onderdeel.spelgebiedid=spelgebied.id', 'left'); | |
| 		 | |
| 		$this->db->group_by('spelgebied.naam'); | |
| 		 | |
| 		$this->db->order_by('spelgebied.id', 'ASC'); | |
| 		 | |
| 		$query = $this->db->get(); | |
| 		 | |
| 		return $query->result_array(); | |
| 	} | |
| 	 | |
| 	public function get_lijst_detail() | |
| 	{ | |
| 		$this->db->select('spelgebied.naam AS spelgebied, | |
| 			spelgebied.id AS spelgebiedid, | |
| 			onderdeel.naam AS onderdeel, | |
| 			onderdeel.id AS onderdeelid | |
| 			'); | |
| 		$this->db->from('onderdeel'); | |
| 		 | |
| 		$this->db->where('onderdeel.regioid', $this->session->regio); | |
| 		$this->db->where('onderdeel.jaar', date('Y')); | |
| 		 | |
| 		$this->db->join('spelgebied', 'onderdeel.spelgebiedid=spelgebied.id', 'left'); | |
| 		 | |
| 		// $this->db->group_by('spelgebied.id, onderdeel.id'); | |
| 		 | |
| 		$this->db->order_by('spelgebied.naam, onderdeel.naam', 'ASC'); | |
| 		 | |
| 		$query = $this->db->get(); | |
| 		 | |
| 		return $query->result_array(); | |
| 	} | |
| 	 | |
| 	public function get_punten_detail($subgroepid, $spelgebiedid, $onderdeelid) | |
| 	{ | |
| 		$this->db->select('SUM('.$this->db->dbprefix('resultaat').'.score/'.$this->db->dbprefix('lijst').'.ronde) AS score, | |
| 			spelgebied.naam AS spelgebied, | |
| 			spelgebied.id AS spelgebiedid, | |
| 			onderdeel.naam AS onderdeel, | |
| 			onderdeel.id AS onderdeelid | |
| 			'); | |
| 		$this->db->from('resultaat'); | |
| 		 | |
| 		$this->db->where('resultaat.regioid', $this->session->regio); | |
| 		$this->db->where('vragen.jaar', date('Y')); | |
| 		$this->db->where('resultaat.subgroepid', $subgroepid); | |
| 		$this->db->where('vragen.onderdeelid', $onderdeelid); | |
| 		$this->db->where('onderdeel.spelgebiedid', $spelgebiedid); | |
| 		 | |
| 		$this->db->join('vragen', 'resultaat.vraagid=vragen.id', 'left'); | |
| 		$this->db->join('onderdeel', 'vragen.onderdeelid=onderdeel.id', 'left'); | |
| 		$this->db->join('spelgebied', 'onderdeel.spelgebiedid=spelgebied.id', 'left'); | |
| 		$this->db->join('lijst', 'vragen.lijstid=lijst.id', 'left'); | |
| 		 | |
| 		$this->db->group_by('vragen.onderdeelid'); | |
| 		 | |
| 		$this->db->order_by('spelgebied.naam, onderdeel.naam', 'ASC'); | |
| 		 | |
| 		$query = $this->db->get(); | |
| 		 | |
| 		return $query->row_array(); | |
| 	} | |
| 	 | |
| 	public function get_max_punten_detail($spelgebiedid, $onderdeelid = NULL) | |
| 	{ | |
| 		$this->db->select('SUM('.$this->db->dbprefix('vragen').'.score) AS maxscore, | |
| 			spelgebied.gewicht AS gewicht'); | |
| 		$this->db->from('vragen'); | |
| 		 | |
| 		$this->db->where('vragen.regioid', $this->session->regio); | |
| 		$this->db->where('vragen.jaar', date('Y')); | |
| 		if (!empty($onderdeelid)) { | |
| 			$this->db->where('vragen.onderdeelid', $onderdeelid); | |
| 		} | |
| 		$this->db->where('onderdeel.spelgebiedid', $spelgebiedid); | |
| 		 | |
| 		$this->db->join('onderdeel', 'vragen.onderdeelid=onderdeel.id', 'left'); | |
| 		$this->db->join('spelgebied', 'onderdeel.spelgebiedid=spelgebied.id', 'left'); | |
| 		 | |
| 		if (!empty($onderdeelid)) { | |
| 			$this->db->group_by('spelgebied.id, onderdeel.id'); | |
| 		} else { | |
| 			$this->db->group_by('spelgebied.id'); | |
| 		} | |
| 		 | |
| 		$this->db->order_by('spelgebied.id, onderdeel.id', 'ASC'); | |
| 		 | |
| 		$query = $this->db->get(); | |
| 		 | |
| 		return $query->row_array(); | |
| 	} | |
| } |