Viewing file: mo_rg_weekdate.php (5.83 KB) -rwxr-xr-x Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
include_once("da_rg_WeekDate.php");
class Mo_rg_weekdate extends Da_rg_WeekDate {
/**
* หน้าที่ของฟังก์ชั่น คือ หาข้อมูลวันในสัปดาห์ตามเงื่อนไข
*
* @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_WeekDate.*
*/
public function qryWd($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_WeekDate
$c1
$c3
$c2";
$query = $this->db->query($sql);
return $query;
}
/**
* หน้าที่ของฟังก์ชั่น คือ หาข้อมูลวันในสัปดาห์ และภาคการศึกษาตามเงื่อนไข
*
* @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_WeekDate.*, rg_Term.*
*/
public function qryWdJoinTm($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_WeekDate
LEFT JOIN $this->rg_dbname.rg_Term ON wdTmId=tmId
$c1
$c3
$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('ntId' => ntName)
*/
public function get_options($condition="",$order="",$group="", $optional='y') {
$query = $this->qryWd($condition,$order,$group);
if($optional) $opt[''] = $optional;
foreach($query->result() as $row) {
$opt[$row->wdAcY] = $row->wdAcY;
}
return $opt;
}
/*
* get data for dropdown
* @return array $opt อยู่ในรูป array opt('wdAcYWeekNo' => wdAcYWeekNo: wdFrDate - wdToDate)
*/
public function opt_WeekNoFrToDate($condition="",$order="",$group="", $optional='y') {
$query = $this->qryWd($condition,$order,$group);
if($optional) $opt[''] = $optional;
$opt = array();
foreach($query->result() as $row) {
$opt[$row->wdAcYWeekNo] = $row->wdAcYWeekNo.': '.abbreDate2($row->wdFrDate).' - '.abbreDate2($row->wdToDate);
}
return $opt;
}
/**
* หน้าที่ของฟังก์ชั่น คือ หาข้อมูลปีการศึกษา
*
* @access public
* @return query >= 1 row : wdAcY
*/
public function qryWdGroupWdAcY() {
$sql = "SELECT wdAcY
FROM $this->rg_dbname.rg_WeekDate
GROUP BY wdAcY
ORDER BY wdAcY DESC";
$query = $this->db->query($sql);
return $query;
}
/**
* หน้าที่ของฟังก์ชั่น คือ หาวันในสัปดาห์ที่อยู่ระหว่างสัปดาห์เริ่มต้น และสัปดาห์สิ้นสุด
*
* @access public
* @param date: วันที่อยู่ในรูปแบบ yyyy-mm-dd
* @return query >= 1 row : rg_WeekDate
*/
function qryWdBetweenFrDateAndToDate($date) {
$sql = "SELECT *
FROM $this->rg_dbname.rg_WeekDate
WHERE ? BETWEEN wdFrDate AND wdToDate";
$query = $this->db->query($sql,array($date));
return $query;
}
}
?>
|