change format for fill column harim

This commit is contained in:
2025-10-18 10:41:49 +03:30
parent 54a2ebba4d
commit 1bdd9abab3
7 changed files with 130 additions and 81 deletions

View File

@@ -12,13 +12,14 @@ use App\Http\Traits\ApiResponse;
use App\Models\City;
use App\Models\Harim;
use Illuminate\Database\Eloquent\ModelNotFoundException;
use Illuminate\Http\JsonResponse;
use Illuminate\Support\Facades\DB;
class PanjareVahedController extends Controller
{
use ApiResponse;
public function receiveNewRequest(ReceiveNewRequest $request)
public function receiveNewRequest(ReceiveNewRequest $request): JsonResponse
{
$wkt = 'POLYGON((' . implode(',', array_map(fn($c) => "{$c[0]} {$c[1]}", $request->primary_area['coordinates'])) . '))';
$result = DB::selectOne("SELECT ST_AsText(ST_PointOnSurface(ST_GeomFromText(?, 4326))) AS point", [$wkt]);
@@ -43,7 +44,7 @@ class PanjareVahedController extends Controller
$state = HarimStates::BARESI_EDARE_SHAHRESTAN->value;
Harim::query()->create([
$harim = Harim::query()->create([
'state_id' => $state,
'state_name' => HarimStates::name($state),
'panjare_vahed_id' => $request->request_id,
@@ -66,55 +67,68 @@ class PanjareVahedController extends Controller
'token' => $request->data['token'],
]);
return $this->successResponse([
return response()->json([
'id' => $harim->id,
'city' => $city->edarateShahri()->first()->name_fa,
'province' => $city->province()->first()->name_fa,
'statusCode' => 200,
]);
}
public function getAccessRoad(GetAccessRoadRequest $request)
public function getAccessRoad(GetAccessRoadRequest $request): JsonResponse
{
$state = HarimStates::BARESI_FILE_APLODE_SHODE_TAVASOTE_DAFTAR_HARIM->value;
Harim::query()
->firstWhere('panjare_vahed_id', '=', $request->request_id)
->update([
$harim = Harim::query()->firstWhere('panjare_vahed_id', '=', $request->request_id);
$harim->update([
'state_id' => $state,
'state_name' => HarimStates::name($state),
'access_road' => json_encode($request->access_road),
]);
return $this->successResponse();
return response()->json([
'id' => $harim->id,
'statusCode' => 200,
]);
}
public function getRejectRequest(GetRejectRequest $request)
public function getRejectRequest(GetRejectRequest $request): JsonResponse
{
$state = HarimStates::MOKHALEFAT_BA_DASTGAH->value;
Harim::query()
->firstWhere('panjare_vahed_id', '=', $request->request_id)
->update([
'state_id' => $state,
'state_name' => HarimStates::name($state),
]);
$harim = Harim::query()->firstWhere('panjare_vahed_id', '=', $request->request_id);
return $this->successResponse();
$harim->update([
'state_id' => $state,
'state_name' => HarimStates::name($state),
]);
return response()->json([
'id' => $harim->id,
'statusCode' => 200,
]);
}
public function getFinalPolygons(GetFinalPolygonsRequest $request)
public function getFinalPolygons(GetFinalPolygonsRequest $request): JsonResponse
{
$state = HarimStates::TAEDE_ARSE_VA_AYAN_ERSAL_SHODE_TAVASOT_DAFTAR_HARIM->value;
Harim::query()
->firstWhere('panjare_vahed_id', '=', $request->request_id)
->update([
'state_id' => $state,
'state_name' => HarimStates::name($state),
'final_area' => json_encode($request->final_area),
'final_plan' => json_encode($request->final_plan),
]);
$harim = Harim::query()->firstWhere('panjare_vahed_id', '=', $request->request_id);
return $this->successResponse();
$harim->update([
'state_id' => $state,
'state_name' => HarimStates::name($state),
'final_area' => json_encode($request->final_area),
'final_plan' => json_encode($request->final_plan),
]);
return response()->json([
'id' => $harim->id,
'statusCode' => 200,
]);
}
}