diff --git a/app/Exports/V3/RoadItemsProjects/CountryActivityPerItemReport.php b/app/Exports/V3/RoadItemsProjects/CountryActivityPerItemReport.php index d85f83f3..60261c20 100644 --- a/app/Exports/V3/RoadItemsProjects/CountryActivityPerItemReport.php +++ b/app/Exports/V3/RoadItemsProjects/CountryActivityPerItemReport.php @@ -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'] ]); } diff --git a/app/Exports/V3/RoadItemsProjects/OperatorCartableReport.php b/app/Exports/V3/RoadItemsProjects/OperatorCartableReport.php index 43583ba5..ea736dd2 100644 --- a/app/Exports/V3/RoadItemsProjects/OperatorCartableReport.php +++ b/app/Exports/V3/RoadItemsProjects/OperatorCartableReport.php @@ -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 { diff --git a/app/Exports/V3/RoadItemsProjects/ProvinceActivityPerItemReport.php b/app/Exports/V3/RoadItemsProjects/ProvinceActivityPerItemReport.php index 15b1a1c0..9b7b33d0 100644 --- a/app/Exports/V3/RoadItemsProjects/ProvinceActivityPerItemReport.php +++ b/app/Exports/V3/RoadItemsProjects/ProvinceActivityPerItemReport.php @@ -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'] ]); } diff --git a/app/Exports/V3/RoadItemsProjects/SupervisorCartableReport.php b/app/Exports/V3/RoadItemsProjects/SupervisorCartableReport.php index 4aa03957..d559cf50 100644 --- a/app/Exports/V3/RoadItemsProjects/SupervisorCartableReport.php +++ b/app/Exports/V3/RoadItemsProjects/SupervisorCartableReport.php @@ -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 { diff --git a/app/Http/Controllers/V3/Dashboard/Reports/RoadItemsReportController.php b/app/Http/Controllers/V3/Dashboard/Reports/RoadItemsReportController.php index 3196ff73..11174fac 100644 --- a/app/Http/Controllers/V3/Dashboard/Reports/RoadItemsReportController.php +++ b/app/Http/Controllers/V3/Dashboard/Reports/RoadItemsReportController.php @@ -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 diff --git a/resources/views/v3/Reports/RoadItems/CountryActivityPerItem.blade.php b/resources/views/v3/Reports/RoadItems/CountryActivityPerItem.blade.php index cc387f3d..8185757e 100644 --- a/resources/views/v3/Reports/RoadItems/CountryActivityPerItem.blade.php +++ b/resources/views/v3/Reports/RoadItems/CountryActivityPerItem.blade.php @@ -14,19 +14,19 @@
| تاریخ دریافت گزارش: {{ verta()->now()->format('Y/m/d H:i') }} | |||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| گزارش فعالیت روزانه و جاری راهداری از تاریخ {{ verta($fromDate)->format('Y/n/j') }} @@ -38,83 +38,60 @@ | |||||||||||||||||||||||||||||||||||||
| اداره کل - | -فعالیت های - جاری و روزانه راهداری - | -کل | +اداره | +مجموع | +ایتم های فعالیت روزانه | ||||||||||||||||||||||||||||||||
| مرمت رویه | -پاکسازی | -علائم | -حفاظ | -روشنایی | -خط کشی | -رنگ آمیزی | -شستشو | -ایمن سازی | -حریم | -پل | -تونل و گالری | -عملیات زمستانی | -ماشین آلات | -راهدارخانه | -موارد اضطراری | + @foreach($items as $item) +{{ $item['item_str'] }} | + @endforeach|||||||||||||||||||||
| کل کشور | -{{ $countryCount['totalMarematRooyeCount'] }} | -{{ $countryCount['totalPaksaziCount'] }} | -{{ $countryCount['totalAlaemCount'] }} | -{{ $countryCount['totalHefazCount'] }} | -{{ $countryCount['totalRoshanayiCount'] }} | -{{ $countryCount['totalKhatkeshiCount'] }} | -{{ $countryCount['totalRangamiziCount'] }} | -{{ $countryCount['totalWashingCount'] }} | -{{ $countryCount['totalImenSaziCount'] }} | -{{ $countryCount['totalHarimCount'] }} | -{{ $countryCount['totalPolCount'] }} | -{{ $countryCount['totalToonelCount'] }} | -{{ $countryCount['totalAmaliatZemestaniCount'] }} | -{{ $countryCount['totalMashinAlatCount'] }} | -{{ $countryCount['totalTollhouseCount'] }} | -{{ $countryCount['totalEmergencyCount'] }} | -{{ $countryCount['totalCountryCount'] }} | -||||||||||||||||||||
| کل کشور | +{{ $totalForCountry }} | + @foreach($items as $item) +{{ $itemTotalsForCountry[$item['item']] ?? '-' }} | + @endforeach +|||||||||||||||||||||||||||||||||||
| {{ $activity->province_fa }} | -{{ $activity->MarematRooyeCount }} | -{{ $activity->PaksaziCount }} | -{{ $activity->AlaemCount }} | -{{ $activity->HefazCount }} | -{{ $activity->RoshanayiCount }} | -{{ $activity->KhatkeshiCount }} | -{{ $activity->RangamiziCount }} | -{{ $activity->WashingCount }} | -{{ $activity->ImenSaziCount }} | -{{ $activity->HarimCount }} | -{{ $activity->PolCount }} | -{{ $activity->ToonelCount }} | -{{ $activity->AmaliatZemestaniCount }} | -{{ $activity->MashinAlatCount }} | -{{ $activity->TollhouseCount }} | -{{ $activity->EmergencyCount }} | -{{ $activity->TotalProvinceCount }} | +{{ $province['name_fa'] }} | +{{ $totalForProvince }} | + @foreach($items as $item) +{{ $itemTotalsForProvince[$item['item']] ?? '-' }} | + @endforeach|||||||||||||||||