Completed
Push — master ( 3306be...253090 )
by wen
01:53
created

BaseController   A

Complexity

Total Complexity 7

Size/Duplication

Total Lines 46
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
wmc 7
lcom 0
cbo 0
dl 0
loc 46
ccs 0
cts 17
cp 0
rs 10
c 0
b 0
f 0

3 Methods

Rating   Name   Duplication   Size   Complexity  
A index() 0 4 1
A render() 0 4 1
B buildFailedValidationResponse() 0 9 5
1
<?php
2
3
4
namespace Sco\Admin\Http\Controllers;
5
6
use Auth, Route, Breadcrumbs, Event;
7
use Illuminate\Auth\Events\Authenticated;
8
use Illuminate\Auth\Events\Login;
9
use Illuminate\Routing\Controller;
10
use Illuminate\Foundation\Validation\ValidatesRequests;
11
use Illuminate\Http\Request;
12
use Illuminate\Http\JsonResponse;
13
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
14
15
/**
16
 * 后台基础控制器
17
 * 所有后台控制器都应继承该类
18
 *
19
 */
20
class BaseController extends Controller
21
{
22
23
    /**
24
     * 后台入口页(控制台)
25
     *
26
     * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
27
     */
28
    public function index()
29
    {
30
        return $this->render('index');
31
    }
32
33
    /**
34
     * 后台视图输出
35
     *
36
     * @param string $view
37
     * @param array  $params
38
     *
39
     * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
40
     */
41
    protected function render($view, $params = [])
42
    {
43
        return view('admin::' . $view, $params);
44
    }
45
46
47
    /**
48
     * 重构验证响应方法(主要针对ajax|json)
49
     *
50
     * @param \Illuminate\Http\Request $request
51
     * @param array                    $errors
52
     *
53
     * @return \Illuminate\Http\JsonResponse
54
     */
55
    protected function buildFailedValidationResponse(Request $request, array $errors)
56
    {
57
        if (($request->ajax() && !$request->pjax()) || $request->wantsJson()) {
58
            $error = array_shift($errors);
59
            $error = is_array($error) ? current($error) : $error;
60
            return new JsonResponse(error($error));
61
        }
62
        return parent::buildFailedValidationResponse($request, $errors);
63
    }
64
65
}