You've already forked qlg.tsgz.moe
							
							
		
			
				
	
	
		
			65 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
| <?php
 | |
| namespace wstmart\common\model;
 | |
| use think\Db;
 | |
| /**
 | |
|  * ============================================================================
 | |
|  * 商品分类类
 | |
|  */
 | |
| class GoodsCats extends Base{
 | |
| 	/**
 | |
| 	 * 获取列表
 | |
| 	 */
 | |
| 	public function listQuery($parentId,$isFloor = -1,$field='*'){
 | |
| 		$dbo = $this->where(['dataFlag'=>1,'isShow'=>1,'parentId'=>$parentId]);
 | |
| 		if($isFloor!=-1)$dbo->where('isFloor',$isFloor);
 | |
| 		return $dbo->field($field)->order('catSort asc')->select();
 | |
| 	}
 | |
| 
 | |
| 	/**
 | |
| 	 * 根据子分类获取其父级分类
 | |
| 	 */
 | |
| 	public function getParentIs($id,$data = array()){
 | |
| 		$data[] = $id;
 | |
| 		$parentId = $this->where('catId',$id)->value('parentId');
 | |
| 		if($parentId==0){
 | |
| 			krsort($data);
 | |
| 			return $data;
 | |
| 		}else{
 | |
| 			return $this->getParentIs($parentId, $data);
 | |
| 		}
 | |
| 	}
 | |
| 	public function getParentNames($id){
 | |
| 		if($id<=0)return [];
 | |
| 	    $ids = $this->getParentIs($id);
 | |
|         $rs = Db::name('goodsCats')->where('catId','in',$ids)->field('catName')->order('catId desc')->select();
 | |
|         $names = [];
 | |
|         foreach($rs as $v){
 | |
|             $names[] = $v['catName'];
 | |
|         }
 | |
|         return $names;
 | |
| 	}
 | |
|    /**
 | |
|      * 获取首页楼层
 | |
|      */
 | |
|     public function getFloors(){
 | |
| 	    $cats1 = Db::name('goods_cats')->where(['dataFlag'=>1, 'isShow' => 1,'parentId'=>0,'isFloor'=>1])
 | |
| 		             ->field("catName,catId,subTitle")->order('catSort asc')->limit(10)->select();
 | |
| 		if(!empty($cats1)){
 | |
| 			$ids = [];
 | |
| 			foreach ($cats1 as $key =>$v){
 | |
| 				$ids[] = $v['catId'];
 | |
| 			}
 | |
| 			$cats2 = [];
 | |
| 			$rs = Db::name('goods_cats')->where(['dataFlag'=>1, 'isShow' => 1,'parentId'=>['in',$ids],'isFloor'=>1])
 | |
| 				             ->field("parentId,catName,catId,subTitle")->order('catSort asc')->select();
 | |
| 			foreach ($rs as $key => $v){
 | |
| 				$cats2[$v['parentId']][] = $v;
 | |
| 			}
 | |
| 			foreach ($cats1 as $key =>$v){
 | |
| 				$cats1[$key]['children'] = (isset($cats2[$v['catId']]))?$cats2[$v['catId']]:[];
 | |
| 			}
 | |
| 		}
 | |
| 		return $cats1;
 | |
|     }
 | |
| }
 |