Skip to content
  • P
    Projects
  • G
    Groups
  • S
    Snippets
  • Help

semour / semour_web

  • This project
    • Loading...
  • Sign in
Go to a project
  • Project
  • Repository
  • Issues 0
  • Merge Requests 0
  • Pipelines
  • Wiki
  • Snippets
  • Settings
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Files
  • Commits
  • Branches
  • Tags
  • Contributors
  • Graph
  • Compare
  • Charts
Find file
BlameHistoryPermalink
Switch branch/tag
  • semour_web
  • app
  • Http
  • Controllers
  • Api
  • Controller.php
  • SUDPTDUBLXEROFX\Administrator's avatar
    更新搜索跳转 · 5aa12f29
    SUDPTDUBLXEROFX\Administrator committed 2 years ago
    5aa12f29
Controller.php 2.26 KB
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
<?php

namespace App\Http\Controllers\Api;

use App\Http\ApiHelper\ApiCode;
use App\Http\Traits\Response;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use Illuminate\Foundation\Auth\AuthenticatesUsers;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Support\Facades\Log;

class Controller extends BaseController
{
    use AuthorizesRequests, DispatchesJobs, ValidatesRequests, Response, AuthenticatesUsers;

    public function setSuccessData($data = [], $count = 0, $code = ApiCode::API_CODE_SUCCESS, $msg = 'ok')
    {
        $res_data = [
            "code" => $code,
            "data" => $data,
        ];

        if ($msg) {
            $res_data['msg'] = $msg;
        }
        if ($count) {
            $res_data['count'] = $count;
        }
        return response()->json($res_data);
    }

    public function setSuccess($msg = '操作成功', $code = ApiCode::API_CODE_SUCCESS, $data = [])
    {
        $res_data = [
            "code" => $code,
            "msg" => $msg,
            'data' => (object)$data,
        ];
        return response()->json($res_data);
    }

    public function setError($msg, $code = ApiCode::API_CODE_ERROR, $data = [])
    {
        $res_data = [
            "code" => $code,
            "msg" => $msg,
        ];

        if ($data) {
            $res_data['data'] = $data;
        }
        $this->logErr($msg, $code = ApiCode::API_CODE_ERROR, $data = null);
        return response()->json($res_data);
    }

    private function logErr($msg, $code = ApiCode::API_CODE_ERROR, $data = null)
    {
        $request_uri = $_SERVER['REQUEST_URI'] ?? '';
        $path_info = parse_url($request_uri);
        $err_info = [
            'domain' => $_SERVER['HTTP_HOST'] ?? '',
            'interface' => isset($path_info) ? $path_info['path'] : '',
            'user_agent' => $_SERVER['HTTP_USER_AGENT'] ?? '',
            'ip' => request()->getClientIp(),
            'time' => time(),
            'other' => '',
            'request_params' => $_REQUEST,
            'msg' => $msg,
            "code" => $code,
            "data" => $data
        ];
        Log::error(json_encode($err_info, JSON_UNESCAPED_UNICODE));
    }

}