refactor blades
This commit is contained in:
@@ -17,18 +17,18 @@ use PhpOffice\PhpSpreadsheet\Worksheet\Drawing;
|
||||
|
||||
class CountryActivityPerItemReport implements FromView, WithEvents, ShouldAutoSize, WithDrawings
|
||||
{
|
||||
public function __construct(private ?array $activities){}
|
||||
public function __construct(private ?array $data){}
|
||||
|
||||
public function view(): View
|
||||
{
|
||||
$activities = $this->activities;
|
||||
$fromDate = $activities['fromDate'] ?? '2021-03-21 00:00:00';
|
||||
$toDate = $activities['toDate'] ?? \Carbon\Carbon::now();
|
||||
$data = $this->data;
|
||||
|
||||
return view('v3.Reports.RoadItems.CountryActivityPerItem', [
|
||||
'activities' => $activities['data'],
|
||||
'fromDate' => $fromDate,
|
||||
'toDate' => $toDate
|
||||
'data' => $data['activities']['data'],
|
||||
'provinces' => $data['provinces'],
|
||||
'items' => $data['items'],
|
||||
'fromDate' => $data['activities']['fromDate'],
|
||||
'toDate' => $data['activities']['toDate']
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ use App\Models\Province;
|
||||
use App\Models\RoadItemsProject;
|
||||
use Carbon\Carbon;
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Illuminate\Database\Eloquent\Collection;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Maatwebsite\Excel\Concerns\FromView;
|
||||
use Maatwebsite\Excel\Concerns\ShouldAutoSize;
|
||||
@@ -17,7 +18,7 @@ use PhpOffice\PhpSpreadsheet\Worksheet\Drawing;
|
||||
|
||||
class OperatorCartableReport implements FromView, WithEvents, ShouldAutoSize, WithDrawings
|
||||
{
|
||||
public function __construct(private ?string $data){}
|
||||
public function __construct(private ?Collection $data){}
|
||||
|
||||
public function view(): View
|
||||
{
|
||||
|
||||
@@ -17,18 +17,18 @@ use PhpOffice\PhpSpreadsheet\Worksheet\Drawing;
|
||||
|
||||
class ProvinceActivityPerItemReport implements FromView, WithEvents, ShouldAutoSize, WithDrawings
|
||||
{
|
||||
public function __construct(private ?array $activities){}
|
||||
public function __construct(private ?array $data){}
|
||||
|
||||
public function view(): View
|
||||
{
|
||||
$activities = $this->activities;
|
||||
$fromDate = $activities['fromDate'] ?? '2021-03-21 00:00:00';
|
||||
$toDate = $activities['toDate'] ?? \Carbon\Carbon::now();
|
||||
$data = $this->data;
|
||||
|
||||
return view('v3.Reports.RoadItems.ProvinceActivityPerItem', [
|
||||
'activitis' => $activities['data'],
|
||||
'fromDate' => $fromDate,
|
||||
'toDate' => $toDate
|
||||
'data' => $data['activities']['data'],
|
||||
'edarateShahri' => $data['edarateShahri'],
|
||||
'items' => $data['items'],
|
||||
'fromDate' => $data['activities']['fromDate'],
|
||||
'toDate' => $data['activities']['toDate']
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ use App\Models\Province;
|
||||
use App\Models\RoadItemsProject;
|
||||
use Carbon\Carbon;
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Illuminate\Database\Eloquent\Collection;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Maatwebsite\Excel\Concerns\FromView;
|
||||
use Maatwebsite\Excel\Concerns\ShouldAutoSize;
|
||||
@@ -17,7 +18,7 @@ use PhpOffice\PhpSpreadsheet\Worksheet\Drawing;
|
||||
|
||||
class SupervisorCartableReport implements FromView, WithEvents, ShouldAutoSize, WithDrawings
|
||||
{
|
||||
public function __construct(private ?string $data){}
|
||||
public function __construct(private ?Collection $data){}
|
||||
|
||||
public function view(): View
|
||||
{
|
||||
|
||||
@@ -119,7 +119,11 @@ class RoadItemsReportController extends Controller
|
||||
auth()->user()->addActivityComplete(1034);
|
||||
$name = 'گزارش کشوری از فعالیت روزانه و جاری - جدول 1 ' . verta()->now()->format('Y-m-d H-i') . '.xlsx';
|
||||
$activities = $roadItemReportService->countryActivityPerItem($request);
|
||||
return Excel::download(new CountryActivityPerItemReport($activities), $name);
|
||||
return Excel::download(new CountryActivityPerItemReport([
|
||||
'activities' => $activities,
|
||||
'provinces' => Province::all(['id', 'name_fa']),
|
||||
'items' => InfoItem::query()->distinct()->get(['item', 'item_str']),
|
||||
]), $name);
|
||||
}
|
||||
|
||||
public function provinceActivityExcelPerItem(Request $request, RoadItemReportService $roadItemReportService): BinaryFileResponse
|
||||
@@ -127,7 +131,11 @@ class RoadItemsReportController extends Controller
|
||||
auth()->user()->addActivityComplete(1034);
|
||||
$name = 'گزارش استانی از فعالیت روزانه و جاری - جدول 1 ' . verta()->now()->format('Y-m-d H-i') . '.xlsx';
|
||||
$activities = $roadItemReportService->provinceActivityPerItem($request);
|
||||
return Excel::download(new ProvinceActivityPerItemReport($activities), $name);
|
||||
return Excel::download(new ProvinceActivityPerItemReport([
|
||||
'activities' => $activities,
|
||||
'edarateShahri' => EdarateShahri::query()->where('province_id', '=', $request->province_id)->get(['id', 'name_fa']),
|
||||
'items' => InfoItem::query()->distinct()->get(['item', 'item_str']),
|
||||
]), $name);
|
||||
}
|
||||
|
||||
public function countryActivityExcelPerSubItem(Request $request, RoadItemReportService $roadItemReportService): BinaryFileResponse
|
||||
|
||||
@@ -14,19 +14,19 @@
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="18"
|
||||
<th colspan="20"
|
||||
style="background-color: #DAEEF3;text-align: center;border-right: 1px solid black;font-weight:bolder;">
|
||||
تاریخ دریافت گزارش: {{ verta()->now()->format('Y/m/d H:i') }}
|
||||
</th>
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="18"
|
||||
<th colspan="20"
|
||||
style="background-color: #DAEEF3;text-align: center;border-right:1px solid black;font-weight:bolder;">
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="18"
|
||||
<th colspan="20"
|
||||
style="background-color: #DAEEF3;text-align: center;border-right:1px solid black;font-weight:bolder;font-size: 13;">
|
||||
گزارش فعالیت روزانه و جاری راهداری از تاریخ
|
||||
{{ verta($fromDate)->format('Y/n/j') }}
|
||||
@@ -38,83 +38,60 @@
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th rowspan="2" style="border:1px solid black;text-align:center;background-color: #EBF1DE;">اداره کل
|
||||
</th>
|
||||
<th colspan="16" style="border:1px solid black;text-align:center;background-color: #EBF1DE;">فعالیت های
|
||||
جاری و روزانه راهداری
|
||||
</th>
|
||||
<th rowspan="2" style="border:1px solid black;text-align:center;background-color: #EBF1DE;">کل</th>
|
||||
<th rowspan="2" style="border:1px solid black;text-align:center;background-color: #EBF1DE;">اداره</th>
|
||||
<th rowspan="2" style="border:1px solid black;text-align:center;background-color: #EBF1DE;">مجموع</th>
|
||||
<th colspan="18" style="border:1px solid black;text-align:center;background-color: #EBF1DE;">ایتم های فعالیت روزانه</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">مرمت رویه</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">پاکسازی</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">علائم</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">حفاظ</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">روشنایی</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">خط کشی</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">رنگ آمیزی</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">شستشو</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">ایمن سازی</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">حریم</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">پل</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">تونل و گالری</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">عملیات زمستانی</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">ماشین آلات</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">راهدارخانه</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">موارد اضطراری</th>
|
||||
@foreach($items as $item)
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">{{ $item['item_str'] }}</th>
|
||||
@endforeach
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="border:1px solid black;text-align: center;">کل کشور</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $countryCount['totalMarematRooyeCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $countryCount['totalPaksaziCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $countryCount['totalAlaemCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $countryCount['totalHefazCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $countryCount['totalRoshanayiCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $countryCount['totalKhatkeshiCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $countryCount['totalRangamiziCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $countryCount['totalWashingCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $countryCount['totalImenSaziCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $countryCount['totalHarimCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $countryCount['totalPolCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $countryCount['totalToonelCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $countryCount['totalAmaliatZemestaniCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $countryCount['totalMashinAlatCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $countryCount['totalTollhouseCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $countryCount['totalEmergencyCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $countryCount['totalCountryCount'] }}</td>
|
||||
</tr>
|
||||
@php
|
||||
// محاسبه مجموع مقدار s برای کل کشور
|
||||
$totalForCountry = collect($data)->where('p', -1)->sum('s');
|
||||
|
||||
@foreach ($provinceCount as $activity)
|
||||
// محاسبه مجموع مقدار s برای هر آیتم در کل کشور
|
||||
$itemTotalsForCountry = [];
|
||||
foreach ($items as $item) {
|
||||
$itemTotalsForCountry[$item['item']] = collect($data)->where('p', -1)->where('i', $item['item'])->sum('s');
|
||||
}
|
||||
@endphp
|
||||
|
||||
{{-- ردیف کل کشور --}}
|
||||
<tr>
|
||||
<td style="border:1px solid black;text-align: center;">کل کشور</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $totalForCountry }}</td>
|
||||
@foreach($items as $item)
|
||||
<td style="border:1px solid black;text-align: center;">{{ $itemTotalsForCountry[$item['item']] ?? '-' }}</td>
|
||||
@endforeach
|
||||
</tr>
|
||||
|
||||
{{-- ردیفهای مربوط به هر استان --}}
|
||||
@foreach($provinces as $province)
|
||||
@php
|
||||
// محاسبه مجموع مقدار s برای این استان
|
||||
$totalForProvince = collect($data)->where('p', $province['id'])->sum('s');
|
||||
|
||||
// محاسبه مجموع مقدار s برای هر آیتم در این استان
|
||||
$itemTotalsForProvince = [];
|
||||
foreach ($items as $item) {
|
||||
$itemTotalsForProvince[$item['item']] = collect($data)->where('p', $province['id'])->where('i', $item['item'])->sum('s');
|
||||
}
|
||||
@endphp
|
||||
<tr>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->province_fa }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->MarematRooyeCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->PaksaziCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->AlaemCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->HefazCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->RoshanayiCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->KhatkeshiCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->RangamiziCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->WashingCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->ImenSaziCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->HarimCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->PolCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->ToonelCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->AmaliatZemestaniCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->MashinAlatCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->TollhouseCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->EmergencyCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->TotalProvinceCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $province['name_fa'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $totalForProvince }}</td>
|
||||
@foreach($items as $item)
|
||||
<td style="border:1px solid black;text-align: center;">{{ $itemTotalsForProvince[$item['item']] ?? '-' }}</td>
|
||||
@endforeach
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
|
||||
|
||||
</table>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -21,56 +21,64 @@
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="9"
|
||||
<th colspan="14"
|
||||
style="background-color: #DAEEF3;text-align: center;border-right: 1px solid black;font-weight:bolder;">
|
||||
تاریخ دریافت گزارش: {{ verta()->now()->format('Y/m/d H:i') }}
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="9"
|
||||
<th colspan="14"
|
||||
style="background-color: #DAEEF3;text-align: center;border-right:1px solid black;font-weight:bolder;">
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="9"
|
||||
<th colspan="14"
|
||||
style="background-color: #DAEEF3;text-align: center;border-right:1px solid black;font-weight:bolder;font-size: 13;">
|
||||
گزارش کارتابل عملیات فعالیت های روزانه و جاری از تاریخ
|
||||
{{ verta($fromDate)->format('Y/n/j') }}
|
||||
تا
|
||||
تاریخ
|
||||
{{ verta($toDate)->format('Y/n/j') }}
|
||||
|
||||
گزارش کارتابل عملیات فعالیت های روزانه و جاری
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">کد
|
||||
یکتا</th>
|
||||
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
استان</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
اداره</th>
|
||||
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">آیتم
|
||||
فعالیت</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
موضوع مشاهده شده</th>
|
||||
اقدام انجام شده</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
مقدار</th>
|
||||
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
کد خودرو(ها)</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
کد راهدار(ها)</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
نقطه شروع</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
نقطه پایان</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
تاریخ ثبت</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
تاریخ فعالیت</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
وضعیت</th>
|
||||
تاریخ ثبت</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
وضعیت نظارت</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
توضیحات ناظر</th>
|
||||
@@ -81,15 +89,24 @@
|
||||
@foreach ($data as $item)
|
||||
<tr>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['id'] ?? '-' }}</td>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['province_fa'] ?? '-' }}</td>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['edarat_name'] ?? '-' }}</td>
|
||||
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['item_fa'] ?? '-' }}</td>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['sub_item_fa'] ?? '-' }}</td>
|
||||
<td style="border: 1px solid black;text-align: center;">
|
||||
{{ $item['sub_item_data'] ? ($item['unit_fa'] ? $item['sub_item_data'] . '(' . $item['unit_fa'] . ')' : $item['sub_item_data'] . '(-)') : '-' }}
|
||||
{{ $item['sub_item_data'] ? ($item['unit_fa'] ? $item['sub_item_data'] . '(' . $item['unit_fa'] . ')' : $item['sub_item_data'] . '(-)') : '-' }}
|
||||
</td>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['cmmsMachines'] != null ? $item['cmmsMachines']->pluck('machine_code')->implode(', ') : '-' }}</td>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['rahdaran'] != null ? $item['rahdaran']->pluck('code')->implode(', ') : '-' }}</td>
|
||||
<td style="border: 1px solid black;text-align: center;">
|
||||
{{ isset($item['start_lat']) && isset($item['start_lng']) ? $item['start_lat'] . ' ' . $item['start_lng'] : '-' }}
|
||||
</td>
|
||||
<td style="border: 1px solid black;text-align: center;">
|
||||
{{ isset($item['end_lat']) && isset($item['end_lng']) ? $item['end_lat'] . ' ' . $item['end_lng'] : '-' }}
|
||||
</td>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ isset($item['start_lat']) && isset($item['start_lng']) ? $item['start_lat'] . ' ' . $item['start_lng'] : '-' }}</td>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ isset($item['end_lat']) && isset($item['end_lng']) ? $item['end_lat'] . ' ' . $item['end_lng'] : '-' }}</td>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['created_at'] ? verta($item['created_at'])->format('Y/n/j H:i:s') : '-' }}</td>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['activity_date_time'] ? verta($item['activity_date_time'])->format('Y/n/j H:i:s') : '-' }}
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['created_at'] ? verta($item['created_at'])->format('Y/n/j H:i:s') : '-' }}</td>
|
||||
</td>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['status_fa'] ?? '-' }}</td>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['supervisor_description'] ?? '-' }}</td>
|
||||
|
||||
@@ -14,19 +14,19 @@
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="18"
|
||||
<th colspan="20"
|
||||
style="background-color: #DAEEF3;text-align: center;border-right: 1px solid black;font-weight:bolder;">
|
||||
تاریخ دریافت گزارش: {{ verta()->now()->format('Y/m/d H:i') }}
|
||||
</th>
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="18"
|
||||
<th colspan="20"
|
||||
style="background-color: #DAEEF3;text-align: center;border-right:1px solid black;font-weight:bolder;">
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="18"
|
||||
<th colspan="20"
|
||||
style="background-color: #DAEEF3;text-align: center;border-right:1px solid black;font-weight:bolder;font-size: 13;">
|
||||
گزارش فعالیت روزانه و جاری راهداری از تاریخ
|
||||
{{ verta($fromDate)->format('Y/n/j') }}
|
||||
@@ -38,83 +38,57 @@
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th rowspan="2" style="border:1px solid black;text-align:center;background-color: #EBF1DE;">اداره کل
|
||||
</th>
|
||||
<th colspan="16" style="border:1px solid black;text-align:center;background-color: #EBF1DE;">فعالیت های
|
||||
جاری و روزانه راهداری
|
||||
</th>
|
||||
<th rowspan="2" style="border:1px solid black;text-align:center;background-color: #EBF1DE;">کل</th>
|
||||
<th rowspan="2" style="border:1px solid black;text-align:center;background-color: #EBF1DE;">اداره</th>
|
||||
<th rowspan="2" style="border:1px solid black;text-align:center;background-color: #EBF1DE;">مجموع</th>
|
||||
<th colspan="18" style="border:1px solid black;text-align:center;background-color: #EBF1DE;">ایتم های فعالیت روزانه</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">مرمت رویه</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">پاکسازی</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">علائم</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">حفاظ</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">روشنایی</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">خط کشی</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">رنگ آمیزی</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">شستشو</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">ایمن سازی</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">حریم</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">پل</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">تونل و گالری</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">عملیات زمستانی</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">ماشین آلات</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">راهدارخانه</th>
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">موارد اضطراری</th>
|
||||
@foreach($items as $item)
|
||||
<th style="border:1px solid black;text-align:center;background-color: #C4D79B;">{{ $item['item_str'] }}</th>
|
||||
@endforeach
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="border:1px solid black;text-align: center;">کل استان</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $provinceCount['totalMarematRooyeCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $provinceCount['totalPaksaziCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $provinceCount['totalAlaemCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $provinceCount['totalHefazCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $provinceCount['totalRoshanayiCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $provinceCount['totalKhatkeshiCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $provinceCount['totalRangamiziCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $provinceCount['totalWashingCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $provinceCount['totalImenSaziCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $provinceCount['totalHarimCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $provinceCount['totalPolCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $provinceCount['totalToonelCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $provinceCount['totalAmaliatZemestaniCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $provinceCount['totalMashinAlatCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $provinceCount['totalTollhouseCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $provinceCount['totalEmergencyCount'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $provinceCount['TotalProvinceCount'] }}</td>
|
||||
</tr>
|
||||
@php
|
||||
$totalForProvince = collect($data)->where('c', -1)->sum('s');
|
||||
|
||||
@foreach ($cityCount as $activity)
|
||||
$itemTotalsForProvince = [];
|
||||
foreach ($items as $item) {
|
||||
$itemTotalsForProvince[$item['item']] = collect($data)->where('c', -1)->where('i', $item['item'])->sum('s');
|
||||
}
|
||||
@endphp
|
||||
|
||||
<tr>
|
||||
<td style="border:1px solid black;text-align: center;">کل استان</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $totalForProvince }}</td>
|
||||
@foreach($items as $item)
|
||||
<td style="border:1px solid black;text-align: center;">{{ $itemTotalsForProvince[$item['item']] ?? '-' }}</td>
|
||||
@endforeach
|
||||
</tr>
|
||||
|
||||
{{-- ردیفهای مربوط به هر استان --}}
|
||||
@foreach($edarateShahri as $edareShahri)
|
||||
@php
|
||||
// محاسبه مجموع مقدار s برای این استان
|
||||
$totalForProvince = collect($data)->where('p', $edareShahri['id'])->sum('s');
|
||||
|
||||
// محاسبه مجموع مقدار s برای هر آیتم در این استان
|
||||
$itemTotalsForProvince = [];
|
||||
foreach ($items as $item) {
|
||||
$itemTotalsForProvince[$item['item']] = collect($data)->where('p', $edareShahri['id'])->where('i', $item['item'])->sum('s');
|
||||
}
|
||||
@endphp
|
||||
<tr>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->edarat_name }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->MarematRooyeCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->PaksaziCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->AlaemCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->HefazCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->RoshanayiCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->KhatkeshiCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->RangamiziCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->WashingCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->ImenSaziCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->HarimCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->PolCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->ToonelCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->AmaliatZemestaniCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->MashinAlatCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->TollhouseCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->EmergencyCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $activity->TotalCityCount }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $edareShahri['name_fa'] }}</td>
|
||||
<td style="border:1px solid black;text-align: center;">{{ $totalForProvince }}</td>
|
||||
@foreach($items as $item)
|
||||
<td style="border:1px solid black;text-align: center;">{{ $itemTotalsForProvince[$item['item']] ?? '-' }}</td>
|
||||
@endforeach
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
|
||||
|
||||
</table>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -21,24 +21,20 @@
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="9"
|
||||
<th colspan="14"
|
||||
style="background-color: #DAEEF3;text-align: center;border-right: 1px solid black;font-weight:bolder;">
|
||||
تاریخ دریافت گزارش: {{ verta()->now()->format('Y/m/d H:i') }}
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="9"
|
||||
<th colspan="14"
|
||||
style="background-color: #DAEEF3;text-align: center;border-right:1px solid black;font-weight:bolder;">
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="9"
|
||||
<th colspan="14"
|
||||
style="background-color: #DAEEF3;text-align: center;border-right:1px solid black;font-weight:bolder;font-size: 13;">
|
||||
گزارش کارتابل ارزیابی فعالیت های روزانه و جاری از تاریخ
|
||||
{{ verta($fromDate)->format('Y/n/j') }}
|
||||
تا
|
||||
تاریخ
|
||||
{{ verta($toDate)->format('Y/n/j') }}
|
||||
گزارش کارتابل ارزیابی فعالیت های روزانه و جاری
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -58,26 +54,31 @@
|
||||
فعالیت</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
موضوع مشاهده شده</th>
|
||||
اقدام انجام شده</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
مقدار</th>
|
||||
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
کد خودرو(ها)</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
کد راهدار(ها)</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
نقطه شروع</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
نقطه پایان</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
تاریخ ثبت</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
تاریخ فعالیت</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
وضعیت</th>
|
||||
تاریخ ثبت</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
وضعیت نظارت</th>
|
||||
<th rowspan="1"
|
||||
style="text-align: center;border: 1px solid black;background-color: #EBF1DE;font-weight: bold;">
|
||||
توضیحات ناظر</th>
|
||||
@@ -96,18 +97,19 @@
|
||||
<td style="border: 1px solid black;text-align: center;">
|
||||
{{ $item['sub_item_data'] ? ($item['unit_fa'] ? $item['sub_item_data'] . '(' . $item['unit_fa'] . ')' : $item['sub_item_data'] . '(-)') : '-' }}
|
||||
</td>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['cmmsMachines'] != null ? $item['cmmsMachines']->pluck('machine_code')->implode(', ') : '-' }}</td>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['rahdaran'] != null ? $item['rahdaran']->pluck('code')->implode(', ') : '-' }}</td>
|
||||
<td style="border: 1px solid black;text-align: center;">
|
||||
{{ isset($item['start_lat']) && isset($item['start_lng']) ? $item['start_lat'] . ' ' . $item['start_lng'] : '-' }}
|
||||
</td>
|
||||
<td style="border: 1px solid black;text-align: center;">
|
||||
{{ isset($item['end_lat']) && isset($item['end_lng']) ? $item['end_lat'] . ' ' . $item['end_lng'] : '-' }}
|
||||
</td>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['created_at'] ? verta($item['created_at'])->format('Y/n/j H:i:s') : '-' }}</td>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['activity_date_time'] ? verta($item['activity_date_time'])->format('Y/n/j H:i:s') : '-' }}
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['created_at'] ? verta($item['created_at'])->format('Y/n/j H:i:s') : '-' }}</td>
|
||||
</td>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['status_fa'] ?? '-' }}</td>
|
||||
<td style="border: 1px solid black;text-align: center;">
|
||||
{{ $item['supervisor_description'] ?? '-' }}</td>
|
||||
<td style="border: 1px solid black;text-align: center;">{{ $item['supervisor_description'] ?? '-' }}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
|
||||
Reference in New Issue
Block a user