您好,登錄后才能下訂單哦!
//計劃任務批量刷新房源 public function allRefresh(){ $houseDb=D("House"); $data=$houseDb->get_list(); //dump($data); } 下面的為model里的數據處理,上面的為控制器部分 //查詢所有數據 public function getAll($where,$page = 1,$page_num = 10){ $houseDb=D("House"); $data=$this->where($where)->limit(($page - 1) * $page_num,$page_num)->select(); return $data; } //查詢所有數據總數 public function get_list(){ $where['isDel'] = '0'; $where['status'] = '2'; $where['auditstatus'] = '1';//已審核 $where['salestatus'] = '0';//在售 $houseDb=D("House"); $totalCount=$houseDb->where($where)->count(); $totalpage=ceil($totalCount/10); for ($nowPage=1;$nowPage<=$totalpage;$nowPage++){ $list=$houseDb->getAll($where,$nowPage,10); // print_r($houseDb->getLastSql()) ; $this->refreshData($list); } } //批量刷新房源的停留時間和計算 public function refreshData($list){ // echo '111'; foreach($list as $key=>$value){ //計算出來停留時間 $data=array(); $where['esfId']=$value['esfId']; $data['stayTime']=($value['publishScore']*$value['houseRatio'])/100*3600+$value['verifyTime']; $houseRatio= $this->where($where)->save($data);//更新房源系數 //首頁排序數量 $data=array(); $where=array(); //計算上周經濟人日均發房源數量 $map['esfId']=$value['esfId']; $start= mktime(0,0,0,date('m'),date('d')-date('w')+1-7,date('Y')); //上周起時間 $end= mktime(23,59,59,date('m'),date('d')-date('w')+7-7,date('Y')); //上周結束時間 $map['verifyTime']=array(between,array($start,$end)); $count= $this->where($map)->count();//得到上周總發房源總數 $where=array(); $data=array(); $where['esfId']=$value['esfId']; if($count){ $indexNum=$count/6; //日均發房源數量 } $data['indexNum']=intval($indexNum); //日均數量 $stayTime=$this->where($where)->save($data);//更新房源停留時間 //echo $this->getLastSql();die; } }
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。