错误处理

This commit is contained in:
iVampireSP.com 2022-12-06 17:35:57 +08:00
parent 2336eb5754
commit 13730c5dea
No known key found for this signature in database
GPG Key ID: 2F7B001CA27A8132
2 changed files with 75 additions and 65 deletions

View File

@ -2,8 +2,10 @@
namespace App\Http\Controllers\Admin; namespace App\Http\Controllers\Admin;
use App\Exceptions\EmqxSupportException;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use App\Support\EmqxSupport; use App\Support\EmqxSupport;
use Illuminate\Http\Client\ConnectionException;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Pagination\Paginator; use Illuminate\Pagination\Paginator;
@ -15,11 +17,15 @@ public function index(Request $request)
{ {
$emqx = new EmqxSupport(); $emqx = new EmqxSupport();
$clients = $emqx->clients([ try {
'clientid' => $request->client_id, $clients = $emqx->clients([
'username' => $request->username, 'clientid' => $request->client_id,
'page' => $request->page, 'username' => $request->username,
]); 'page' => $request->page,
]);
} catch (EmqxSupportException|ConnectionException $e) {
return back()->with('error', $e->getMessage());
}
// dd($clients); // dd($clients);
return view('admin.device.index', compact('clients')); return view('admin.device.index', compact('clients'));

View File

@ -35,71 +35,75 @@
</thead> </thead>
<tbody> <tbody>
@foreach($clients['data'] as $c) @if(isset($clients))
<tr> @foreach($clients['data'] as $c)
<td> <tr>
{{ $c['clientid'] }} <td>
</td> {{ $c['clientid'] }}
<td> </td>
<a href="?username={{ $c['username'] }}">{{ $c['username'] }}</a> <td>
</td> <a href="?username={{ $c['username'] }}">{{ $c['username'] }}</a>
<td> </td>
{{ $c['node'] }} <td>
</td> {{ $c['node'] }}
<td> </td>
{{ $c['proto_name'] . ' v' . $c['proto_ver'] }} <td>
</td> {{ $c['proto_name'] . ' v' . $c['proto_ver'] }}
<td> </td>
{{ $c['ip_address'] }} <td>
</td> {{ $c['ip_address'] }}
<td> </td>
@if ($c['clean_start']) <td>
<span class="badge text-success">干净启动</span> @if ($c['clean_start'])
@endif <span class="badge text-success">干净启动</span>
@if ($c['recv_oct']) @endif
<br/> @if ($c['recv_oct'])
<span class="badge text-success">接收字节: {{ $c['recv_oct'] }}</span> <br/>
@endif <span class="badge text-success">接收字节: {{ $c['recv_oct'] }}</span>
@if ($c['send_oct']) @endif
<br/> @if ($c['send_oct'])
<span class="badge text-success">发送字节: {{ $c['send_oct'] }}</span> <br/>
@endif <span class="badge text-success">发送字节: {{ $c['send_oct'] }}</span>
</td> @endif
<td> </td>
@if ($c['subscriptions_cnt'] > 0) <td>
<span class="text-success">{{ $c['subscriptions_cnt'] }} </span> @if ($c['subscriptions_cnt'] > 0)
@else <span class="text-success">{{ $c['subscriptions_cnt'] }} </span>
<span class="text-danger">没有</span> @else
@endif <span class="text-danger">没有</span>
</td> @endif
<td> </td>
<form action="{{ route('admin.devices.destroy', $c['clientid']) }}" method="post"> <td>
@csrf <form action="{{ route('admin.devices.destroy', $c['clientid']) }}" method="post">
@method('DELETE') @csrf
<button type="submit" class="btn btn-danger btn-sm">踢出</button> @method('DELETE')
</form> <button type="submit" class="btn btn-danger btn-sm">踢出</button>
</td> </form>
</tr> </td>
@endforeach </tr>
@endforeach
@endif
</tbody> </tbody>
</table> </table>
<div class="d-none flex-sm-fill d-sm-flex align-items-sm-center justify-content-sm-end"> @if(isset($clients))
<div> <div class="d-none flex-sm-fill d-sm-flex align-items-sm-center justify-content-sm-end">
<ul class="pagination"> <div>
@if ($clients['meta']['page'] > 1) <ul class="pagination">
@if ($clients['meta']['page'] > 1)
<li class="page-item">
<a class="page-link" href="?page={{ $clients['meta']['page'] - 1 }}">上一页</a>
</li>
@endif
<li class="page-item"> <li class="page-item">
<a class="page-link" href="?page={{ $clients['meta']['page'] - 1 }}">上一页</a> <a class="page-link" href="?page={{ $clients['meta']['page'] + 1}}" rel="next"
aria-label="下一页 &raquo;">下一页</a>
</li> </li>
@endif </ul>
</div>
<li class="page-item">
<a class="page-link" href="?page={{ $clients['meta']['page'] + 1}}" rel="next"
aria-label="下一页 &raquo;">下一页</a>
</li>
</ul>
</div> </div>
</div> @endif
@endsection @endsection