$table
$table :
栏目管理model
<?php
/**
* 栏目管理model
* @author lxn
*/
class Linkadmin_model extends CI_Model
{
private $table = 'linkadmin';
public function __construct()
{
parent::__construct();
}
/**
* 网站链接列表
* @param $parentId 父级ID,0是顶级目录
* @param $ischild 是否拿取子级
* */
public function linkadminList($parentId=0,$deleteFlag=false,$ischild=false)
{
$where = $this->_getWhere($parentId,$deleteFlag);
$this->db->order_by('displayOrder','asc');
$query = $this->db->get_where($this->table, $where);
$result = $query->result_array();
if($ischild)
{
foreach ($result as $k=>$v)
{
$result[$k]['child'] = array();
if($v['ifChild'] == 1)
{
$result[$k]['child'] = $this->linkadminList($v['linkId'],$deleteFlag,$ischild);
}
}
}
return $result;
}
/**
* where语句
* @param $keyWord 链接类型,0是官网链接,1是后台链接
* @param $showFlag 幼儿园是否可分配,0是可以,1是不可以
* @param $parentId 父级ID,0是顶级目录
* @return array
* */
private function _getWhere($parentId=0,$deleteFlag=false)
{
$where = array();
$parentId = intval($parentId);
$where['parentId'] = intval($parentId);
if($deleteFlag !== false)
{
$where['deleteFlag'] = intval($deleteFlag);
}
return $where;
}
/**
* 查询单条数据
*/
public function getLinkAdminRow($linkId = 0)
{
$this->db->where('linkId', $linkId);
return $this->db->get($this->table)->row_array();
}
/**
*
* */
public function getAlladminlink( $linkName='' )
{
if(!empty($linkName))
{
$this->db->like('linkName' ,$linkName);
}
$where = array('deleteFlag'=>0);
$query = $this->db->get_where($this->table, $where);
$result = $query->result_array();
return $result;
}
/**
* 根据关键字查询单条数据
*/
public function getLinkAdminKeyWordRow($keyWord = 0)
{
$this->db->select('linkId');
$this->db->where('keyWord', $keyWord);
return $this->db->get($this->table)->row_array();
}
/**
* 获取网站链接
* @param $linkId
* @param $parentId 父id
* @return array
* */
public function getLinkadmin($linkId=0,$parentId=false)
{
$where = array();
$linkId = intval($linkId);
if(!empty($linkId))
{
$where['linkId'] = $linkId;
}
if($parentId !== false)
{
$where['parentId'] = intval($parentId);
}
$where['deleteFlag'] = 0;
$this->db->order_by('displayOrder','desc');
$query = $this->db->get_where($this->table, $where);
return $query->result_array();
}
/**
* 检查栏目名称 或关键字是否存在
* */
public function checkUnique($name,$type=1,$linkId=0)
{
$this->db->from($this->table);
if($type == 1)
{
$this->db->where('linkName', $name);
}
else
{
$this->db->where('keyWord', $name);
}
if(!empty($linkId))
{
$this->db->where('linkId !=', $linkId);
}
//echo $this->db->last_query();
$result = $this->db->get();
return $result->row_array();
}
/**
* 添加网站模块
* @param $data array(
* 'linkName' => 链接名称,
* 'linkUrl' => 链接地址,
* 'keyWord' => 链接类型,0是官网链接,1是后台链接,
* 'showFlag'=> 幼儿园是否可分配,0是可以,1是不可以,
* 'parentId'=>父级ID,0是顶级目录,
* 'displayOrder'=>排序
* )
* @return bool
* */
public function addLinkadmin($data)
{
$param = array();
$param['linkName'] = $data['linkName'];
$param['linkUrl'] = $data['linkUrl'];
$param['keyWord'] = $data['keyWord'];
$param['parentId'] = intval($data['parentId']);
$param['displayOrder'] = intval($data['displayOrder']);
$param['deleteFlag'] = 0;
$bool = $this->db->insert($this->table, $param);
$res = $bool ? $this->db->insert_id() : false;
if($bool && !empty($param['parentId']))
{
$this->db->where('linkId', $param['parentId']);
$this->db->update($this->table, array('ifChild'=>1));
}
return $res;
}
/**
* 修改网站模块
* @param $linkId int 网站链接id
* @param $data array(
* 'linkName' => 链接名称,
* 'linkUrl' => 链接地址,
* 'keyWord' => 链接类型,0是官网链接,1是后台链接,
* 'showFlag'=> 幼儿园是否可分配,0是可以,1是不可以,
* 'parentId'=>父级ID,0是顶级目录,
* 'displayOrder'=>排序
* )
* @return bool
* */
public function updateLinkadmin($linkId,$data)
{
$param = array();
if(isset($data['linkName']))
{
$param['linkName'] = $data['linkName'];
}
if(isset($data['linkUrl']))
{
$param['linkUrl'] = $data['linkUrl'];
}
if(isset($data['parentId']))
{
$param['parentId'] = intval($data['parentId']);
}
if(isset($data['fa']))
{
$param['fa'] = intval($data['fa']);
}
if(isset($data['displayOrder']))
{
$param['displayOrder'] = intval($data['displayOrder']);
}
$linkId = intval($linkId);
$this->db->where('linkId', $linkId);
$query = $this->db->update($this->table, $param);
if($query && !empty($param['parentId']))
{
$this->db->where('linkId', $param['parentId']);
$this->db->update($this->table, array('ifChild'=>1));
}
return $query ? $linkId : false;
}
/**
* 删除网站链接
* @param $linkId int 网站链接id
* @return bool
* */
public function delete($linkId)
{
$linkId = intval($linkId);
$this->db->where('linkId', $linkId);
$query = $this->db->delete($this->table);
return $query;
}
/**
* 根据角色查询出来栏目名称
* */
public function getRoleLinkAdminList( $linkIds=array() )
{
$this->db->select('linkName');
$this->db->where_in('linkId',$linkIds);
$query = $this->db->get($this->table);
return $query->result_array();
}
/**
* 处理字段数组
* @param $linkadmin array
* @param $default array
* */
public function deallink($linkadmin,$default)
{
if(!empty($linkadmin))
{
foreach ($linkadmin as $k=>$v)
{
if(!in_array($v['linkId'], $default))
{
unset($linkadmin[$k]);
}
else
{
if($v['child'])
{
foreach ($v['child'] as $k1=>$v1)
{
if(!in_array($v1['linkId'], $default))
{
unset($linkadmin[$k]['child'][$k1]);
}
}
}
}
}
}
return $linkadmin;
}
}
/* End of file Linkadmin_model.php */