diff --git a/app/Http/Controllers/V3/Dashboard/RoadItemsProjectController.php b/app/Http/Controllers/V3/Dashboard/RoadItemsProjectController.php
index 4893bee3..00295fb7 100644
--- a/app/Http/Controllers/V3/Dashboard/RoadItemsProjectController.php
+++ b/app/Http/Controllers/V3/Dashboard/RoadItemsProjectController.php
@@ -100,7 +100,7 @@ class RoadItemsProjectController extends Controller
{
$name = 'گزارش از کارتابل ارزیابی فعالیت روزانه ' . verta()->now()->format('Y-m-d H:i') . '.xlsx';
$data = $roadItemReportService->supervisorCartableReport($request);
- return Excel::download(new SupervisorCartableReport($data), $name);
+ return Excel::download(new SupervisorCartableReport($data['data']), $name);
}
public function operatorIndex(Request $request, RoadItemReportService $roadItemReportService): JsonResponse
@@ -268,6 +268,6 @@ class RoadItemsProjectController extends Controller
{
$name = 'گزارش از کارتابل عملیات فعالیت روزانه ' . verta()->now()->format('Y-m-d H:i') . '.xlsx';
$data = $roadItemReportService->operatorCartableReport($request);
- return Excel::download(new OperatorCartableReport($data), $name);
+ return Excel::download(new OperatorCartableReport($data['data']), $name);
}
}
diff --git a/app/Services/DataTable/DataTableInput.php b/app/Services/DataTable/DataTableInput.php
index 18e7ea10..64a3f290 100644
--- a/app/Services/DataTable/DataTableInput.php
+++ b/app/Services/DataTable/DataTableInput.php
@@ -15,10 +15,10 @@ class DataTableInput
* @param array $rels
*/
public function __construct(
- private int $start,
+ private ?int $start,
private ?int $size,
private array $filters,
- private array $sorting,
+ private ?array $sorting,
private array $rels,
private array $allowedFilters,
private array $allowedSortings,
@@ -74,6 +74,4 @@ class DataTableInput
{
return $this->rels;
}
-
-
}
diff --git a/app/Services/DataTable/DataTableService.php b/app/Services/DataTable/DataTableService.php
index af0d0451..647f6e44 100644
--- a/app/Services/DataTable/DataTableService.php
+++ b/app/Services/DataTable/DataTableService.php
@@ -76,7 +76,9 @@ class DataTableService
$this->totalRowCount = $query->count();
- $query->offset($this->dataTableInput->getStart());
+ if (!is_null($this->dataTableInput->getStart())) {
+ $query->offset($this->dataTableInput->getStart());
+ }
if(!is_null($this->dataTableInput->getSize())){
$query->limit($this->dataTableInput->getSize());
diff --git a/app/Services/DataTable/Validators/FilterValidator.php b/app/Services/DataTable/Validators/FilterValidator.php
index cc45813e..ea837f9e 100644
--- a/app/Services/DataTable/Validators/FilterValidator.php
+++ b/app/Services/DataTable/Validators/FilterValidator.php
@@ -50,7 +50,7 @@ class FilterValidator
protected function isAllowed(Filter $filter, array $allowedFilters): bool
{
- return in_array($filter->getId(), $allowedFilters);
+ return $allowedFilters == ['*'] || in_array($filter->getId(), $allowedFilters);
}
protected function isValidSearchFunction(Filter $filter): bool
diff --git a/app/Services/DataTable/Validators/SortingValidator.php b/app/Services/DataTable/Validators/SortingValidator.php
index a494ef6a..4409bfba 100644
--- a/app/Services/DataTable/Validators/SortingValidator.php
+++ b/app/Services/DataTable/Validators/SortingValidator.php
@@ -34,6 +34,6 @@ class SortingValidator
protected function isAllowed(Sort $sorting, array $allowedSortings): bool
{
- return in_array($sorting->getId(), $allowedSortings);
+ return $allowedSortings == ['*'] || in_array($sorting->getId(), $allowedSortings);
}
}
diff --git a/resources/views/v3/Reports/RoadItems/OperatorCartableReport.blade.php b/resources/views/v3/Reports/RoadItems/OperatorCartableReport.blade.php
new file mode 100644
index 00000000..a020d289
--- /dev/null
+++ b/resources/views/v3/Reports/RoadItems/OperatorCartableReport.blade.php
@@ -0,0 +1,102 @@
+
+
+
+
+
+
+
+ گزارش فعالیت های روزانه و جاری
+
+
+
+
+
+
+
+
+
+ |
+ تاریخ دریافت گزارش: {{ verta()->now()->format('Y/m/d H:i') }}
+ |
+
+
+ |
+ |
+
+
+ |
+ گزارش کارتابل عملیات فعالیت های روزانه و جاری از تاریخ
+ {{ verta($fromDate)->format('Y/n/j') }}
+ تا
+ تاریخ
+ {{ verta($toDate)->format('Y/n/j') }}
+
+ |
+
+
+ | کد
+ یکتا |
+ آیتم
+ فعالیت |
+
+ موضوع مشاهده شده |
+
+ مقدار |
+
+
+ نقطه شروع |
+
+ نقطه پایان |
+
+ تاریخ ثبت |
+
+ تاریخ فعالیت |
+
+ وضعیت |
+
+ توضیحات ناظر |
+
+
+
+
+ @foreach ($data as $item)
+
+ | {{ $item['id'] ?? '-' }} |
+ {{ $item['item_fa'] ?? '-' }} |
+ {{ $item['sub_item_fa'] ?? '-' }} |
+
+ {{ $item['sub_item_data'] ? ($item['unit_fa'] ? $item['sub_item_data'] . '(' . $item['unit_fa'] . ')' : $item['sub_item_data'] . '(-)') : '-' }}
+ |
+ {{ isset($item['start_lat']) && isset($item['start_lng']) ? $item['start_lat'] . ' ' . $item['start_lng'] : '-' }} |
+ {{ isset($item['end_lat']) && isset($item['end_lng']) ? $item['end_lat'] . ' ' . $item['end_lng'] : '-' }} |
+ {{ $item['created_at'] ? verta($item['created_at'])->format('Y/n/j H:i:s') : '-' }} |
+ {{ $item['activity_date_time'] ? verta($item['activity_date_time'])->format('Y/n/j H:i:s') : '-' }}
+ |
+ {{ $item['status_fa'] ?? '-' }} |
+ {{ $item['supervisor_description'] ?? '-' }} |
+
+ @endforeach
+
+
+
+
+
diff --git a/resources/views/v3/Reports/RoadItems/SupervisorCartableReport.blade.php b/resources/views/v3/Reports/RoadItems/SupervisorCartableReport.blade.php
new file mode 100644
index 00000000..4822186c
--- /dev/null
+++ b/resources/views/v3/Reports/RoadItems/SupervisorCartableReport.blade.php
@@ -0,0 +1,117 @@
+
+
+
+
+
+
+
+ گزارش فعالیت های روزانه و جاری
+
+
+
+
+
+
+
+
+
+ |
+ تاریخ دریافت گزارش: {{ verta()->now()->format('Y/m/d H:i') }}
+ |
+
+
+ |
+ |
+
+
+ |
+ گزارش کارتابل ارزیابی فعالیت های روزانه و جاری از تاریخ
+ {{ verta($fromDate)->format('Y/n/j') }}
+ تا
+ تاریخ
+ {{ verta($toDate)->format('Y/n/j') }}
+ |
+
+
+ | کد
+ یکتا |
+
+
+ استان |
+
+ اداره |
+
+ آیتم
+ فعالیت |
+
+ موضوع مشاهده شده |
+
+ مقدار |
+
+
+ نقطه شروع |
+
+ نقطه پایان |
+
+ تاریخ ثبت |
+
+ تاریخ فعالیت |
+
+ وضعیت |
+
+ توضیحات ناظر |
+
+
+
+
+ @foreach ($data as $item)
+
+ | {{ $item['id'] ?? '-' }} |
+ {{ $item['province_fa'] ?? '-' }} |
+ {{ $item['edarat_name'] ?? '-' }} |
+
+ {{ $item['item_fa'] ?? '-' }} |
+ {{ $item['sub_item_fa'] ?? '-' }} |
+
+ {{ $item['sub_item_data'] ? ($item['unit_fa'] ? $item['sub_item_data'] . '(' . $item['unit_fa'] . ')' : $item['sub_item_data'] . '(-)') : '-' }}
+ |
+
+ {{ isset($item['start_lat']) && isset($item['start_lng']) ? $item['start_lat'] . ' ' . $item['start_lng'] : '-' }}
+ |
+
+ {{ isset($item['end_lat']) && isset($item['end_lng']) ? $item['end_lat'] . ' ' . $item['end_lng'] : '-' }}
+ |
+ {{ $item['created_at'] ? verta($item['created_at'])->format('Y/n/j H:i:s') : '-' }} |
+ {{ $item['activity_date_time'] ? verta($item['activity_date_time'])->format('Y/n/j H:i:s') : '-' }}
+ |
+ {{ $item['status_fa'] ?? '-' }} |
+
+ {{ $item['supervisor_description'] ?? '-' }} |
+
+ @endforeach
+
+
+
+
+