UserController.php 2.8 KB
<?php

namespace App\Http\Controllers\Bside\User;

use App\Enums\Common\Code;
use App\Http\Controllers\Bside\BaseController;
use App\Http\Controllers\Bside\json;
use App\Http\Logic\Bside\User\UserLogic;
use App\Http\Requests\Bside\User\UserRequest;
use App\Models\User\User as UserModel;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Cache;

class UserController extends BaseController
{
    /**
     * @name :name
     * @return void
     * @author :liyuhang
     * @method
     */
    public function lists(Request $request,UserModel $userModel){
        //TODO::搜索参数统一处理
        $this->map['project_id'] = $this->user['project_id'];
        $lists = $userModel->lists($this->map,$this->page,$this->row,$this->order,['id','name','mobile','created_at']);
        if(empty($lists)){
            $this->response('error',Code::USER_ERROR,[]);
        }
        //TODO::写入缓存
        Cache::add('cache_'.$request->route()->getName(),$lists);
        $this->response('success',Code::SUCCESS,$lists);
    }

    /**
     * @name :添加管理员
     * @return void
     * @author :liyuhang
     * @method
     */
    public function add(UserRequest $request,UserLogic $userLogic){
        $request->validated();
        $userLogic->user_add();
        $this->response('success');
    }

    /**
     * @name : 编辑管理员
     * @return void
     * @author :liyuhang
     * @method
     */
    public function edit(UserRequest $request,UserLogic $userLogic){
        $request->validate([
            'id'=>['required']
        ],[
            'id.required' => 'ID不能为空'
        ]);
        $userLogic->user_edit();
        $this->response('success');
    }

    /**
     * @name :修改当前用户状态
     * @return void
     * @author :liyuhang
     * @method
     */
    public function status(Request $request,UserLogic $userLogic){
        $request->validate([
            'id'=>['required'],
        ],[
            'id.required' => 'ID不能为空',
        ]);
        $userLogic->user_status();
        $this->response($this->param['status'] == 0 ? '启用成功' : '禁用成功');
    }

    /**
     * @name :详情
     * @return json
     * @author :liyuhang
     * @method
     */
    public function info(Request $request,UserLogic $userLogic){
        $request->validate([
            'id'=>['required'],
        ],[
            'id.required' => 'ID不能为空',
        ]);
        $userLogic->user_info();
        $this->response('success');
    }
    /**
     * @name :删除管理员
     * @return json
     * @author :liyuhang
     * @method
     */
    public function del(Request $request,UserLogic $userLogic){
        $request->validate([
            'id'=>['required'],
        ],[
            'id.required' => 'ID不能为空',
        ]);
        $userLogic->user_del();
        $this->response('success');
    }
}