compleate controller and routs

This commit is contained in:
2025-05-19 10:31:52 +03:30
parent f6f5bc4aa4
commit 355941d1e1
4 changed files with 26 additions and 17 deletions

View File

@@ -2,18 +2,14 @@
namespace App\Http\Controllers\V3\Dashboard\Mission;
use App\Facades\DataTable\DataTableFacade;
use App\Http\Controllers\Controller;
use App\Http\Requests\V3\Mission\StoreRequest;
use App\Http\Requests\V3\Mission\UpdateRequest;
use App\Http\Requests\V3\Mission\RequestPortal\StoreRequest;
use App\Http\Requests\V3\Mission\RequestPortal\UpdateRequest;
use App\Http\Traits\ApiResponse;
use App\Models\CMMSMachine;
use App\Models\Mission;
use App\Models\Rahdaran;
use App\Services\Missions\CartableService;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
class CartableController extends Controller
{
@@ -42,7 +38,7 @@ class CartableController extends Controller
'end_point' =>$request->end_point,
]);
$mission->rahdaran()->attach($request->rahdaran_id);
$mission->rahdaran()->attach($request->rahdaran);
return $this->successResponse();
@@ -53,7 +49,7 @@ class CartableController extends Controller
return $this->successResponse($mission);
}
public function update(UpdateRequest $request,Mission $mission)
public function update(UpdateRequest $request,Mission $mission): JsonResponse
{
$mission->update([
'state_id' => $request->state_id,
@@ -67,18 +63,20 @@ class CartableController extends Controller
'description' =>$request->description,
'start_point' =>$request->start_point,
'end_point' =>$request->end_point,
]);
$mission->rahdaran()->attach($request->rahdaran_id);
$mission->rahdaran()->sync($request->rahdaran);
return $this->successResponse();
}
public function destroy(Mission $mission)
public function destroy(Mission $mission): JsonResponse
{
$mission->rahdaran()->detach();
$mission->delete();
return $this->successResponse($mission);
return $this->successResponse();
}
}

View File

@@ -1,6 +1,6 @@
<?php
namespace App\Http\Requests\V3\Mission;
namespace App\Http\Requests\V3\Mission\RequestPortal;
use Illuminate\Foundation\Http\FormRequest;
@@ -22,8 +22,8 @@ class StoreRequest extends FormRequest
public function rules(): array
{
return [
'rahdaran_id' => 'required|array',
'rahdaran_id.*' => 'exists:rahdaran,id',
'rahdaran' => 'required|array',
'rahdaran.*' => 'exists:rahdaran,id',
'requested_machine_type' => 'required|string|max:255',
'requested_machine_numbers'=> 'required|integer|max:255',
'type' => 'required|string|max:50',

View File

@@ -1,6 +1,6 @@
<?php
namespace App\Http\Requests\V3\Mission;
namespace App\Http\Requests\V3\Mission\RequestPortal;
use Illuminate\Foundation\Http\FormRequest;
@@ -22,8 +22,8 @@ class UpdateRequest extends FormRequest
public function rules(): array
{
return [
'rahdaran_id' => 'required|array',
'rahdaran_id.*' => 'exists:rahdaran,id',
'rahdaran' => 'required|array',
'rahdaran.*' => 'exists:rahdaran,id',
'requested_machine_type' => 'required|string|max:255',
'requested_machine_numbers'=> 'required|integer|max:255',
'type' => 'required|string|max:50',

View File

@@ -7,6 +7,7 @@ use App\Http\Controllers\V3\Dashboard\Azmayesh\AzmayeshController;
use App\Http\Controllers\V3\Dashboard\Azmayesh\AzmayeshSampleController;
use App\Http\Controllers\V3\Dashboard\Azmayesh\AzmayeshTypeController;
use App\Http\Controllers\V3\Dashboard\ItemsManagementController;
use App\Http\Controllers\V3\Dashboard\Mission\CartableController;
use App\Http\Controllers\V3\Dashboard\ObservedItemController;
use App\Http\Controllers\V3\Dashboard\AccidentReceiptController;
use App\Http\Controllers\V3\Dashboard\OtpManagementController;
@@ -424,3 +425,13 @@ Route::prefix('road_maintenance_station')
Route::post('/{rahdariPoint}', 'update')->name('update')->middleware('permission:edit-tollhouse|edit-tollhouse-province');
Route::delete('/{rahdariPoint}', 'destroy')->name('destroy')->middleware('permission:delete-tollhouse|delete-tollhouse-province');
});
Route::prefix('missions')
->name('missions.')
->controller(CartableController::class)
->group(function () {
Route::get('/', 'index')->name('index');
Route::post('/', 'store')->name('store');
Route::get('/{mission}', 'show')->name('show');
Route::post('/{mission}', 'update')->name('update');
Route::delete('/{mission}', 'destroy')->name('destroy');
});