Viewing file:      mo_rg_student.php (70.53 KB)      -rw-r--r-- Select action/file-type:    (+) |   (+) |   (+) | Code (+) | Session (+) |   (+) | SDB (+) |   (+) |   (+) |   (+) |   (+) |   (+) |
 
<?php include_once("da_rg_Student.php");
  /**  * Mo_rg_student Class  *  * Class นี้ประกอบด้วยฟังก์ชั่นที่ใช้จัดการงานเกี่ยวกับตารางนักศึกษา  *  * @package    Student  */ class Mo_rg_student extends Da_rg_Student {
      /**      * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลนักศึกษาตามเงื่อนไข      *      * @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_Student.*      */     public function qryStd($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                     $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_Student.*, rg_Prefix.*      * @todo    use      */     public function qryStdJoinPf($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 rg_Student.*, Prefix.*, rg_StudentMoe.CompsExam                     FROM $this->rg_dbname.rg_Student                      INNER JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                     LEFT JOIN $this->rg_dbname.rg_StudentMoe ON rg_StudentMoe.stdId = rg_Student.stdId                     $c1                     $c3                     $c2";*/         $sql = "SELECT rg_Student.*, Prefix.*                     FROM $this->rg_dbname.rg_Student                      INNER JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                     $c1                     $c3                     $c2";         //echo $sql;         $query = $this->db->query($sql);         //echo "START<pre>"; print_r($query);         return $query;     }
      public function qryStdJoinPfMoe($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 rg_Student.*, Prefix.*, rg_StudentMoe.CompsExam                     FROM $this->rg_dbname.rg_Student                      INNER JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                     LEFT JOIN $this->rg_dbname.rg_StudentMoe ON rg_StudentMoe.stdId = rg_Student.stdId                     $c1                     $c3                     $c2";         //echo $sql;         $query = $this->db->query($sql);         //echo "START<pre>"; print_r($query);         return $query;     }          public function qryStdJoinPfComPos($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 $this->rg_dbname.rg_Student.*, $this->rg_dbname.rg_StudentMoe.CompsExam                     FROM $this->rg_dbname.rg_Student                      INNER JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                     LEFT JOIN $this->rg_dbname.rg_StudentMoe ON rg_StudentMoe.stdId = rg_Student.stdId                     $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_Student.*, rg_Prefix.*, rg_ScholarOwner.*, rg_Province.*, rg_EntryType.*      * @todo    use      */      public function qryStdJoinPfSoPrvEt($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                 LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                 LEFT JOIN $this->rg_dbname.rg_ScholarOwner ON stdSoId=soId                 LEFT JOIN $this->ppc_dbname.Province ON soPrvId=provinceId                 LEFT JOIN $this->rg_dbname.rg_EntryType ON stdEtId=etId                 LEFT JOIN $this->rg_dbname.rg_Generation ON stdGenId=genId                 $c1                 $c3                 $c2";         $query = $this->db->query($sql);         return $query;     }
      function qryStdJoinAdvByPrsIdAcY($prsId, $acY, $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_Student                      INNER JOIN $this->ppc_dbname.Prefix pf ON stdPfId = pf.prefixId                      LEFT JOIN $this->rg_dbname.rg_Adviser ON stdId = advStdId AND advPrsId = ? AND advAcY = ?                      $c1                     $c2";         $query = $this->db->query($sql, array($prsId, $acY));         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_Student.*, rg_Prefix.*, rg_ScholarOwner.*, rg_Province.*, rg_EntryType.*, rg_StudentSummary.*      * @todo    use      */      public function qryStdAndSstIdISNot6JoinPfSoPrvEt($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                 LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                 LEFT JOIN $this->rg_dbname.rg_ScholarOwner ON stdSoId=soId                 LEFT JOIN $this->ppc_dbname.Province ON provinceId=soPrvId                 LEFT JOIN $this->rg_dbname.rg_EntryType ON stdEtId=etId                 LEFT JOIN $this->rg_dbname.rg_StudentSummary ON stdId=ssmStdId                 $c1                 AND ssmSstId <> 6                 $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_Student.*, rg_StudentSummaray.*, rg_Prefix.*, rg_StudentDetails.*, rg_Curriculum.*, rg_Generation.*      * @todo    use      */      public function qryStdJoinPfSdtCurGen($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                 LEFT JOIN $this->rg_dbname.rg_StudentSummary ON stdId=ssmStdId                 LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                 LEFT JOIN $this->rg_dbname.rg_StudentDetails ON stdId=sdtStdId                 LEFT JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId                 LEFT JOIN $this->rg_dbname.rg_Generation ON stdGenId=genId                 $c1                 $c3                 $c2";         $query = $this->db->query($sql);         //echo $this->db->last_query();die;         return $query;               }
      /*      * @todo    use      */      public function qryStdByCurIdAndAdYAndSyIdJoinSsmPfSdtCurGen($ssmAcY,$ssmTmId,$stdCurId,$stdAdY,$stdSyId) {         $sql =  "SELECT *                 FROM $this->rg_dbname.rg_Student                 LEFT JOIN $this->rg_dbname.rg_StudentSummary ON stdId=ssmStdId AND ssmAcY=? AND ssmTmId=?                 LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                 LEFT JOIN $this->rg_dbname.rg_StudentDetails ON stdId=sdtStdId                 LEFT JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId                 LEFT JOIN $this->rg_dbname.rg_Generation ON stdGenId=genId                 WHERE stdCurId=?                 AND stdAdY=?                 AND stdSyId=?                 ORDER BY stdCode ASC ";         $query = $this->db->query($sql,array($ssmAcY,$ssmTmId,$stdCurId,$stdAdY,$stdSyId));         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_Student.*, rg_Curriculum.*, rg_Prefix.*, rg_StudyYear.*, rg_StudentSummaray.*      * @todo    use      */      public function qryStdJoinCurPfSySsm($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                  LEFT JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId                  LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                  LEFT JOIN $this->rg_dbname.rg_StudyYear ON stdSyId=syId                  LEFT JOIN $this->rg_dbname.rg_StudentSummary ON stdId=ssmStdId                  $c1                  $c3                  $c2";         $query = $this->db->query($sql);         return $query;      }
       public function qryStdJoinPfCurGen($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                 LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                 LEFT JOIN $this->rg_dbname.rg_StudentDetails ON stdId=sdtStdId                 LEFT JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId                 LEFT JOIN $this->rg_dbname.rg_Generation ON stdGenId=genId                 $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_Student.*, rg_StudentSummaray.*, rg_Prefix.*, rg_StudentDetails.*, rg_Curriculum.*, rg_Generation.*      * @todo    use      */      public function qryStdJoinPfSdtCurGenEdu($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 *, p.provinceName as soPrv, pv.provinceName as pPrv , curConfig.ccName                 FROM $this->rg_dbname.rg_Student                 LEFT JOIN $this->rg_dbname.rg_StudentSummary ON stdId = ssmStdId                 LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId = prefixId                 LEFT JOIN $this->rg_dbname.rg_StudentDetails ON stdId = sdtStdId                 LEFT JOIN $this->rg_dbname.rg_Curriculum ON stdCurId = curId                 LEFT JOIN $this->rg_dbname.rg_CurriculumConfig as curConfig ON curConfig.ccId = curCcId                 LEFT JOIN $this->rg_dbname.rg_Generation ON stdGenId = genId                 LEFT JOIN $this->ppc_dbname.Level ON levelId = curElvId                 LEFT JOIN $this->ppc_dbname.District ON sdtDtIdParent = districtId                 LEFT JOIN $this->ppc_dbname.Amphur AS ppcAm ON sdtApIdParent = ppcAm.amphurId                 LEFT JOIN $this->ppc_dbname.Province as pv ON sdtPrvIdParent = pv.provinceId                 LEFT JOIN $this->rg_dbname.rg_ScholarOwner ON stdSoId = soId                 LEFT JOIN $this->ppc_dbname.Province as p ON soPrvId = p.provinceId                 $c1                 $c3                 $c2";         $query = $this->db->query($sql);         return $query;      }
 
      public function qryStdByCurId($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_StudentDetails ON sdtStdId=stdId                 LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                 $c1                 $c3                 $c2";         $query = $this->db->query($sql);         return $query;     }
      public function qryStdJoinPrfJoinSchoJoinPrvByCurId($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_StudentDetails ON sdtStdId = stdId                 INNER JOIN $this->ppc_dbname.Prefix ON stdPfId = prefixId                 INNER JOIN $this->rg_dbname.rg_ScholarOwner ON soId = stdSoId                 LEFT JOIN $this->ppc_dbname.Province ON soPrvId = provinceId                 $c1                 $c3                 $c2";         $query = $this->db->query($sql);         return $query;     }
      public function qryStdJoinPrfJoinSchoJoinPrvHomeByCurId($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_StudentDetails ON sdtStdId = stdId                 INNER JOIN $this->ppc_dbname.Prefix ON stdPfId = prefixId                 INNER JOIN $this->rg_dbname.rg_ScholarOwner ON soId = stdSoId                 LEFT JOIN $this->ppc_dbname.Province ON sdtPrvIdHome = provinceId                 $c1                 $c3                 $c2";         $query = $this->db->query($sql);         return $query;     }
      function getCountStdId($condition="") {         $where = $this->checkCondition($condition);
          $c1 = substr($where, 0, -3);
          $sql = "SELECT COUNT(stdId) AS num                  FROM $this->rg_dbname.rg_Student                  $c1";         $query = $this->db->query($sql);         return $query->row()->num;     }
      public function qryStdJoinPreadmit($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 count(stdId) AS NUM FROM $this->rg_dbname.rg_Student                  INNER JOIN $this->rg_dbname.rg_PreAdmit ON stdPaId = paId                  $c1                 $c3                 $c2";         $query = $this->db->query($sql);         if($query->num_rows()){             return $query->row()->NUM;         }else{             return 0;         }     }
      public function qryStdJoinGeneration($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 s.stdCurId, s.stdGenId, s.stdSyId,s.stdAdY, count(s.stdId) AS studentId, g.*,c.*         FROM $this->rg_dbname.rg_Student s          LEFT JOIN $this->rg_dbname.rg_Generation g ON s.stdGenId=g.genId          LEFT JOIN $this->rg_dbname.rg_Curriculum c ON s.stdCurId=c.curId                 $c1                 $c3                 $c2";         $query = $this->db->query($sql);         return $query;     }
      public function qryStdCountStdId($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  count(stdId) AS NUM         FROM $this->rg_dbname.rg_Student         INNER JOIN $this->rg_dbname.rg_StudentDetails ON sdtStdId = stdId                 $c1                 $c3                 $c2";         $query = $this->db->query($sql);         //echo $this->db->last_query();         if($query->num_rows()){             return $query->row()->NUM;         }else{             return 0;         }     }
      //***************************************************
      /**      * หน้าที่ของฟังก์ชั่น คือ หาชื่อหลักสูตร และชื่อรุ่น ของหลักสูตร และปีที่เข้าศึกษา      *      * @access    public      * @param    array con1 is WHERE contition อยู่ในรูปแบบ con1('key' => value)      * @param    array con2 is GROUP BY condition อยู่ในรูปแบบ con2('key' => value)      * @return    qurey = 1 row (stdCurId, curId, curName, stdGenId, genId, genNo, stdAdY)     */     public function qryCurGen($con1="", $con2="") {         $where = $this->checkCondition($con1);         $grp = $this->checkGroupBy($con2);
          $c1 = substr($where, 0, -3);         $c2 = substr($grp, 0, -1);         $sql = "SELECT stdCurId, curId, curName, stdGenId, genId, genNo, stdAdY                      FROM $this->rg_dbname.rg_Student                     INNER JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId                     INNER JOIN $this->rg_dbname.rg_Generation ON stdGenId=genId                     $c1                     $c2";         $query = $this->db->query($sql);         return $query;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ หานักศึกษา ตามเงื่อนไข และเรียงลำดับตามชื่อ นามสกุล      *      * @access    public      * @param    array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value)      * @return    qurey >= 1 rows (rg_Student.*)     */     public function qryStdOrderNameSurname($condition="") {         $con = $this->checkCondition($condition);         $con= substr($con, 0, -3);
          $sql = "SELECT *                     FROM $this->rg_dbname.rg_Student                     $con                     ORDER BY CONVERT (stdName USING tis620),                     CONVERT (stdSurname USING tis620)";         $query = $this->db->query($sql);         return $query;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ หาหลักสูตรที่ยังไม่ได้สร้างรหัสนักศึกษา ประจำเมนูนักศึกษา->สร้างรหัสนักศึกษาใหม่      *      * @access    public      * @param    array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value)      * @return    qurey >= 1 rows (rg_Student.*)     */     public function qryCurIsNotGenStdCode($condition="") {         $qry = $this->checkCondition($condition);         $con= substr($qry, 0, -3);
          $sql = "SELECT rg_Student.*, rg_Curriculum.*                 FROM $this->rg_dbname.rg_Student                 INNER JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId                 AND stdGenStatus='N'                 $con                 GROUP BY stdCurId, stdAdY";         $query = $this->db->query($sql);         return $query;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลของนักศึกษา ประจำเมนูนักศึกษา->ปรับปรุงสถานะนักศึกษารายนักศึกษา      *      * @access    public      * @param    array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value)      * @return    qurey >= 1 rows (rg_Student.*)     */     public function qryStdDetails($condition="") {         $qry = $this->checkCondition($condition);         $con = substr($qry, 0, -3);
          $sql = "SELECT rg_Student.*, rg_StudentDetails.*, prefixId, prefixName, prefixNameEng, curId, curName, curElvId, levelId, levelName, fsId, fsName, soId, `soName`, provinceId, provinceName, etId, etName, paId, paName                 FROM $this->rg_dbname.rg_Student                 INNER JOIN $this->rg_dbname.rg_StudentDetails ON stdId=sdtStdId                 LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                 LEFT JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId                 LEFT JOIN $this->ppc_dbname.Level ON curElvId=levelId                 LEFT JOIN $this->rg_dbname.rg_FinanceStatus ON stdFsId=fsId                 LEFT JOIN $this->rg_dbname.rg_ScholarOwner ON stdSoId=soId                 LEFT JOIN $this->ppc_dbname.Province ON soPrvId=provinceId                 LEFT JOIN $this->rg_dbname.rg_EntryType ON stdEtId=etId                 LEFT JOIN $this->rg_dbname.rg_PreAdmit ON stdPaId=paId                 $con";         $query = $this->db->query($sql);         return $query;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลนักศึกษา คำนำหน้าชื่อ หลักสูตร ชั้นปี สถานะนักศึกษา และระดับการศึกษาตามเงื่อนไข      *      * @access    public      * @param    array condition1 โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT      * @param    array order โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการเรียงลำดับ ORDER BY      * @return    query >= 1 rows : rg_Student.*, rg_Prefix.*, rg_Curriculum.*, rg_StudyYear.*, rg_StudentStatus.*, rg_EduLevel.*      * @todo    use      */     public function qryStdJoinPfCurSySstElv($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_Student                  LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId = prefixId                  LEFT JOIN $this->rg_dbname.rg_Curriculum ON stdCurId = curId                  LEFT JOIN $this->rg_dbname.rg_StudyYear ON stdSyId = syId                  LEFT JOIN $this->rg_dbname.rg_StudentStatus ON stdSstId = sstId                  LEFT JOIN $this->ppc_dbname.Level ON curElvId = levelId                  $c1                 $c2";         $query = $this->db->query($sql);         return $query;     }
      public function qryStdJoinSdt($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_Student                  INNER JOIN $this->rg_dbname.rg_StudentDetails ON stdId = sdtStdId                  $c1                 $c2";         $query = $this->db->query($sql);         return $query;     }          function qryStdJoinSdtForMil(){         $sql =  "SELECT *                 FROM $this->rg_dbname.rg_Student                  INNER JOIN $this->rg_dbname.rg_StudentDetails ON stdId = sdtStdId                  where (sdtRtId = '1' or sdtRtId IS NULL) and stdSstId = '1' and sdtSex = 'M'";         $query = $this->db->query($sql);         return $query;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลนักศึกษา คำนำหน้าชื่อ หลักสูตร ชั้นปี สถานะนักศึกษา และระดับการศึกษาตามเงื่อนไข      *      * @access    public      * @param    array condition1 โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT      * @param    array order โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการเรียงลำดับ ORDER BY      * @return    query >= 1 rows : rg_Student.*, rg_StudentDetails.*, rg_Prefix.*, rg_Curriculum.*, rg_StudyYear.*, rg_StudentStatus.*, rg_EduLevel.*      * @todo    use      */     public function qryStdJoinSdtPfCurSySstElv($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_Student                  INNER JOIN $this->rg_dbname.rg_StudentDetails ON stdId=sdtStdId                 INNER JOIN $this->ppc_dbname.Prefix ON stdPfId = prefixId                  LEFT JOIN $this->rg_dbname.rg_Curriculum ON stdCurId = curId                  LEFT JOIN $this->rg_dbname.rg_StudyYear ON stdSyId = syId                  LEFT JOIN $this->rg_dbname.rg_StudentStatus ON stdSstId = sstId                  LEFT JOIN $this->ppc_dbname.Level ON curElvId = levelId                  $c1                 $c2";         $query = $this->db->query($sql);         return $query;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ ค้นหา/รายงาน > สรุปข้อมูลนักศึกษา       *      * @access    public      * @param    array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value)      * @return    qurey >= 1 rows (rg_Student.*)     */     public function qryStdJoinCur($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;     }
      //----------------nooooo-------------
      public function qryCoRegist($acY, $tmId, $stdCode) {         $sql = "SELECT *                     FROM $this->rg_dbname.rg_Student                     INNER JOIN $this->rg_dbname.rg_RegistDetails ON stdId=rdStdId                     INNER JOIN $this->rg_dbname.rg_CourseOpen ON rdCoId=coId                     INNER JOIN $this->rg_dbname.rg_Course ON coCrsId=crsId                     WHERE rdAcY=?                     AND rdTmId=?                     AND stdCode=?";         $query = $this->db->query($sql, array($acY, $tmId, $stdCode));         return $query;     }     public function rsSutGen($acy)     {         $sql = "SELECT s.stdCurId, stdAdY, s.stdGenId, genNo,curName,COUNT( stdId ) AS numStd                 FROM $this->rg_dbname.rg_Student s                 JOIN $this->rg_dbname.rg_Generation G ON stdGenId = genId                 JOIN $this->rg_dbname.rg_Curriculum C ON curId = genCurId                 WHERE stdGenStatus = 'Y'                      AND genAcy <= ?                     AND (? - stdAdY) BETWEEN 1 AND curNumStudyY                 GROUP BY s.stdCurId,stdAdY,stdGenId ";         $query = $this->db->query($sql,array($acy,$acy));         return $query;
      }
      function qryStdByCurIdGdDateGdY($curId, $frDate, $toDate, $gdY) {         $sql = "SELECT *                      FROM $this->rg_dbname.rg_Student                      WHERE stdCurId = ?                      AND stdGraduateDate >= ?                      AND stdGraduateDate <= ?                      AND stdGraduateY = ?";
          $query = $this->db->query($sql, array($curId, $frDate, $toDate, $gdY));         //echo $this->db->last_query();         return $query;     }
      function getCountStIdByPgIdAndFinishDateAndGdYAndStSex($curId, $fd, $ld, $gy, $sex){         $sql = "SELECT COUNT(stdId) as num                  FROM $this->rg_dbname.rg_Student                 LEFT JOIN $this->rg_dbname.rg_StudentDetails ON sdtStdId = stdId                 WHERE stdCurId = ?                  AND stdGraduateDate >= ? AND stdGraduateDate <= ? AND stdGraduateY = ? AND sdtSex= ?";         $query = $this->db->query($sql,array($curId, $fd, $ld, $gy, $sex));                  if ($query->num_rows()) {             return $query->row()->num;         } else {             return '';         }     }
      function qryStdByCurIdAndAdYAndSstIdAndGraduateDateAndGraduateY($stdCurId,$stdAdY) {         $sql = "SELECT * FROM $this->rg_dbname.rg_Student              LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId             LEFT JOIN $this->rg_dbname.rg_ScholarOwner ON stdSoId=soId             LEFT JOIN $this->rg_dbname.rg_Generation ON stdGenId = genId         WHERE stdCurId=? and stdAdY=?                         ";         $query = $this->db->query($sql,array($stdCurId, $stdAdY));         return $query;     }
      function qryStdJoinStdSumByacY($acY) {         $sql = "SELECT COUNT(stdId) AS num FROM(                         SELECT stdId FROM $this->rg_dbname.rg_Student                             WHERE stdAdY <= '$acY' AND stdGenStatus='Y' AND stdSstId=1                         UNION                         SELECT ssmStdId FROM $this->rg_dbname.rg_StudentSummary                             WHERE ssmAcY = '$acY' AND ssmSstId=1                             GROUP BY ssmStdId                     ) aa";         $query = $this->db->query($sql);         if ($query) {             return $query->row()->num;         } else {             return '';         }     }
      function qryByAdYAndStudying($adY,$ssmAcY) {         $sql = "SELECT stdId                      FROM (                         SELECT std.stdId, std.stdCode                              FROM $this->rg_dbname.rg_Student std                              WHERE std.stdAdY<=?                             AND std.stdGenStatus='Y'                              AND std.stdSstId=1                          union                          SELECT std.stdId, std.stdCode                              FROM $this->rg_dbname.rg_StudentSummary ssm, rg_Student std                              WHERE ssm.ssmAcY=?                              AND ssm.ssmSstId=1                              AND ssm.ssmStdId=std.stdId                              GROUP BY ssm.ssmStdId                     ) aa                      ORDER BY stdCode";         $query = $this->db->query($sql,array($adY,$ssmAcY));         return $query;     }
      // use     public function qryByCurIdAndAdYAndSbeAcYAndSbeTmIdGroupIdOrderCodeJoinPfSbe($curId,$sbeAcY,$sbeTmId, $adY) {         $sql = "SELECT * FROM                     (SELECT stdId, stdCode, stdName, stdSurname, prefixName                      FROM $this->rg_dbname.rg_Student                     LEFT JOIN $this->ppc_dbname.Prefix  ON stdPfId=prefixId                     WHERE stdCurId=?                     AND stdAdY=?) AS t1                     LEFT JOIN                     (SELECT sbeStdId, SUM(sbeCutPoint) AS sumSbeCurPoint                     FROM $this->rg_dbname.rg_StudentBehavior                      WHERE  sbeAcY=?                      AND sbeTmId=?                     GROUP BY sbeStdId) AS t2 on stdId=sbeStdId                      ORDER BY stdCode";         $query = $this->db->query($sql,array($curId,$adY,$sbeAcY,$sbeTmId));         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_Student.*, rg_Prefix.*, rg_StudyYear.*, rg_EntryType.*, rg_ScholarOwner.*, rg_Province.*, rg_StudentStatus.*, rg_FinanceStatus.*, rg_GradeTp.*, rg_PreAdmit.*      * @todo    not use      */     /*public function qryStdJoinPfSyEtSoPrvSstFsGtpPa($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 *, provinceName as prvNameSo             FROM $this->rg_dbname.rg_Student             INNER JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId             INNER JOIN $this->rg_dbname.rg_StudyYear ON stdSyId=syId             INNER JOIN $this->rg_dbname.rg_EntryType ON stdEtId=etId             INNER JOIN $this->rg_dbname.rg_ScholarOwner ON stdSoId=soId             LEFT JOIN $this->ppc_dbname.Province ON soPrvId=provinceId             INNER JOIN $this->rg_dbname.rg_StudentStatus ON stdSstId=sstId             INNER JOIN $this->rg_dbname.rg_FinanceStatus ON stdFsId=fsId             INNER JOIN $this->rg_dbname.rg_GradeTp ON stdGtpId=gtpId             LEFT JOIN $this->rg_dbname.rg_PreAdmit ON stdPaId=paId             $c1             $c3             $c2";         $query = $this->db->query($sql);         return $query;     }*/
 
      //use     public function qryStdJoinSstPfSyEtSoPrvSstFsGtpPaEdu($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 *, provinceName as prvNameSo             FROM $this->rg_dbname.rg_Student             INNER JOIN $this->rg_dbname.rg_StudentStatus ON stdSstId=sstId             INNER JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId             INNER JOIN $this->rg_dbname.rg_ScholarOwner ON stdSoId=soId             LEFT JOIN $this->ppc_dbname.Province ON soPrvId=provinceId             LEFT JOIN $this->rg_dbname.rg_PreAdmit ON stdPaId=paId             INNER JOIN $this->rg_dbname.rg_EntryType ON stdEtId=etId             INNER JOIN $this->rg_dbname.rg_StudentDetails ON stdId=sdtStdId             LEFT JOIN $this->ppc_dbname.Nation ON sdtNtId=nationId             LEFT JOIN $this->ppc_dbname.Religion ON sdtRlgId=religionId             LEFT JOIN $this->rg_dbname.rg_EduDegree ON sdtEdgIdPre=edgId             $c1             $c3             $c2";         $query = $this->db->query($sql);         return $query;     }
      //use     public function qryStdJoinAllForRpt($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 *, e.edgName as cEdgName, e.edgNameE as cEdgNameE, se.edgName as sdtEdgName, se.edgNameE as sdtEdgNameE             FROM $this->rg_dbname.rg_Student             INNER JOIN $this->rg_dbname.rg_StudentStatus ON stdSstId=sstId             INNER JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId             INNER JOIN $this->rg_dbname.rg_StudentDetails ON stdId=sdtStdId             LEFT JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId             LEFT JOIN $this->ppc_dbname.Province ON sdtPrvIdBirth=provinceId             LEFT JOIN $this->ppc_dbname.Nation ON sdtNtId=nationId             LEFT JOIN $this->ppc_dbname.Religion ON sdtRlgId=religionId             LEFT JOIN $this->rg_dbname.rg_EduDegree se ON sdtEdgIdPre=se.edgId             LEFT JOIN $this->rg_dbname.rg_EduDegree e ON curEdgId=e.edgId             $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_Student.*, rg_Prefix.*, rg_ScholarOwner.*, rg_Province.*      * @todo    use      */     public function qryStdPfSoPrv($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 *, provinceName AS prvNameSo                 FROM $this->rg_dbname.rg_Student                 INNER JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                 INNER JOIN $this->rg_dbname.rg_ScholarOwner ON stdSoId=soId                 LEFT JOIN $this->ppc_dbname.Province ON soPrvId=provinceId                 $c1                 $c3                 $c2";         $query = $this->db->query($sql);         return $query;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ หารหัสนักศึกษาที่มากสุดที่มีการสร้างรหัสนักศึกษาแล้ว      *      * @access    public      * @param    stdCurId: รหัสหลักสูตร      * @param    stdAdY: ปีการศึกษาที่เข้า      * @param    stdId: รหัสนักศึกษา      * @return    num: ค่ารหัสนักศึกษาที่มากสุด      * @todo    use      */     public function qryByMaxCodeInCurAndGSIsY($stdCurId,$stdAdY,$stdId) {         $sql = "SELECT MAX(stdCode) AS num                     FROM $this->rg_dbname.rg_Student                     WHERE stdCurId=?                     AND stdAdY=?                     AND stdId <> ?                     AND stdGenStatus='Y'";         $query = $this->db->query($sql,array($stdCurId,$stdAdY,$stdId));         if($row=$query->row())             return $row->num;     }
      function qryStdByCurIdAdYSstIdStr($curId, $adY, $sstIdStr) {         $sql = "SELECT *                          FROM $this->rg_dbname.rg_Student                          WHERE stdCurId = ?                          AND stdAdY = ?                          AND stdSstId IN ($sstIdStr)                          ORDER BY stdCode";         $query = $this->db->query($sql, array($curId, $adY));         return $query;     }
      function qryStdByCurIdSyIdSstIdStr($curId, $syId, $sstIdStr) {         $sql = "SELECT *                          FROM $this->rg_dbname.rg_Student                          WHERE stdCurId = ?                          AND stdSyId = ?                          AND stdSstId IN ($sstIdStr)                          ORDER BY stdCode";         $query = $this->db->query($sql, array($curId, $syId));         return $query;     }
      public function qryStdByCurIdAdYSyIdSstIdStr($curId, $adY, $syId, $sstIdStr) {         $sql = "SELECT *                          FROM $this->rg_dbname.rg_Student                          WHERE stdCurId = ?                          AND stdAdY = ?                          AND stdSyId = ?                          AND stdSstId IN ($sstIdStr)                          AND stdGraduateDate = '0000-00-00'                          AND stdGraduateY = 0                          ORDER BY stdCode";         $query = $this->db->query($sql, array($curId, $adY, $syId));         return $query;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ หาสถานะการสร้างรหัสนักศึกษาตามเงื่อนไข      *      * @access    public      * @param    array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT      * @return    num: หารหัสการสร้างนักศึกษา      * @todo    use      */     public function qryStdGroupGS($condition="") {         $where = $this->checkCondition($condition);
          $c1 = substr($where, 0, -3);
          $sql = "SELECT stdGenStatus                 FROM $this->rg_dbname.rg_Student                 $c1                 GROUP BY stdGenStatus";         $query = $this->db->query($sql);         if($row=$query->row()) {             return $row->stdGenStatus;         } else {             return 'N';         }     }
      /**      * หน้าที่ของฟังก์ชั่น คือ หารหัสรุ่นของนักศึกษาตามเงื่อนไข      *      * @access    public      * @param    array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT      * @return    num: ค่ารหัสนรุ่นของนักศึกษาที่มากสุด      * @todo    use      */     public function qryStdGenId($condition="") {         $where = $this->checkCondition($condition);
          $c1 = substr($where, 0, -3);
          $sql = "SELECT stdGenId, MIN(genNo) AS genNo                 FROM $this->rg_dbname.rg_Student                 INNER JOIN $this->rg_dbname.rg_Generation ON stdGenId=genId                 $c1                 GROUP BY stdGenId";         $query = $this->db->query($sql);         return $query;     }
      public function qryStdByCodeStStatus($stdCode, $stStatus) {         $sql = "SELECT *                          FROM $this->rg_dbname.rg_Student                          WHERE stdCode = ?                          AND stdSstId IN ($stStatus)                          AND stdGenStatus = 'Y'";         $query = $this->db->query($sql, array($stdCode));         return $query;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลนักศึกษาตามรหัสนักศึกษา      *      * @access    public      * @param    stdCode: รหัสนักศึกษา      * @return    stdCode: รหัสนักศึกษา      * @todo    use      */     public function qryStdCode($stdCode) {         $sql = "SELECT *                 FROM $this->rg_dbname.rg_Student                 WHERE stdCode=?";         $query = $this->db->query($sql,array($stdCode));         return $query;     }
      function qryStdByCurIdGroupAdY($curId) {         $sql = "SELECT stdAdY, MAX(stdSyId) AS stdSyId                          FROM $this->rg_dbname.rg_Student                          WHERE stdCurId = ?                          AND stdGenStatus = 'Y'                          GROUP BY stdAdY";         $query = $this->db->query($sql, array($curId));         return $query;     }
      function qryStdGroupGraduateY($condition="",$order="") {         $where = $this->checkCondition($condition);         $order = $this->checkOrderBy($order);
          $c1 = substr($where, 0, -3);         $c2 = substr($order, 0, -1);
          $sql = "SELECT stdGraduateY                      FROM $this->rg_dbname.rg_Student                      $c1                     $c2                     GROUP BY stdGraduateY";         $query = $this->db->query($sql);         return $query;     }
      function get_optionsGroupGraduateY($condition="", $order="", $optional='y') {         $query = $this->qryStdGroupGraduateY($condition, $order);         if($optional=='y') $opt[''] = '';         foreach($query->result() as $row) {             $opt[$row->stdGraduateY] = $row->stdGraduateY;         }         return $opt;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลนักศึกษา คำนำหน้าชื่อ หลักสูตร ชั้นปี ตามเงื่อนไข      *      * @access    public      * @param    array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT      * @return    $query >= 1 row: rg_Student.*, rg_Prefix.*, rg_Curriculum.*, rg_StudyYear.*      * @todo    use      */     function qryPfCurSyTm($condition="") {         $where = $this->checkCondition($condition);
          $c1 = substr($where, 0, -3);
          $sql = "SELECT * FROM $this->rg_dbname.rg_Student                 INNER JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                 INNER JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId                 INNER JOIN $this->rg_dbname.rg_StudyYear ON stdSyId=syId                 $c1";         $query = $this->db->query($sql);         return $query;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลนักศึกษาตามรหัสนักศึกษา ชื่อ นามสกุล      *      * @access    public      * @return    query >= 1 rows : rg_Student.*, rg_Prefix.*      * @todo    use      */     public function qryStdByLikeCodeAndNameAndSurname($stdCode,$stdName,$stdSurname) {         $sql = "SELECT *                 FROM $this->rg_dbname.rg_Student                 INNER JOIN $this->rg_dbname.Prefix ON stdPfId=prefixId                 WHERE stdCode LIKE ?                 AND stdName LIKE ?                 AND stdSurname LIKE ?";         $query = $this->db->query($sql,array('%'.$stdCode.'%','%'.$stdName.'%','%'.$stdSurname.'%'));         return $query;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลนักศึกษา      *      * @access    public      * @return    query >= 1 rows:      * @todo    use      */     public function qryStdMB($stdId) {         $sql = "SELECT *, provinceName AS prvNameSo                 FROM $this->rg_dbname.rg_Student                 INNER JOIN $this->rg_dbname.rg_StudentDetails ON stdId=sdtStdId                 INNER JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                 INNER JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId                 INNER JOIN $this->ppc_dbname.Level ON curElvId=levelId                 INNER JOIN $this->rg_dbname.rg_StudyYear ON stdSyId=syId                 INNER JOIN $this->rg_dbname.rg_StudentStatus ON stdSstId=sstId                 INNER JOIN $this->rg_dbname.rg_Term ON stdTmIdAdmit=tmId                 INNER JOIN $this->rg_dbname.rg_ScholarOwner ON stdSoId=soId                 LEFT JOIN $this->ppc_dbname.Province ON soPrvId=provinceId                 INNER JOIN $this->rg_dbname.rg_Generation ON stdGenId=genId                 LEFT JOIN $this->rg_dbname.rg_FinanceStatus ON stdFsId=fsId                 LEFT JOIN $this->rg_dbname.rg_PreAdmit ON stdPaId=paId                 LEFT JOIN $this->rg_dbname.rg_EntryType ON stdEtId=etId                 LEFT JOIN $this->rg_dbname.rg_EntryType2 ON stdEt2Id=et2Id                 WHERE stdId=?";         $query = $this->db->query($sql,array($stdId));         return $query;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลนักศึกษา คำนำหน้าชื่อ และข้อมูลสถานะนักศึกษาตามเงื่อนไข      *      * @access    public      * @param    array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT      * @param    array order โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง ORDER      * @param    array group โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง GROUP      * @return    $query >= 1 row: rg_Student.*, rg_Prefix.*, rg_StudentStatus.*      * @todo    use      */     public function qryStdJoinPfSst($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->ppc_dbname.Prefix ON stdPfId=prefixId                 INNER JOIN $this->rg_dbname.rg_StudentStatus ON stdSstId=sstId                 $c1                 $c3                 $c2";         $query = $this->db->query($sql);         return $query;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ คำนวณชั้นปีนักศึกษา      *      * @access    public      * @param    $stdId : รหัสนักศึกษา      * @param    $acY : ปีการศึกษา      * @return    $sy : ค่าชั้นปี      * @todo    use      */     public function calSyByStdIdAndAcY($stdId, $acY) {         $si =& get_instance();         $si->load->model($this->config->item("rg_folder").'mo_rg_studentsummary','ssm');
          $this->stdId = $stdId;         $qu_std = $this->get_by_key();
          $sy = 1;         $ssmPassStatus = '1,2,3';         if($qu_std->num_rows()) {             for($i=$qu_std->row()->stdAdY; $i<$acY; $i++) {                 $ssm = $si->ssm->qrySsmByStdIdAndAcYAndSsmPassStatusStr($stdId,$i,$ssmPassStatus);                 $sy = ($ssm->num_rows()) ? $sy+1 : $sy;             }         }         return $sy;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลนักศึกษาที่มี สถานะตามเงื่อนไข      *      * @access    public      * @param    $stdSstId : string สถานะนักศึกษา      * @return  $query >= 1 row: rg_Student.*      * @todo    use      */     public function qryStdByStdSstIdStr($stdSstIdStr) {         $sql = "SELECT *                 FROM $this->rg_dbname.rg_Student                 WHERE stdSstId IN (?)                 ORDER BY stdId";         $query = $this->db->query($sql,array($stdSstIdStr));         return $query;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ หาหลักสูตรที่มีนักศึกษา      *      * @access    public      * @param    array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT      * @param    array order โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง ORDER      * @return    $query >=1 rows: stdCurId      * @todo    use      * @todo    เปลี่ยน order จาก stdCurId -> curName      */     public function qryStdGroupStdCurId($condition="") {         $where = $this->checkCondition($condition);
          $c1 = substr($where, 0, -3);
          $sql = "SELECT stdCurId, curName                 FROM $this->rg_dbname.rg_Student                 LEFT JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId                 $c1                 GROUP BY stdCurId                 ORDER BY CONVERT(curName USING TIS620)";         $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      * @param    array group โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง GROUP      * @return    $query >= 1 row: rg_Student.*, rg_Prefix.*, rg_Curriculum.*      * @todo    use      */     public function qryStdJoinPfCur($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->ppc_dbname.Prefix ON stdPfId=prefixId                 INNER JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId                 $c1                 $c3                 $c2";         $query = $this->db->query($sql);         return $query;     }          public function qryStdJoinRgPfCur($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_Regist  ON stdId=rgStdId                 INNER JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                 INNER JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId                 $c1                 $c3                 $c2";         $query = $this->db->query($sql);         return $query;     }
      public function qryStdBystdSstIdIs4($stdCurId,$stdAdY) {         $sql = "SELECT *                     FROM $this->rg_dbname.rg_Student                     LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId = prefixId                     LEFT JOIN $this->rg_dbname.rg_StudentStatus ON stdSstId = sstId                     WHERE stdCurId = ?                      AND stdAdY = ?                     AND stdSstId = 4                     AND stdGraduateDate<>0000-00-00                     AND stdGraduateY<>0";         $query = $this->db->query($sql,array($stdCurId,$stdAdY));         return $query;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ      *      * @access    public      * @param    รหัสหลักสูตร      * @param    ปีการศึกษาเริ่มต้น      * @param    ปีการศึกษาสิ้นสุด      * @return        $query      * @todo    use      */     public function qryByCurIdAndStartAdYAndEndAdYJoinPfSdtCurGen($curId,$startAdY,$endAdY) {         $sql = "SELECT *                     FROM $this->rg_dbname.rg_Student                     LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                     LEFT JOIN $this->rg_dbname.rg_StudentDetails ON stdId=sdtStdId                     LEFT JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId                     LEFT JOIN $this->rg_dbname.rg_Generation ON stdGenId=genId                     WHERE stdCurId=?                     AND stdAdY BETWEEN ? AND ?                     ORDER BY stdCode ASC";         $query = $this->db->query($sql,array($curId,$startAdY,$endAdY));         return $query;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ      *      * @access    public      * @param    รหัสนักศึกษา      * @return        $query      * @todo        use      */     public function qryByCodeAndGenStatusIsYJoinPfSdtCurGen($stdCode) {         $sql = "SELECT *                     FROM $this->rg_dbname.rg_Student                     LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                     LEFT JOIN $this->rg_dbname.rg_StudentDetails ON stdId=sdtStdId                     LEFT JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId                     LEFT JOIN $this->rg_dbname.rg_Generation ON stdGenId=genId                     WHERE stdCode=?                     AND stdGenStatus='Y'";         $query = $this->db->query($sql,array($stdCode));         return $query;     }
      /**      * หน้าที่ของฟังก์ชั่น คือ      *      * @access    public      * @param    $startAdY,$endAdY      * @return        $query      * @todo        use      */     public function qryByStartAdYAndEndAdYJoinPfSdtCurGen($startAdY,$endAdY) {         $sql = "SELECT *                     FROM $this->rg_dbname.rg_Student                     LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                     LEFT JOIN $this->rg_dbname.rg_StudentDetails ON stdId=sdtStdId                     LEFT JOIN $this->rg_dbname.rg_Curriculum ON stdCurId=curId                     LEFT JOIN $this->rg_dbname.rg_Generation ON stdGenId=genId                     WHERE stdAdY BETWEEN ? AND ?                     ORDER BY stdCode ASC";         $query = $this->db->query($sql,array($startAdY,$endAdY));         return $query;     }                    public function qryStudentForFinance($stdCode){         $sql = "SELECT *                      FROM $this->rg_dbname.rg_Student, $this->ppc_dbname.Prefix WHERE stdPfId = prefixId and stdGenStatus= 'Y' and stdCode = ?  and stdSstId between 1 and 2";         $query = $this->db->query($sql,array($stdCode));         return $query;     } 
      /**      * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลนักศึกษา คำนำหน้าชื่อ และการกู้ยืมตามเงื่อนไข      *      * @access    public      * @param    array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT      * @param    array order โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง ORDER      * @param    array group โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง GROUP      * @return    $query >= 1 row: rg_Student.*, rg_Prefix.*, rg_AllowSendGrade.*      * @todo    use      */     public function qryStdJoinPfAsg($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                 LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                 LEFT JOIN $this->rg_dbname.rg_AllowSendGrade ON stdId=asgStdId                 $c1                 $c3                 $c2";         $query = $this->db->query($sql);         return $query;     }
      function qryStdJoinPfSdm($acY, $tmId) {         $sql = "SELECT std.*, pf.*, sdm.*,                  IF(pl1.plBuilding, pl1.plRmNo, pl1.hwName) AS hwName1,                  pl2.hwName AS hwName2                  FROM $this->rg_dbname.rg_Student std                  LEFT JOIN $this->ppc_dbname.Prefix pf ON stdPfId = prefixId                  LEFT JOIN $this->rg_dbname.rg_StudentDomitory sdm ON stdId = sdmStdId AND sdmAcY = ? AND sdmTmId = ?                  LEFT JOIN $this->ppc_dbname.spc_Place pl1 ON sdmDmId = pl1.plHwId                  LEFT JOIN $this->ppc_dbname.spc_Place pl2 ON pl1.plBuilding = pl2.plHwId                  WHERE stdCurId = ?                  AND stdAdY = ?                  ORDER BY stdCode";         $query = $this->db->query($sql, array($acY, $tmId, $this->stdCurId, $this->stdAdY));         return $query;     }
      // @todo    use     // @create    pamy     public function qryStdGroupStdGenStatus($condition="") {         $where = $this->checkCondition($condition);
          $c1 = substr($where, 0, -3);
          $sql = "SELECT stdGenStatus                 FROM $this->rg_dbname.rg_Student                 $c1                 GROUP BY stdGenStatus";         $query = $this->db->query($sql);         if($query->num_rows())             return $query->row()->stdGenStatus;         else             return NULL;     }
      // @todo    use     // @create    pamy     public function GetNextStdCode($condition="") {         $where = $this->checkCondition($condition);
          $c1 = substr($where, 0, -3);
          $sql = "SELECT MAX(stdCode) AS stdCode                 FROM $this->rg_dbname.rg_Student                 $c1";         $query = $this->db->query($sql);         return $query->row()->stdCode+1;     }
      // @todo    use     // @create    pamy     public function qryStdByCitizenIdJoinSdt($stdCurId,$stdAdY,$sdtCitizenId,$stdId) {         $sql = "SELECT *                 FROM $this->rg_dbname.rg_Student                 LEFT JOIN $this->rg_dbname.rg_StudentDetails ON stdId=sdtStdId                 WHERE stdCurId=?                 AND stdAdY=?                 AND sdtCitizenId=?                 AND stdId<>?";         $query = $this->db->query($sql,array($stdCurId,$stdAdY,$sdtCitizenId,$stdId));         return $query;     }
      // ***** Start MIS *****     function qryStdByAdYNotInStStatusGroupCurIdAdYEtIdSex($adY, $stStatus) {         $sql = "SELECT stdCurId, stdAdY, stdEtId, sdtSex, COUNT(stdId) AS stdId                  FROM $this->rg_dbname.rg_Student                  INNER JOIN $this->rg_dbname.rg_StudentDetails ON stdId = sdtStdId                  WHERE stdAdY = ?                  AND stdSstId NOT IN ($stStatus)                  AND stdGenStatus = 'Y'                  GROUP BY stdCurId, stdAdY, stdEtId, sdtSex";         $query = $this->db->query($sql, array($adY));         return $query;     }
      function qryStdByGraduateYGDGroupCurIdAdYEtIdSex($gdY) {         $sql = "SELECT stdCurId, stdAdY, stdEtId, sdtSex, COUNT(stdId) AS stdId                  FROM $this->rg_dbname.rg_Student                  INNER JOIN $this->rg_dbname.rg_StudentDetails ON stdId = sdtStdId                  WHERE stdGraduateY= ?                  AND stdSstId = 4                  AND stdGraduateDate <> '0000-00-00'                  GROUP BY stdCurId, stdAdY, stdEtId, sdtSex";         $query = $this->db->query($sql, array($gdY));         return $query;     }
      function qryStdByNotInStStatusGroupCurIdAdYEtIdSex($stStatus) {         $sql = "SELECT stdCurId, stdAdY, stdEtId, sdtSex, COUNT(stdId) AS stdId                  FROM $this->rg_dbname.rg_Student                  INNER JOIN $this->rg_dbname.rg_StudentDetails ON stdId = sdtStdId                  WHERE stdSstId NOT IN ($stStatus)                  AND stdGenStatus = 'Y'                  GROUP BY stdCurId, stdAdY, stdEtId, sdtSex";         $query = $this->db->query($sql);         return $query;     }
      function qryStdByNotInStStatusGroupCurIdAdYSyIdEtIdSex($stStatus) {         $sql = "SELECT stdCurId, stdAdY, stdSyId, stdEtId, sdtSex, COUNT(stdId) AS stdId                  FROM $this->rg_dbname.rg_Student                  INNER JOIN $this->rg_dbname.rg_StudentDetails ON stdId = sdtStdId                  WHERE stdSstId NOT IN ($stStatus)                  AND stdGenStatus = 'Y'                  GROUP BY stdCurId, stdAdY, stdSyId, stdEtId, sdtSex";         $query = $this->db->query($sql);         return $query;     }
      function qryStdByNotInStStatusAcYRepeatClassGroupCurIdAdYSyIdEtIdSex($stStatus, $acY) {         $sql = "SELECT stdCurId, stdAdY, stdSyId, stdEtId, sdtSex, COUNT(stdId) AS stdId                  FROM $this->rg_dbname.rg_Student                  INNER JOIN $this->rg_dbname.rg_StudentDetails ON stdId = sdtStdId                  INNER JOIN $this->rg_dbname.rg_StudentSummary ON stdId = ssmStdId                  WHERE stdSstId NOT IN ($stStatus)                  AND stdGenStatus = 'Y'                  AND ssmAcY= ?                  AND ssmPassStatus = 4                  GROUP BY stdCurId, stdAdY, stdSyId, stdEtId, sdtSex";         $query = $this->db->query($sql, array($acY));         return $query;     }
      function qryStdByStStatusAcYGroupCurIdAdYSyIdEtIdSex($stStatus, $acY) {         $sql = "SELECT stdCurId, stdAdY, stdSyId, stdEtId, sdtSex, COUNT(stdId) AS stdId                  FROM $this->rg_dbname.rg_Student                  INNER JOIN $this->rg_dbname.rg_StudentDetails ON stdId = sdtStdId                  INNER JOIN $this->rg_dbname.rg_StudentSummary ON stdId = ssmStdId                  WHERE stdSstId IN ($stStatus)                  AND stdGenStatus = 'Y'                  AND ssmSstId IN ($stStatus)                  AND ssmAcY = ?                  GROUP BY stdCurId, stdAdY, stdSyId, stdEtId, sdtSex";         $query = $this->db->query($sql, array($acY));         return $query;     }     // ***** End MIS *****
      /**      * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลนักศึกษาตามเงื่อนไข      *      * @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_Student.*      */     public function upDateStd($condition="") {         $where = $this->checkCondition($condition);
          $c1 = substr($where, 0, -3);
          $sql = "UPDATE $this->rg_dbname.rg_Student                 SET stdCode=NULL                 $c1";         $query = $this->db->query($sql);         return $query;     }
      /**      *@todo    use      */     public function qryGropGraduateY() {         $sql = "SELECT stdGraduateY                 FROM $this->rg_dbname.rg_Student                 WHERE stdSstId=4                 GROUP BY stdGraduateY";         $query = $this->db->query($sql);         return $query;     }
      function qryStdJoinPfSstTmp($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_Student                      INNER JOIN $this->ppc_dbname.Prefix ON stdPfId = prefixId                      INNER JOIN $this->rg_dbname.rg_StudentStatus ON stdSstIdTmp = sstId                      $c1                     $c2";         $query = $this->db->query($sql);         return $query;     }
      public function qryStdByStdSstIdNotIn5JoinPfSoPrvEt($stdCurId, $stdAdY) {         $sql = "SELECT *                 FROM $this->rg_dbname.rg_Student                 LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId=prefixId                 LEFT JOIN $this->rg_dbname.rg_ScholarOwner ON stdSoId=soId                 LEFT JOIN $this->ppc_dbname.Province ON soPrvId=provinceId                 LEFT JOIN $this->rg_dbname.rg_EntryType ON stdEtId=etId                 LEFT JOIN $this->rg_dbname.rg_Generation ON stdGenId=genId                 WHERE stdCurId=?                 AND stdAdY=?                 AND stdSstId NOT IN (5)                 ORDER BY stdCode";         $query = $this->db->query($sql,array($stdCurId, $stdAdY));         return $query;     }          function JoinForEsaHealth($std='',$per=''){         $cond = '';         if ($std) {             $cond .= "(stdCode LIKE '%$std%' OR stdName LIKE '%$std%' OR stdSurname LIKE '%$std%') ";         }         if ($per) {             $cond .= ($std)? "AND sdtHpId = '$per' ":" sdtHpId = '$per' ";         }         $sql = "SELECT * FROM $this->rg_dbname.rg_Student INNER JOIN $this->rg_dbname.rg_StudentDetails ON stdId = sdtStdId WHERE ".$cond."AND sdtHpId IS NOT NULL";         $query = $this->db->query($sql);         return $query;     }
      function JoinForEsaHealthFetch($std,$per){         $cond = '';         if ($std) {             $cond .= "(stdCode LIKE '%$std%' OR stdName LIKE '%$std%' OR stdSurname LIKE '%$std%') ";         }         if ($per) {             $cond .= ($std)? "AND sdtHpId = '$per' ":" sdtHpId = '$per' ";         }         $sql = "SELECT * FROM $this->rg_dbname.rg_Student INNER JOIN $this->rg_dbname.rg_StudentDetails ON stdId = sdtStdId INNER JOIN esa.sa_health_privilege  ON $this->rg_dbname.rg_Student.stdId = esa.sa_health_privilege.htp_std_id WHERE ".$cond.($std ? "AND":"")." sdtHpId IS NOT NULL";         $query = $this->db->query($sql);         return $query;     }     public function queryStd($stdCode) {         
          $sql = "SELECT *                     FROM $this->rg_dbname.rg_Student                     where stdCode = '".$stdCode."'";         $query = $this->db->query($sql);         return $query;     }     function qryStdForRepRis($adY, $syId, $curId, $sstId) {         $cond = "WHERE ";         $cond.=($adY) ? "stdAdY=$adY AND " : "";         $cond.=($syId) ? "stdSyId=$syId AND " : "";         $cond.=($curId) ? "stdCurId=$curId AND " : "";         $cond.=($sstId) ? "stdSstId IN ($sstId) AND " : "";
          $con = substr($cond, 0, -4);
          $sql = "SELECT *, provinceName as prvNameSo                  FROM $this->rg_dbname.rg_Student                  INNER JOIN $this->rg_dbname.rg_StudentDetails ON stdId = sdtStdId                  LEFT JOIN $this->rg_dbname.rg_StudyYear ON stdSyId = syId                  LEFT JOIN $this->rg_dbname.rg_StudentStatus ON stdSstId = sstId                  LEFT JOIN $this->ppc_dbname.Prefix ON stdPfId = prefixId                  LEFT JOIN $this->rg_dbname.rg_ScholarOwner ON stdSoId = soId                  LEFT JOIN $this->ppc_dbname.Province ON soPrvId = provinceId                  LEFT JOIN $this->rg_dbname.rg_PreAdmit ON stdPaId = paId                  LEFT JOIN $this->rg_dbname.rg_EntryType ON stdEtId = etId                  LEFT JOIN $this->ppc_dbname.Nation ON sdtNtId = nationId                  LEFT JOIN $this->ppc_dbname.Religion ON sdtRlgId = religionId                  LEFT JOIN $this->rg_dbname.rg_EduDegree ON sdtEdgIdPre = edgId                  $con                 ORDER BY stdCode";         $query = $this->db->query($sql);         return $query;     }
      public function queryStdGraduateCer($typeSt,$curId = '',$adY = '',$stdCode=''){
          if($typeSt == "N"){             $condition = "WHERE std.stdCurId ={$curId} AND std.stdAdY ={$adY}";         }else{             $condition = "WHERE std.stdCode = {$stdCode}";         }
          /*echo$sql = "SELECT student . * , eduDegree.edgName                 FROM (                     SELECT std.stdCode, {$this->ppc_dbname}.Prefix.pfName ,std.stdName, std.stdSurname, std.stdCurId, std.stdGraduateY, std.stdGraduateDate                     FROM rg_Student std                     INNER JOIN  {$this->ppc_dbname}.Prefix  on  {$this->ppc_dbname}.Prefix.pfId =  std.stdPfId                     {$condition}                 ) student                 INNER JOIN rg_Curriculum as cur on  cur.curId =  student.stdCurId                 INNER JOIN rg_EduDegree as  eduDegree on eduDegree.edgId = cur.curEdgId ";*/         $sql = "SELECT                     student.*,                     eduDegree.edgName                  FROM                     (                     SELECT                         std.stdCode,                          {$this->ppc_dbname}.Prefix.prefixName,                          std.stdName,                          std.stdSurname,                          std.stdCurId,                          std.stdGraduateY,                          std.stdGraduateDate                                              FROM                         regist.rg_Student AS std                         INNER JOIN                         {$this->ppc_dbname}.Prefix                         ON                              std.stdPfId = peoplecenter.Prefix.prefixId                     {$condition}                     ) student                     INNER JOIN rg_Curriculum AS cur ON cur.curId = student.stdCurId                     INNER JOIN rg_EduDegree AS eduDegree ON eduDegree.edgId = cur.curEdgId";         //echo $sql; exit;         $query = $this->db->query($sql);         return $query;     }
      public function queryCollege(){
          $sql = "SELECT                          coll.clgName,                          (                             CASE coll.clgAddr                             WHEN coll.clgAddr =1                             THEN 'คณะพยาบาลศาสตร์'                             ELSE 'คณะสาธารณสุขศาสตร์และสหเวชศาสตร์'                             END                         ) AS FacName                 FROM `rg_Config` AS config                 INNER JOIN rg_College AS coll ON coll.clgCode = config.cfgClgCode";         $query = $this->db->query($sql);         return $query;     }
      public function CompsExamUpdate($stdId,$status){         $sql = 'SELECT *  FROM     rg_StudentMoe WHERE stdId = '.$stdId;         $query = $this->db->query($sql);         //echo $this->db->last_query();         //exit;         if($query->num_rows()){             $sql = 'UPDATE rg_StudentMoe SET CompsExam = "'.$status.'" WHERE stdId = '.$stdId;         }else{             $sql = 'INSERT INTO rg_StudentMoe(stdId,CompsExam) value('.$stdId.',"'.$status.'")';         }         $query = $this->db->query($sql);         return $query;     }
  } ?>
  |