From 091128e73b51cd9050aa43449568ba4cc88b3679 Mon Sep 17 00:00:00 2001 From: ygbanzato Date: Tue, 25 Mar 2025 22:05:40 +0000 Subject: [PATCH] update --- .../Controllers/CreateProjectController.php | 37 +- .../Controllers/PreparedProjectController.php | 157 +- .../Controllers/ProjectoDatacontroller.php | 5 +- app/Models/EquipmentTypeAttribute.php | 30 + public/templateExcel/Valves_Template.xlsx | Bin 73596 -> 83851 bytes public/templateExcel/Valves_Template1.xlsx | Bin 68452 -> 73596 bytes ...olioAttributesForEquipments.blade copy.php | 2695 +++++++++++++++++ ...portfolioAttributesForEquipments.blade.php | 2418 ++++++++------- ...showDetailsEquipmentForQrCodePdf.blade.php | 100 +- 9 files changed, 4208 insertions(+), 1234 deletions(-) create mode 100644 app/Models/EquipmentTypeAttribute.php mode change 100755 => 100644 public/templateExcel/Valves_Template.xlsx create mode 100755 resources/views/components/portfolio/portfolioAttributesForEquipments.blade copy.php diff --git a/app/Http/Controllers/CreateProjectController.php b/app/Http/Controllers/CreateProjectController.php index a2bb52ef..8ed37e69 100755 --- a/app/Http/Controllers/CreateProjectController.php +++ b/app/Http/Controllers/CreateProjectController.php @@ -5,6 +5,7 @@ use App\Models\AssociationCompanyUser; use App\Models\Company; +use App\Models\EquipmentTypeAttribute; use App\Models\EquipmentWorkHistory; use App\Models\HistoryOfEquipmentAmbitsInTheProject; use App\Models\ProjectExcelLog; @@ -1285,8 +1286,6 @@ public function processStep2(Request $request) // Inicialização do hashmap para rastrear as linhas únicas $uniqueRowsHashmap = []; $equipmentPendingLogs = []; - // $ignoredLines = []; - // $duplicateLines = []; // Separa o nome do arquivo para obter o tipo de documento e a data-hora $parts = explode('_', $originalFileName); @@ -1359,8 +1358,8 @@ function normalize($value) $equipmentType = EquipmentType::where('equipment_type_name', $datas['equipment_type_name'])->first(); //-------- Linhas Ignoradas - // Começa a contagem das linhas do excel a partir de 7 linha - if ($i < 6) { + // Começa a contagem das linhas do excel a partir de 9 linha + if ($i < 8) { continue; } // Contador para campos não vazios @@ -1537,9 +1536,9 @@ function normalize($value) $newEquipament->equipment_type_id = $equipmentType->equipment_type_id; $newEquipament->equipment_Description = $datas['equipment_description']; $newEquipament->equipment_tag = $datas['equipment_tag']; - $newEquipament->equipment_serial_number = $datas['serial_number']; - $newEquipament->equipment_brand = $datas['brand']; - $newEquipament->equipment_model = $datas['model']; + $newEquipament->equipment_serial_number = $datas['equipment_serial_number']; + $newEquipament->equipment_brand = $datas['equipment_brand']; + $newEquipament->equipment_model = $datas['equipment_model']; $newEquipament->company_projects_id = $company_projects_id; $newEquipament->save(); @@ -1551,15 +1550,27 @@ function normalize($value) $generalAttributes = GeneralAttributesEquipment::all(); - foreach ($generalAttributes as $generalAttribute) { - - // Verifica se a chave existe em $datas - if (isset($datas[$generalAttribute->general_attributes_equipment_description])) { + $typeId = $newEquipament->equipment_type_id; + + + // 1. Buscar os IDs dos atributos permitidos para esse tipo + $allowedAttributeIds = EquipmentTypeAttribute::where('equipment_type_id', $typeId) + ->pluck('attribute_id') + ->toArray(); + + // 2. Buscar os nomes das descrições para esses atributos + $allowedAttributes = GeneralAttributesEquipment::whereIn('general_attributes_equipment_id', $allowedAttributeIds) + ->get() + ->keyBy('general_attributes_equipment_description'); + + + foreach ($allowedAttributes as $description => $attribute) { + if (isset($datas[$description])) { $specificAttribute = new SpecificAttributesEquipmentType; $specificAttribute->equipment_id = $newEquipament->equipment_id; $specificAttribute->equipment_type_id = $newEquipament->equipment_type_id; - $specificAttribute->general_attributes_equipment_id = $generalAttribute->general_attributes_equipment_id; - $specificAttribute->specific_attributes_value = $datas[$generalAttribute->general_attributes_equipment_description]; + $specificAttribute->general_attributes_equipment_id = $attribute->general_attributes_equipment_id; + $specificAttribute->specific_attributes_value = $datas[$description]; $specificAttribute->save(); } diff --git a/app/Http/Controllers/PreparedProjectController.php b/app/Http/Controllers/PreparedProjectController.php index f172af7c..0a39fee8 100755 --- a/app/Http/Controllers/PreparedProjectController.php +++ b/app/Http/Controllers/PreparedProjectController.php @@ -126,9 +126,111 @@ class PreparedProjectController extends Controller // } + // public function showAllEquipmentsInProjectForQrCode($projectId) + // { + // $detailsEquipment = Equipment::where('company_projects_id', $projectId)->get(); + // $zipFileName = 'equipamentos_projeto_' . $projectId . '.zip'; + // $tempPath = storage_path('app/public/temp_pdfs/'); + // $zipPath = storage_path('app/public/' . $zipFileName); + + // // Busca os dados do equipamento + // $receiveEquipmentWorkHistory = EquipmentWorkHistory::where('equipment_id', $detailsEquipment->equipment_id) + // ->where('company_projects_id', $detailsEquipment->company_projects_id) + // ->first(); + // //Recebe os dados do Ambito para o equipamento atual + // $receiveAmbit = EquipmentAssociationAmbit::where('equipmentWorkHistorys_id', $receiveEquipmentWorkHistory->equipmentWorkHistorys_id)->first(); + + // //Guarda os Detalhes recebidos das outras variavies como Ambito e Numero Ispt + // $detailsEquipment->istp_number = $receiveEquipmentWorkHistory->ispt_number; + // $detailsEquipment->equipment_ambit = $receiveAmbit->ambitsEquipment->ambits_description; + + + // // Criar diretório temporário se não existir + // if (!file_exists($tempPath)) { + // mkdir($tempPath, 0777, true); + // } + + // $files = []; // Armazena os caminhos dos PDFs gerados + + // foreach ($detailsEquipment as $equipment) { + // // Buscar detalhes do equipamento + // $detailsCompanyProject = CompanyProject::find($projectId); + // $detailsPlant = Plant::where('plant_id', $detailsCompanyProject->plant_id)->first(); + // $detailsCompany = Company::where('company_id', $detailsPlant->company_id)->first(); + + // // Usar a mesma estrutura da função principal + // $specificAttributesArray = []; + + // $specificAttributes = SpecificAttributesEquipmentType::where('equipment_id', $detailsEquipment->equipment_id)->get(); + + // foreach ($specificAttributes as $attribute) { + // $specificAttributesArray[$attribute->general_attributes_equipment_id] = $attribute->specific_attributes_value; + // } + + + // // Buscar equipamentos associados ao QR Code + // $associatedEquipments = QrcodesAssociatedEquipment::where('equipment_id', $equipment->equipment_id)->get(); + // $associatedArray = []; + // $qrCodeImages = []; + + // foreach ($associatedEquipments as $associatedEquipment) { + // $componentParts = explode('@', $associatedEquipment->component_tag); + // $associatedArray[$associatedEquipment->id] = isset($componentParts[1]) ? $componentParts[1] : $associatedEquipment->component_tag; + + // // Gerar QR Code + // $qrCode = new QrCode($associatedEquipment->component_tag); + // $writer = new PngWriter(); + // $qrCodeImages[$associatedEquipment->id] = 'data:image/png;base64,' . base64_encode($writer->write($qrCode)->getString()); + // } + + // // Caminho do logo da empresa + // $logoPath = public_path('companies_logo/' . ($detailsCompany->company_logo ?: 'logoISPT4.0.jpg')); + // if (!file_exists($logoPath)) { + // $logoPath = public_path('companies_logo/logoISPT4.0.jpg'); + // } + // $isptLogoPath = public_path('/img/ispt/ispt.jpg'); + + // //Criar uma nova instância do PdfWrapper para cada equipamento + // $pdfWrapper = new PdfWrapper(); + // $pdf = $pdfWrapper->loadView('projectsClients.showDetailsEquipmentForQrCodePdf', [ + // 'detailsCompanyProject' => $detailsCompanyProject, + // 'detailsEquipment' => $detailsEquipment, + // 'logoPath' => $logoPath, + // 'qrCodeImages' => $qrCodeImages, + // 'associatedArray' => $associatedArray, + // 'isptLogoPath' => $isptLogoPath + // ])->setOrientation('landscape'); + + // // Nome do arquivo PDF + // $pdfFileName = $equipment->equipment_tag . '.pdf'; + // $pdfFilePath = $tempPath . $pdfFileName; + + // // Salvar o PDF + // $pdf->save($pdfFilePath); + // $files[] = $pdfFilePath; + // } + + // // Criar arquivo ZIP e adicionar os PDFs gerados + // $zip = new ZipArchive; + // if ($zip->open($zipPath, ZipArchive::CREATE) === TRUE) { + // foreach ($files as $file) { + // $zip->addFile($file, basename($file)); + // } + // $zip->close(); + // } + + // // Remover arquivos PDF individuais após criar o ZIP + // foreach ($files as $file) { + // unlink($file); + // } + + // // Retornar o arquivo ZIP para download + // return response()->download($zipPath)->deleteFileAfterSend(true); + // } + public function showAllEquipmentsInProjectForQrCode($projectId) { - $equipments = Equipment::where('company_projects_id', $projectId)->get(); + $equipments = Equipment::where('company_projects_id', $projectId)->get(); // ← nome mais apropriado $zipFileName = 'equipamentos_projeto_' . $projectId . '.zip'; $tempPath = storage_path('app/public/temp_pdfs/'); $zipPath = storage_path('app/public/' . $zipFileName); @@ -141,29 +243,44 @@ public function showAllEquipmentsInProjectForQrCode($projectId) $files = []; // Armazena os caminhos dos PDFs gerados foreach ($equipments as $equipment) { - // Buscar detalhes do equipamento + // Reutilizamos $detailsEquipment dentro do loop para compatibilidade com a view + $detailsEquipment = $equipment; + + // Buscar dados do histórico de trabalho e âmbito + $receiveEquipmentWorkHistory = EquipmentWorkHistory::where('equipment_id', $detailsEquipment->equipment_id) + ->where('company_projects_id', $detailsEquipment->company_projects_id) + ->first(); + + // Adicionar campo personalizado ao equipamento + $detailsEquipment->istp_number = $receiveEquipmentWorkHistory->ispt_number ?? 'N/A'; + + $receiveAmbit = EquipmentAssociationAmbit::where('equipmentWorkHistorys_id', $receiveEquipmentWorkHistory->equipmentWorkHistorys_id ?? null) + ->first(); + + $detailsEquipment->equipment_ambit = $receiveAmbit->ambitsEquipment->ambits_description ?? 'N/A'; + + // Buscar detalhes do projeto, planta e empresa $detailsCompanyProject = CompanyProject::find($projectId); $detailsPlant = Plant::where('plant_id', $detailsCompanyProject->plant_id)->first(); $detailsCompany = Company::where('company_id', $detailsPlant->company_id)->first(); // Buscar atributos específicos do equipamento - $specificAttributes = SpecificAttributesEquipmentType::where('equipment_id', $equipment->equipment_id)->get(); + $specificAttributes = SpecificAttributesEquipmentType::where('equipment_id', $detailsEquipment->equipment_id)->get(); $specificAttributesArray = []; foreach ($specificAttributes as $attribute) { $specificAttributesArray[$attribute->general_attributes_equipment_id] = $attribute->specific_attributes_value; } - // Buscar equipamentos associados ao QR Code - $associatedEquipments = QrcodesAssociatedEquipment::where('equipment_id', $equipment->equipment_id)->get(); + // Equipamentos associados ao QR Code + $associatedEquipments = QrcodesAssociatedEquipment::where('equipment_id', $detailsEquipment->equipment_id)->get(); $associatedArray = []; $qrCodeImages = []; foreach ($associatedEquipments as $associatedEquipment) { $componentParts = explode('@', $associatedEquipment->component_tag); - $associatedArray[$associatedEquipment->id] = isset($componentParts[1]) ? $componentParts[1] : $associatedEquipment->component_tag; + $associatedArray[$associatedEquipment->id] = $componentParts[1] ?? $associatedEquipment->component_tag; - // Gerar QR Code $qrCode = new QrCode($associatedEquipment->component_tag); $writer = new PngWriter(); $qrCodeImages[$associatedEquipment->id] = 'data:image/png;base64,' . base64_encode($writer->write($qrCode)->getString()); @@ -174,20 +291,24 @@ public function showAllEquipmentsInProjectForQrCode($projectId) if (!file_exists($logoPath)) { $logoPath = public_path('companies_logo/logoISPT4.0.jpg'); } + $isptLogoPath = public_path('/img/ispt/ispt.jpg'); - // Criar uma nova instância do PdfWrapper para cada equipamento + // Criar PDF $pdfWrapper = new PdfWrapper(); $pdf = $pdfWrapper->loadView('projectsClients.showDetailsEquipmentForQrCodePdf', [ - 'detailsEquipment' => $equipment, + 'detailsCompanyProject' => $detailsCompanyProject, + 'detailsEquipment' => $detailsEquipment, 'logoPath' => $logoPath, 'qrCodeImages' => $qrCodeImages, 'associatedArray' => $associatedArray, - 'isptLogoPath' => $isptLogoPath + 'isptLogoPath' => $isptLogoPath, + 'specificAttributesArray' => $specificAttributesArray ])->setOrientation('landscape'); - // Nome do arquivo PDF - $pdfFileName = $equipment->equipment_tag . '.pdf'; + // Nome do PDF com o número ISPT, sanitizado + $istpNumber = preg_replace('/[^a-zA-Z0-9_-]/', '_', $detailsEquipment->istp_number); + $pdfFileName = $istpNumber . '.pdf'; $pdfFilePath = $tempPath . $pdfFileName; // Salvar o PDF @@ -195,7 +316,7 @@ public function showAllEquipmentsInProjectForQrCode($projectId) $files[] = $pdfFilePath; } - // Criar arquivo ZIP e adicionar os PDFs gerados + // Criar ZIP com os PDFs $zip = new ZipArchive; if ($zip->open($zipPath, ZipArchive::CREATE) === TRUE) { foreach ($files as $file) { @@ -204,14 +325,17 @@ public function showAllEquipmentsInProjectForQrCode($projectId) $zip->close(); } - // Remover arquivos PDF individuais após criar o ZIP + // Limpar PDFs temporários foreach ($files as $file) { unlink($file); } - // Retornar o arquivo ZIP para download + // Retornar ZIP para download return response()->download($zipPath)->deleteFileAfterSend(true); - } + } + + + public function showDetailsEquipmentForQrCode($equipmentId, $projectId) { @@ -279,6 +403,7 @@ public function showDetailsEquipmentForQrCode($equipmentId, $projectId) // Gera e retorna o PDF com os detalhes e QR Codes return $pdfWrapper ->loadView('projectsClients.showDetailsEquipmentForQrCodePdf', [ + 'detailsCompanyProject' => $detailsCompanyProject, 'detailsEquipment' => $detailsEquipment, 'logoPath' => $logoPath, 'qrCodeImages' => $qrCodeImages, diff --git a/app/Http/Controllers/ProjectoDatacontroller.php b/app/Http/Controllers/ProjectoDatacontroller.php index caaa14d2..829774e4 100755 --- a/app/Http/Controllers/ProjectoDatacontroller.php +++ b/app/Http/Controllers/ProjectoDatacontroller.php @@ -1058,8 +1058,8 @@ public function projectDetails_11($projectID, $equipmentID) $specificAttributesArray[$attribute->general_attributes_equipment_id] = $attribute->specific_attributes_value; } - // talvez apenas ciar um if ja resolva, se vir da obra em status 1 ou 3 receve 3 para editar e ver, se viar da obra status 2, deve ser apenas 1 - if ($detailsProject->order_project == 1 || $detailsProject->order_project == 3) { + // talvez apenas ciar um if ja resolva, se vir da obra em status 1, 3 ou 4 receve 3 para editar e ver, se viar da obra status 2, deve ser apenas 1 + if ($detailsProject->order_project == 1 || $detailsProject->order_project == 3 || $detailsProject->order_project == 5 ) { // Cria um sistema de 1 a 3 , onde 1 e apenas 'ler', 2 apenas editar e 3 as 2 opcoes $portfolioOnlyreadOrEditToo = 3; @@ -1068,7 +1068,6 @@ public function projectDetails_11($projectID, $equipmentID) $portfolioOnlyreadOrEditToo = 1; } - //filteredTasks', 'OrdemTasks', 'DetailsTasks' campos vazios para ISV. return view('projectsClients.articulated_2_ShowEquipment', compact('detailsProject', 'detalsEquipment', 'filteredTasks', 'OrdemTasks', 'DetailsTasks', 'specificAttributesArray', 'receiveEquipmentWorkHistorys', 'portfolioOnlyreadOrEditToo')); diff --git a/app/Models/EquipmentTypeAttribute.php b/app/Models/EquipmentTypeAttribute.php new file mode 100644 index 00000000..2a21f63e --- /dev/null +++ b/app/Models/EquipmentTypeAttribute.php @@ -0,0 +1,30 @@ +belongsTo(EquipmentType::class, 'equipment_type_id'); + } + + public function attribute() + { + return $this->belongsTo(GeneralAttributesEquipment::class, 'attribute_id'); + } +} diff --git a/public/templateExcel/Valves_Template.xlsx b/public/templateExcel/Valves_Template.xlsx old mode 100755 new mode 100644 index 9438b91b65f60d0eec99256506a27b0482ad844b..5b6b2b6a9b1bb78ba3bccf8662f2f7a81b1e0109 GIT binary patch delta 46819 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 #nlsrY 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 z zO4Mobny~Pklu8qOr#}B2^;&phdj51v!%Szkn}Ta{LV?KDi5~N0k^(L5i!4b#$^6Er zTrpgGY>kp*_1@a4M@WOn?(jga(83no!z7`G=*@C7AdH5HIjIMFy|oX##g;w$^(t+{ zP8a!w02fUa&%dCcIq|4rGs$=P16b-!I$aU)8evo_MmBuGk7VH%rNjE25zmDeky0ZF z1^j}-*RoF~4JdOgM5%m6TV+&5-d!{mYUp`~W1wbS$1Z*Bni<~R*n}LGO20mH=8a3^ zNg7QRvFOvDmco}$2`y!3(6BMP-XwFTGa#O3<}(1ygSu=+i4XYE7D~)iRxx7(&kw0~ zUZzoKx=bVAdYR@q4p|1XXXAUZ_!vL2XUTqI@!5V>wjVfD(hrf+UF`@If(x8P^T8f- zs5MRsQ=A;$Rt4I4uE6ebjr8_}n7(b5(>;(mj8kZfpXi~qNV`gJW_MF*^{~8J zN>FnW=?ROo#vAQ#UOi=Oo>`Hl#d|}za3@)cELO6%N;0=(R6?PJyO*z9OmBGjb}^gW zt#djQfLW`qsB*n4(`~6#NurN08sNBV_pBZWGWE&_oMq=`zxbiLUzdCFfV$P;bMLJk z`SYxOubtPSS;h4)EEH#ucDi=@axR77&y<$vthoZE-i~7MV1HJ~@2e0F}ohQ_>12@x-y0j;>S3wvWrcNk4&J)Kz zanST)!}CgKtn>7Ng9=9lM??*9q~D^yr%Z&f*p8i!R%)yBill#Z4Wl-?Kw z+0tW_7heD~ACfZOyO@QaW3IgJvf0gynP=QK+}E)>O4<@t;gNYUWAY$}`b9SNw+wD7 z-s=~|vfmz28)#kp$bZvf(VQ8r`wH+NWI*N2qf8x(Y-2KQ0t?4s5XTet#2IClJDqlq zO)I4osF*UNHB_1_lsv&kofH_#>H?;FiRll2u!B_Jbl}>KnptTq(uzGgijxNIcz$LE(#}7Um>2}m5 zJ%vN5*rZE_c<*p9SW2-sJ|?SOr~7DR{h0!>2W77rDDELDPsAGAPfH$ku`4O`b1$)J z9>l$PzTAWf2;^s^>m3LU5RMHv9~+^8?apacg z#>8rk8Tm-M`JVK=r18L@Qb^+!mkIirlebE3OT1dG+yRMtr}TrO%j;F)cP>^|tDQF1 zI6oR9pp z2W#r=^*|~hE4j#X8lR?1Dv_f**A*jPd%O6&XS`KjSHh_y5?yU^i*!dY6&f)Z2;OxZ z4S0nwgv=%B_p;<2-71D5X$Pg^)h&s;^|D_Z=UooAN(y}Zz5+)|=}^tEd`*qOJ+oL+ zv$j}yInJCKn|rq@{OI1PO4PdCV{s*w^jEAIkVXE-CBR`#oOZccJ4G_crz_c_g2?Q6 z3LabjJ>UU%*Xy)qyZ_hKl}AJUwek7dNsJl97_w!e?3rX8YYQWNq)142R_w_;%Zl&JdYeXC%JI}M^u#k7V+{tc+#J_P%DlH4y9dlLk6!r(G~bvP z5vMc$Q8l~%Rbfq3HX#*7Z_&+gj>t>zsn>&N%lj%p7tUQ%j5urbwXIok-)-N3djDB2 zPu?Kpn3@aZ2)QNM&w8`ZNs2sUQvp74k3~~H?+0ecu;J#W~$wu zk8rnOmRVU|fi;)-Zh5LeK(zRxX&|>Q>}OXe18$_rtO9wrL&Q=q? z7qzVEk3GH>_mSWnZG5My-1s(IeXHaNhki*LLZgmG8QUFZ-|*sjjH;gzs`jqS;E2IK zPIULm<a1a3KEWJuK%PDsJe38wXRO@?Iz8GOkx4DRfIV1?L;%8nsTNG2Ly zUSyBVe)}=glELu#{!J5*f*e>(3gfpJ;$b!XU9yF8dUAXwfKxMXbu|C3qO;vxF9#@o=>m_;j-G(^Y1=8&$6- zykZaHbiT2)uWk;?EixEyW<_fq_ zVz5Nzyh%(TG{RuIR1ulQ1>(dw+`Dw;XCz2J-7*;8x!c6>r@Cwb%I9<|qb9?DxJQ3} z=9Qa4FEsbsO)l$rS4>~c>Q?8#C5xe~FSlZUgdmex@xH5--=1EXOO%7A_F1@!&DZ$= zekY&kdcXB`yJ_=cPM^+OVT54ZRU8!?>^ zBaB}tILU&(lqefGW)OLwh_aijM-`@P#HO<3nM9LVI{44cObWND0tVVFHF3z9F9W7a z{)dIsFx3uLkePnD#tcu=V?wUYH2-&P?J=09{O&VWN~_7kG}fB-uETnVkxpMT#=Rvxj@O!q zMlx{Slh58ah+y>9Y--Eg^+(AR^WZIL-9%>_7V9Ju4c~jw({gpu@E}S!0GCz#F7T}M zRHpDntc||R&sg_&YyKw9p!HLPM&}8CPFt1DbAwC$W`WV3gvI059{7f}2hQ^a4qm8@ zi%(Cp)gRWITX7mU8|>y&`8;%0v)PPsY_00yFEBF!eWuZCl|jYk*aS1p&4ZfV!WK)G&nZK9J8gfZTYL)rqz@n5+ms+<;yOwcuDzSd+y57+n zGbXJ6V5>icM8NPTM%WwnbW+xc3X4aMr}y#;nQZK-oqv|vkYO2JR5RF+S7Nd$ z~hDBtkz`7s*T z&y!ThJNk>K?apTUlI2yKIi>D2UNisM2r0_e<2tfcU+w*V#htQ9OI7p0%*$wtlt58q zqDjrhrGCsYB0NMNTG8X7&@-7kycXdwV*mLR2ZbOpS`}nYy6%@Sn?0bpSrmN*-G?(kXxclNs7)3EbWM|7Fw#rB>D)s2lj>yG*s{S>%dsE9Z*VtCMmNa_W)Ws)! zL=!3*3nPMKca~Ju`3gX&DgP3{ekPT?GJD=0__l%BKOUJDb zj{bQAILD~MCjbb{KZxQN(zHDR|Gs zL+3`XuFPhGrPqauSDNeu%CN*H#KRh4*dB4+5K$9Yu>x0UL^!cqrS+W5_j`^S6ED|P zHUBibZ1)269Tdpj;%Ygf)GKDt&*WW@;KkEXwf&+iT)PAXb6h|L?+*ZhCv#xy4 zDBq8s_z|%dq_?dYDs$F+yCsG2owK(RKfKP6;Meg{2kVhyGR!p>rEZ7fRh{)#yJ&HG z1yFg_H>){Q*~?#YK|iq4EbH1BzP1+GO7Bnn915ScO%^JbsN{^JL-2y9F@Pq+G8BM- zP;G!0OvV5RIvy_Y1qLu<{UNR)eU-K`Vn9|cKuJJIXLsuY?bnqK0^y>uvA-Jt5vKK} zprsa|K_^8I614zLzzrPH0_2#S;Q%DS15D8ej(~-#0Q5J5`}cqZH~?0w0s^3oHUJf< zag>v{rU3^tLm<%KMzr=9a2yz`4X6WfutOU-!=VoQ4Jhk$)860B%LPo<2l&7^l|O(z zVE{-}0mQ*seE^C?E2UCLX~2Cn@rLg&+`oaWDO ze;fW4T1EgkrVE@=*`tX{w4iR;JJ5J-S*!s-$Ng_S7D%+w6sDL314GdwSfG7>&T{N9 zXsicd=nigyDSCha^8ZDu|IQ?V2Rrp>9{=w-=lsLtpYb58KA=h$$^q)@11fYi++esq zfT5q~20%Xb|73I8oyF4M9s<#6qx-*X7ILIYaUek1v$Tl+QSfQY{b$ZCyg}=;fE3g2 J5n3>ie*t&u*}VV& diff --git a/public/templateExcel/Valves_Template1.xlsx b/public/templateExcel/Valves_Template1.xlsx index 3dc9baf73bf597839515b1abe3c1f80362928f2d..9438b91b65f60d0eec99256506a27b0482ad844b 100755 GIT binary patch delta 37950 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 W&=KPWgU`a_AGUZAA6~$>803E%zb$eA delta 32895 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 diff --git a/resources/views/components/portfolio/portfolioAttributesForEquipments.blade copy.php b/resources/views/components/portfolio/portfolioAttributesForEquipments.blade copy.php new file mode 100755 index 00000000..55e3fcd4 --- /dev/null +++ b/resources/views/components/portfolio/portfolioAttributesForEquipments.blade copy.php @@ -0,0 +1,2695 @@ + +@if ($detalsEquipment->equipment_type_id == 1) + + + @if ($portfolioOnlyreadOrEditToo == 1 || $portfolioOnlyreadOrEditToo == 3) + {{-- Visualizar --}} +
+ +
+
+

CV

+
+ +
+ + + +
+ +
+
+ + +
+
+ +
+
+ + + + +
+
+ +
+ + + {{-- 3 inputs per line :equipmentSerialNumber, equipmentBrand, equipmentModel --}} +
+ +
+
+ + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+ + + {{-- 3 inputs per line :dimension, rating, dim_right --}} +
+ +
+
+ + + + +
+
+ +
+
+ + + + +
+
+ +
+
+ + + + +
+
+
+ + + {{-- 3 inputs per line : main_equipment, p&id, sap_number --}} +
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+ + + {{-- 3 inputs per line : manufacturer, actuatorManufacturer, ActuatorModel --}} +
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+ + + {{-- 4 inputs per line : actuatorSerialNumber, positionerManufacturer, positionerSerialNumber, isolation --}} +
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+ + + {{-- 4 Selects per line : scaffolding, crane, interlocks, decontamination --}} +
+ +
+
+ + + + +
+
+ +
+
+ + + + + +
+
+ +
+
+ + + + +
+
+ +
+
+ + + + + +
+
+ +
+ + +
+
+ +
+ @endif + + + @if ($portfolioOnlyreadOrEditToo == 2 || $portfolioOnlyreadOrEditToo == 3) + {{-- Editar --}} +
+
+
+

CV - Editar

+
+
+ @csrf + + + +
+ + + +
+ +
+
+ + +
+
+ +
+
+ + + + +
+
+ +
+ + + +
+ +
+
+ + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+ + + {{-- 3 inputs per line :dimension, rating, dim_right --}} +
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+ + + {{-- 3 inputs per line : main_equipment, p&id, sap_number --}} +
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+ + + {{-- 3 inputs per line : manufacturer, actuatorManufacturer, ActuatorModel --}} +
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+ + + {{-- 4 inputs per line : actuatorSerialNumber, positionerManufacturer, positionerSerialNumber, isolation --}} +
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ +
+ + + +
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ + + +
+
+ + + + +
+
+ + +
+ + + +
+
+
+
+ @endif + + + +@elseif ($detalsEquipment->equipment_type_id == 2) + + @if ($portfolioOnlyreadOrEditToo == 1 || $portfolioOnlyreadOrEditToo == 3) + {{-- Visualizar --}} +
+ + {{-- ISV-card-visualizar --}} +
+
+

ISV - Visualizar

+
+ +
+ + +
+ +
+
+ + +
+
+ +
+
+ + + + +
+
+ +
+ + + {{-- 3 inputs per line :equipmentSerialNumber, equipmentBrand, equipmentModel --}} +
+ +
+
+ + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+ + + {{-- 3 inputs per line :dimension, rating, dim_right --}} +
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+ {{-- ./row --}} + + {{-- 3 inputs per line : main_equipment, p&id, sap_number --}} +
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+ + + {{-- 3 Inputs per line :material ,manufacturer ,isolation --}} +
+
+
+ + + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+ {{-- ./row --}} + + {{-- 4 Selects per line : scaffolding, crane, interlocks, decontamination --}} +
+ +
+
+ + + + +
+
+ +
+
+ + + + + +
+
+ +
+
+ + + + +
+
+ +
+
+ + + + + +
+
+ +
+ + +
+ +
+ {{-- ./ISV-card-visualizar --}} + + + @if (isset($receiveEquipmentWorkHistorys)) + {{-- Âmbito-ISV - Visualizar --}} +
+ +
+

Âmbito : + {{ $receiveEquipmentWorkHistorys->equipmentAssociationAmbit->ambitsEquipment->ambits_description }} + - Visualizar +

+
+ +
+
+ {{-- ./card-header --}} +
+
+
+

Lista de Tarefas Elementares : + {{ $receiveEquipmentWorkHistorys->equipmentAssociationAmbit->ambitsEquipment->ambits_description }} +

+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
#Tarefas ElementaresSelecionar Tarefa +
TE1Desmontar da linha + +
TE2Descontaminar + +
TE4(3)Abertura da válvula, análise e controle dos componentes + +
TE5Limpeza e lavagem dos componentes + +
TE7(3)Fecho da válvula e substituição de componentes + +
TE14Ensaio + +
TE9Pintura + +
TE10Montagem na linha + +
TE11Inspeção Final + +
TE15Empancar (ISV) + +
+
+ + {{-- @livewire('articulado.additonal-task', ['equipment' => $detalsEquipment], key($detalsEquipment->equipment_id)) --}} + +
+ {{-- ./description --}} +
+ {{-- ./card-body --}} +
+ {{-- ./Ambito ISV - Visualizar --}} + @endif + +
+ {{-- Visualizar --}} + @endif + + + @if ($portfolioOnlyreadOrEditToo == 2 || $portfolioOnlyreadOrEditToo == 3) + {{-- Editar --}} +
+ + {{-- ISV-card-Editar --}} +
+
+

ISV - Editar

+
+ +
+ @csrf +
+ + + + +
+
+
+ + + + +
+
+ +
+
+ + + + +
+
+ +
+ + + {{-- 3 inputs per line :equipmentSerialNumber, equipmentBrand, equipmentModel --}} +
+ +
+
+ + + + +
+
+
+
+ + + + + {{-- --}} +
+
+
+
+ + + + + {{-- --}} +
+
+
+ + + {{-- 3 inputs per line :dimension, rating, dim_right --}} +
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+ {{-- ./row --}} + + {{-- 3 inputs per line : main_equipment, p&id, sap_number --}} +
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+ + + {{-- 3 Inputs per line :material ,manufacturer ,isolation --}} +
+
+
+ + + + + +
+
+
+
+ + + + +
+
+ +
+
+ + + + +
+
+
+ {{-- ./row --}} + + {{-- 4 Selects per line : scaffolding, crane, interlocks, decontamination --}} +
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ +
+ + + +
+ + +
+ + +
+ {{-- ./ISV-card-Editar --}} + + + @if (isset($receiveEquipmentWorkHistorys)) + {{-- Âmbito-ISV - Editar --}} +
+ +
+

Âmbito : + {{ $receiveEquipmentWorkHistorys->equipmentAssociationAmbit->ambitsEquipment->ambits_description }} + - Editar +

+
+ +
+
+ {{-- ./card-header --}} +
+
+
+

Lista de Tarefas Elementares : + {{ $receiveEquipmentWorkHistorys->equipmentAssociationAmbit->ambitsEquipment->ambits_description }} +

+
+ +
+
+ @csrf + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
#Tarefas ElementaresSelecionar Tarefa +
TE1Desmontar da linha + + + +
TE2Descontaminar + + + +
TE4(3)Abertura da válvula, análise e controle dos componentes + + + +
TE5Limpeza e lavagem dos componentes + + + +
TE7(3)Fecho da válvula e substituição de componentes + + + +
TE14Ensaio + + + +
TE9Pintura + + + +
TE10Montagem na linha + + + +
TE11Inspeção Final + + + +
TE15Empancar (ISV) + + + +
+ + +
+
+ + @livewire('articulado.additonal-task', ['equipment' => $detalsEquipment], key($detalsEquipment->equipment_id)) + +
+ {{-- ./description --}} +
+ {{-- ./card-body --}} +
+ {{-- ./Ambito ISV - Editar --}} + @endif + + + {{-- Editar --}} + @endif + + + +@elseif ($detalsEquipment->equipment_type_id == 3) + + + @if ($portfolioOnlyreadOrEditToo == 1 || $portfolioOnlyreadOrEditToo == 3) + {{-- Visualizar --}} +
+ {{-- ./PSV-card --}} +
+
+

PSV

+
+ +
+ + +
+ +
+
+ + +
+
+ +
+
+ + + + +
+
+ +
+ + + {{-- 3 inputs per line :equipmentSerialNumber, equipmentBrand, equipmentModel --}} +
+ +
+
+ + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+ + + {{-- 3 inputs per line : main_equipment, p&id, sap_number --}} +
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+
+ + + + +
+
+
+ + + {{-- 3 inputs per line : area, classe, type_of_fluid --}} +
+ +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + {{-- 3 inputs per line : manufacturer, construction_year, material --}} +
+ +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + {{-- 2 inputs per line : isolation, scaffolding --}} +
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + {{-- 3 inputs per line : crane,interlocks,decontamination --}} +
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ +
+ +
+ {{-- ./PSV-card --}} + + + @if (isset($receiveEquipmentWorkHistorys)) + {{-- Âmbito-PSV-Visualizar --}} +
+ +
+

Âmbito : + {{ $receiveEquipmentWorkHistorys->equipmentAssociationAmbit->ambitsEquipment->ambits_description }} + - Visualizar +

+
+ +
+
+ {{-- ./card-header --}} +
+
+
+

Lista de Tarefas Elementares : + {{ $receiveEquipmentWorkHistorys->equipmentAssociationAmbit->ambitsEquipment->ambits_description }} +

+
+ +
+ + + + + + + + {{-- --}} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
#Tarefas ElementaresSelecionar Tarefa + Inspecionar
TE1Desmontar da linha + +
TE2Descontaminar + +
TE3Pŕe-Teste + +
TE4Abertura da válvula, análise e controle dos + componentes + +
TE5Limpeza e lavagem dos componentes + +
TE6Retificação e lapidação + +
TE7Fecho da válvula e substituição de + componentes + +
TE8Calibrar e certificar + +
TE9Pintura + +
TE10Montagem na linha + +
TE10.1Confirmação de ligação + +
TE11Inspeção Final + +
+
+ + {{-- @livewire('articulado.additonal-task', ['equipment' => $detalsEquipment], key($detalsEquipment->equipment_id)) --}} + +
+ {{-- ./description --}} +
+ {{-- ./card-body --}} +
+ @endif + +
+ {{--./Visualizar --}} + @endif + + + @if ($portfolioOnlyreadOrEditToo == 2 || $portfolioOnlyreadOrEditToo == 3) + {{-- Editar-PSV --}} +
+ +
+
+

PSV

+
+ + +
+ @csrf +
+ + + + +
+
+
+ + + + +
+
+ +
+
+ + + + +
+
+
+ + {{-- 3 inputs per line :equipmentSerialNumber, equipmentBrand, equipmentModel --}} +
+ +
+
+ + + + +
+
+
+
+ + + + + {{-- --}} +
+
+
+
+ + + + + {{-- --}} +
+
+
+ + + +
+ +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + +
+ +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + +
+ +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + +
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ +
+ + +
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + + +
+
+ +
+ + @if (isset($receiveEquipmentWorkHistorys)) + {{-- Âmbito-PSV-Editar --}} +
+ +
+

Âmbito : + {{ $receiveEquipmentWorkHistorys->equipmentAssociationAmbit->ambitsEquipment->ambits_description }} + - Editar +

+
+ +
+
+ {{-- ./card-header --}} +
+
+
+

Lista de Tarefas Elementares : + {{ $receiveEquipmentWorkHistorys->equipmentAssociationAmbit->ambitsEquipment->ambits_description }} +

+
+ +
+ +
+ @csrf + + + + + + + {{-- --}} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {{-- Apenas para ver se recebe um on ou off, o hidden serve para devolver valor se o checkbox não estiver a 'checked' --}} + + + + + + + + + + + + + + +
#Tarefas ElementaresSelecionar Tarefa + Inspecionar
TE1Desmontar da linha + + + +
TE2Descontaminar + + + +
TE3Pŕe-Teste + + + +
TE4Abertura da válvula, análise e controle dos + componentes + + + +
TE5Limpeza e lavagem dos componentes + + + +
TE6Retificação e lapidação + + + +
TE7Fecho da válvula e substituição de + componentes + + + +
TE8Calibrar e certificar + + + +
TE9Pintura + + + +
TE10Montagem na linha + + + +
TE10.1Confirmação de ligação + + + +
TE11Inspeção Final + + + +
+ + + +
+ +
+ + @livewire('articulado.additonal-task', ['equipment' => $detalsEquipment], key($detalsEquipment->equipment_id)) + +
+ {{-- ./description --}} +
+ {{-- ./card-body --}} +
+ @endif +
+ {{-- ./Editar-PSV --}} + @endif + +@endif + + + + + + + + + + + + + + + + diff --git a/resources/views/components/portfolio/portfolioAttributesForEquipments.blade.php b/resources/views/components/portfolio/portfolioAttributesForEquipments.blade.php index 498eee13..86f27f06 100755 --- a/resources/views/components/portfolio/portfolioAttributesForEquipments.blade.php +++ b/resources/views/components/portfolio/portfolioAttributesForEquipments.blade.php @@ -10,8 +10,8 @@

CV

-
+
@@ -19,8 +19,8 @@
- + - {{-- 3 inputs per line :dimension, rating, dim_right --}} -
- -
-
- - - - -
-
- -
-
- - - - -
-
- -
-
- - - - -
-
-
- - {{-- 3 inputs per line : main_equipment, p&id, sap_number --}}
@@ -141,8 +97,9 @@ class="form-control card_inputs" id="equipmentSerialNumber" title="Main Equipment">
@@ -153,9 +110,9 @@ class="form-control card_inputs" id="equipmentSerialNumber" data-toggle="tooltip" title="P&ID"> + value="{{ $specificAttributesArray[9] ?? '' }}" + class="form-control card_inputs" id="p&id" placeholder="P&ID" + aria-label="P & id" aria-describedby="form-p&id" readonly>
@@ -165,173 +122,261 @@ class="form-control card_inputs" id="equipmentSerialNumber" title="Número Sap"> + value="{{ $specificAttributesArray[10] ?? '' }}" + class="form-control card_inputs" id="sap_number" placeholder="Nº SAP" + aria-label="Numero Sap" aria-describedby="form-sap_number" readonly>
- {{-- 3 inputs per line : manufacturer, actuatorManufacturer, ActuatorModel --}} + {{-- 3 inputs per line : area, classe, type_of_fluid --}}
+
- - + + + +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + {{-- 3 inputs per line : manufacturer, construction_year, material --}} +
+ +
+
+ + + value="{{ $specificAttributesArray[22] ?? '' }}" + class="form-control card_inputs" id="manufacturer" placeholder="Fabricante" + aria-label="Fabricante" aria-describedby="form_manufacturer" readonly>
+ +
- - + + - +
+ +
- - + + - +
- - - {{-- 4 inputs per line : actuatorSerialNumber, positionerManufacturer, positionerSerialNumber, isolation --}} + + {{-- 2 inputs per line : isolation, scaffolding --}}
-
+ + +
- - - - -
-
-
-
- - - - -
-
-
-
- - - - -
-
-
-
- + + value="{{ $specificAttributesArray[23] ?? '' }}" + class="form-control card_inputs" id="isolation" placeholder="Isolamento" + aria-label="Isolamento" aria-describedby="form_isolation" readonly>
-
- - {{-- 4 Selects per line : scaffolding, crane, interlocks, decontamination --}} -
- -
+ +
- - + + value="{{ $specificAttributesArray[24] ?? '' }}" + class="form-control card_inputs" id="scaffolding" placeholder="Andaime" + aria-label="Andaime" aria-describedby="form_scaffolding" readonly>
- -
+
+ + {{-- 3 inputs per line : crane,interlocks,decontamination --}} +
+ + +
- - + + - + value="{{ $specificAttributesArray[25] ?? '' }}" + class="form-control card_inputs" id="crane" placeholder="Guindaste" + aria-label="Guindaste" aria-describedby="form_crane" readonly>
- -
+ + +
- - + + + value="{{ $specificAttributesArray[26] ?? '' }}" + class="form-control card_inputs" id="interlocks" placeholder="Intertravamentos" + aria-label="Intertravamentos" aria-describedby="form_interlocks" readonly>
- -
+ + +
- - + + - + value="{{ $specificAttributesArray[27] ?? '' }}" + class="form-control card_inputs" id="decontamination" placeholder="Descontaminação" + aria-label="Descontaminação" aria-describedby="form_decontamination" readonly> +
+
+
+ + +
+ +
+
+ + + +
+ +
+
+ + + + +
+
+
+ + +
+ +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
-
+ +
@@ -345,54 +390,50 @@ class="form-control card_inputs" id="equipmentSerialNumber"

CV - Editar

+
@csrf - - -
- - + + +
-
- - + +
- +
- + + id="equipmentDescription" placeholder="Descrição Equipamento..." + aria-label="Descrição Equipamento" aria-describedby="form-equipmentDescription">
-
- - + {{-- 3 inputs per line :equipmentSerialNumber, equipmentBrand, equipmentModel --}}
- + + {{-- --}}
@@ -423,59 +465,15 @@ class="form-control card_inputs" id="equipmentBrand" placeholder="Marca" value="{{ $detalsEquipment->equipment_model }}" class="form-control card_inputs" id="equipmentModel" placeholder="Modelo" aria-label="Serial Number Equipment" aria-describedby="form-equipmentModel"> + {{-- --}}
- {{-- 3 inputs per line :dimension, rating, dim_right --}} -
-
-
- - - - -
-
-
-
- - - - -
-
-
-
- - - - -
-
-
- - - {{-- 3 inputs per line : main_equipment, p&id, sap_number --}} +
+
@@ -484,251 +482,291 @@ class="form-control card_inputs" id="dim_right" + class="form-control" id="main_equipment" placeholder="Main Equipment" + aria-label="Main Equipment" aria-describedby="form_main_equipment">
+ +
- - + + + class="form-control" id="p_id" placeholder="P&ID" + aria-label="P&ID" aria-describedby="form_p_id">
+ +
- + + title="Número SAP"> + class="form-control" id="sap_number" placeholder="Nº SAP" + aria-label="Número SAP" aria-describedby="form_sap_number">
- - {{-- 3 inputs per line : manufacturer, actuatorManufacturer, ActuatorModel --}} +
+
- - + + + +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + +
+ +
+
+ + + class="form-control" id="manufacturer" placeholder="Fabricante" + aria-label="Fabricante" aria-describedby="form_manufacturer">
+ +
- - + + - +
+ +
- - + + - +
- - {{-- 4 inputs per line : actuatorSerialNumber, positionerManufacturer, positionerSerialNumber, isolation --}} +
-
-
- - - - -
-
-
-
- - - - -
-
-
-
- - - - -
-
-
+
- + - + +
-
- - - -
- -
+
- - + - + +
- -
-
- - - - -
-
- - -
-
- - - - -
-
- - - -
-
- - - - -
-
- -
- - + +
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + +
+ +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + +
+ +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + +
+
@endif @@ -736,6 +774,7 @@ class="form-control card_inputs" id="positionerSerialNumber" @elseif ($detalsEquipment->equipment_type_id == 2) + @if ($portfolioOnlyreadOrEditToo == 1 || $portfolioOnlyreadOrEditToo == 3) {{-- Visualizar --}} @@ -747,6 +786,7 @@ class="form-control card_inputs" id="positionerSerialNumber"

ISV - Visualizar

+
@@ -755,8 +795,8 @@ class="form-control card_inputs" id="positionerSerialNumber"
- + - {{-- 3 inputs per line :dimension, rating, dim_right --}} -
-
-
- - - - -
-
-
-
- - - - -
-
-
-
- - - - -
-
-
- {{-- ./row --}} - {{-- 3 inputs per line : main_equipment, p&id, sap_number --}}
@@ -874,8 +873,9 @@ class="form-control card_inputs" id="equipmentSerialNumber" title="Main Equipment">
@@ -886,9 +886,9 @@ class="form-control card_inputs" id="equipmentSerialNumber" data-toggle="tooltip" title="P&ID">
+ value="{{ $specificAttributesArray[9] ?? '' }}" + class="form-control card_inputs" id="p&id" placeholder="P&ID" + aria-label="P & id" aria-describedby="form-p&id" readonly>
@@ -898,120 +898,185 @@ class="form-control card_inputs" id="equipmentSerialNumber" title="Número Sap"> + value="{{ $specificAttributesArray[10] ?? '' }}" + class="form-control card_inputs" id="sap_number" placeholder="Nº SAP" + aria-label="Numero Sap" aria-describedby="form-sap_number" readonly>
- {{-- 3 Inputs per line :material ,manufacturer ,isolation --}} + {{-- 3 inputs per line : area, classe, type_of_fluid --}}
-
+ +
- - + + - - +
-
+ + +
- - + + + +
+
+ + +
+
+ + + + +
+
+
+ + {{-- 3 inputs per line : manufacturer, construction_year, material --}} +
+ +
+
+ + + value="{{ $specificAttributesArray[22] ?? '' }}" + class="form-control card_inputs" id="manufacturer" placeholder="Fabricante" + aria-label="Fabricante" aria-describedby="form_manufacturer" readonly>
-
+ + +
- + + + + +
+
+ + +
+
+ + + + +
+
+
+ + {{-- 2 inputs per line : isolation, scaffolding --}} +
+ + +
+
+ + value="{{ $specificAttributesArray[23] ?? '' }}" + class="form-control card_inputs" id="isolation" placeholder="Isolamento" + aria-label="Isolamento" aria-describedby="form_isolation" readonly>
-
- {{-- ./row --}} - {{-- 4 Selects per line : scaffolding, crane, interlocks, decontamination --}} -
- -
+ +
- - + + value="{{ $specificAttributesArray[24] ?? '' }}" + class="form-control card_inputs" id="scaffolding" placeholder="Andaime" + aria-label="Andaime" aria-describedby="form_scaffolding" readonly>
- -
+
+ + {{-- 3 inputs per line : crane,interlocks,decontamination --}} +
+ + +
- - + + - + value="{{ $specificAttributesArray[25] ?? '' }}" + class="form-control card_inputs" id="crane" placeholder="Guindaste" + aria-label="Guindaste" aria-describedby="form_crane" readonly>
- -
+ + +
- - + + + class="form-control card_inputs" id="interlocks" placeholder="Intertravamentos" + aria-label="Intertravamentos" aria-describedby="form_interlocks" readonly>
- -
+ + +
- - + + - + class="form-control card_inputs" id="decontamination" placeholder="Descontaminação" + aria-label="Descontaminação" aria-describedby="form_decontamination" readonly>
-
-
+
{{-- ./ISV-card-visualizar --}} @@ -1191,12 +1256,13 @@ class="form-control card_inputs" id="decontamination"

ISV - Editar

+
@csrf
- + - +
@@ -1211,7 +1277,7 @@ class="form-control card_inputs" id="decontamination" aria-describedby="form-tagEquipment">
- +
@@ -1221,12 +1287,10 @@ class="form-control card_inputs" id="decontamination" + aria-label="Descrição Equipamento" aria-describedby="form-equipmentDescription">
-
- {{-- 3 inputs per line :equipmentSerialNumber, equipmentBrand, equipmentModel --}}
@@ -1273,249 +1337,228 @@ class="form-control card_inputs" id="equipmentModel" placeholder="Modelo"
- {{-- 3 inputs per line :dimension, rating, dim_right --}} -
-
-
- - - - -
-
-
-
- - - - -
-
-
-
- - - - -
-
-
- {{-- ./row --}} - - {{-- 3 inputs per line : main_equipment, p&id, sap_number --}} +
+
- + + class="form-control" id="main_equipment" placeholder="Main Equipment" + aria-label="Main Equipment" aria-describedby="form_main_equipment">
+ +
- - + + + class="form-control" id="p_id" placeholder="P&ID" + aria-label="P&ID" aria-describedby="form_p_id">
+ +
- - + + + class="form-control" id="sap_number" placeholder="Nº SAP" + aria-label="Número SAP" aria-describedby="form_sap_number">
- - {{-- 3 Inputs per line :material ,manufacturer ,isolation --}} +
-
+ +
- - + + - - +
-
+ + +
- - + + + + +
+
+ + +
+
+ + + + +
+
+
+ + +
+ +
+
+ + + class="form-control" id="manufacturer" placeholder="Fabricante" + aria-label="Fabricante" aria-describedby="form_manufacturer">
- -
+ + +
- - + + - + +
+
+ + +
+
+ + + +
- {{-- ./row --}} - {{-- 4 Selects per line : scaffolding, crane, interlocks, decontamination --}} +
+ +
+
+ + + + +
+
+ -
+
- - + + - + +
- -
+
+ + +
+ + +
- - + + - + +
- -
+ +
- - + + - + +
-
+
- - + + - + +
-
- - - + + +
- - +
- +
{{-- ./ISV-card-Editar --}} @@ -1705,6 +1748,7 @@ class="fas fa-plus">

PSV

+
@@ -1782,101 +1826,6 @@ class="form-control card_inputs" id="equipmentSerialNumber"
- - - {{-- 3 inputs per line :dim_ent, dim_exit, dim_right --}} -
- -
-
- - - - -
-
- -
-
- - - - -
-
- -
-
- - - - -
-
- -
- - - {{-- 3 inputs per line : rating, rating_flange_mount, rating_flange_jusante --}} -
- -
-
- - - - -
-
- -
-
- - - - -
-
- -
-
- - - - -
-
- -
- - {{-- 3 inputs per line : main_equipment, p&id, sap_number --}}
@@ -1919,152 +1868,315 @@ class="form-control card_inputs" id="sap_number" placeholder="Nº SAP"
- {{-- 3 inputs per line :SP_(Bar)_Cold, Back_Presure_(Bar), manufacturer --}} + {{-- 3 inputs per line : area, classe, type_of_fluid --}}
- -
+ +
- - + + - +
- -
+ + +
- - + + - +
- -
+ + +
- - + + + +
+
+
+ + {{-- 3 inputs per line : manufacturer, construction_year, material --}} +
+ +
+
+ + + aria-label="Fabricante" aria-describedby="form_manufacturer" readonly>
- -
- - - {{-- 3 inputs per line : material, isolation, decontamination --}} -
- -
+ + +
- - + + + +
+
+ + +
+
+ + - + aria-label="Material" aria-describedby="form_material" readonly>
- -
+
+ + {{-- 2 inputs per line : isolation, scaffolding --}} +
+ + +
- + + aria-label="Isolamento" aria-describedby="form_isolation" readonly>
-
+ +
- - - - - -
-
- - -
- - - {{-- 3 Selects per line : scaffolding, crane, interlocks --}} -
- -
-
- - + + aria-label="Andaime" aria-describedby="form_scaffolding" readonly>
- -
+
+ + {{-- 3 inputs per line : crane,interlocks,decontamination --}} +
+ + +
- - + + - + class="form-control card_inputs" id="crane" placeholder="Guindaste" + aria-label="Guindaste" aria-describedby="form_crane" readonly>
- -
+ + +
- - + + + class="form-control card_inputs" id="interlocks" placeholder="Intertravamentos" + aria-label="Intertravamentos" aria-describedby="form_interlocks" readonly> +
+
+ + +
+
+ + + + +
+
+
+ + +
+ +
+
+ + + +
+ +
+
+ + + + +
+
+
+ + +
+ +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + +
+ +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + +
+ +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
-
+
{{-- ./PSV-card --}} @@ -2244,7 +2356,7 @@ class="form-control card_inputs" id="interlocks" placeholder="Bloqueios" @endif
- {{-- Visualizar --}} + {{--./Visualizar --}} @endif @@ -2261,9 +2373,9 @@ class="form-control card_inputs" id="interlocks" placeholder="Bloqueios"
@csrf
- + - +
@@ -2278,7 +2390,7 @@ class="form-control card_inputs" id="interlocks" placeholder="Bloqueios" aria-describedby="form-tagEquipment">
- +
@@ -2288,12 +2400,10 @@ class="form-control card_inputs" id="interlocks" placeholder="Bloqueios" + aria-label="Descrição Equipamento" aria-describedby="form-equipmentDescription">
-
- {{-- 3 inputs per line :equipmentSerialNumber, equipmentBrand, equipmentModel --}}
@@ -2340,335 +2450,365 @@ class="form-control card_inputs" id="equipmentModel" placeholder="Modelo"
- {{-- 3 inputs per line :dim_ent, dim_exit, dim_right --}} -
- -
-
- - - - -
-
- -
-
- - - - -
-
- -
-
- - - - -
-
- -
- - - {{-- 3 inputs per line : rating, rating_flange_mount, rating_flange_jusante --}} -
- -
-
- - - - -
-
- -
-
- - - - -
-
- -
-
- - - - -
-
- -
- - - {{-- 3 inputs per line : main_equipment, p&id, sap_number --}} +
+
- + + class="form-control" id="main_equipment" placeholder="Main Equipment" + aria-label="Main Equipment" aria-describedby="form_main_equipment">
+ +
- - + + + class="form-control" id="p_id" placeholder="P&ID" + aria-label="P&ID" aria-describedby="form_p_id">
+ +
- - + + + class="form-control" id="sap_number" placeholder="Nº SAP" + aria-label="Número SAP" aria-describedby="form_sap_number">
- - {{-- 3 inputs per line :SP_(Bar)_Cold, Back_Presure_(Bar), manufacturer --}} +
- -
+ +
- - + + - +
-
+ +
- - + + - +
-
+ +
- - + + + + +
+
+
+ + +
+ +
+
+ + + class="form-control" id="manufacturer" placeholder="Fabricante" + aria-label="Fabricante" aria-describedby="form_manufacturer"> +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + +
+ + +
+
+ + + + +
+
+ + +
+
+ + + +
- - {{-- 3 inputs per line : material, isolation, decontamination --}} +
- -
+ + +
- - + + - - +
- -
+ +
- - + + - + +
-
+
- - + + - + +
-
- - {{-- 3 Selects per line : scaffolding, psv_crane, interlocks --}} +
- - -
+ +
- - + + - +
- -
+ +
- - + + - +
- - -
-
- - - - -
-
-
- + +
+ +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + +
+ +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + +
+ +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+ + +
+
+ + + + +
+
+
+ + +
- +
@if (isset($receiveEquipmentWorkHistorys)) diff --git a/resources/views/projectsClients/showDetailsEquipmentForQrCodePdf.blade.php b/resources/views/projectsClients/showDetailsEquipmentForQrCodePdf.blade.php index 9e8984f3..d2902b54 100755 --- a/resources/views/projectsClients/showDetailsEquipmentForQrCodePdf.blade.php +++ b/resources/views/projectsClients/showDetailsEquipmentForQrCodePdf.blade.php @@ -4,7 +4,7 @@ - Card Example + Ficha Técnica - {{ $detailsEquipment->equipment_tag }} + @foreach ($associatedArray as $key => $value) @if ($detailsEquipment->equipmentType->equipment_type_id == 3) @@ -121,25 +90,30 @@
- *Nome da paragem + {{ $detailsCompanyProject->company_project_description }}
+ +
-
+
N.Ispt
-
- {{ $detailsEquipment->istp_number}} +
+ {{ $detailsEquipment->istp_number }}
+ +
-
+
Tag
-
+
{{ $detailsEquipment->equipment_tag }}
+
@@ -158,14 +132,14 @@
Dim.Entrada:
{{ $specificAttributesArray[4] ?? '###' }}
Rating:
-
{{ $specificAttributesArray[6] ?? '###' }}
+
{{ $specificAttributesArray[43] ?? '###' }}
Dim.Saida:
{{ $specificAttributesArray[5] ?? '###' }}
Rating:
-
{{ $specificAttributesArray[16] ?? '###' }}
+
{{ $specificAttributesArray[44] ?? '###' }}
@@ -177,28 +151,28 @@
Fluido:
{{ $specificAttributesArray[41] ?? '###' }}
Pressão:
-
{{ $specificAttributesArray[100] ?? '###' }}
+
{{ $specificAttributesArray[12] ?? '###' }}
C.pressão:
-
{{ $specificAttributesArray[100] ?? '###' }}
+
{{ $specificAttributesArray[13] ?? '###' }}
-
+
T.val:
-
+
PSV
-
+
Âmbito:
-
+
{{ $detailsEquipment->equipment_ambit}}
-
+
Área:
-
+
{{ $specificAttributesArray[35] ?? '###' }}
@@ -281,22 +255,22 @@
-
+
T.val:
-
+
CV
-
+
Âmbito:
-
+
{{ $detailsEquipment->equipment_ambit}}
-
+
Área:
-
+
{{ $specificAttributesArray[35] ?? '###' }}
@@ -381,22 +355,22 @@
-
+
T.val:
-
+
ISV
-
+
Âmbito:
-
+
{{ $detailsEquipment->equipment_ambit}}
-
+
Área:
-
+
{{ $specificAttributesArray[35] ?? '###' }}