89 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			PHP
		
	
	
			
		
		
	
	
			89 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			PHP
		
	
	
<?php
 | 
						|
 | 
						|
 | 
						|
namespace app\api\logic;
 | 
						|
 | 
						|
 | 
						|
use app\common\basics\Logic;
 | 
						|
use app\common\model\content\Help;
 | 
						|
use app\common\model\content\HelpCategory;
 | 
						|
use app\common\server\JsonServer;
 | 
						|
use app\common\server\UrlServer;
 | 
						|
use think\facade\Db;
 | 
						|
 | 
						|
class HelpLogic extends Logic
 | 
						|
{
 | 
						|
    public static function category()
 | 
						|
    {
 | 
						|
        $where = [
 | 
						|
            'del' => 0,
 | 
						|
            'is_show' => 1
 | 
						|
        ];
 | 
						|
        $data = HelpCategory::field('id,name')->where($where)->select()->toArray();
 | 
						|
        return $data;
 | 
						|
    }
 | 
						|
 | 
						|
    public static function lists($get)
 | 
						|
    {
 | 
						|
        $where = [
 | 
						|
            ['del', '=', 0],
 | 
						|
            ['is_show', '=', 1],
 | 
						|
        ];
 | 
						|
        if(isset($get['cid']) && !empty($get['cid'])) {
 | 
						|
            $where[] = ['cid', '=', $get['cid']];
 | 
						|
        }
 | 
						|
 | 
						|
        $order = [
 | 
						|
            'sort' => 'asc',
 | 
						|
            'id' => 'desc'
 | 
						|
        ];
 | 
						|
 | 
						|
        $list =  Help::field(['id', 'title', 'image', 'visit', 'likes', 'content', 'create_time'])
 | 
						|
            ->where($where)
 | 
						|
            ->order($order)
 | 
						|
            ->page($get['page_no'], $get['page_size'])
 | 
						|
            ->select()
 | 
						|
            ->toArray();
 | 
						|
 | 
						|
        $count = Help::where($where)->count();
 | 
						|
 | 
						|
        $more = is_more($count, $get['page_no'], $get['page_size']);
 | 
						|
 | 
						|
        $data = [
 | 
						|
            'list'          => $list,
 | 
						|
            'page_no'       => $get['page_no'],
 | 
						|
            'page_size'     => $get['page_size'],
 | 
						|
            'count'         => $count,
 | 
						|
            'more'          => $more
 | 
						|
        ];
 | 
						|
        return $data;
 | 
						|
    }
 | 
						|
 | 
						|
    public static function detail($id)
 | 
						|
    {
 | 
						|
        $help =  Help::field('id,title,create_time,visit,content')->where('id', $id)->findOrEmpty();
 | 
						|
 | 
						|
        if($help->isEmpty()) {
 | 
						|
            $help = [];
 | 
						|
        }else{
 | 
						|
            $help->visit = $help->visit + 1;
 | 
						|
            $help->save();
 | 
						|
            $help = $help->toArray();
 | 
						|
        }
 | 
						|
 | 
						|
        $recommend_list = Db::name('help')
 | 
						|
            ->where([['del','=','0'], ['id','<>',$id]])
 | 
						|
            ->field('id,title,image,visit')
 | 
						|
            ->order('visit desc')
 | 
						|
            ->limit(5)
 | 
						|
            ->select()
 | 
						|
            ->toArray();
 | 
						|
 | 
						|
        foreach ($recommend_list as $key => $recommend){
 | 
						|
            $recommend_list[$key]['image'] = empty($recommend['image']) ? "" : UrlServer::getFileUrl($recommend['image']);
 | 
						|
        }
 | 
						|
 | 
						|
        $help['recommend_list'] = $recommend_list;
 | 
						|
        return $help;
 | 
						|
    }
 | 
						|
} |