Viewing file:      mo_person.php (4.04 KB)      -rwxr-xr-x Select action/file-type:    (+) |   (+) |   (+) | Code (+) | Session (+) |   (+) | SDB (+) |   (+) |   (+) |   (+) |   (+) |   (+) |
 
<?php
 
 include_once("da_person.php");
 
 class Mo_person extends Da_person {
 
     /*
      * aOrderBy = array('fieldname' => 'ASC|DESC', ... )
      */
     function get_all($aOrderBy=""){
         $orderBy = "";
         if ( is_array($aOrderBy) ) {
             $orderBy.= "ORDER BY "; 
             foreach ($aOrderBy as $key => $value) {
                 $orderBy.= "$key $value, ";
             }
             $orderBy = substr($orderBy, 0, strlen($orderBy)-2);
         }
         $sql = "SELECT * 
                 FROM $this->ppc_dbname.Person 
                 $orderBy";
         $query = $this->db->query($sql);
         return $query;
     }
     
     //Pao
     public function qryPs($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->ppc_dbname.Person
                     $c1
                     $c3
                     $c2";
         $query = $this->db->query($sql);
         return $query;
     }
     
     //Pao
     public function qryPsJoinPt($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->ppc_dbname.Person AS ps
                     INNER JOIN PersonT AS pt ON ps.personId = pt.personId
                     $c1
                     $c3
                     $c2";
         $query = $this->db->query($sql);
         return $query;
     }
 
     //Pao
     public function qryPsJoinPtJoinPf($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->ppc_dbname.Person AS ps
                     INNER JOIN $this->ppc_dbname.PersonT AS pt ON ps.personId = pt.personId
                     INNER JOIN $this->ppc_dbname.Prefix AS pf ON ps.prefixId = pf.prefixId
                     $c1
                     AND ps.personId NOT IN (
                         SELECT prsUsId FROM $this->rg_dbname.rg_Person
                     )
                     $c3
                     $c2";
         $query = $this->db->query($sql);
         return $query;
     }
 
     // use
     public function qrySearchPrs($name, $surname) {
         //$db_ppc = $this->load->database('ppc',TRUE);
 
         $sql = "SELECT *
                 FROM $this->rg_dbname.rg_Person
                 INNER JOIN $this->ppc_dbname.Person AS pp ON prsUsId=pp.personId
                 LEFT JOIN $this->ppc_dbname.Prefix AS pf ON pp.prefixId=pf.prefixId
                 WHERE pp.fName LIKE ?
                 AND pp.lName LIKE ?
                 ORDER BY personCode,
                 CONVERT (fName USING tis620),
                 CONVERT (lName USING tis620)";
         $query = $this->db->query($sql,array("%".$name."%", "%".$surname."%"));
         return $query;
     }
 
     /*
      * create array of pk field and value for generate select list in view, must edit PK_FIELD and FIELD_NAME manually
      * the first line of select list is '-----เลือก-----' by default.
      * if you do not need the first list of select list is '-----เลือก-----', please pass $optional parameter to other values. 
      * you can delete this function if it not necessary.
      */
     function get_options($optional='y') {
         $qry = $this->get_all();
         if ($optional=='y') $opt[''] = '-----เลือก-----';
         foreach ($qry->result() as $row) {
             $opt[$row->PK_FIELD] = $row->FIELD_NAME;
         }
         return $opt;
     }
     
     // add your functions here
 
     function insert2() {
         $sql = "INSERT INTO $this->ppc_dbname.Person (prefixId, fName, lName, assignId, personCode, fStatus)
                 VALUES(?, ?, ?, ?, ?, ?)";
         $this->db->query($sql, array($this->prefixId, $this->fName, $this->lName, $this->assignId, $this->personCode, $this->fStatus));
         $this->last_insert_id = $this->db->insert_id();
     }
 
     function update2() {
         $sql = "UPDATE $this->ppc_dbname.Person 
                 SET    prefixId=?, fName=?, lName=?, assignId=?, personCode=?, fStatus=? 
                 WHERE personId=?";
         $this->db->query($sql, array($this->prefixId, $this->fName, $this->lName, $this->assignId, $this->personCode, $this->fStatus, $this->personId));
     }
 
 } // end class M_person
 ?>
  |