krgm.so-manager-dev.com/resources/views/home.blade.php
你的名字 c214bf4a5c
All checks were successful
Deploy main / deploy (push) Successful in 24s
【編集ボタン】をdefault統一 & 【グローバルメニュー】画面修正
2025-09-04 17:37:03 +09:00

118 lines
6.2 KiB
PHP

@extends('layouts.app')
@section('title', 'インフォメーション')
@section('content')
@php
use App\Models\OperatorLog;
use App\Models\Ope;
$logs = OperatorLog::orderByDesc('created_at')->limit(20)->get();
$operatorNames = [];
$queLabels = [];
$queIcons = [];
$queClassNums = [];
foreach ($logs as $log) {
// オペレータ名取得
$operatorNames[$log->operator_id] = $operatorNames[$log->operator_id] ?? (\App\Models\Ope::find($log->operator_id)->ope_name ?? $log->operator_id);
// operator_queからque_class, que_status取得
$que = null;
if (!empty($log->user_id) && !empty($log->contract_id)) {
$que = \App\Models\OperatorQue::where('user_id', $log->user_id)->where('contract_id', $log->contract_id)->first();
}
// 条件を満たさない場合はスキップ
if (!$que || !in_array($que->que_status, [3,4])) {
continue;
}
if ($que->que_class < 100) {
$queLabels[$log->operator_log_id] = '<span class="badge badge-primary">タスク</span>';
$queIcons[$log->operator_log_id] = '';
} elseif ($que->que_class > 99) {
$queLabels[$log->operator_log_id] = '<span class="badge badge-danger">ハード異常</span>';
$queIcons[$log->operator_log_id] = '';
} else {
continue;
}
$queClassNums[$log->operator_log_id] = \App\Models\OperatorQue::QueClass[$que->que_class] ?? $que->que_class;
}
@endphp
<div class="container-fluid" style="background:#f4f6f9;min-height:calc(100vh - 60px);">
<div class="row">
<!-- メイン -->
<div class="col-md-10">
<div class="row mt-4">
<div class="col-lg-7">
<div class="card mb-4">
<div class="card-header bg-white font-weight-bold">インフォメーション</div>
<div class="card-body">
@php
$infoQue = \App\Models\OperatorQue::whereIn('que_status', [1,2])
->orderByDesc('created_at')
->limit(5)
->get();
@endphp
@if(count($infoQue) > 0)
@foreach($infoQue as $q)
<div class="card mb-3" style="box-shadow:none;border:1px solid #e0e0e0;">
<div class="card-body py-3 px-4" style="position:relative;">
<div class="d-flex align-items-center mb-2">
<div class="text-secondary" style="font-size:1.1em; margin-right:1em;">
{{ $q->created_at }}
</div>
@if($q->que_class > 99)
<span class="badge badge-danger" style="font-size:0.95em;">ハード異常</span>
@elseif($q->que_class < 100)
<span class="badge badge-primary" style="font-size:0.95em;">タスク</span>
@endif
</div>
<div>
<a href="{{ url('/admin/manual_personal_check/edit/'.$q->que_id) }}" style="font-weight:bold;color:#007bff;font-size:1.1em;text-decoration:underline;">
{{ $q->getQueClassLabel() }}
</a>
</div>
</div>
</div>
@endforeach
@endif
</div>
</div>
</div>
<div class="col-lg-5">
<div class="card mb-4">
<div class="card-header bg-white font-weight-bold">操作履歴</div>
<div class="card-body p-0">
<table class="table table-sm mb-0">
<thead>
<tr>
<th scope="col">操作内容</th>
<th scope="col"></th>
<th scope="col"></th>
<th scope="col">オペレーター</th>
<th scope="col">日時</th>
</tr>
</thead>
<tbody>
@php $hasData = false; @endphp
@foreach($logs as $log)
@if(isset($queLabels[$log->operator_log_id]))
@php $hasData = true; @endphp
<tr>
<td>{!! $queIcons[$log->operator_log_id] !!}{!! $queLabels[$log->operator_log_id] !!}</td>
<td></td>
<td>{{ $queClassNums[$log->operator_log_id] }}</td>
<td>{{ $operatorNames[$log->operator_id] ?? $log->operator_id }}</td>
<td>{{ $log->created_at }}</td>
</tr>
@endif
@endforeach
@if(!$hasData)
<tr><td colspan="5" class="text-center">データがありません</td></tr>
@endif
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
@endsection