diff --git a/app/Http/Controllers/ProjectoDatacontroller.php b/app/Http/Controllers/ProjectoDatacontroller.php index b73f24f2..612ed13a 100755 --- a/app/Http/Controllers/ProjectoDatacontroller.php +++ b/app/Http/Controllers/ProjectoDatacontroller.php @@ -9,6 +9,7 @@ use App\Models\EquipmentAssociationAmbit; use App\Models\EquipmentComment; use App\Models\EquipmentWorkHistory; +use App\Models\HistoryOfEquipmentAmbitsInTheProject; use App\Models\ReceiveImagesControlEquipmentWorkstation; use App\Models\TasksAssociationAmbits; use App\Models\Unit; @@ -44,11 +45,35 @@ class ProjectoDatacontroller extends Controller public function createPDFforcompletedEquipment($equipmentId) { $detailsEquipmentWorkHistory = EquipmentWorkHistory::where('equipment_id', $equipmentId)->first(); - $detailsEquipment = Equipment::where('equipment_id', $equipmentId)->first(); - $receiveDetailsProject = CompanyProject::where('company_projects_id', $detailsEquipmentWorkHistory->company_projects_id)->first(); - $receiveAmbit = EquipmentAssociationAmbit::where('equipmentWorkHistorys_id', $detailsEquipmentWorkHistory->equipmentWorkHistorys_id)->first(); - // dd($receiveDetailsProject->plant->company->company_logo); + $detailsEquipment = Equipment::where('equipment_id', $equipmentId)->first(); + // Inicializa o array para armazenar os atributos específicos + $specificAttributesArray = []; + + $receiveSpecificAttributes = SpecificAttributesEquipmentType::where('equipment_id', $detailsEquipment->equipment_id)->get(); + $receiveAmbit = EquipmentAssociationAmbit::where('equipmentWorkHistorys_id', $detailsEquipmentWorkHistory->equipmentWorkHistorys_id)->first(); + $receiveDetailsProject = CompanyProject::where('company_projects_id', $detailsEquipmentWorkHistory->company_projects_id)->first(); + + // Corre a coleção e preenche o array 'specificAttributesArray' + foreach ($receiveSpecificAttributes as $attribute) { + // Verifica se a relação com 'generalAttributesEquipment' existe para evitar erro + if (isset($attribute->generalAttributesEquipment)) { + $key = $attribute->general_attributes_equipment_id; + $description = $attribute->generalAttributesEquipment->general_attributes_equipment_description; + $value = $attribute->specific_attributes_value; + + // Adiciona ao array temporário com a estrutura chave => [description, value] + $specificAttributesArray[$key] = [ + 'description' => $description, + 'value' => $value + ]; + } + } + + // Atribui o array de 'SpecificAttributes' ao modelo usando o método 'setAttribute' + $detailsEquipment->setAttribute('specificAttributes', $specificAttributesArray); + + // dd($detailsEquipment); // Recebe apenas as tarefas já feitas $completedTasksHistory = ControlEquipmentWorkstation::with('workstationsTaskAnswers', 'receiveImages') @@ -59,38 +84,104 @@ public function createPDFforcompletedEquipment($equipmentId) ->orderBy('elemental_tasks_id', 'asc') ->get(); + // Verifica se a coleção tem registros + if ($completedTasksHistory->isNotEmpty()) { + // Obter a data mais antiga (primeira tarefa feita) + $oldestDate = $completedTasksHistory->min('departure_date'); - // Cria uma coleção para armazenar todas as tarefas, concluídas e não concluídas + // Obter a data mais recente (última tarefa feita) + $latestDate = $completedTasksHistory->max('departure_date'); + + // Formata as datas apenas para mostrar o dia + $startDate = \Carbon\Carbon::parse($oldestDate)->format('Y-m-d'); + $endDate = \Carbon\Carbon::parse($latestDate)->format('Y-m-d'); + + } else { + + // Caso não haja dados, defina datas nulas + $oldestDate = null; + $latestDate = null; + } + + // Apos receber todas as tarefas deve verificar qual o ambito atual e comparar em qual ambito foram feitas as tarefas, ai sim verificar oque foi feito no Ambito antigo e oque foi feito no atual. + + // histórico de âmbitos por time_change_ambit do mais antigo ao mais recente + $receiveAmbitHistory = HistoryOfEquipmentAmbitsInTheProject::where('equipmentWorkHistorys_id', $detailsEquipmentWorkHistory->equipmentWorkHistorys_id) + ->orderBy('time_change_ambit', 'desc') + ->get(); + + + // Identifica o último âmbito (o mais recente) + $latestAmbitHistory = $receiveAmbitHistory->last(); + + // Separa as tarefas do histórico por âmbitos diferentes + $tasksByAmbit = $completedTasksHistory->groupBy('history_of_equipment_ambits_id'); + + + //coleção para armazenar todas as tarefas, concluídas e não concluídas $receiveAllTasksHistiory = collect(); $taskImages = []; - foreach ($completedTasksHistory as $taskHistory) { - $taskHistory->cardTypeStyle = 'gray'; - $taskHistory->typeStatusHistory = 'historic'; + // Contador para a ordem dos âmbitos + $ambitCounter = 1; - $workstationTaskAnswer = $taskHistory->workstationsTaskAnswers->first(); + // Itera sobre cada âmbito anterior + foreach ($receiveAmbitHistory as $index => $ambitHistory) { - if ($workstationTaskAnswer && $workstationTaskAnswer->answer_json) { - $answersArray = json_decode($workstationTaskAnswer->answer_json, true); - $formattedAnswers = []; - foreach ($answersArray as $item) { - if (isset($item['question']) && isset($item['value'])) { - $formattedAnswers[$item['question']] = $item['value']; + $ambitId = $ambitHistory->history_of_equipment_ambits_id; + + // Verifica se há tarefas associadas a esse âmbito + if ($tasksByAmbit->has($ambitId)) { + $tasksForAmbit = $tasksByAmbit->get($ambitId); + + foreach ($tasksForAmbit as $taskHistory) { + if ($ambitId == $latestAmbitHistory->history_of_equipment_ambits_id) { + // Se a tarefa pertence ao último âmbito (mais recente) + $taskHistory->cardTypeStyle = 'gray'; + $taskHistory->typeStatusHistory = 'historic'; + } else { + // Se a tarefa pertence a âmbitos anteriores + $taskHistory->cardTypeStyle = 'blue'; + $taskHistory->AmbitHistoryTimeChange = $ambitHistory->time_change_ambit; + $taskHistory->AmbitHistoryOrder = $ambitCounter; // Adiciona o contador + $taskHistory->typeStatusHistory = 'historic'; + + // Adiciona AmbitName dinamicamente + if ($ambitHistory->AmbitsEquipment) { + $taskHistory->AmbitName = $ambitHistory->AmbitsEquipment->ambits_description; + } else { + $taskHistory->AmbitName = 'N/A'; // Defina 'N/A' ou outro valor se não houver AmbitsEquipment + } } + + $workstationTaskAnswer = $taskHistory->workstationsTaskAnswers->first(); + + if ($workstationTaskAnswer && $workstationTaskAnswer->answer_json) { + $answersArray = json_decode($workstationTaskAnswer->answer_json, true); + $formattedAnswers = []; + foreach ($answersArray as $item) { + if (isset($item['question']) && isset($item['value'])) { + $formattedAnswers[$item['question']] = $item['value']; + } + } + $taskHistory->formatted_answers = $formattedAnswers; + } else { + $taskHistory->formatted_answers = []; + } + + if ($taskHistory->receiveImages) { + $imagePaths = $taskHistory->receiveImages->image_paths; + $taskImages[$taskHistory->control_equipment_workstation_id] = is_array($imagePaths) ? $imagePaths : json_decode($imagePaths, true); + } else { + $taskImages[$taskHistory->control_equipment_workstation_id] = []; + } + + $receiveAllTasksHistiory->push($taskHistory); } - $taskHistory->formatted_answers = $formattedAnswers; - } else { - $taskHistory->formatted_answers = []; } - if ($taskHistory->receiveImages) { - $imagePaths = $taskHistory->receiveImages->image_paths; - $taskImages[$taskHistory->control_equipment_workstation_id] = is_array($imagePaths) ? $imagePaths : json_decode($imagePaths, true); - } else { - $taskImages[$taskHistory->control_equipment_workstation_id] = []; - } - - $receiveAllTasksHistiory->push($taskHistory); + // Incrementa o contador para o próximo âmbito + $ambitCounter++; } // Agrupa as tarefas concluídas por elemental_tasks_id e seleciona a mais recente por departure_date @@ -100,20 +191,11 @@ public function createPDFforcompletedEquipment($equipmentId) return $group->sortByDesc('departure_date')->first(); }); - - // // Define os caminhos das logos - // $defaultLogoPath = '/img/ispt/4.0/Ispt4.0_Símbolo_Fundo_Azul-Marinho@2x-100.jpg'; - - // // Verifica se a logo do projeto está definida e não está vazia - // $projectLogoPath = !empty($receiveDetailsProject->plant->company->project_logo) ? $receiveDetailsProject->plant->company->project_logo : $defaultLogoPath; - - // // Verifica se a logo da empresa está definida e não está vazia - // $companyLogoPath = !empty($receiveDetailsProject->plant->company->company_logo) ? $receiveDetailsProject->plant->company->company_logo : $defaultLogoPath; - - - // Define os caminhos das logos + // Define os caminhos das logos- Simbolo ISPT_4.0 $defaultLogoPath = '/img/ispt/4.0/Ispt4.0_Símbolo_Fundo_Azul-Marinho@2x-100.jpg'; + $isptLogoPath = '/img/ispt/ispt.jpg'; + // Verifica se a logo do projeto está definida e não está vazia $projectLogoPath = !empty($receiveDetailsProject->plant->company->project_logo) ? $receiveDetailsProject->plant->company->project_logo : $defaultLogoPath; @@ -124,26 +206,59 @@ public function createPDFforcompletedEquipment($equipmentId) $companyLogoPath = $defaultLogoPath; } + // Cria uma coleção para armazenar os históricos de âmbitos + $ambitHistories = collect(); + + // Itera sobre a coleção original $receiveAllTasksHistiory + foreach ($receiveAllTasksHistiory as $taskHistory) { + + // Verifica se os campos AmbitHistoryTimeChange e AmbitHistoryOrder estão presentes + if (isset($taskHistory->AmbitHistoryTimeChange) && isset($taskHistory->AmbitHistoryOrder)) { + + // Extrai apenas a data da coluna AmbitHistoryTimeChange + $ambitDate = \Carbon\Carbon::parse($taskHistory->AmbitHistoryTimeChange)->format('Y-m-d'); + + // Cria uma nova entrada com os valores desejados + $ambitHistories->push([ + 'AmbitHistoryOrder' => $taskHistory->AmbitHistoryOrder, + 'AmbitName' => isset($taskHistory->AmbitName) ? $taskHistory->AmbitName : 'N/A', + 'AmbitHistoryTimeChange' => $ambitDate + ]); + } + } + + //Precisamos receber o Tipo de equipamento e detalhes da Obra, alem do atributos especificos de acordo com o tipo de equipamento. + // Converte as imagens para base64 usando o serviço PdfWrapper $pdfWrapper = new PdfWrapper(); - // dd($receiveAllTasksHistiory); - // Gera e retorna o PDF return $pdfWrapper - + + // ->setIncludePath('$PATH:/usr/bin') ->loadView('projectsClients.pdf.testePdf', [ - 'tag' => $detailsEquipment->equipment_tag, - 'numeroPanini' => $detailsEquipmentWorkHistory->ispt_number, - 'nObra' => $receiveDetailsProject->project_company_name, + + // 'tag' => $detailsEquipment->equipment_tag, + // 'numeroPanini' => $detailsEquipmentWorkHistory->ispt_number, + // 'nObra' => $receiveDetailsProject->project_company_name, + + 'detailsEquipment' => $detailsEquipment, + 'detailsEquipmentWorkHistory' => $detailsEquipmentWorkHistory, + 'receiveDetailsProject' => $receiveDetailsProject, + 'ambitHistories' => $ambitHistories, + 'ambito' => $receiveAmbit->ambitsEquipment->ambits_description, 'receiveAllTasksHistiory' => $receiveAllTasksHistiory, 'taskImages' => $taskImages, 'projectLogoPath' => $projectLogoPath, - 'companyLogoPath' => $companyLogoPath + 'companyLogoPath' => $companyLogoPath, + 'isptLogoPath' => $isptLogoPath, + + 'oldestDate' => $startDate, // Data mais antiga + 'latestDate' => $endDate // Data mais recente ]) - + ->stream('ispt40.pdf'); } diff --git a/app/Http/Controllers/WorkstationsJobsController.php b/app/Http/Controllers/WorkstationsJobsController.php index 97164879..e40ddb2d 100755 --- a/app/Http/Controllers/WorkstationsJobsController.php +++ b/app/Http/Controllers/WorkstationsJobsController.php @@ -228,15 +228,21 @@ public function receiveAnswersEquipment(Request $request, $control_equipment_wor // Busca a Ws com base no id recebido da tabela Control. $receiveDataControlWs = ControlEquipmentWorkstation::find($control_equipment_workstation_id); - // Cria um novo comentario para a tarefa em particular. - $newTaskEquipmentComments = new TaskEquipmentComment; - $newTaskEquipmentComments->equipmentWorkHistorys_id = $receiveDataControlWs->equipmentWorkHistorys_id; - $newTaskEquipmentComments->control_equipment_workstation_id = $receiveDataControlWs->control_equipment_workstation_id; - $newTaskEquipmentComments->task_comment = $request->comment; - $newTaskEquipmentComments->save(); + //Antes de criar um comentario, verifica se existe comentario + if ($request->comment <> null) { + // Cria um novo comentario para a tarefa em particular. + $newTaskEquipmentComments = new TaskEquipmentComment; + $newTaskEquipmentComments->equipmentWorkHistorys_id = $receiveDataControlWs->equipmentWorkHistorys_id; + $newTaskEquipmentComments->control_equipment_workstation_id = $receiveDataControlWs->control_equipment_workstation_id; + $newTaskEquipmentComments->task_comment = $request->comment; + $newTaskEquipmentComments->save(); + + // Apos ter cria um novo comentario para a tarefa, adiciona na control para relacionar o comentario a tarefa atual + $receiveDataControlWs->task_equipment_comments_id = $newTaskEquipmentComments->task_equipment_comments_id; + } + + - // Apos ter cria um novo comentario para a tarefa, adiciona na control para relacionar o comentario a tarefa atual - $receiveDataControlWs->task_equipment_comments_id = $newTaskEquipmentComments->task_equipment_comments_id; $receiveDataControlWs->elemental_tasks_id = $elementalTaskID; $receiveDataControlWs->departure_date = now(); @@ -506,7 +512,7 @@ public function getEquipmentData($equipment_id, $component_tag) $task->cardTypeStyle = 'blue'; // Define o estilo de cor } - + // Verifica se o id da tarefa está no array de tarefas que não podem ser feitas elseif (in_array($task->elemental_tasks_id, $divisionElementalTasks[2])) { // Consulta se a tarefa já foi feita anteriormente em outro posto diff --git a/app/Http/ViewComposers/WorkstationComposer.php b/app/Http/ViewComposers/WorkstationComposer.php index 9bb2838a..dcfdc1bb 100755 --- a/app/Http/ViewComposers/WorkstationComposer.php +++ b/app/Http/ViewComposers/WorkstationComposer.php @@ -23,6 +23,11 @@ public function compose(View $view) $receiveDataEmail = User::where('email', $userEmail)->first(); $receiveDataWs = ConstructionWorkstation::where('name_workstations', $receiveDataEmail->user_name)->first(); + + $equipmentToReview = collect(); // Coleção para armazenar equipamentos para revisão + $executionEquipment = collect();// Coleção para armazenar equipamentos em execussao + $completedEquipments = collect(); // Coleção para armazenar equipamentos concluídos + // Verifica equipamentos que tenho 2 dados com o departure_date = NULL e especificamente um dado tem o elemental_tasks_id = 9 e o outro igual a NULL. //Isto para ser possivel identificar equipamentos (psv-Provavelmente) que esta sendo feitas em simultanio suas pecas e nao deve ser diponivel ate uma de suas pecas tiverem deponivel. $excludedEquipmentsQuery = ControlEquipmentWorkstation::select('equipmentWorkHistorys_id') @@ -94,17 +99,13 @@ public function compose(View $view) return $equipment; }); - $equipmentToReview = collect(); // Coleção para armazenar equipamentos para revisão - - $completedEquipments = collect(); // Coleção para armazenar equipamentos concluídos // Inicializa um array para armazenar o status de cada equipamento $equipmentStatus = []; foreach ($receiveAllEquipmentOfProject as $equipment) { - - // Agora 'equipmentWorkHistoryId' contém um único ID, então não usamos 'pluck' - $workHistoryId = $equipment->equipmentWorkHistoryId; // Obter ID do histórico de trabalho diretamente + // Agora 'equipmentWorkHistoryId' contém um único ID, então não usamos 'pluck' + $workHistoryId = $equipment->equipmentWorkHistoryId; //// Obter ID do histórico de trabalho diretamente // Verifica se existe um workHistoryId antes de prosseguir //POREM POR NORMA, TODOS DEVEM TER @@ -113,7 +114,8 @@ public function compose(View $view) } $taskIds = OrderEquipmentTasks::where('equipmentWorkHistorys_id', $workHistoryId) - ->pluck('elemental_tasks_id'); // Obter IDs de tarefas elementares baseado em um único workHistoryId + ->pluck('elemental_tasks_id'); // Obter IDs de tarefas elementares baseado em um único workHistoryId(recebe as tarefas para o equipamento atual) + if ($taskIds->isEmpty()) { continue; // Se não houver tarefas, continua para o próximo equipamento @@ -122,10 +124,15 @@ public function compose(View $view) // Busca registros na ControlEquipmentWorkstation com base no equipmentWorkHistoryId $controlRecords = ControlEquipmentWorkstation::where('equipmentWorkHistorys_id', $workHistoryId)->get(); + // Remover equipamentos concluídos da coleção original if ($controlRecords->isEmpty()) { // Se não houver registros, considera como valor 0 (nenhuma tarefa ativa) $equipmentStatus[$equipment->equipment_id] = 0; } else { + //Caso ja tenha dados sobre o equipamento no control, significa que ja e um equipamento 'Em execussao' + //Ao colocar aqui a adicao a execussao, ele apenas considera os equipamentos que estao em algum posto de trabalho, sem considerar as tarefas ja feitas. + $executionEquipment->push($equipment); + //Deve verificar se o departure_date e NULL e o id_workstations <> null, e status = 0 // $activeTasks = $controlRecords->whereNull('departure_date'); $activeTasks = $controlRecords->whereNull('departure_date') @@ -141,7 +148,7 @@ public function compose(View $view) $hasCorpoTask = $activeTasks->contains('elemental_tasks_id', null); if ($hasObturadorTask) { - // Se tiver tarefa ativa para Obturador, valor = 2 + // Verifica as condições para determinar os valores 1 ou 2 $equipmentStatus[$equipment->equipment_id] = 2; } elseif ($hasCorpoTask) { // Se tiver tarefa ativa para Corpo, valor = 1 @@ -153,39 +160,6 @@ public function compose(View $view) } } - - // $workstationTaskCounts = ControlEquipmentWorkstation::whereIn('elemental_tasks_id', $taskIds) - // ->select('elemental_tasks_id', DB::raw('count(*) as total')) - // ->groupBy('elemental_tasks_id') - // ->pluck('total', 'elemental_tasks_id'); // Contagem de tarefas nas estações de trabalho - - - // Vai verificar diretamente na base de dados , busca todos os dados do equipmentWorkHistorys_id, nesta obra e verificar com base na colecao recebida, se entre todos os seus valores, tem pelo menos um elemental_tasks_id, presente na variavel $taskIds - // $taskCountsInControlRecords = ControlEquipmentWorkstation::where('equipmentWorkHistorys_id', $workHistoryId) - // ->whereNotNull('departure_date') - // ->whereIn('elemental_tasks_id', $taskIds) - // ->groupBy('elemental_tasks_id') - // ->select('elemental_tasks_id', DB::raw('COUNT(*) as count')) - // ->pluck('count', 'elemental_tasks_id'); - - // // Verifica se todas as tarefas foram concluídas pelo menos uma vez - // $allTasksCompleted = $taskIds->every(function ($taskId) use ($taskCountsInControlRecords) { - // return isset ($taskCountsInControlRecords[$taskId]) && $taskCountsInControlRecords[$taskId] > 0; - // }); - - // //$allTasksCompleted vai ter TRUE, apenas quando se verificar todos as tarefas foram feitas no equipamento. - // if ($allTasksCompleted) { - // $changeEquipmentStatus = EquipmentWorkHistory::where('equipmentWorkHistorys_id', $equipment->equipmentWorkHistoryId)->first(); - - // if ($changeEquipmentStatus->equipment_status_project == 2) { - // $completedEquipments->push($equipment); - // $changeEquipmentStatus->equipment_status_project = 1; - // $changeEquipmentStatus->save(); - // } elseif ($changeEquipmentStatus->equipment_status_project == 4) { - // $equipmentToReview->push($equipment); - // } - // } - // Vai verificar diretamente na base de dados , busca todos os dados do equipmentWorkHistorys_id, nesta obra e verificar com base na colecao recebida, se entre todos os seus valores, tem pelo menos um elemental_tasks_id, presente na variavel $taskIds $taskCountsInControlRecords = ControlEquipmentWorkstation::where('equipmentWorkHistorys_id', $workHistoryId) ->whereNotNull('departure_date') @@ -206,38 +180,35 @@ public function compose(View $view) $changeEquipmentStatus->equipment_status_project = 1; $changeEquipmentStatus->save(); } elseif ($changeEquipmentStatus->equipment_status_project == 2) { + + // Equipamento sera movido para $completedEquipments e removido de outros estados $completedEquipments->push($equipment); + $executionEquipment = $executionEquipment->reject(function ($e) use ($equipment) { + return $e->equipment_id == $equipment->equipment_id; + }); + $equipmentToReview = $equipmentToReview->reject(function ($e) use ($equipment) { + return $e->equipment_id == $equipment->equipment_id; + }); } elseif ($changeEquipmentStatus->equipment_status_project == 4) { + + //Equipamento sera movido para $equipmentToReview e removido de outros estados $equipmentToReview->push($equipment); + $executionEquipment = $executionEquipment->reject(function ($e) use ($equipment) { + return $e->equipment_id == $equipment->equipment_id; + }); + $completedEquipments = $completedEquipments->reject(function ($e) use ($equipment) { + return $e->equipment_id == $equipment->equipment_id; + }); } } - - - // Remover equipamentos concluídos da coleção original - $receiveAllEquipmentOfProject = $receiveAllEquipmentOfProject->reject(function ($equipment) use ($completedEquipments) { - return $completedEquipments->contains($equipment); - }); - - - // Remover equipamentos a serem revisados da coleção original - $receiveAllEquipmentOfProject = $receiveAllEquipmentOfProject->reject(function ($equipment) use ($equipmentToReview) { - return $equipmentToReview->contains($equipment); - }); - - // if ($allTasksCompleted) { - // $completedEquipments->push($equipment); - - // //Se o equipamento for verificado como concluido, altera o seu status na Obra, para o mesmo ser indicado como um equipamento pendente a aplovacao de Admin. - // $changeEquipmentStatus = EquipmentWorkHistory::where('equipmentWorkHistorys_id',$equipment->equipmentWorkHistoryId)->first(); - // $changeEquipmentStatus->equipment_status_project = 1; - // $changeEquipmentStatus->save(); - // } } - // Remover equipamentos concluídos da coleção original - // $receiveAllEquipmentOfProject = $receiveAllEquipmentOfProject->reject(function ($equipment) use ($completedEquipments) { - // return $completedEquipments->contains($equipment); - // }); + // Remover equipamentos já concluidos das coleções + $receiveAllEquipmentOfProject = $receiveAllEquipmentOfProject->reject(function ($equipment) use ($completedEquipments, $equipmentToReview, $executionEquipment) { + return $completedEquipments->contains($equipment) + || $equipmentToReview->contains($equipment) + || $executionEquipment->contains($equipment); + }); $equipmentIds = array_keys($equipmentStatus); @@ -283,6 +254,7 @@ public function compose(View $view) 'receiveAllEquipmentOfProject' => $receiveAllEquipmentOfProject, // foi alterado para a variavel 'filteredQrcodeEquipments' pois nao tem a necessidade do utilizador selecionar 'Flange'(AINDA NAO !) 'receiveQrcodeEquipmentsProject' => $filteredQrcodeEquipments, + 'executionEquipment' => $executionEquipment, 'completedEquipments' => $completedEquipments, 'equipmentToReview' => $equipmentToReview, 'receiveDataWs' => $receiveDataWs, diff --git a/app/Models/EquipmentWorkHistory.php b/app/Models/EquipmentWorkHistory.php index c7306370..11565378 100644 --- a/app/Models/EquipmentWorkHistory.php +++ b/app/Models/EquipmentWorkHistory.php @@ -43,7 +43,7 @@ public function equipmentAssociationAmbit() } public function HistoryOfEquipmentAmbitsInTheProject (){ - return $this->hasMany(HistoryOfEquipmentAmbitsInTheProject::class, 'ambits_id', 'ambits_id'); + return $this->hasMany(HistoryOfEquipmentAmbitsInTheProject::class, 'equipmentWorkHistorys_id', 'equipmentWorkHistorys_id'); } } diff --git a/app/Models/HistoryOfEquipmentAmbitsInTheProject.php b/app/Models/HistoryOfEquipmentAmbitsInTheProject.php index b81121d5..ce2b08f1 100644 --- a/app/Models/HistoryOfEquipmentAmbitsInTheProject.php +++ b/app/Models/HistoryOfEquipmentAmbitsInTheProject.php @@ -26,6 +26,6 @@ public function AmbitsEquipment (){ } public function EquipmentWorkHistory (){ - return $this->belongsTo(EquipmentWorkHistory::class, 'ambits_id', 'ambits_id'); + return $this->belongsTo(EquipmentWorkHistory::class, 'equipmentWorkHistorys_id', 'equipmentWorkHistorys_id'); } } diff --git a/resources/views/Templates/templateWorkstations.blade.php b/resources/views/Templates/templateWorkstations.blade.php index 315cdfb3..2c71a135 100755 --- a/resources/views/Templates/templateWorkstations.blade.php +++ b/resources/views/Templates/templateWorkstations.blade.php @@ -2,6 +2,7 @@ + {{ config('app.name') }} @@ -92,6 +93,7 @@
+ @@ -179,11 +186,10 @@ class="brand-image img-circle elevation-3" style="opacity: .8">
-

Selecionar Válvula:

+ placeholder="Tag/Equipamento" aria-label="Search">
-
-
-
+
@@ -349,61 +371,6 @@ class="nav-link text-white">
- - - {{--