Merge pull request #54 from witelgroup/feature/DriverCartable

driver cartable
This commit is contained in:
Amir Ghasempoor
2025-09-27 15:32:25 +03:30
committed by GitHub
6 changed files with 84 additions and 3 deletions

View File

@@ -39,6 +39,7 @@ class TransportationUnitController extends Controller
$mission->update([ $mission->update([
'state_id' => $state, 'state_id' => $state,
'state_name' => MissionStates::name($state), 'state_name' => MissionStates::name($state),
'km' => $request->km
]); ]);
}); });

View File

@@ -7,6 +7,7 @@ use App\Http\Controllers\Controller;
use App\Http\Requests\V3\Rahdaran\StoreRequest; use App\Http\Requests\V3\Rahdaran\StoreRequest;
use App\Http\Requests\V3\Rahdaran\UpdateRequest; use App\Http\Requests\V3\Rahdaran\UpdateRequest;
use App\Http\Traits\ApiResponse; use App\Http\Traits\ApiResponse;
use App\Models\Province;
use App\Models\Rahdaran; use App\Models\Rahdaran;
use Illuminate\Database\QueryException; use Illuminate\Database\QueryException;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
@@ -28,11 +29,17 @@ class RahdaranController extends Controller
public function store(StoreRequest $request): JsonResponse public function store(StoreRequest $request): JsonResponse
{ {
$province = Province::query()->find($request->input('province_id'));
Rahdaran::query()->create([ Rahdaran::query()->create([
'name' =>$request->name, 'name' => $request->name,
'code' =>$request->code, 'code' => $request->code,
'mobile' =>$request->mobile, 'mobile' => $request->mobile,
'province_id' => $province->id,
'province_name' => $province->name_fa,
'edareh_shahri_id' => $request->edareh_shahri_id,
]); ]);
return $this->successResponse(); return $this->successResponse();
} }
@@ -43,11 +50,17 @@ class RahdaranController extends Controller
public function update(UpdateRequest $request, Rahdaran $rahdaran): JsonResponse public function update(UpdateRequest $request, Rahdaran $rahdaran): JsonResponse
{ {
$province = Province::query()->find($request->input('province_id'));
$rahdaran->update([ $rahdaran->update([
'name' =>$request->name, 'name' =>$request->name,
'code' =>$request->code, 'code' =>$request->code,
'mobile' =>$request->mobile, 'mobile' =>$request->mobile,
'province_id' => $province->id,
'province_name' => $province->name_fa,
'edareh_shahri_id' => $request->edareh_shahri_id,
]); ]);
return $this->successResponse(); return $this->successResponse();
} }

View File

@@ -26,6 +26,8 @@ class StoreRequest extends FormRequest
'name' => 'required|string|max:255', 'name' => 'required|string|max:255',
'code' => 'required|string|max:255|unique:rahdaran,code', 'code' => 'required|string|max:255|unique:rahdaran,code',
'mobile' => 'required|digits:11|regex:/^09\d{9}$/', 'mobile' => 'required|digits:11|regex:/^09\d{9}$/',
'province_id' => 'required|exists:provinces,id',
'edareh_shahri_id' => 'required|exists:edarate_shahri,id',
]; ];
} }
} }

View File

@@ -27,6 +27,8 @@ class UpdateRequest extends FormRequest
'name' => 'required|string|max:255', 'name' => 'required|string|max:255',
'code' => ['required', 'string', Rule::unique('rahdaran', 'code')->ignore($this->rahdaran->id)], 'code' => ['required', 'string', Rule::unique('rahdaran', 'code')->ignore($this->rahdaran->id)],
'mobile' => 'required|digits:11|regex:/^09\d{9}$/', 'mobile' => 'required|digits:11|regex:/^09\d{9}$/',
'province_id' => 'required|exists:provinces,id',
'edareh_shahri_id' => 'required|exists:edarate_shahri,id',
]; ];
} }
} }

View File

@@ -0,0 +1,35 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::table('rahdaran', function (Blueprint $table) {
$table->unsignedTinyInteger('province_id');
$table->foreign('province_id')->references('id')->on('provinces');
$table->string('province_name');
$table->unsignedBigInteger('edareh_shahri_id');
$table->foreign('edareh_shahri_id')->references('id')->on('edarate_shahri');
$table->boolean('is_driver')->default(false);
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::table('rahdaran', function (Blueprint $table) {
$table->dropForeign('province_id');
$table->dropForeign('edareh_shahri_id');
$table->dropColumn(['province_id', 'province_name']);
});
}
};

View File

@@ -0,0 +1,28 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::table('missions', function (Blueprint $table) {
$table->string('km')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::table('missions', function (Blueprint $table) {
$table->dropColumn('km');
});
}
};