BlogController.php 3.5 KB
<?php

namespace App\Http\Controllers\Bside\Blog;

use App\Enums\Common\Code;
use App\Http\Controllers\Bside\BaseController;
use App\Http\Requests\Bside\Blog\BlogRequest;
use App\Models\Blog\Blog as BlogModel;
use App\Models\Blog\BlogCategory as BlogCategoryModel;
use Illuminate\Http\Request;

class BlogController extends BaseController
{
    /**
     * @name :博客列表
     * @return json
     * @author :liyuhang
     * @method
     */
    public function lists(BlogModel $blogModel){
        //搜索条件
        $lists = $blogModel->lists($this->map,$this->page,$this->row);
        $this->response('success',Code::SUCCESS,$lists);
    }

    /**
     * @name :获取当前博客详情
     * @return void
     * @author :liyuhang
     * @method
     */
    public function info(Request $request,BlogModel $blogModel){
        $request->validate([
            'id'=>['required']
        ],[
            'id.required' => 'ID不能为空'
        ]);
        $info = $blogModel->read($this->param);
        if($info === false){
            $this->response('error',Code::USER_ERROR);
        }
        $this->response('success',Code::SUCCESS,$info);
    }
    /**
     * @name :添加博客
     * @return json
     * @author :liyuhang
     * @method
     */
    public function add(BlogRequest $request,BlogModel $blogModel){
        $request->validated();
        $this->param['create_id'] = $this->uid;
        $this->param['Operator_id'] = $this->uid;
        $this->param['project_id'] = $this->user['project_id'];
        //TODO::路由映射
        $rs = $blogModel->add($this->param);
        if($rs ===  false){
            $this->response('error',Code::USER_ERROR);
        }
        //TODO::写入日志
        $this->response('success');
    }

    /**
     * @name :编辑博客
     * @return void
     * @author :liyuhang
     * @method
     */
    public function edit(BlogRequest $request,BlogModel $blogModel){
        $request->validate([
            'id'=>['required']
        ],[
            'id.required' => 'ID不能为空'
        ]);
        $this->param['operator_id'] = $this->uid;
        $rs = $blogModel->edit($this->param,['id'=>$this->param['id']]);
        //TODO::路由映射
        if($rs ===  false){
            $this->response('error',Code::USER_ERROR);
        }
        //TODO::写入日志
        $this->response('success');
    }

    /**
     * @name :编辑博客状态/排序
     * @return void
     * @author :liyuhang
     * @method
     */
    public function status(Request $request,BlogModel $blogModel){
        $request->validate([
            'id'=>['required'],
        ],[
            'id.required' => 'ID不能为空',
        ]);
        $this->param['Operator_id'] = $this->uid;
        $rs = $blogModel->edit($this->param,['id'=>$this->param['id']]);
        if($rs ===  false){
            $this->response('error',Code::USER_ERROR);
        }
        //TODO::写入日志
        $this->response('success');
    }

    /**
     * @name :删除博客(批量逻辑删除)
     * @return void
     * @author :liyuhang
     * @method
     */
    public function del(Request $request,BlogModel $blogModel){
        $request->validate([
            'id'=>['required'],
        ],[
            'id.required' => 'ID不能为空',
        ]);
        $this->param['id'] = ['in',$this->param['id']];
        $rs = $blogModel->edit(['status'=>2],$this->param);
        if($rs === false){
            $this->response('error',Code::USER_ERROR);
        }
        $this->response('success');
    }
}