add map activities to cartables
This commit is contained in:
@@ -8,6 +8,8 @@ use App\Http\Controllers\Controller;
|
||||
use App\Http\Traits\ApiResponse;
|
||||
use App\Models\EdarateShahri;
|
||||
use App\Models\Province;
|
||||
use App\Models\RoadObserved;
|
||||
use App\Models\RoadPatrol;
|
||||
use App\Services\Reports\RoadPatrolReportService;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
@@ -66,4 +68,25 @@ class RoadPatrolReportController extends Controller
|
||||
|
||||
return Excel::download(new ProvinceActivity($activities), $name);
|
||||
}
|
||||
|
||||
public function activitiesOnMap(Request $request): JsonResponse
|
||||
{
|
||||
$date_from = $request->date_from ? $request->date_from .' 00:00:00' : Date('Y-m-d') .' 00:00:00';
|
||||
$date_to = $request->date_to ? $request->date_to.' 23:59:59' : (new \DateTime('tomorrow'))->format('Y-m-d').' 23:59:59';
|
||||
|
||||
$data = RoadPatrol::query()->when($request->province_id, function ($query, $province) {
|
||||
return $query->where('province_id', '=', $province);
|
||||
})
|
||||
->when($request->edare_id, function ($query, $edare_id) {
|
||||
return $query->where('edare_id', '=', $edare_id);
|
||||
})
|
||||
->whereBetween('created_at', [
|
||||
$date_from,
|
||||
$date_to,
|
||||
])
|
||||
->select('id', 'start_lat', 'start_lon')
|
||||
->get();
|
||||
|
||||
return $this->successResponse($data);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -95,9 +95,7 @@ class RoadItemsProjectController extends Controller
|
||||
public function restore(RoadItemsProject $roadItemsProject): JsonResponse
|
||||
{
|
||||
if ($roadItemsProject->status == 0) {
|
||||
return response()->json([
|
||||
'message' => 'امکان بازگردانی وضعیت این فعالیت وجود ندارد!'
|
||||
], 400);
|
||||
return $this->errorResponse('امکان بازگردانی وضعیت این فعالیت وجود ندارد!');
|
||||
}
|
||||
|
||||
$roadItemsProject->update([
|
||||
@@ -170,15 +168,11 @@ class RoadItemsProjectController extends Controller
|
||||
$user = auth()->user();
|
||||
|
||||
if ($user->edarate_ostani_id || is_null($user->city_id)) {
|
||||
return response()->json([
|
||||
'message' => 'امکان ثبت فعالیت برای ادارات استانی و ستادی وجود ندارد!'
|
||||
], 400);
|
||||
return $this->errorResponse('امکان ثبت فعالیت برای ادارات استانی و ستادی وجود ندارد!');
|
||||
}
|
||||
|
||||
if (is_null($user->edarate_shahri_id)) {
|
||||
return response()->json([
|
||||
'message' => 'اداره شهری برای شما در سامانه ثبت نشده است!'
|
||||
], 400);
|
||||
return $this->errorResponse('اداره شهری برای شما در سامانه ثبت نشده است!');
|
||||
}
|
||||
|
||||
$info_item = InfoItem::query()->where('item', $request->item_id)
|
||||
@@ -241,9 +235,7 @@ class RoadItemsProjectController extends Controller
|
||||
$road_item = RoadItemsProject::store($user, $attributes, $before_image, $after_image, $request->observed_item_id);
|
||||
|
||||
if ($road_item === -1) {
|
||||
return response()->json([
|
||||
'message' => 'اقدام مربوطه قبلا رسیدگی شده است.'
|
||||
], 400);
|
||||
return $this->errorResponse('اقدام مربوطه قبلا رسیدگی شده است.');
|
||||
}
|
||||
|
||||
$road_item->rahdaran()->attach($request->rahdaran_id);
|
||||
|
||||
@@ -150,15 +150,11 @@ class RoadPatrolProjectController extends Controller
|
||||
$user = auth()->user();
|
||||
|
||||
if ($user->edarate_ostani_id || is_null($user->city_id)) {
|
||||
return response()->json([
|
||||
'message' => 'امکان ثبت فعالیت برای ادارات استانی وجود ندارد!'
|
||||
], 400);
|
||||
return $this->errorResponse('امکان ثبت فعالیت برای ادارات استانی وجود ندارد!');
|
||||
}
|
||||
|
||||
if (is_null($user->edarate_shahri_id)) {
|
||||
return response()->json([
|
||||
'message' => 'اداره شهری برای شما در سامانه ثبت نشده است!'
|
||||
], 400);
|
||||
return $this->errorResponse('اداره شهری برای شما در سامانه ثبت نشده است!');
|
||||
}
|
||||
|
||||
$edare_id = $user->edarate_shahri_id ?? $user->edarate_ostani_id;
|
||||
@@ -279,9 +275,7 @@ class RoadPatrolProjectController extends Controller
|
||||
$road_item = RoadItemsProject::store($user, $attributes, $before_image, $after_image, $observed_item->id);
|
||||
|
||||
if ($road_item === -1) {
|
||||
return response()->json([
|
||||
'message' => 'اقدام مربوطه قبلا رسیدگی شده است.'
|
||||
], 400);
|
||||
return $this->errorResponse('اقدام مربوطه قبلا رسیدگی شده است.');
|
||||
}
|
||||
|
||||
$road_item->rahdaran()->attach($item['road_item_rahdaran_id']);
|
||||
@@ -332,27 +326,6 @@ class RoadPatrolProjectController extends Controller
|
||||
return $this->successResponse($data);
|
||||
}
|
||||
|
||||
public function getAllDataToMap(Request $request): JsonResponse
|
||||
{
|
||||
$date_from = $request->date_from ? $request->date_from .' 00:00:00' : Date('Y-m-d') .' 00:00:00';
|
||||
$date_to = $request->date_to ? $request->date_to.' 23:59:59' : (new \DateTime('tomorrow'))->format('Y-m-d').' 23:59:59';
|
||||
|
||||
$data = RoadPatrol::query()->when($request->province_id, function ($query, $province) {
|
||||
return $query->where('province_id', '=', $province);
|
||||
})
|
||||
->when($request->edare_id, function ($query, $edare_id) {
|
||||
return $query->where('edare_id', '=', $edare_id);
|
||||
})
|
||||
->whereBetween('created_at', [
|
||||
$date_from,
|
||||
$date_to,
|
||||
])
|
||||
->select('id', 'start_lat', 'start_lon')
|
||||
->get();
|
||||
|
||||
return $this->successResponse($data);
|
||||
}
|
||||
|
||||
public function map(Request $request): JsonResponse
|
||||
{
|
||||
$province = $request->province_id;
|
||||
|
||||
@@ -152,9 +152,6 @@ Route::prefix('road_patrols')
|
||||
Route::get('/operator/report/{roadPatrol}', 'getReport')
|
||||
->name('getReport');
|
||||
|
||||
Route::get('/operator/map_data', 'getAllDataToMap')
|
||||
->name('getAllDataToMap');
|
||||
|
||||
Route::get('/detail/{roadPatrol}', 'show')
|
||||
->name('show');
|
||||
});
|
||||
@@ -214,4 +211,5 @@ Route::prefix('road_patrol_reports')
|
||||
Route::get('/province_activity', 'provincePatrolActivity')->name('provincePatrolActivity');
|
||||
Route::get('/country_activity_excel', 'countryActivityExcel')->name('countryActivityExcel');
|
||||
Route::get('/province_activity_excel', 'provinceActivityExcel')->name('provinceActivityExcel');
|
||||
Route::get('/activities_on_map', 'activitiesOnMap')->name('activitiesOnMap');
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user