Files
Pichome/core/class/table/table_app_relative.php
2022-05-02 22:31:35 +08:00

62 lines
2.0 KiB
PHP
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
/*
* @copyright QiaoQiaoShiDai Internet Technology(Shanghai)Co.,Ltd
* @license https://www.oaooa.com/licenses/
*
* @link https://www.oaooa.com
* @author zyx(zyx@oaooa.com)
*/
if(!defined('IN_OAOOA')) {
exit('Access Denied');
}
class table_app_relative extends dzz_table
{
public function __construct() {
$this->_table = 'app_relative';
$this->_pk = 'rid';
//$this->_pre_cache_key = 'app_relative_';
//$this->_cache_ttl = 0;
parent::__construct();
}
public function update_by_appid($appid,$tagids){
//先删除有关此appid的部分
self::delete_by_appid($appid);
foreach($tagids as $tagid){
DB::insert($this->_table,array('appid'=>intval($appid),'tagid'=>intval($tagid)));
}
}
public function delete_by_appid($appid){
$tagids=array();
foreach(DB::fetch_all("select tagid from %t where appid=%d",array($this->_table,$appid)) as $value){
$tagids[]=$value['tagid'];
}
C::t('app_tag')->delete_by_tagid($tagids);
DB::query("DELETE FROM %t WHERE appid= %d ",array($this->_table,$appid));
}
public function fetch_all_by_tagid($tagid,$count=false){
$tagid=intval($tagid);
if($count) return DB::result_first("select COUNT(*) from %t WHERE tagid= %d ",array($this->_table,$tagid));
else return DB::fetch_all("SELECT * FROM %t WHERE tagid = %d ",array($this->_table,$tagid));
}
public function fetch_all_by_appid($appid,$count=false){
$appid=intval($appid);
if($count) return DB::result_first("select COUNT(*) from %t r LEFT JOIN %t t ON r.tagid=t.tagid WHERE t.tagid>0 and r.appid = %d ",array($this->_table,'app_tag',$appid));
else return DB::fetch_all("SELECT t.* FROM %t r LEFT JOIN %t t ON r.tagid=t.tagid WHERE t.tagid>0 and r.appid = %d ",array($this->_table,'app_tag',$appid));
}
public function fetch_appids_by_tagid($tagid){
$appids=array();
foreach(DB::fetch_all("select appid from %t where tagid=%d",array($this->_table,$tagid)) as $value){
$appids[]=$value['appid'];
}
return $appids;
}
}
?>