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
?>
|