diff --git a/app/Http/Controllers/WorkstationsJobsController.php b/app/Http/Controllers/WorkstationsJobsController.php index f2d37036..b7b11c6f 100644 --- a/app/Http/Controllers/WorkstationsJobsController.php +++ b/app/Http/Controllers/WorkstationsJobsController.php @@ -16,8 +16,7 @@ class WorkstationsJobsController extends Controller { public function receiveAnswersEquipment(Request $request) - { - + { // Primeiro ele deve criar a associação entre id atual do control + perguntas e respostas $receiveAnswersElementalTasks = new workstationsTaskAnswers; $receiveAnswersElementalTasks->control_equipment_workstation_id = $request->control_equipment_workstationid; @@ -54,8 +53,7 @@ public function receiveAnswersEquipment(Request $request) // update departure_date value $receiveDataControlWs = ControlEquipmentWorkstation::find($request->control_equipment_workstationid); - $receiveDataControlWs->departure_date = now(); - $receiveDataControlWs->save(); + //FINALIZOU A TAREFA ANTERIOR COM DEPARTURE @@ -86,6 +84,7 @@ public function receiveAnswersEquipment(Request $request) $receiveDataElementalTask = ElementalTasks::find($recebeDataControlId->elemental_tasks_id); $receiveDataEquipment = Equipment::find($recebeDataControlId->equipment_id); + if ($next_todo < 25) { $elemental_tasks_id = $next_todo; $further_tasks_id = null; @@ -93,103 +92,149 @@ public function receiveAnswersEquipment(Request $request) $elemental_tasks_id = null; $further_tasks_id = $next_todo; } + // dd($recebeDataControlId->id_workstations ); + - // Para criar a divisao do equipamento em entre compo e Obturador - if ($receiveDataControlWs->elemental_tasks_id == 5 && $receiveDataEquipment->equipment_type_id == 3) { + if ($request->stateEquipment == "cancel") { + $deleteDataControlWhereRefreashPage = ControlEquipmentWorkstation::where('id_workstations', $receiveDataControlWs->id_workstations) + ->where('equipment_id', $receiveDataEquipment->equipment_id) + ->whereNotNull('entry_date') + ->whereNull('departure_date') + ->first(); - $nextEquipmentTask1 = DB::select(" + if ($deleteDataControlWhereRefreashPage) { + $deleteDataControlWhereRefreashPage->id_workstations = null; + $deleteDataControlWhereRefreashPage->entry_date = null; + $deleteDataControlWhereRefreashPage->departure_date = null; + $deleteDataControlWhereRefreashPage->save(); + } + return redirect()->route('enterWorkstation'); + + } if ($request->stateEquipment == "finish") { + + $receiveDataControlWs->departure_date = now(); + $receiveDataControlWs->save(); + + $nextEquipmentTaskStateEquipmentFinish = DB::select(" + INSERT INTO control_equipment_workstation + (equipment_id, id_workstations, elemental_tasks_id, further_tasks_id, equipment_comments_id, entry_date, departure_date) + VALUES + (:equipment_id,NULL,:elemental_tasks_id,:further_tasks_id,NULL,NULL,NULL) + ", [ + 'equipment_id' => $receiveDataEquipment->equipment_id, + 'elemental_tasks_id' => $elemental_tasks_id, + 'further_tasks_id' => $further_tasks_id + ]); + return redirect()->route('enterWorkstation'); + + } + if ($request->stateEquipment == 'next') { + + + + $receiveDataControlWs->departure_date = now(); + $receiveDataControlWs->save(); + + // Para criar a divisao do equipamento em entre compo e Obturador + if ($receiveDataControlWs->elemental_tasks_id == 5 && $receiveDataEquipment->equipment_type_id == 3) { + + $nextEquipmentTask1 = DB::select(" INSERT INTO control_equipment_workstation (equipment_id, id_workstations, elemental_tasks_id, further_tasks_id, equipment_comments_id, entry_date, departure_date) VALUES (:equipment_id,NULL,8,:further_tasks_id,NULL,NULL,NULL) ", [ - 'equipment_id' => $receiveDataEquipment->equipment_id, - 'further_tasks_id' => $further_tasks_id - ]); + 'equipment_id' => $receiveDataEquipment->equipment_id, + 'further_tasks_id' => $further_tasks_id + ]); - $nextEquipmentTask2 = DB::select(" + $nextEquipmentTask2 = DB::select(" INSERT INTO control_equipment_workstation (equipment_id, id_workstations, elemental_tasks_id, further_tasks_id, equipment_comments_id, entry_date, departure_date) VALUES (:equipment_id,NULL,9,:further_tasks_id,NULL,NULL,NULL) ", [ - 'equipment_id' => $receiveDataEquipment->equipment_id, - 'further_tasks_id' => $further_tasks_id - ]); - // Equipamento separado em 2 corpo/ Obturador - return redirect()->route('enterWorkstation'); - } - - - // Quando concluir as tarefas 8 e 9 - else if ($receiveDataEquipment->equipment_type_id == 3 && ($receiveDataControlWs->elemental_tasks_id == 8 || $receiveDataControlWs->elemental_tasks_id == 9)) { - // dd('recebe if Quando concluir as tarefas 8 e 9 '); - - // Verifique se já existem registros na tabela control_equipment_workstation - $existingRecords = DB::table('control_equipment_workstation') - ->where('equipment_id', $receiveDataControlWs->equipment_id) - ->whereIn('elemental_tasks_id', [8, 9]) - ->whereNotNull('departure_date') - ->get(); - - // Verifique se há pelo menos dois registros que atendem às condições - if ($existingRecords->count() >= 2) { - - // Crie um novo registro com elemental_tasks_id igual a 10 - $nextEquipmentTask3 = DB::table('control_equipment_workstation')->insertGetId([ - 'equipment_id' => $receiveDataControlWs->equipment_id, - 'id_workstations' => NULL, - 'elemental_tasks_id' => 10, - 'further_tasks_id' => $further_tasks_id, - 'equipment_comments_id' => NULL, - 'entry_date' => NULL, - 'departure_date' => NULL, + 'equipment_id' => $receiveDataEquipment->equipment_id, + 'further_tasks_id' => $further_tasks_id ]); + // Equipamento separado em 2 corpo/ Obturador + return redirect()->route('enterWorkstation'); } - return redirect()->route('enterWorkstation'); - } + // Quando concluir as tarefas 8 e 9 + if ($receiveDataEquipment->equipment_type_id == 3 && ($receiveDataControlWs->elemental_tasks_id == 8 || $receiveDataControlWs->elemental_tasks_id == 9)) { + // dd('recebe if Quando concluir as tarefas 8 e 9 '); - //Se a proxima WS for igual a atual deve criar dados para a ws - else if ($recebeDataControlId->id_workstations == $next_workstation) { + // Verifique se já existem registros na tabela control_equipment_workstation + $existingRecords = DB::table('control_equipment_workstation') + ->where('equipment_id', $receiveDataControlWs->equipment_id) + ->whereIn('elemental_tasks_id', [8, 9]) + ->whereNotNull('departure_date') + ->get(); - $nextEquipmentTask = DB::select(" + // Verifique se há pelo menos dois registros que atendem às condições + if ($existingRecords->count() >= 2) { + + // Crie um novo registro com elemental_tasks_id igual a 10 + $nextEquipmentTask3 = DB::table('control_equipment_workstation')->insertGetId([ + 'equipment_id' => $receiveDataControlWs->equipment_id, + 'id_workstations' => NULL, + 'elemental_tasks_id' => 10, + 'further_tasks_id' => $further_tasks_id, + 'equipment_comments_id' => NULL, + 'entry_date' => NULL, + 'departure_date' => NULL, + ]); + } + + return redirect()->route('enterWorkstation'); + } + + + + //Se a proxima WS for igual a atual deve criar dados para a ws + if ($recebeDataControlId->id_workstations == $next_workstation) { + + + $nextEquipmentTask = DB::select(" INSERT INTO control_equipment_workstation (equipment_id, id_workstations, elemental_tasks_id, further_tasks_id, equipment_comments_id, entry_date, departure_date) VALUES (:equipment_id,:next_workstation,:elemental_tasks_id,:further_tasks_id,NULL,CURRENT_TIMESTAMP,NULL) ", [ - 'equipment_id' => $receiveDataEquipment->equipment_id, - 'next_workstation' => $next_workstation, - 'elemental_tasks_id' => $elemental_tasks_id, - 'further_tasks_id' => $further_tasks_id - ]); + 'equipment_id' => $receiveDataEquipment->equipment_id, + 'next_workstation' => $next_workstation, + 'elemental_tasks_id' => $elemental_tasks_id, + 'further_tasks_id' => $further_tasks_id + ]); - $lastInsertedId = DB::getPdo()->lastInsertId(); + $lastInsertedId = DB::getPdo()->lastInsertId(); - return view('workstations.workstations', [ - 'receiveDataElementalTask' => $receiveDataElementalTask, - 'receiveDataEquipment' => $receiveDataEquipment, - 'control_ew_id' => $lastInsertedId, - 'task_todo' => $next_todo - ]); - // Se verificar que a proxima tarefa e Null ele deve apenas voltar ao start - - } - else if ($next_workstation == null) { - - $nextEquipmentTask = DB::select(" + $receiveDataNewElementalTask = ElementalTasks::find($elemental_tasks_id); + + return view('workstations.workstations', [ + 'receiveDataElementalTask' => $receiveDataNewElementalTask, + 'receiveDataEquipment' => $receiveDataEquipment, + 'control_ew_id' => $lastInsertedId, + 'task_todo' => $next_todo + ]); + // Se verificar que a proxima tarefa e Null ele deve apenas voltar ao start + + } else if ($next_workstation == null) { + + $nextEquipmentTask = DB::select(" INSERT INTO control_equipment_workstation (equipment_id, id_workstations, elemental_tasks_id, further_tasks_id, equipment_comments_id, entry_date, departure_date) VALUES (:equipment_id,NULL,:elemental_tasks_id,:further_tasks_id,NULL,NULL,NULL) ", [ - 'equipment_id' => $receiveDataEquipment->equipment_id, - 'elemental_tasks_id' => $elemental_tasks_id, - 'further_tasks_id' => $further_tasks_id - ]); - return redirect()->route('enterWorkstation'); - } + 'equipment_id' => $receiveDataEquipment->equipment_id, + 'elemental_tasks_id' => $elemental_tasks_id, + 'further_tasks_id' => $further_tasks_id + ]); + return redirect()->route('enterWorkstation'); + } + } } // Ao selecionar o equipamento para se inicializar a tarefa deve mostrar os dados relacionados. diff --git a/resources/views/Templates/templateWorkstations.blade.php b/resources/views/Templates/templateWorkstations.blade.php index eeff7835..4c7d8014 100644 --- a/resources/views/Templates/templateWorkstations.blade.php +++ b/resources/views/Templates/templateWorkstations.blade.php @@ -9,13 +9,15 @@ - + - + @@ -48,7 +50,8 @@