作者 zhl

Merge branch 'master' of 47.244.231.31:zhl/globalso-v6

@@ -5,10 +5,24 @@ namespace App\Http\Controllers\Bside; @@ -5,10 +5,24 @@ namespace App\Http\Controllers\Bside;
5 use App\Enums\Common\Code; 5 use App\Enums\Common\Code;
6 use App\Http\Controllers\Controller; 6 use App\Http\Controllers\Controller;
7 use App\Utils\EncryptUtils; 7 use App\Utils\EncryptUtils;
  8 +use \Illuminate\Http\Request;
8 use Illuminate\Http\JsonResponse; 9 use Illuminate\Http\JsonResponse;
9 10
10 class BaseController extends Controller 11 class BaseController extends Controller
11 { 12 {
  13 + protected $param = [];//所有请求参数
  14 + protected $token = ''; //token
  15 + protected $request = [];//助手函数
  16 + /**
  17 + * 获取所有参数
  18 + */
  19 + public function __construct(Request $request)
  20 + {
  21 + $this->request = $request;
  22 + $this->param = $request->post();
  23 + $this->token = $request->header('token');
  24 + }
  25 +
12 /** 26 /**
13 * 成功返回 27 * 成功返回
14 * @param array $data 28 * @param array $data
  1 +<?php
  2 +
  3 +namespace App\Http\Controllers\Bside;
  4 +
  5 +use App\Enums\Common\Code;
  6 +use App\Http\Logic\Bside\ComLogic;
  7 +use Illuminate\Support\Facades\Validator;
  8 +
  9 +/***
  10 + * 当前为公共类 所有方法均不需要验证登录token
  11 + */
  12 +class ComController extends BaseController
  13 +{
  14 + /**
  15 + * @name :管理员登录
  16 + * @return void
  17 + * @author :liyuhang
  18 + * @method
  19 + */
  20 + public function login(){
  21 + //当前为账号密码登录
  22 + if($this->param['login_method'] == 1){
  23 + $rules = [
  24 + 'account'=>'required|string|max:32',
  25 + 'password'=>'required|string|min:6',
  26 + ];
  27 + //验证的提示信息
  28 + $message = [
  29 + 'account.required'=>'标题必须填写',
  30 + 'account.string'=>'标题中含有非法文字',
  31 + 'password.required'=>'内容必须填写',
  32 + 'password.string'=>'内容中含有非法文字',
  33 + 'account.max' => 'account不大于32字符.',
  34 + 'password.min' => 'password不小于6字符.',
  35 + ];
  36 + }
  37 + $validate = Validator::make($this->param, $rules, $message);
  38 + if($validate->errors()->first()){
  39 + return $this->success($validate->errors(),Code::USER_PARAMS_ERROE);
  40 + }
  41 + //TODO::参数验证
  42 + $comLogic = new ComLogic();
  43 + $rs = $comLogic->login($this->param);
  44 + if($rs === false){
  45 + $this->success([],Code::USER_LOGIN_ERROE);
  46 + }
  47 + $this->success();
  48 + }
  49 +}
  1 +<?php
  2 +
  3 +namespace App\Http\Controllers\Bside;
  4 +
  5 +class ManagerController extends BaseController
  6 +{
  7 + /**
  8 + * @name :管理员列表
  9 + * @return void
  10 + * @author :liyuhang
  11 + * @method
  12 + */
  13 + public function lists(){
  14 +
  15 + }
  16 +
  17 + /**
  18 + * @name:新增
  19 + * @return void
  20 + * @author :liyuhang
  21 + * @method
  22 + */
  23 + public function add(){
  24 +
  25 + }
  26 +
  27 + /**
  28 + * @name :编辑管理员
  29 + * @return void
  30 + * @author :liyuhang
  31 + * @method
  32 + */
  33 + public function edit(){
  34 +
  35 + }
  36 +
  37 + public function del(){
  38 +
  39 + }
  40 +}
  1 +<?php
  2 +
  3 +namespace App\Http\Logic\Bside;
  4 +
  5 +use App\Models\Manager as ManagerModel;
  6 +use Illuminate\Support\Facades\Cache;
  7 +
  8 +class ComLogic extends BaseLogic
  9 +{
  10 + /***
  11 + * @name :登录
  12 + * @return void
  13 + * @author :liyuhang
  14 + * @method
  15 + */
  16 + public function login($param){
  17 + $managerModel = new ManagerModel();
  18 + $info = $managerModel->read($param,'id,account,mobile,name');
  19 + if(empty($info)){
  20 + return false;
  21 + }
  22 + //清楚上一次用户缓存
  23 + Cache::pull($info['token']);
  24 + //生成新token
  25 + $token = md5(uniqid().$info['id']);
  26 + //存储缓存
  27 + Cache::add($token,$info);
  28 + //更新数据库
  29 + $data = [
  30 + 'token'=>$token,
  31 + ];
  32 + $rs = $managerModel->edit($data,['id'=>$info['id']]);
  33 + if($rs === false){
  34 + return false;
  35 + }
  36 + return true;
  37 + }
  38 +}
@@ -7,6 +7,7 @@ use Illuminate\Http\Request; @@ -7,6 +7,7 @@ use Illuminate\Http\Request;
7 7
8 class ParamMiddleware 8 class ParamMiddleware
9 { 9 {
  10 + protected $param = [];
10 /** 11 /**
11 * Handle an incoming request. 12 * Handle an incoming request.
12 * 13 *
@@ -16,6 +17,7 @@ class ParamMiddleware @@ -16,6 +17,7 @@ class ParamMiddleware
16 */ 17 */
17 public function handle(Request $request, Closure $next) 18 public function handle(Request $request, Closure $next)
18 { 19 {
  20 + $this->param = $request->all();
19 return $next($request); 21 return $next($request);
20 } 22 }
21 } 23 }
  1 +<?php
  2 +
  3 +namespace App\Models;
  4 +
  5 +use Illuminate\Database\Eloquent\Model;
  6 +
  7 +class Base extends Model
  8 +{
  9 + public $allCount = 1;
  10 + /**
  11 + * @name 列表数据
  12 + * @return void
  13 + * @author :liyuhang
  14 + * @method
  15 + */
  16 + public function lists($map, $p, $row, $order = 'id desc', $fields = true){
  17 + //TODO::where(['id'=>'','name'=>''])
  18 + $lists = $this::select($fields)->forPage($p,$row)->where($map)->orderBy($order)->get()->toArray();
  19 + if (!empty($lists)) {
  20 + $this->allCount = $this->where($map)->count();
  21 + }
  22 + return $lists;
  23 + }
  24 +
  25 + /**
  26 + * @param array:$condition
  27 + * @name :获取单条数据详情
  28 + * @return mixed
  29 + * @author :liyuhang
  30 + * @method get
  31 + */
  32 + public function read($condition,$files)
  33 + {
  34 + $info = $this->select($files)->where($condition)->find();
  35 + if (!empty($info)) {
  36 + $info = $info->toArray();
  37 + }
  38 + return $info;
  39 + }
  40 +
  41 + /**
  42 + * @name :新增
  43 + * @return void
  44 + * @author :liyuhang
  45 + * @method post
  46 + */
  47 + public function add($data){
  48 + return $this->insert($data);
  49 + }
  50 +
  51 + /**
  52 + * @name :编辑
  53 + * @return void
  54 + * @author :liyuhang
  55 + * @method post
  56 + */
  57 + public function edit($data,$condition){
  58 + return $this->where($condition)->update($data);
  59 + }
  60 +
  61 + /**
  62 + * @name :删除数据
  63 + * @return bool|void|null
  64 + * @author :liyuhang
  65 + * @method post
  66 + */
  67 + public function delete($condition){
  68 + return $this->where($condition)->delete();
  69 + }
  70 +}
  1 +<?php
  2 +
  3 +namespace App\Models;
  4 +
  5 +class Manager extends Base
  6 +{
  7 + //设置关联表名
  8 + protected $table = 'manager';
  9 + //自动维护create_at创建时间 updated_at修改时间
  10 + public $timestamps = true;
  11 +}
@@ -54,7 +54,7 @@ return [ @@ -54,7 +54,7 @@ return [
54 'unix_socket' => env('DB_SOCKET', ''), 54 'unix_socket' => env('DB_SOCKET', ''),
55 'charset' => 'utf8mb4', 55 'charset' => 'utf8mb4',
56 'collation' => 'utf8mb4_unicode_ci', 56 'collation' => 'utf8mb4_unicode_ci',
57 - 'prefix' => '', 57 + 'prefix' => 'gl_',
58 'prefix_indexes' => true, 58 'prefix_indexes' => true,
59 'strict' => true, 59 'strict' => true,
60 'engine' => null, 60 'engine' => null,