debug road observed

This commit is contained in:
2025-04-20 11:21:03 +03:30
parent 79e6cc37aa
commit 1cb4c4f15d
3 changed files with 50 additions and 66 deletions

View File

@@ -24,6 +24,7 @@ use Hekmatinasser\Verta\Verta;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use App\Services\Cartables\RoadObservationTableService;
use Illuminate\Support\Facades\DB;
use Maatwebsite\Excel\Facades\Excel;
use SoapFault;
use Symfony\Component\HttpFoundation\BinaryFileResponse;
@@ -117,8 +118,8 @@ class RoadObservationController extends Controller
$roadObserved->files()->where('path', 'like', '%_image_before%')->delete();
$roadObserved->files()->where('path', 'like', '%_image_after%')->delete();
$image_before = FileFacade::save($request->image_before, "road_observeds/{$roadObserved->id}/");
$image_after = FileFacade::save($request->image_after, "road_observeds/{$roadObserved->id}/");
$image_before = FileFacade::save($request->image_before, "road_observeds/{$roadObserved->id}");
$image_after = FileFacade::save($request->image_after, "road_observeds/{$roadObserved->id}");
$files_path[0]['path'] = $image_before;
$files_path[1]['path'] = $image_after;
@@ -135,20 +136,15 @@ class RoadObservationController extends Controller
$roadObservedHistoryData['new_files'] = $files;
}
$roadObserved->problemHistories()->create($roadObservedHistoryData);
$roadObserved->update($roadObservedData);
DB::transaction(function () use ($roadObserved, $roadObservedHistoryData, $roadObservedData, $request, $nikarayanService) {
$roadObserved->problemHistories()->create($roadObservedHistoryData);
$roadObserved->update($roadObservedData);
auth()->user()->addActivityComplete(1142);
auth()->user()->addActivityComplete(1142);
try {
$nikarayanService->updateRoadObservedInfoByNikarayan($request, $roadObserved, json_encode($roadObservedHistoryData['new_files']));
}
catch (SoapFault $e) {
$msg = "error in send to nikarayan at" . date("Y-m-d H:i:s") . "\n";
$msg .= $e->getMessage();
Sms::sendSms(env('RMS_CTO_PHONE_NUMBER'), $msg);
}
});
return $this->successResponse();
}
@@ -182,7 +178,7 @@ class RoadObservationController extends Controller
if ($roadObserved->image_before) {
FileFacade::delete($roadObserved->image_before, true);
}
$image_before = FileFacade::save($request->image_before, "road_observeds/{$roadObserved->id}/");
$image_before = FileFacade::save($request->image_before, "road_observeds/{$roadObserved->id}");
$roadObservedData['image_before'] = $image_before;
$files_path[0]['path'] = $image_before;
}
@@ -191,7 +187,7 @@ class RoadObservationController extends Controller
if ($roadObserved->image_after) {
FileFacade::delete($roadObserved->image_after, true);
}
$image_after = FileFacade::save($request->image_after, "road_observeds/{$roadObserved->id}/");
$image_after = FileFacade::save($request->image_after, "road_observeds/{$roadObserved->id}");
$roadObservedData['image_after'] = $image_after;
$files_path[1]['path'] = $image_after;
}
@@ -206,20 +202,14 @@ class RoadObservationController extends Controller
$roadObservedHistoryData['new_files'] = $files;
}
$roadObserved->problemHistories()->create($roadObservedHistoryData);
$roadObserved->update($roadObservedData);
DB::transaction(function () use ($roadObserved, $roadObservedHistoryData, $roadObservedData, $request, $nikarayanService) {
$roadObserved->problemHistories()->create($roadObservedHistoryData);
$roadObserved->update($roadObservedData);
auth()->user()->addActivityComplete(1142);
auth()->user()->addActivityComplete(1142);
try {
$nikarayanService->updateRoadObservedInfoByNikarayan($request, $roadObserved, json_encode($roadObservedHistoryData['new_files']));
}
catch (SoapFault $e) {
$msg = "error in send to nikarayan at" . date("Y-m-d H:i:s") . "\n";
$msg .= $e->getMessage();
Sms::sendSms(env('RMS_CTO_PHONE_NUMBER'), $msg);
}
});
return $this->successResponse();
}

View File

@@ -144,56 +144,44 @@ class NotificationController extends Controller
'supervise_cnt' => 0
];
$conditions = [];
$complaintConditions = [
['rms_status', '=', 0],
['edarate_shahri_id', '!=', null]
];
if ($user->hasPermissionTo('show-fast-react')) {
$conditions[] = ['status', '=', 2];
$road_observations['supervise_cnt'] = RoadObserved::query()->where([
['rms_status', '<>', 0],
['status', '=', 0]
])->count();
$road_observations['complaint_cnt'] = RoadObserved::query()->where('rms_status', '=', 0)->count();
}
elseif ($user->hasPermissionTo('show-fast-react-province')) {
throw_if(is_null($user->province_id), new ProhibitedAction('استانی برای شما در سامانه ثبت نشده است!'));
$conditions = [
['status', '=', 2],
['rms_province_id', '=', $user->province_id]
];
$complaintConditions[] = ['province_id', '=', $user->province_id];
$road_observations['supervise_cnt'] = RoadObserved::query()->where([
['rms_status', '<>', 0],
['status', '=', 0],
['province_id', '=', $user->province_id]
])->count();
$road_observations['complaint_cnt'] = RoadObserved::query()->where([
['rms_status', '=', 0],
['province_id', '=', $user->province_id]
])->count();
}
elseif ($user->hasPermissionTo('show-fast-react-edarate-shahri')) {
throw_if(is_null($user->edarate_shahri_id), new ProhibitedAction('اداره ای برای شما در سامانه ثبت نشده است!'));
$conditions = [
$road_observations['operation_cnt'] = RoadObserved::query()->where([
['rms_status', '<>', 0],
['status', '=', 2],
['edarate_shahri_id', '=', $user->edarate_shahri_id]
];
$complaintConditions[] = ['edarate_shahri_id', '=', $user->edarate_shahri_id];
])->count();
$road_observations['complaint_cnt'] = RoadObserved::query()->where([
['rms_status', '=', 0],
['edarate_shahri_id', '=', $user->edarate_shahri_id]
])->count();
}
if (!empty($conditions)) {
$road_observations['operation_cnt'] = RoadObserved::query()->where($conditions)->count();
$road_observations['complaint_cnt'] = RoadObserved::query()->where($complaintConditions)->count();
$road_observations['total'] += $road_observations['operation_cnt'] + $road_observations['complaint_cnt'];
}
$superviseConditions = [
['status', '=', 0]
];
if ($user->hasPermissionTo('supervise-fast-react')) {
$road_observations['supervise_cnt'] = RoadObserved::query()->where($superviseConditions)->count();
$road_observations['complaint_cnt'] = RoadObserved::query()->where($complaintConditions)->count();
$road_observations['total'] += $road_observations['supervise_cnt'] + $road_observations['complaint_cnt'];
}
elseif ($user->hasPermissionTo('supervise-fast-react-province')) {
throw_if(is_null($user->province_id), new ProhibitedAction('استانی برای شما در سامانه ثبت نشده است!'));
$superviseConditions[] = ['province_id', '=', $user->province_id];
$complaintConditions[] = ['province_id', '=', $user->province_id];
$road_observations['supervise_cnt'] = RoadObserved::query()->where($superviseConditions)->count();
$road_observations['complaint_cnt'] = RoadObserved::query()->where($complaintConditions)->count();
$road_observations['total'] += $road_observations['supervise_cnt'] + $road_observations['complaint_cnt'];
}
$road_observations['total'] += $road_observations['operation_cnt'] + $road_observations['complaint_cnt'] + $road_observations['supervise_cnt'];
return $road_observations;
}

View File

@@ -108,14 +108,20 @@ class RoadObserved extends Model
protected function imageAfter(): Attribute
{
return Attribute::make(
get: fn($value) => $value == null ? null : Storage::disk('public')->url($value)
get: fn($value) => $value == null ? null :
(filter_var($value, FILTER_VALIDATE_URL)
? $value
: Storage::disk('public')->url($value))
);
}
protected function imageBefore(): Attribute
{
return Attribute::make(
get: fn($value) => $value == null ? null : Storage::disk('public')->url($value)
get: fn($value) => $value == null ? null :
(filter_var($value, FILTER_VALIDATE_URL)
? $value
: Storage::disk('public')->url($value))
);
}
}