ManageController.php 2.7 KB
<?php

namespace App\Http\Controllers\Aside\Manage;

use App\Enums\Common\Code;
use App\Http\Controllers\Aside\BaseController;
use App\Http\Logic\Aside\Manage\ManageLogic;
use App\Http\Requests\Aside\Manage\ManageRequest;
use App\Models\Manage\Manage;
use App\Models\Manage\MenuSpecial;
use App\Models\User\ProjectRole;
use App\Rules\Ids;
use Illuminate\Http\Request;

/**
 * 后台用户
 * Class ManageController
 * @package App\Http\Controllers\Aside
 * @author zbj
 * @date 2023/4/20
 */
class ManageController extends BaseController
{

    /**
     * @remark :列表
     * @name   :list
     * @author :lyh
     * @method :post
     * @time   :2023/8/28 10:04
     */
    public function list()
    {
        $managerModel = new Manage();
        $list = $managerModel->lists($this->map,$this->page,$this->row,$this->order);
        $this->response('success',Code::SUCCESS,$list);
    }

    /**
     * @remark :详情
     * @name   :info
     * @author :lyh
     * @method :post
     * @time   :2023/8/28 10:04
     */
    public function info(ManageLogic $logic){
        $this->request->validate([
            'id'=>'required'
        ],[
            'id.required' => 'ID不能为空'
        ]);
        $data = $logic->getManagerInfo();
        //获取当前用户特殊模块权限
        $specialMenuModel = new MenuSpecial();
        $data['special'] = $specialMenuModel->list(['user_list'=>['like','%,'.$this->param['id'].',%']],'id',['id','name','remark']);
        $this->response('success',Code::SUCCESS,$data);
    }

    /**
     * @remark :保存
     * @name   :save
     * @author :lyh
     * @method :post
     * @time   :2023/8/28 10:04
     */
    public function save(ManageRequest $request, ManageLogic $logic){
        $request->validated();
        $logic->managerSave();
        $this->response('success');
    }

    /**
     * @remark :删除
     * @name   :delete
     * @author :lyh
     * @method :post
     * @time   :2023/8/28 16:11
     */
    public function delete(ManageLogic $logic){
        $this->request->validate([
            'ids'=>['required', new Ids()]
        ],[
            'ids.required' => 'ID不能为空'
        ]);
        $logic->managerDelete();
        $this->response('删除成功');
    }

    /**
     * @remark :排序
     * @name   :setSort
     * @author :lyh
     * @method :post
     * @time   :2023/8/10 16:40
     */
    public function setSort(ManageLogic $logic){
        $this->request->validate([
            'id'=>'required',
            'sort'=>'required',
        ],[
            'id.required' => 'ID不能为空',
            'sort.required' => 'sort不能为空',
        ]);
        $logic->setParamStatus();
        $this->response('success');
    }


}