add gps to migration

This commit is contained in:
2025-12-29 11:45:42 +03:30
parent f7e044f65a
commit eb690b59a7
7 changed files with 54 additions and 15 deletions

View File

@@ -47,11 +47,17 @@ class DailyMovingMachineCommand extends Command
$missionCodes = $missions->pluck('machine_code'); $missionCodes = $missions->pluck('machine_code');
$cmmsOnly = $cmms->diff($missionCodes); $cmmsOnly = $cmms->diff($missionCodes);
$missionOnly = $missionCodes->diff($cmms); // $missionOnly = $missionCodes->diff($cmms);
$violationMachineCodes = MissionViolation::query()->whereDate('request_date', $date)->pluck('machine_code');
foreach ($cmmsOnly as $code) { foreach ($cmmsOnly as $code) {
$cmm = $response->firstWhere('machineCode', '=', $code); $cmm = $response->firstWhere('machineCode', '=', $code);
if ($violationMachineCodes->contains($cmm->machine_code)) {
break;
}
MissionViolation::query()->create([ MissionViolation::query()->create([
'machine_code' => $code, 'machine_code' => $code,
'machine_id' => CMMSMachine::query()->firstWhere('machine_code', '=', $code)->id, 'machine_id' => CMMSMachine::query()->firstWhere('machine_code', '=', $code)->id,
@@ -63,16 +69,16 @@ class DailyMovingMachineCommand extends Command
]); ]);
} }
foreach ($missionOnly as $code) { // foreach ($missionOnly as $code) {
MissionViolation::query()->create([ // MissionViolation::query()->create([
'machine_code' => $code, // 'machine_code' => $code,
'mission_id' => $missions->where('machine_code', '=', $code)->value('id'), // 'mission_id' => $missions->where('machine_code', '=', $code)->value('id'),
'type' => MissionViolationType::ADAM_TAHAROK->value, // 'type' => MissionViolationType::ADAM_TAHAROK->value,
'request_date' => $date, // 'request_date' => $date,
]); // ]);
} // }
$this->info("ماشین‌های متحرک بدون مأموریت: " . $cmmsOnly->count()); $this->info("ماشین‌های متحرک بدون مأموریت: " . $cmmsOnly->count());
$this->info("مأموریت‌های بدون حرکت در CMMS: " . $missionOnly->count()); // $this->info("مأموریت‌های بدون حرکت در CMMS: " . $missionOnly->count());
} }
} }

View File

@@ -198,6 +198,7 @@ class RequestPortalController extends Controller
{ {
DB::transaction(function () use ($mission) { DB::transaction(function () use ($mission) {
$mission->rahdaran()->detach(); $mission->rahdaran()->detach();
$mission->histories()->delete();
$mission->delete(); $mission->delete();
}); });

View File

@@ -78,6 +78,7 @@ class ViolationManagementController extends Controller
'machine_code' => $machine->machine_code,// 'machine_code' => $machine->machine_code,//
'station_id' => $user->station_id, 'station_id' => $user->station_id,
'station_name' => RahdariPoint::query()->find( $user->station_id)->name, 'station_name' => RahdariPoint::query()->find( $user->station_id)->name,
'km' => $violation->km ?? null,
]); ]);
$mission->rahdaran()->sync($request->rahdaran); $mission->rahdaran()->sync($request->rahdaran);
@@ -101,6 +102,8 @@ class ViolationManagementController extends Controller
'type'=> MissionViolationType::KHOROJ_BEDONE_MOGAVEZ->value, 'type'=> MissionViolationType::KHOROJ_BEDONE_MOGAVEZ->value,
'status' => MissionViolationStatus::BEDON_EGHDAM->value, 'status' => MissionViolationStatus::BEDON_EGHDAM->value,
'request_date' => now(), 'request_date' => now(),
'km' => $request->km,
'gps' => 0,
]); ]);
return $this->successResponse(); return $this->successResponse();

View File

@@ -26,7 +26,7 @@ class StoreRequest extends FormRequest
{ {
return [ return [
'machine_code' => 'required', 'machine_code' => 'required',
'km'=> 'string',
]; ];
} }
} }

View File

@@ -26,8 +26,8 @@ class UpdateRequest extends FormRequest
public function rules(): array public function rules(): array
{ {
return [ return [
'exit_time' => 'required', 'exit_time' => 'date',
'enter_time' => 'required', 'enter_time' => 'date',
]; ];
} }
} }

View File

@@ -13,7 +13,7 @@ class DailyMoveMachineService
{ {
$user = Auth::user(); $user = Auth::user();
$query = MissionViolation::query(); $query = MissionViolation::query()->with('machine:id,car_name');
if ($user->hasPermissionTo('manage-violation-station')) { if ($user->hasPermissionTo('manage-violation-station')) {
$query->whereRelation('machine', 'station_id', '=', $user->station_id); $query->whereRelation('machine', 'station_id', '=', $user->station_id);
@@ -26,7 +26,7 @@ class DailyMoveMachineService
} }
return DataTableFacade::run( return DataTableFacade::run(
MissionViolation::query(), $query,
$request, $request,
allowedFilters: ['*'], allowedFilters: ['*'],
allowedSortings: ['*'], allowedSortings: ['*'],

View File

@@ -0,0 +1,29 @@
<?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('mission_violations', function (Blueprint $table) {
$table->string('km')->nullable();
$table->unsignedTinyInteger('gps')->default(1);
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::table('mission_violations', function (Blueprint $table) {
$table->dropColumn(['km', 'gps']);
});
}
};