create excel files
This commit is contained in:
@@ -2,13 +2,17 @@
|
||||
|
||||
namespace App\Http\Controllers\V3\Dashboard\Reports;
|
||||
|
||||
use App\Exports\Activities\One\AllSheets as OneSheet;
|
||||
use App\Exports\V3\RoadItemsProjects\CountryActivityPerItemReport;
|
||||
use App\Exports\V3\RoadItemsProjects\CountryActivityPerSubItemReport;
|
||||
use App\Exports\V3\RoadItemsProjects\ProvinceActivityPerItemReport;
|
||||
use App\Exports\V3\RoadItemsProjects\ProvinceActivityPerSubItemReport;
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Http\Traits\ApiResponse;
|
||||
use App\Models\EdarateShahri;
|
||||
use App\Models\InfoItem;
|
||||
use App\Models\Province;
|
||||
use App\Models\RoadItemsProject;
|
||||
use App\Services\Reports\RoadItemReportService;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Maatwebsite\Excel\Facades\Excel;
|
||||
@@ -224,38 +228,48 @@ class RoadItemsReportController extends Controller
|
||||
return $this->successResponse($data);
|
||||
}
|
||||
|
||||
public function activityExcelPerItem(Request $request): BinaryFileResponse
|
||||
public function countryActivityExcelPerItem(Request $request): BinaryFileResponse
|
||||
{
|
||||
auth()->user()->addActivityComplete(1034);
|
||||
$name = 'گزارش از فعالیت روزانه و جاری - جدول 1 ' . verta()->now()->format('Y-m-d H-i') . '.xlsx';
|
||||
return Excel::download(new OneSheet($request->fromDate, $request->toDate, $request->province), $name);
|
||||
$name = 'گزارش کشوری از فعالیت روزانه و جاری - جدول 1 ' . verta()->now()->format('Y-m-d H-i') . '.xlsx';
|
||||
return Excel::download(new CountryActivityPerItemReport($request->fromDate, $request->toDate), $name);
|
||||
}
|
||||
|
||||
public function activityExcelPerSubItem(Request $request)
|
||||
public function provinceActivityExcelPerItem(Request $request): BinaryFileResponse
|
||||
{
|
||||
$url_correction = $request->province ? "&province={$request->province}" : "";
|
||||
auth()->user()->addActivityComplete(1034);
|
||||
$name = 'گزارش استانی از فعالیت روزانه و جاری - جدول 1 ' . verta()->now()->format('Y-m-d H-i') . '.xlsx';
|
||||
return Excel::download(new ProvinceActivityPerItemReport($request->fromDate, $request->toDate, $request->province), $name);
|
||||
}
|
||||
|
||||
return match ($request->type) {
|
||||
1 => redirect("/reports/two/maremat?fromDate={$request->fromDate}&toDate={$request->toDate}" . $url_correction),
|
||||
2 => redirect("/reports/two/paksazi?fromDate={$request->fromDate}&toDate={$request->toDate}" . $url_correction),
|
||||
3 => redirect("/reports/two/alaem?fromDate={$request->fromDate}&toDate={$request->toDate}" . $url_correction),
|
||||
4 => redirect("/reports/two/hefaz?fromDate={$request->fromDate}&toDate={$request->toDate}" . $url_correction),
|
||||
5 => redirect("/reports/two/roshanaei?fromDate={$request->fromDate}&toDate={$request->toDate}" . $url_correction),
|
||||
6 => redirect("/reports/two/khatkeshi?fromDate={$request->fromDate}&toDate={$request->toDate}" . $url_correction),
|
||||
7 => redirect("/reports/two/rangamizi?fromDate={$request->fromDate}&toDate={$request->toDate}" . $url_correction),
|
||||
8 => redirect("/reports/two/shosteshoo?fromDate={$request->fromDate}&toDate={$request->toDate}" . $url_correction),
|
||||
9 => redirect("/reports/two/imensazi?fromDate={$request->fromDate}&toDate={$request->toDate}" . $url_correction),
|
||||
10 => redirect("/reports/two/harim?fromDate={$request->fromDate}&toDate={$request->toDate}" . $url_correction),
|
||||
11 => redirect("/reports/two/pol?fromDate={$request->fromDate}&toDate={$request->toDate}" . $url_correction),
|
||||
12 => redirect("/reports/two/toonel?fromDate={$request->fromDate}&toDate={$request->toDate}" . $url_correction),
|
||||
13 => redirect("/reports/two/zemestani?fromDate={$request->fromDate}&toDate={$request->toDate}" . $url_correction),
|
||||
14 => redirect("/reports/two/mashinalat?fromDate={$request->fromDate}&toDate={$request->toDate}" . $url_correction),
|
||||
15 => redirect("/reports/two/rahdar?fromDate={$request->fromDate}&toDate={$request->toDate}" . $url_correction),
|
||||
16 => redirect("/reports/two/ezterari?fromDate={$request->fromDate}&toDate={$request->toDate}" . $url_correction),
|
||||
20 => redirect("/reports/two/bazrasi?fromDate={$request->fromDate}&toDate={$request->toDate}" . $url_correction),
|
||||
default => response()->json([
|
||||
'error' => '404'
|
||||
], 404),
|
||||
};
|
||||
public function countryActivityExcelPerSubItem(Request $request, RoadItemReportService $roadItemReportService): BinaryFileResponse
|
||||
{
|
||||
auth()->user()->addActivityComplete(1034);
|
||||
|
||||
$activities = $roadItemReportService->countryActivityPerSubItem(
|
||||
$request->item,
|
||||
$request->fromDate,
|
||||
$request->toDate,
|
||||
);
|
||||
|
||||
$name = "گزارش کشوری از فعالیت روزانه و جاری({}) - جدول 2 " . verta()->now()->format('Y-m-d H-i') . '.xlsx';
|
||||
|
||||
return Excel::download(new CountryActivityPerSubItemReport($activities), $name);
|
||||
}
|
||||
|
||||
public function provinceActivityExcelPerSubItem(Request $request, RoadItemReportService $roadItemReportService): BinaryFileResponse
|
||||
{
|
||||
auth()->user()->addActivityComplete(1034);
|
||||
|
||||
$activities = $roadItemReportService->provinceActivityPerSubItem(
|
||||
$request->item,
|
||||
$request->fromDate,
|
||||
$request->toDate,
|
||||
$request->province_id
|
||||
);
|
||||
|
||||
$name = "گزارش استانی از فعالیت روزانه و جاری({}) - جدول 2 " . verta()->now()->format('Y-m-d H-i') . '.xlsx';
|
||||
|
||||
return Excel::download(new ProvinceActivityPerSubItemReport($activities), $name);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user