Viewing file:      sa_attribute_model.php (3.16 KB)      -rwxr-xr-x Select action/file-type:    (+) |   (+) |   (+) | Code (+) | Session (+) |   (+) | SDB (+) |   (+) |   (+) |   (+) |   (+) |   (+) |
 
<?php
 
 include_once("da_sa_attribute.php");
 
 class Sa_attribute_model extends Da_sa_attribute {
 
     /*
      * 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 sa_attribute 
                 $orderBy";
         $query = $this->db->query($sql);
         return $query;
     }
     
     function qu_all() {
         $sql = "select p.atb_id as p_atb_id, p.atb_name as p_atb_name,p.atb_parentId as p_atb_parentId,c.*
         from
         (
         SELECT * FROM $this->sa_dbname.sa_attribute where atb_parentId=0
         )p left join
         (
         SELECT * FROM $this->sa_dbname.sa_attribute where atb_parentId!=0
         )c on p.atb_id = c.atb_parentId
         order by p_atb_id, atb_id";
         $query = $this->db->query($sql,array());
         return $query;
     }
 
     function qu_mpj($mpj) {
         $sql = "select p.atb_id as p_atb_id, p.atb_name as p_atb_name,p.atb_parentId as p_atb_parentId,c.* ,sa_task_project.*
         from
         (
         SELECT * FROM $this->sa_dbname.sa_attribute where atb_parentId=0
         )p left join
         (
         SELECT * FROM $this->sa_dbname.sa_attribute where atb_parentId!=0
         )c on p.atb_id = c.atb_parentId
         LEFT JOIN sa_task_project ON tp_atb_id = c.atb_id AND tp_mpj_id = ?
         order by p_atb_id, atb_id";
         $query = $this->db->query($sql,array($mpj));
         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->atb_id] = $row->atb_name;
         }
         return $opt;
     }
     
     // add your functions here
 
     function delete_parent() {
         $sql = "DELETE FROM  $this->sa_dbname.sa_attribute
                 WHERE atb_parentId=?";
         $query = $this->db->query($sql, array($this->atb_id));
     }
 
     function qry_attr() {
         $con = '';
         $con.=($this->atb_id)?" AND atb_id <> $this->atb_id ":'';
         $con.=($this->atb_name)?" AND atb_name LIKE '".$this->atb_name."'":'';
         $con.=($this->atb_parentId)?" AND atb_parentId = $this->atb_parentId ":'';
 
         $sql = "SELECT * FROM  $this->sa_dbname.sa_attribute
                 WHERE 1=1 $con ";
         $query = $this->db->query($sql);
         return $query;
     }
 
     function qu_joinparent() {
         $sql = "
                 SELECT c.*, p.atb_name as p_name FROM sa_attribute as c 
                 LEFT JOIN sa_attribute as p ON p.atb_id = c.atb_parentId
                 WHERE c.atb_id = ?";
         $query = $this->db->query($sql,array($this->atb_id));
         return $query;
     }
 
 } // end class Sa_attribute_model
 ?>
  |