|
|
@@ -0,0 +1,165 @@
|
|
|
+<?php
|
|
|
+// +----------------------------------------------------------------------
|
|
|
+// | LARAVEL8.0 框架 [ LARAVEL ][ RXThinkCMF ]
|
|
|
+// +----------------------------------------------------------------------
|
|
|
+// | 版权所有 2017~2021 LARAVEL研发中心
|
|
|
+// +----------------------------------------------------------------------
|
|
|
+// | 官方网站: http://www.laravel.cn
|
|
|
+// +----------------------------------------------------------------------
|
|
|
+// | Author: laravel开发员 <laravel.qq.com>
|
|
|
+// +----------------------------------------------------------------------
|
|
|
+
|
|
|
+namespace App\Http\Controllers\Admin;
|
|
|
+
|
|
|
+use App\Helpers\Jwt;
|
|
|
+use App\Http\Controllers\BaseController;
|
|
|
+use App\Models\UserModel;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 后台控制器基类
|
|
|
+ * @author laravel开发员
|
|
|
+ * @since 2020/11/10
|
|
|
+ * Class Backend
|
|
|
+ * @package App\Http\Controllers
|
|
|
+ */
|
|
|
+class Backend extends BaseController
|
|
|
+{
|
|
|
+ // 模型
|
|
|
+ protected $model;
|
|
|
+ // 服务
|
|
|
+ protected $service;
|
|
|
+ // 校验
|
|
|
+ protected $validate;
|
|
|
+ // 登录ID
|
|
|
+ protected $userId;
|
|
|
+ // 登录信息
|
|
|
+ protected $userInfo;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 构造函数
|
|
|
+ * @author laravel开发员
|
|
|
+ * @since 2020/11/10
|
|
|
+ * Backend constructor.
|
|
|
+ */
|
|
|
+ public function __construct()
|
|
|
+ {
|
|
|
+ parent::__construct();
|
|
|
+ // 初始化配置
|
|
|
+ $this->initConfig();
|
|
|
+
|
|
|
+ // 登录检测中间件
|
|
|
+ $this->middleware('user.login');
|
|
|
+
|
|
|
+ // 初始化登录信息
|
|
|
+ $this->middleware(function ($request, $next) {
|
|
|
+ // 请求头信息
|
|
|
+ $token = $request->headers->get('Authorization');
|
|
|
+ $token = str_replace("Bearer ", null, $token);
|
|
|
+ // JWT解密token
|
|
|
+ $jwt = new Jwt();
|
|
|
+ $userId = $jwt->verifyToken($token);
|
|
|
+
|
|
|
+ // 登录验证
|
|
|
+ $this->initLogin($userId);
|
|
|
+
|
|
|
+ return $next($request);
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 初始化配置
|
|
|
+ * @author laravel开发员
|
|
|
+ * @since 2020/11/10
|
|
|
+ */
|
|
|
+ public function initConfig()
|
|
|
+ {
|
|
|
+ // 请求参数
|
|
|
+ $this->param = \request()->input();
|
|
|
+
|
|
|
+ // 分页基础默认值
|
|
|
+ defined('PERPAGE') or define('PERPAGE', isset($this->param['limit']) ? $this->param['limit'] : 20);
|
|
|
+ defined('PAGE') or define('PAGE', isset($this->param['page']) ? $this->param['page'] : 1);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 登录验证
|
|
|
+ * @param $userId 用户ID
|
|
|
+ * @return
|
|
|
+ * @author laravel开发员
|
|
|
+ * @since 2020/8/31
|
|
|
+ */
|
|
|
+ public function initLogin($userId)
|
|
|
+ {
|
|
|
+ // 登录用户ID
|
|
|
+ $this->userId = $userId;
|
|
|
+
|
|
|
+ // 登录用户信息
|
|
|
+ if ($userId) {
|
|
|
+ $adminModel = new UserModel();
|
|
|
+ $userInfo = $adminModel->getInfo($this->userId);
|
|
|
+ $this->userInfo = $userInfo;
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取数据列表
|
|
|
+ * @return mixed
|
|
|
+ * @since 2020/11/11
|
|
|
+ * @author laravel开发员
|
|
|
+ */
|
|
|
+ public function index()
|
|
|
+ {
|
|
|
+ $result = $this->service->getList();
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取数据详情
|
|
|
+ * @return mixed
|
|
|
+ * @since 2020/11/11
|
|
|
+ * @author laravel开发员
|
|
|
+ */
|
|
|
+ public function info()
|
|
|
+ {
|
|
|
+ $result = $this->service->info();
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 添加或编辑
|
|
|
+ * @return mixed
|
|
|
+ * @since 2020/11/11
|
|
|
+ * @author laravel开发员
|
|
|
+ */
|
|
|
+ public function edit()
|
|
|
+ {
|
|
|
+ $result = $this->service->edit();
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 删除数据
|
|
|
+ * @return mixed
|
|
|
+ * @since 2020/11/11
|
|
|
+ * @author laravel开发员
|
|
|
+ */
|
|
|
+ public function delete()
|
|
|
+ {
|
|
|
+ $result = $this->service->delete();
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 设置状态
|
|
|
+ * @return mixed
|
|
|
+ * @since 2020/11/21
|
|
|
+ * @author laravel开发员
|
|
|
+ */
|
|
|
+ public function status()
|
|
|
+ {
|
|
|
+ $result = $this->service->status();
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
+
|
|
|
+}
|