Viewing file: mo_rg_curriculum.php (15.77 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
include_once("da_rg_Curriculum.php");
/**
* Mo_rg_curriculum Class
*
* Class นี้ประกอบด้วยฟังก์ชั่นที่จัดการเกี่ยวกับหลักสูตร
*
* @package Curriculum
*/
class Mo_rg_curriculum extends Da_rg_Curriculum {
/**
* หน้าที่ของฟังก์ชั่น คือ หาหลักสูตรตามเงื่อนไข
*
* @access public
* @param array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT
* @param array order โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการเรียงลำดับ ORDER BY
* @param array group โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการจัดกลุ่ม GROUP BY
* @return query >= 1 rows : rg_Curriculum.*
* @todo use
*/
public function qryCur($condition="",$order="",$group="") {
$where = $this->checkCondition($condition);
$order = $this->checkOrderBy($order);
$group = $this->checkGroupBy($group);
$c1 = substr($where, 0, -3);
$c2 = substr($order, 0, -1);
$c3 = substr($group, 0, -1);
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum
$c1
$c2
$c3";
$query = $this->db->query($sql);
return $query;
}
public function qryCurJoinElv($condition="",$order="",$group="") {
$db_rg = $this->config->item('rg_dbname');
$db_ppc = $this->config->item('ppc_dbname');
$where = $this->checkCondition($condition);
$order = $this->checkOrderBy($order);
$group = $this->checkGroupBy($group);
$c1 = substr($where, 0, -3);
$c2 = substr($order, 0, -1);
$c3 = substr($group, 0, -1);
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum
LEFT JOIN $this->ppc_dbname.Level ON curElvId=levelId
$c1
$c3
$c2";
$query = $this->db->query($sql);
return $query;
}
public function qryCurJoinOther($condition="",$order="",$group="") {
$where = $this->checkCondition($condition);
$order = $this->checkOrderBy($order);
$group = $this->checkGroupBy($group);
$c1 = substr($where, 0, -3);
$c2 = substr($order, 0, -1);
$c3 = substr($group, 0, -1);
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum
LEFT JOIN $this->ppc_dbname.Level ON curElvId=levelId
$c1
$c2
$c3";
$query = $this->db->query($sql);
return $query;
}
public function qryCurJoinLv($condition="",$order="") {
$where = $this->checkCondition($condition);
$order = $this->checkOrderBy($order);
$c1 = substr($where, 0, -3);
$c2 = substr($order, 0, -1);
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum
INNER JOIN $this->ppc_dbname.Level ON curElvId=levelId
$c1
$c2";
$query = $this->db->query($sql);
return $query;
}
/**
* หน้าที่ของฟังก์ชั่น คือ หารายชื่อหลักสูตรเพื่อแสดงเป็น dropdown
*
* @access public
* @param array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT
* @order array order โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการเรียงลำดับ GROUP BY
* @group array group โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการจัดกลุ่ม ORDER BY
* @param char optional ไว้สำหรับสร้าง string ของ dropdown
* @return array $opt อยู่ในรูป array opt('curId' => curName)
*/
public function get_options($condition="",$order="",$group="",$optional='y') {
$query = $this->qryCur($condition,$order,$group);
if($optional=='y') {
$opt[''] = '';
} else {
$opt[''] = $optional;
}
foreach($query->result() as $row) {
$opt[$row->curId] = $row->curName;
}
return $opt;
}
/**
* หน้าที่ของฟังก์ชั่น คือ หารายชื่อหลักสูตรเพื่อแสดงเป็น dropdown รูปแบบที่ 3 แสดงทุกหลักสูตร
*
* @access public
* @param array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT
* @order array order โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการเรียงลำดับ GROUP BY
* @group array group โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการจัดกลุ่ม ORDER BY
* @param char optional ไว้สำหรับสร้าง string ของ dropdown
* @return array $opt อยู่ในรูป array opt('curId' => curName)
*/
public function get_options_allCur($condition="",$order="",$group="",$optional="") {
$query = $this->qryCur($condition,$order,$group);
if($optional) $opt['0'] = $optional;
foreach($query->result() as $row) {
$opt[$row->curId] = $row->curName;
}
return $opt;
}
/**
* หน้าที่ของฟังก์ชั่น คือ หารายชื่อหลักสูตรเพื่อแสดงเป็น dropdown เรียนรวมหลายหลักสูตร
*
* @access public
* @param array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT
* @order array order โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการเรียงลำดับ GROUP BY
* @group array group โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการจัดกลุ่ม ORDER BY
* @param char optional ไว้สำหรับสร้าง string ของ dropdown
* @return array $opt อยู่ในรูป array opt('curId' => curName)
*/
public function get_options_3($condition="",$order="",$group="",$optional='') {
$query = $this->qryCur($condition,$order,$group);
if($optional) $opt['0'] = $optional;
foreach($query->result() as $row) {
$opt[$row->curId] = $row->curName;
}
return $opt;
}
/**
* หน้าที่ของฟังก์ชั่น คือ หาหลักสูตร และข้อมูลนักศึกษา ตามเงื่อนไข
*
* @access public
* @param array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT
* @param array order โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการเรียงลำดับ ORDER BY
* @param array group โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการจัดกลุ่ม GROUP BY
* @return query >= 1 rows : rg_Curriculum.*, rg_Student.*
*/
public function qryCurJoinStd($condition="",$order="",$group="") {
$where = $this->checkCondition($condition);
$order = $this->checkOrderBy($order);
$group = $this->checkGroupBy($group);
$c1 = substr($where, 0, -3);
$c2 = substr($order, 0, -1);
$c3 = substr($group, 0, -1);
$sql = "SELECT *
FROM $this->rg_dbname.rg_Student
INNER JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId
$c1
$c3
$c2";
$query = $this->db->query($sql);
return $query;
}
/**
* หน้าที่ของฟังก์ชั่น คือ หาหลักสูตร รุ่น
*
* @access public
* @param $sLevelId คือ ระดับการศึกษาตัวที่ 1
$eLevelId คือ ระดับการศึกษาตัวที่ 2
$adY คือ ปีการศึกษาที่เข้า
* @return query >= 1 rows : rg_Curriculum.*, rg_Student.*
*/
public function qryCurForFTESJoinCurElvGen($sLevelId, $eLevelId,$acY) {
$sql = "SELECT curId, curName, stdAdY, genId, genNo, COUNT(stdId) AS numStd
FROM $this->rg_dbname.rg_Student
LEFT JOIN $this->rg_dbname.rg_Generation ON stdGenId=genId
LEFT JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId
WHERE stdGenStatus='Y'
AND genAcY <= ?
AND curElvId BETWEEN ? AND ?
AND (? - stdAdY+1) BETWEEN 1 AND curNumStudyY
GROUP BY curId, stdAdY, genNo";
$query = $this->db->query($sql,array($acY,$sLevelId,$eLevelId,$acY));
return $query;
}
public function qryCurJoinLev($curId) {
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum
LEFT JOIN $this->ppc_dbname.Level ON curElvId=levelId
WHERE cur.curId = ?";
$query = $this->db->query($sql,array($curId));
return $query;
}
public function qryCurGroupCurElvId() {
$sql = "SELECT curElvId
FROM $this->rg_dbname.rg_Curriculum
GROUP BY curElvId";
$query = $this->db->query($sql);
return $query;
}
//karn test
public function SelectAll(){
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum order by curCcId";
$query = $this->db->query($sql);
return $query;
}
// -------- from m_rg_curriculum
public function qryByIdJoinElv($curId) {
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum, $this->ppc_dbname.Level
WHERE curId=?
AND curElvId=levelId";
$query = $this->db->query($sql, array($curId));
return $query;
}
public function qryOrderCcId() {
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum
ORDER BY curCcId";
$query = $this->db->query($sql);
return $query;
}
public function qryLimit($start,$pageSize) {
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum
WHERE curStatus='Y'
ORDER BY curId
LIMIT ?, ?";
$query = $this->db->query($sql,array($start,$pageSize));
return $query;
}
public function qryByIdStatusIsY($id) {
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum
WHERE curStatus='Y'
AND curId = ? ";
$query = $this->db->query($sql ,array($id));
return $query;
}
// add
public function qryCurStatusIsY() {
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum
WHERE curStatus='Y'
ORDER BY curId";
$query = $this->db->query($sql);
return $query;
}
public function qry() {
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum";
$query = $this->db->query($sql);
return $query;
}
public function qryAllCurriculumLimit($start,$pageSize) {
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum
ORDER BY curCcId
LIMIT ?, ?";
$query = $this->db->query($sql,array($start,$pageSize));
return $query;
}
public function qryCurriculumGroupElvId() {
$sql = "SELECT curElvId
FROM $this->rg_dbname.rg_Curriculum
WHERE curStatus='Y'
GROUP BY curElvId";
$query = $this->db->query($sql);
return $query;
}
public function qryAllCurriculumGroupElvId() {
$sql = "SELECT curElvId
FROM $this->rg_dbname.rg_Curriculum
GROUP BY curElvId";
$query = $this->db->query($sql);
return $query;
}
public function qryByElvId($elvId) {
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum
WHERE curElvId=?
AND curStatus='Y'";
$query = $this->db->query($sql,array($elvId));
return $query;
}
public function qryByStatusIsYOrderName() {
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum
WHERE curStatus='Y'
ORDER BY curName";
$query = $this->db->query($sql);
return $query;
}
/*
*
*
*
*/
public function qryByIdAndStdAdYAndStdGenStatusGroupStdCurIdAndStdAdYJoinStd($curId,$stdAdY,$stdGenStatus) {
$cond = "";
if($curId<>"") $cond .= " and curId='$curId'";
if($stdAdY<>"") $cond .= " and stdAdY='$stdAdY'";
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum, $this->rg_dbname.rg_Student
WHERE curStatus='Y' ".$cond."
AND curId=stdCurId
AND stdGenStatus=?
GROUP BY stdCurId, stdAdY";
$query = $this->db->query($sql,array($stdGenStatus));
return $query;
}
public function getNumStudyYById($curId) {
$sql = "SELECT (curNumStudyY) AS curNumStudyY
FROM $this->rg_dbname.rg_Curriculum
WHERE curId=?";
$query = $this->db->query($sql,array($curId));
if ($row=$query->row())
return $row->curNumStudyY;
}
public function qryById($id) {
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum
WHERE curId=?";
$query = $this->db->query($sql,array($id));
return $query;
}
public function getGroupConCurGtpId($curId) {
$sql = "SELECT GROUP_CONCAT(curGtpId) AS curGtpId
FROM $this->rg_dbname.rg_Curriculum
WHERE curId IN ($curId);";
$query = $this->db->query($sql);
return $query->row()->curGtpId;
}
public function qryCurJoinEdgElv($condition="",$order="",$group="") {
$db_rg = $this->config->item('rg_dbname');
$db_ppc = $this->config->item('ppc_dbname');
$where = $this->checkCondition($condition);
$order = $this->checkOrderBy($order);
$group = $this->checkGroupBy($group);
$c1 = substr($where, 0, -3);
$c2 = substr($order, 0, -1);
$c3 = substr($group, 0, -1);
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum
LEFT JOIN $this->rg_dbname.rg_EduDegree ON curEdgId=edgId
LEFT JOIN $this->rg_dbname.rg_CurriculumConfig ON curCcId=ccId
LEFT JOIN $this->ppc_dbname.Level ON curElvId=levelId
$c1
$c3
$c2";
$query = $this->db->query($sql);
return $query;
}
public function qryCurJoinEdgElvStd($condition="",$order="",$group="") {
$db_rg = $this->config->item('rg_dbname');
$db_ppc = $this->config->item('ppc_dbname');
$where = $this->checkCondition($condition);
$order = $this->checkOrderBy($order);
$group = $this->checkGroupBy($group);
$c1 = substr($where, 0, -3);
$c2 = substr($order, 0, -1);
$c3 = substr($group, 0, -1);
$sql = "SELECT *
FROM $this->rg_dbname.rg_Curriculum
LEFT JOIN $this->rg_dbname.rg_EduDegree ON curEdgId=edgId
LEFT JOIN $this->rg_dbname.rg_CurriculumConfig ON curCcId=ccId
LEFT JOIN $this->rg_dbname.rg_Student ON stdCurId=curId
LEFT JOIN $this->ppc_dbname.Level ON curElvId=levelId
$c1
$c3
$c2";
$query = $this->db->query($sql);
return $query;
}
// --------and from m_rg_curriculum
}
?>
|