update style projecto

This commit is contained in:
ygbanzato 2024-10-24 09:41:10 +01:00
parent 001fb4559d
commit 580809be26
28 changed files with 688 additions and 357 deletions

View File

@ -977,7 +977,7 @@ public function processStep1(Request $request)
$project->save(); $project->save();
return redirect()->route('articulated_2', ['projectID' => $project->company_projects_id]) return redirect()->route('articulated_2', ['projectID' => $project->company_projects_id])
->with('success', 'Project criado com sucesso!'); ->with('success', 'Projeto Criado!');
} }
public function showStep2($company_projects_id) public function showStep2($company_projects_id)
@ -1038,7 +1038,6 @@ public function showStep2($company_projects_id)
}); });
if (!$pendingEquipments->isEmpty()) { if (!$pendingEquipments->isEmpty()) {
// Retornamos para a view 'step' => 2 indicando conclusao da primeira parte, $numberProject para associacao de equipamentos a esta obra, alem de todos os equipamentos e fabricao ja existente com base na Instalação que se iniciou a obra. // Retornamos para a view 'step' => 2 indicando conclusao da primeira parte, $numberProject para associacao de equipamentos a esta obra, alem de todos os equipamentos e fabricao ja existente com base na Instalação que se iniciou a obra.
return view('projectsClients/articulated_2', ['step' => 2, 'numberProject' => $numberProject]) return view('projectsClients/articulated_2', ['step' => 2, 'numberProject' => $numberProject])
@ -1670,6 +1669,9 @@ function normalize($value)
public function showStep3($company_projects_id) public function showStep3($company_projects_id)
{ {
$receiveDataCompanyProject= CompanyProject::find($company_projects_id)->first();
$equipments = Equipment::where('company_projects_id', $company_projects_id) $equipments = Equipment::where('company_projects_id', $company_projects_id)
->get(); ->get();
@ -1731,7 +1733,8 @@ public function showStep3($company_projects_id)
return view('projectsClients/workStation_3', ['step' => 3, 'numberProject' => $company_projects_id]) return view('projectsClients/workStation_3', ['step' => 3, 'numberProject' => $company_projects_id])
->with('listWorkstations', $listWorkstations) ->with('listWorkstations', $listWorkstations)
->with('equipments', $equipments) ->with('equipments', $equipments)
->with('futherTasks', $futherTasks); ->with('futherTasks', $futherTasks)
->with('receiveDataCompanyProject', $receiveDataCompanyProject);
} }
public function workstationsAssociationTasks(Request $request) public function workstationsAssociationTasks(Request $request)

View File

@ -322,7 +322,7 @@ public function getDetailsEquipmentQrcode(Request $request)
// Retorna apenas a ação para visualizar o PDF // Retorna apenas a ação para visualizar o PDF
$dropdownHtml = ' <a href="' . $pdfUrl . '" class="dropdown-item text-primary"> $dropdownHtml = ' <a href="' . $pdfUrl . '" class="dropdown-item text-primary">
<i class="fa-solid fa-file-pdf"></i> <i class="fa-solid fa-file-pdf"></i>
Visualizar PDF QR Code
</a>'; </a>';
return $dropdownHtml; return $dropdownHtml;
}) })

View File

@ -88,10 +88,11 @@ public function validateForm(Request $request)
} }
public function ListPendingUsers() public function ListPendingUsers($typeUser)
{ {
// Passa para a funcao para qual tipo de utilizador vai criar.
$pend_users = PendingUser::all(); $pend_users = PendingUser::all();
return view('email/pendingUsers', compact('pend_users')); return view('email/pendingUsers', compact('pend_users','typeUser'));
} }
public function ShowFormUser($id) public function ShowFormUser($id)

View File

@ -306,6 +306,7 @@ public function PreparedProject($ProjectId)
->with('units', $checkUnits) ->with('units', $checkUnits)
->with('numberProject', $numberProject) ->with('numberProject', $numberProject)
->with('equipmentsProjects', $equipmentsProjects); ->with('equipmentsProjects', $equipmentsProjects);
} }
public function getAmbits($equipmentType) public function getAmbits($equipmentType)

View File

@ -1280,8 +1280,15 @@ public function receiveAllEquipments()
->toJson(); ->toJson();
} }
public function receiveWorkstationProject($receiveNumberProject) public function receiveWorkstationProject($receiveNumberProject,Request $request)
{ {
// Captura o valor de 'typePage' vindo da requisição
$typePage = $request->input('typePage');
// Apenas para verificação, você pode usar dd() para ver o valor
dd($typePage);
$model = ConstructionWorkstation::where('company_projects_id', $receiveNumberProject)->with('workstationsAssociationTasks'); $model = ConstructionWorkstation::where('company_projects_id', $receiveNumberProject)->with('workstationsAssociationTasks');
// Se ao varificar na tabela 'workstationsAssociationTasks' a coluna elementalTask estiver a null, significa que e uma further task, sendo assim ele busca o campo ao lado. // Se ao varificar na tabela 'workstationsAssociationTasks' a coluna elementalTask estiver a null, significa que e uma further task, sendo assim ele busca o campo ao lado.

View File

@ -70,7 +70,7 @@ protected function getAllowedRoutesForUserType($userType)
'showAllClientsForProjectReports', 'showAllClientsForProjectReports',
'manageAssets', 'manageAssets',
'users.company','users.Show','users.edit','users.destroy','users.update','users.list', 'users.company','users.Show','users.edit','users.destroy','users.update','users.list',
'CreateUsers', 'CreateUsers','createNewUsers',
'enviar.formulario', 'enviar.formulario',
'projectDetails_1','workStation_3','addFurtherTasks','deleteFurtherTasks','editEquipmentTasks', 'projectDetails_1','workStation_3','addFurtherTasks','deleteFurtherTasks','editEquipmentTasks',
'usersProfiles','showCompany', 'usersProfiles','showCompany',

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 413 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 362 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

View File

@ -36,9 +36,10 @@
<!-- Main Sidebar Container --> <!-- Main Sidebar Container -->
<aside class="main-sidebar sidebar-dark-primary elevation-4"> <aside class="main-sidebar sidebar-dark-primary elevation-4">
<!-- Brand Logo --> <!-- Brand Logo -->
<a href="#" class="brand-link" style="pointer-events: none;"> <a href="#" class="brand-link" style="pointer-events: none;">
<img src="{{ asset('/img/ispt.jpg') }}" alt="AdminLTE Logo" class="brand-image img-circle elevation-3" <img src="{{ asset('/img/ispt/4.0/Ispt4.0_Símbolo_Fundo_Azul-Marinho@2x-100.jpg') }}" alt="AdminLTE Logo"
style="opacity: .8"> class="brand-image img-circle elevation-3" style="opacity: .8">
<span class="brand-text font-weight-light">ISPT 4.0</span> <span class="brand-text font-weight-light">ISPT 4.0</span>
</a> </a>
@ -46,7 +47,7 @@
<div class="sidebar"> <div class="sidebar">
<!-- Sidebar user panel (optional) --> <!-- Sidebar user panel (optional) -->
<div class="user-panel mt-3 pb-3 mb-3 d-flex"> <div class="user-panel mt-3 pb-3 mb-3 d-flex">
{{-- Verifica se esta logado , se estiver , busca os dados do utilizador atual. --}} <!-- Verifica se esta logado , se estiver , busca os dados do utilizador atual. -->
@if (Auth::check()) @if (Auth::check())
<div class="image"> <div class="image">
<img class="img-circle elevation-2 imgProfile editImg" <img class="img-circle elevation-2 imgProfile editImg"
@ -55,7 +56,7 @@
</div> </div>
<div class="info"> <div class="info">
<a href="{{ route('usersProfiles', ['id' => Auth::user()->user_id]) }}" <a href="{{ route('usersProfiles', ['id' => Auth::user()->user_id]) }}"
class="d-block">{{ Auth::user()->userType?->type_user }}</a> class="d-block">{{ Auth::user()->user_name }}</a>
</div> </div>
@endif @endif
</div> </div>
@ -66,7 +67,7 @@ class="d-block">{{ Auth::user()->userType?->type_user }}</a>
data-accordion="false"> data-accordion="false">
{{-- Menu para Administradores e Super --}} <!-- Menu para Administradores e Super -->
@if (Auth::user()->type_users == 1 || Auth::user()->type_users == 2) @if (Auth::user()->type_users == 1 || Auth::user()->type_users == 2)
<li class="nav-item"> <li class="nav-item">
<a href="{{ route('home') }}" class="nav-link active"> <a href="{{ route('home') }}" class="nav-link active">
@ -74,40 +75,62 @@ class="d-block">{{ Auth::user()->userType?->type_user }}</a>
<p> {{ __('messages.dashboard.dashboard') }} </p> <p> {{ __('messages.dashboard.dashboard') }} </p>
</a> </a>
</li> </li>
<li class="nav-item">
<a href="{{ route('createProject') }}" class="nav-link">
<i class="nav-icon fas fa-helmet-safety"></i>
<p> {{ __('messages.createProject.create_project') }} </p>
</a>
</li>
{{-- Relatorios para os Admin, SuperAdmin --}}
<li class="nav-item">
<a href="{{ route('showAllClientsForProjectReports') }}" class="nav-link">
<i class="nav-icon fas fa-file"></i>
<p>
Relatórios
</p>
</a>
</li>
<li class="nav-item"> <li class="nav-item">
<a href="#" class="nav-link"> <a href="#" class="nav-link">
<i class="nav-icon fas fa-briefcase"></i> <i class="nav-icon fas fa-briefcase"></i>
<p> {{ __('messages.portfolio.top_view_part.portfolio') }} <p> Obras
<i class="fas fa-angle-left right"></i> <i class="fas fa-angle-left right"></i>
</p> </p>
</a> </a>
<ul class="nav nav-treeview"> <ul class="nav nav-treeview">
<li class="nav-item"> <li class="nav-item ml-3">
<a href="{{ route('manageAssets') }}" class="nav-link"> <a href="{{ route('createProject') }}" class="nav-link">
<i class="fa-solid fa-file-circle-plus"></i>
<p> Criar Obra</p>
</a>
</li>
<li class="nav-item ml-3">
<a href="{{ route('viewProjectsList', ['orderProjectID' => 1]) }}" class="nav-link">
<i class="fa-solid fa-file-edit"></i> <i class="fa-solid fa-file-edit"></i>
<p> {{ __('messages.portfolio.top_view_part.management_assets') }}</p> <p>Em Planeamento</p>
</a>
</li>
<li class="nav-item ml-3">
<a href="{{ route('viewProjectsList', ['orderProjectID' => 2]) }}" class="nav-link">
<i class="fa-solid fa-file"></i>
<p>Preparadas</p>
</a>
</li>
<li class="nav-item ml-3">
<a href="{{ route('viewProjectsList', ['orderProjectID' => 3]) }}" class="nav-link">
<i class="fa-solid fa-file-lines"></i>
<p>Em execuçãp</p>
</a>
</li>
<li class="nav-item ml-3">
<a href="{{ route('viewProjectsList', ['orderProjectID' => 4]) }}" class="nav-link">
<i class="fa-solid fa-file-circle-check"></i>
<p>Concluídas</p>
</a>
</li>
<li class="nav-item ml-3">
<a href="{{ route('manageAssets') }}" class="nav-link">
<i class="fa-solid fa-folder-open"></i>
<p>Relatórios</p>
</a> </a>
</li> </li>
</ul> </ul>
</li> </li>
<li class="nav-item">
<a href="{{ route('manageAssets') }}" class="nav-link active">
<i class="nav-icon fa-solid fa-file-edit"></i>
<p>Portfólio</p>
</a>
</li>
{{-- Menu para Cliente --}} {{-- Menu para Cliente --}}
@elseif (Auth::user()->type_users == 3) @elseif (Auth::user()->type_users == 3)
<li class="nav-item"> <li class="nav-item">
@ -132,44 +155,82 @@ class="d-block">{{ Auth::user()->userType?->type_user }}</a>
</li> </li>
@endif @endif
<!-- Apenas os Super Admins e Admin tem acesso a estas Rotas --> <!-- Apenas os Super Admins e Admin tem acesso a estas Rotas -->
@if (Auth::user()->type_users == 1 || Auth::user()->type_users == 2) @if (Auth::user()->type_users == 1 || Auth::user()->type_users == 2)
<!-- Single menu item -->
<li class="nav-item"> <li class="nav-item">
<a href="#" class="nav-link"> <a href="#" class="nav-link">
<i class="nav-icon fas fa-gear"></i> <i class="nav-icon fas fa-gear"></i>
<p> {{ __('messages.users_listUsers.top_view_part.administration') }} <p> Administração
<i class="fas fa-angle-left right"></i> <i class="fas fa-angle-left right"></i>
</p> </p>
</a> </a>
<ul class="nav nav-treeview"> <ul class="nav nav-treeview">
<li class="nav-item">
<a href="{{ route('users.list') }}" class="nav-link"> <!-- Seção de Utilizadores -->
<li class="nav-item ml-3">
<a href="#" class="nav-link">
<i class="fa-solid fa-users"></i> <i class="fa-solid fa-users"></i>
<p>{{ __('messages.users_listUsers.users') }}</p> <p>Utilizadores
<i class="fas fa-angle-left right"></i>
</p>
</a>
<ul class="nav nav-treeview nested-menu">
<li class="nav-item ml-3">
<a href="{{ route('createNewUsers', ['typeUser' => 'user']) }}"
class="nav-link">
<i class="fas fa-plus"></i>
<p>Criar Utilizadores</p>
</a> </a>
</li> </li>
<li class="nav-item"> <li class="nav-item ml-3">
<a href="{{ route('users.company') }}" class="nav-link"> <a href="{{ route('users.list') }}" class="nav-link">
<i class="fa-solid fa-house-user"></i> <i class="fa-solid fa-list"></i>
<p>{{ __('messages.users_listUsers.companies') }}</p> <p>Listar Utilizadores</p>
</a>
</li>
<li class="nav-item">
<a href="{{ route('CreateUsers') }}" class="nav-link">
<i class="nav-icon fas fa-gear"></i>
<p>{{ __('messages.users_listUsers.create_users') }}</p>
</a> </a>
</li> </li>
</ul> </ul>
</li> </li>
@endif
<br> <!-- Seção de Empresas -->
<form method="POST" action="{{ route('logout') }}"> <li class="nav-item ml-3">
<a href="#" class="nav-link">
<i class="fa-solid fa-building"></i>
<p>Empresas
<i class="fas fa-angle-left right"></i>
</p>
</a>
<ul class="nav nav-treeview nested-menu">
<li class="nav-item ml-3">
<a href="{{ route('createNewUsers', ['typeUser' => 'company']) }}"
class="nav-link">
<i class="fas fa-plus"></i>
<p>Criar Empresa</p>
</a>
</li>
<li class="nav-item ml-3">
<a href="{{ route('users.company') }}" class="nav-link">
<i class="fa-solid fa-list"></i>
<p>Listar Empresa</p>
</a>
</li>
</ul>
</li>
</ul>
</li>
<!-- Botão de Terminar Sessão -->
<li class="nav-item">
<form method="POST" action="{{ route('logout') }}" class="nav-link p-0">
@csrf @csrf
<button type="submit" class="btn btn-danger">Terminar sessão</button> <button type="submit" class="btn w-100 text-left d-flex align-items-center" >
<i class="nav-icon fa-solid fa-power-off" style="color: red"></i>
<p class="ml-2 d-none d-sm-inline" style="color:white;">Terminar sessão</p>
</button>
</form> </form>
</li>
@endif
<!-- /.Single menu item --> <!-- /.Single menu item -->
</ul> </ul>

View File

@ -206,6 +206,44 @@
object-fit: cover; object-fit: cover;
/* Isso fará com que a imagem cubra completamente a área sem distorcer */ /* Isso fará com que a imagem cubra completamente a área sem distorcer */
} }
.nav-sidebar .nav-link {
display: flex;
align-items: center;
/* Alinha ícones e textos verticalmente */
justify-content: flex-start;
/* Alinha à esquerda */
padding-left: 10px;
/* Adiciona espaçamento à esquerda */
}
.nav-sidebar .nav-link i {
margin-right: 10px;
/* Espaçamento entre o ícone e o texto */
}
.nav-sidebar .nav-treeview .nav-link {
padding-left: 20px;
/* Aumenta o recuo para subitens */
}
.nav-sidebar .nav-treeview .nav-item>.nav-link p {
margin-left: 5px;
/* Ajusta a distância entre o ícone e o texto */
}
.nav-sidebar .nav-item .btn-danger {
width: 100%;
/* Garante que o botão ocupe toda a largura */
text-align: left;
/* Alinha o texto dentro do botão à esquerda */
}
.nav-sidebar .nav-item .btn-danger i {
margin-right: 10px;
/* Espaçamento entre ícone e texto no botão de logout */
}
</style> </style>
</head> </head>
@ -222,24 +260,18 @@
</div> </div>
<!-- Se o utilizador - Tecnico se logar, quer dizer que deve exebir o WorkstationsLayout ,se nao exibe outro para Admins e Clientes --> <!-- Se o utilizador - Tecnico se logar, quer dizer que deve exebir o WorkstationsLayout ,se nao exibe outro para Admins e Clientes -->
{{-- @if (Auth::user()->type_users == 5) --}} @if (Auth::user()->type_users == 5)
@yield('Content-WorkstationsLayout') @yield('Content-WorkstationsLayout')
@else
{{-- @else --}}
@yield('Content-AdminLayout') @yield('Content-AdminLayout')
@endif
{{-- @endif --}}
</div> </div>
<!-- ./ Wrapper --> <!-- ./ Wrapper -->
<footer class="main-footer"> <footer class="main-footer">
<strong>Copyright &copy; 2017-{{ date('Y') }} <a href="https://www.isptgroup.com" id="isptGroupLink">ISPT <strong>Copyright &copy; 2017-{{ date('Y') }} <a href="https://www.isptgroup.com" id="isptGroupLink">
- ISPT - Industrial Services, SA</a>.</strong> Todos os direitos reservados.
Industrial Services, SA</a>.</strong>
Todos os direitos reservados.
<div class="float-right d-none d-sm-inline-block"> <div class="float-right d-none d-sm-inline-block">
<b>Versão</b> {{ config('app.version') }} <b>Versão</b> {{ config('app.version') }}
</div> </div>

View File

@ -1,4 +1,5 @@
@foreach ($recebeTasksForEquipment as $tasktodo) @foreach ($recebeTasksForEquipment as $tasktodo)
{{-- @php {{-- @php
// Verificar se o $dataControlEquipment contém o tipo de página // Verificar se o $dataControlEquipment contém o tipo de página
$typePage = $dataControlEquipment['typePageForViewElementalTasks'] ?? null; $typePage = $dataControlEquipment['typePageForViewElementalTasks'] ?? null;

View File

@ -31,8 +31,6 @@
<div class="col-sm-6"> <div class="col-sm-6">
<ol class="breadcrumb float-sm-right"> <ol class="breadcrumb float-sm-right">
<li class="breadcrumb-item active">{{ __('messages.pendingUsers.administration') }}</li> <li class="breadcrumb-item active">{{ __('messages.pendingUsers.administration') }}</li>
<li class="breadcrumb-item active"><a
href="{{ route('CreateUsers') }}">{{ __('messages.pendingUsers.create_users') }}</a></li>
</ol> </ol>
</div> </div>
</div> </div>
@ -42,12 +40,10 @@
<section class="content"> <section class="content">
<div class="container-fluid"> <div class="container-fluid">
@if($typeUser == 'user')
<div class="card card-primary"> <div class="card card-primary">
<div class="card-header"> <div class="card-header">
<h3 class="card-title mb-0">Enviar Formulario para criar Utilizador</h3> <h3 class="card-title mb-0">Enviar Formulario para criar Utilizador</h3>
{{-- <h3 class="card-title mb-0">{{ __('messages.pendingUsers.submit_form') }}</h3> --}}
</div> </div>
<div class="card-body"> <div class="card-body">
@ -76,8 +72,9 @@ class="btn btn-light">{{ __('messages.pendingUsers.submit') }}</button>
</div> </div>
{{-- /.card-body --}} {{-- /.card-body --}}
</div> </div>
{{-- ./card-light --}} @endif
@if($typeUser == 'company')
<div class="card card-success"> <div class="card card-success">
<div class="card-header"> <div class="card-header">
<h3 class="card-title mb-0">Criar Empresas</h3> <h3 class="card-title mb-0">Criar Empresas</h3>
@ -127,7 +124,9 @@ class="btn btn-light">{{ __('messages.pendingUsers.submit') }}</button>
</div> </div>
{{-- /.card-body --}} {{-- /.card-body --}}
</div> </div>
@endif
@if($typeUser == 'user')
<div class="card card-primary"> <div class="card card-primary">
<div class="card-header"> <div class="card-header">
<h2 class="card-title">{{ __('messages.pendingUsers.pending_users') }}:</h2> <h2 class="card-title">{{ __('messages.pendingUsers.pending_users') }}:</h2>
@ -162,7 +161,7 @@ class="fa-solid fa-eye text-primary"></i></a></td>
</div> </div>
{{-- ./Card-body --}} {{-- ./Card-body --}}
</div> </div>
{{-- ./card-light --}} @endif
</div> </div>
</section> </section>

View File

@ -130,21 +130,23 @@ class="fas fa-plus"></i></button>
<!-- Content Header (Page header) --> <!-- Content Header (Page header) -->
<section class="content-header"> <section class="content-header">
<div class="container-fluid"> <div class="container-fluid">
<div class="row mb-2"> <div class="row mb-2 align-items-center">
<!-- Título da página à esquerda -->
<div class="col-sm-6"> <div class="col-sm-6">
<h1>{{ $receiveNumberProject->company_project_description }}</h1> <h1 class="text-left">{{ $receiveNumberProject->company_project_description }}</h1>
<input type="hidden" value="{{ $receiveNumberProject->company_projects_id }}"
id="receiveNumberProject">
</div> </div>
<!-- Breadcrumb alinhado à direita -->
<div class="col-sm-6"> <div class="col-sm-6">
<ol class="breadcrumb float-sm-right"> <ol class="breadcrumb float-sm-right">
<li class="breadcrumb-item"><a href="{{ route('home') }}">Dashboard</a></li> <li class="breadcrumb-item">
{{-- <li class="breadcrumb-item"><a href="{{ route('')}}./preparadas.html">Preparadas</a></li> --}} <a href="{{ route('viewProjectsList', ['orderProjectID' => 1]) }}">Em Planeamento</a>
</li>
<li class="breadcrumb-item active">{{ $receiveNumberProject->company_project_description }}</li> <li class="breadcrumb-item active">{{ $receiveNumberProject->company_project_description }}</li>
<li class="breadcrumb-item active">2 - Criar Articulado`</li>
</ol> </ol>
</div><!-- /.col -->
</div> </div>
</div><!-- /.container-fluid --> </div>
</div>
</section> </section>
<!-- /.content-header --> <!-- /.content-header -->
@ -153,7 +155,7 @@ class="fas fa-plus"></i></button>
<div class="card card-primary"> <div class="card card-primary">
<div class="card-header"> <div class="card-header">
<h3 class="card-title">Articulado</h3> <h3 class="card-title">2 - Criar Articulado</h3>
</div> </div>
<!-- ./Card-header --> <!-- ./Card-header -->
@ -180,10 +182,10 @@ class="fas fa-plus"></i></button>
<div class="row"> <div class="row">
<!-- select --> <!-- select -->
<div class="form-group col-sm"> <div class="form-group col-sm">
<label>Fabrica</label> <label>Fábrica</label>
<select class="form-control" name="unit_id" id="unit_select" required> <select class="form-control" name="unit_id" id="unit_select" required>
<option value='' hidden>Selecione Fabrica...</option> <option value='' hidden>Selecione Fábrica...</option>
<option value="new">Criar Fabrica...</option> <option value="new">Criar Fábrica...</option>
@foreach ($checkUnits as $checkUnit) @foreach ($checkUnits as $checkUnit)
<option value="{{ $checkUnit->unit_id }}"> <option value="{{ $checkUnit->unit_id }}">
{{ $checkUnit->unit_name }} {{ $checkUnit->unit_name }}
@ -193,9 +195,9 @@ class="fas fa-plus"></i></button>
</div> </div>
<div class="form-group col-sm" id="new_unit_div"> <div class="form-group col-sm" id="new_unit_div">
<label>Nova Fabrica :</label> <label>Nova Fábrica :</label>
<input type="text" id="new_unit_name" class="form-control" name="new_unit_name" <input type="text" id="new_unit_name" class="form-control" name="new_unit_name"
placeholder="Digite o nome da nova Fabrica" required> placeholder="Digite o nome da nova Fábrica" required>
</div> </div>
</div> </div>
@ -421,11 +423,11 @@ class="form-control card_inputs" id="material"
<div class="input-group-prepend"> <div class="input-group-prepend">
<span class="input-group-text" id="form-manufacturer"> <span class="input-group-text" id="form-manufacturer">
<i class="fa-solid fa-building" style="color: #00B0EA;" <i class="fa-solid fa-building" style="color: #00B0EA;"
data-toggle="tooltip" title="Fabricante"></i> data-toggle="tooltip" title="Fábricante"></i>
</span> </span>
<input type="text" name="manufacturer" <input type="text" name="manufacturer"
class="form-control card_inputs" id="manufacturer" class="form-control card_inputs" id="manufacturer"
placeholder="Fabricante" aria-label="Fabricante" placeholder="Fábricante" aria-label="bricante"
aria-describedby="form-manufacturer"> aria-describedby="form-manufacturer">
</div> </div>
</div> </div>
@ -653,12 +655,12 @@ class="form-control card_inputs" id="materialEquipment"
<div class="form-group col-sm-4"> <div class="form-group col-sm-4">
<div class="input-group-prepend"> <div class="input-group-prepend">
<span class="input-group-text" id="form-manufacturerEquipment" <span class="input-group-text" id="form-manufacturerEquipment"
data-toggle="tooltip" title="Fabricante"> data-toggle="tooltip" title="Fábricante">
<i class="fa-solid fa-building"" style="color: #00B0EA;"></i> <i class="fa-solid fa-building"" style="color: #00B0EA;"></i>
</span> </span>
<input type="text" name="manufacturer" <input type="text" name="manufacturer"
class="form-control card_inputs" id="manufacturerEquipment" class="form-control card_inputs" id="manufacturerEquipment"
placeholder="Fabricante" aria-label="Fabricante Equipamento" placeholder="Fábricante" aria-label="bricante Equipamento"
aria-describedby="form-manufacturerEquipment"> aria-describedby="form-manufacturerEquipment">
</div> </div>
</div> </div>
@ -890,13 +892,13 @@ class="form-control card_inputs" id="material"
<div class="form-group col-sm-4"> <div class="form-group col-sm-4">
<div class="input-group-prepend"> <div class="input-group-prepend">
<span class="input-group-text" id="form-manufacturerEquipment" <span class="input-group-text" id="form-manufacturerEquipment"
data-toggle="tooltip" title="Fabricante"> data-toggle="tooltip" title="Fábricante">
<i class="fa-solid fa-building" style="color: #00B0EA;"></i> <i class="fa-solid fa-building" style="color: #00B0EA;"></i>
</span> </span>
<input type="text" name="manufacturer" <input type="text" name="manufacturer"
class="form-control card_inputs" id="manufacturerEquipment" class="form-control card_inputs" id="manufacturerEquipment"
placeholder="Fabricante" aria-label="Fabricante Equipamento" placeholder="Fábricante" aria-label="bricante Equipamento"
aria-describedby="form-manufacturerEquipment"> aria-describedby="form-manufacturerEquipment">
</div> </div>
</div> </div>
@ -920,13 +922,13 @@ class="form-control card_inputs" id="isolation"
<div class="form-group col-sm-4"> <div class="form-group col-sm-4">
<div class="input-group-prepend"> <div class="input-group-prepend">
<span class="input-group-text" id="form-actuatorManufacturer" <span class="input-group-text" id="form-actuatorManufacturer"
data-toggle="tooltip" title="Fabricante do atuador"> data-toggle="tooltip" title="Fábricante do atuador">
<i class="fa-solid fa-cubes" style="color: #00B0EA;"></i> <i class="fa-solid fa-cubes" style="color: #00B0EA;"></i>
</span> </span>
<input type="text" name="actuatorManufacturer" <input type="text" name="actuatorManufacturer"
class="form-control card_inputs" id="actuatorManufacturer" class="form-control card_inputs" id="actuatorManufacturer"
placeholder="Fabricante do atuador" placeholder="Fábricante do atuador"
aria-label="Fabricante do Atuador" aria-label="Fábricante do Atuador"
aria-describedby="form-actuatorManufacturer"> aria-describedby="form-actuatorManufacturer">
</div> </div>
</div> </div>
@ -963,13 +965,13 @@ class="form-control card_inputs" id="actuatorSerialNumber"
<div class="form-group col-sm-6"> <div class="form-group col-sm-6">
<div class="input-group-prepend"> <div class="input-group-prepend">
<span class="input-group-text" id="form-PositionerManufacturer" <span class="input-group-text" id="form-PositionerManufacturer"
data-toggle="tooltip" title="Fabricante do posicionador"> data-toggle="tooltip" title="Fábricante do posicionador">
<i class="fa-solid fa-cubes" style="color: #00B0EA;"></i> <i class="fa-solid fa-cubes" style="color: #00B0EA;"></i>
</span> </span>
<input type="text" name="PositionerManufacturer" <input type="text" name="PositionerManufacturer"
class="form-control card_inputs" id="PositionerManufacturer" class="form-control card_inputs" id="PositionerManufacturer"
placeholder="Fabricante do posicionador" placeholder="Fábricante do posicionador"
aria-label="Fabricante do posicionador" aria-label="Fábricante do posicionador"
aria-describedby="form-PositionerManufacturer"> aria-describedby="form-PositionerManufacturer">
</div> </div>
</div> </div>
@ -1042,7 +1044,7 @@ class="form-control card_inputs" id="PositionerSerialNumber"
<div class="card card-primary collapsed-card"> <div class="card card-primary collapsed-card">
<div class="card-header clickable"> <div class="card-header clickable">
<h3 class="card-title">Selecionar Equipamentos ja existentes</h3> <h3 class="card-title">Selecionar Equipamentos do Portefólio</h3>
<div class="card-tools"> <div class="card-tools">
<button type="button" class="btn btn-tool collapse-button" <button type="button" class="btn btn-tool collapse-button"
data-card-widget="collapse"><i class="fas fa-plus"></i></button> data-card-widget="collapse"><i class="fas fa-plus"></i></button>
@ -1055,10 +1057,10 @@ class="form-control card_inputs" id="PositionerSerialNumber"
<div class="row text-center"> <div class="row text-center">
<div class="form-group col-sm"> <div class="form-group col-sm">
<label>Fabrica</label> <label>Fábrica</label>
<select class="form-control" name="unit_id" id="unit_select2"> <select class="form-control" name="unit_id" id="unit_select2">
{{-- Antes era : 'unit_select' (caso de algum erro) --}} {{-- Antes era : 'unit_select' (caso de algum erro) --}}
<option value='#' hidden>Selecione Fabrica...</option> <option value='#' hidden>Selecione Fábrica...</option>
@foreach ($checkUnits as $checkUnit) @foreach ($checkUnits as $checkUnit)
<option value="{{ $checkUnit->unit_id }}"> <option value="{{ $checkUnit->unit_id }}">
{{ $checkUnit->unit_name }} {{ $checkUnit->unit_name }}
@ -1092,7 +1094,7 @@ class="form-control card_inputs" id="PositionerSerialNumber"
<th>Tag</th> <th>Tag</th>
<th>Descrição Equipamento</th> <th>Descrição Equipamento</th>
<th>Tipo de Equipamento</th> <th>Tipo de Equipamento</th>
<th>Fabrica</th> <th>Fábrica</th>
<th>Selecionar Equipamentos</th> <th>Selecionar Equipamentos</th>
</tr> </tr>
</thead> </thead>
@ -1114,9 +1116,16 @@ class="form-control card_inputs" id="PositionerSerialNumber"
</div> </div>
</div> </div>
<h5 style="color: #09255C;">Criar Pelo Template:</h5> <div class="card card-success">
<div class="card"> <div class="card-header clickable">
<div class="card-header" style="background-color: #EAF3F6;"> <h3 class="card-title">Importar Articulado:</h3>
<div class="card-tools">
<button type="button" class="btn btn-tool collapse-button"
data-card-widget="collapse"><i class="fas fa-plus"></i></button>
</div>
</div>
<div class="card-body">
<form action="{{ route('processStep2') }}" method="post" enctype="multipart/form-data"> <form action="{{ route('processStep2') }}" method="post" enctype="multipart/form-data">
@csrf @csrf
<input type="hidden" name="numberProject" value="{{ $numberProject }}"> <input type="hidden" name="numberProject" value="{{ $numberProject }}">
@ -1148,10 +1157,10 @@ class="input-group-text border rounded-left"
Importar Articulado Importar Articulado
</label> </label>
</div> </div>
</div>
</div>
</div> <div class="col-2 col-md-2 col-lg d-flex justify-content-end">
</div>
<div class="col-2 col-md-2 col-lg">
<button type="submit" class="btn" <button type="submit" class="btn"
style="background-color: #09255C; color: #ffffff;">Enviar</button> style="background-color: #09255C; color: #ffffff;">Enviar</button>
</div> </div>
@ -1160,6 +1169,8 @@ class="input-group-text border rounded-left"
</div> </div>
</div> </div>
<script> <script>
$(function() { $(function() {
$('[data-toggle="tooltip"]').tooltip(); $('[data-toggle="tooltip"]').tooltip();
@ -1221,8 +1232,8 @@ class="input-group-text border rounded-left"
<th>NªIspt</th> <th>NªIspt</th>
<th>Tag</th> <th>Tag</th>
<th>Descrição</th> <th>Descrição</th>
<th>Ambito</th> <th>Âmbito</th>
<th>Fabrica</th> <th>Fábrica</th>
<th>Tipo</th> <th>Tipo</th>
<th>Ações</th> <th>Ações</th>
</tr> </tr>
@ -1243,9 +1254,9 @@ class="input-group-text border rounded-left"
<!-- ./Card card-Primary --> <!-- ./Card card-Primary -->
<a style="margin: 10px" href="{{ route('projectDetails_1', ['id' => $numberProject]) }}" <a style="margin: 10px" href="{{ route('projectDetails_1', ['id' => $numberProject]) }}"
class="btn btn-primary float-left">Detalhes obra</a> class="btn btn-primary float-left">1 - Detalhes da Obra</a>
<a style="margin: 10px" href="{{ route('workStation_3', ['id' => $numberProject]) }}" <a style="margin: 10px" href="{{ route('workStation_3', ['id' => $numberProject]) }}"
class="btn btn-primary float-right">Postos de Trabalho</a> class="btn btn-primary float-right">3 - Postos de Trabalho</a>
</div> </div>
{{-- ./container-fluid --}} {{-- ./container-fluid --}}
@ -1292,7 +1303,7 @@ class="btn btn-primary float-right">Postos de Trabalho</a>
<!-- Conteúdo da modal --> <!-- Conteúdo da modal -->
<div class="modal-content"> <div class="modal-content">
<div class="modal-header bg-primary"> <div class="modal-header bg-primary">
<h4 class="modal-title">Trocar o Ambito, Equipamento : {{ $equipment->equipment_id }} </h4> <h4 class="modal-title">Trocar o Âmbito, Equipamento : {{ $equipment->equipment_id }} </h4>
<button type="button" class="close" data-dismiss="modal" aria-label="Close"> <button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">x</span> <span aria-hidden="true">x</span>
</button> </button>
@ -1300,7 +1311,7 @@ class="btn btn-primary float-right">Postos de Trabalho</a>
<div class="modal-body"> <div class="modal-body">
<form action="{{ route('changeAmbitEquipment') }}" method="post"> <form action="{{ route('changeAmbitEquipment') }}" method="post">
@csrf @csrf
<p>Seleciona o ambito para qual deseja ser trocado.</p> <p>Seleciona o Âmbito para qual deseja ser trocado.</p>
<input type="hidden" class="equipmentType_id" <input type="hidden" class="equipmentType_id"
value="{{ $equipment->equipment_type_id }}"> value="{{ $equipment->equipment_type_id }}">
<input type="hidden" name="equipmentID" value="{{ $equipment->equipment_id }}"> <input type="hidden" name="equipmentID" value="{{ $equipment->equipment_id }}">
@ -1720,7 +1731,7 @@ class="badge badge-info">(Número da copia)</span></h4>
}); });
</script> --}} </script> --}}
{{-- Receber os Ambitos para criacao de equipamento manual --}} {{-- Receber os Âmbitos para criacao de equipamento manual --}}
<script> <script>
$(document).ready(function() { $(document).ready(function() {
$('#equipmentType_id_listManual').on('change', function() { $('#equipmentType_id_listManual').on('change', function() {
@ -1785,7 +1796,7 @@ class="badge badge-info">(Número da copia)</span></h4>
}); });
</script> --}} </script> --}}
{{-- esse script serve para receber o Ambito das Pendentes ? --}} {{-- esse script serve para receber o Âmbito das Pendentes ? --}}
<script> <script>
$(document).ready(function() { $(document).ready(function() {
@isset($pendingEquipment) @isset($pendingEquipment)
@ -1850,7 +1861,7 @@ class="badge badge-info">(Número da copia)</span></h4>
{{-- Script para trocas de ambito --}} {{-- Script para trocas de Âmbito --}}
<script> <script>
$(document).ready(function() { $(document).ready(function() {
$('.equipmentType_id').each(function() { $('.equipmentType_id').each(function() {
@ -2453,7 +2464,7 @@ function(task) {
</script> </script>
{{-- Script para devolver os Ambitos de acordo com o tipo, para equipamentos pendentes --}} {{-- Script para devolver os Âmbitos de acordo com o tipo, para equipamentos pendentes --}}
<script> <script>
$(document).ready(function() { $(document).ready(function() {
$('[id^="modal-PendingEquipmentCreate-"]').on('show.bs.modal', function(e) { $('[id^="modal-PendingEquipmentCreate-"]').on('show.bs.modal', function(e) {

View File

@ -11,6 +11,7 @@
@section('Main-content') @section('Main-content')
<div class="row justify-content-center"> <div class="row justify-content-center">
<div class="col-12"> <div class="col-12">
<div class="row justify-content-center"> <div class="row justify-content-center">
<div class="card-body"> <div class="card-body">
@ -26,6 +27,22 @@
</div> </div>
</div> </div>
<section class="content-header">
<div class="container-fluid">
<div class="row mb-2">
<div class="col-sm-6">
<h1>Criar Obra </h1>
</div>
<div class="col-sm-6">
<ol class="breadcrumb float-sm-right">
<li class="breadcrumb-item active">Obras</li>
<li class="breadcrumb-item active">Criar Obra</li>
</ol>
</div><!-- /.col -->
</div>
</div><!-- /.container-fluid -->
</section>
<fieldset class="content"> <fieldset class="content">
<div class="container-fluid"> <div class="container-fluid">
<div class="card card-primary" id="CardDetalhes"> <div class="card card-primary" id="CardDetalhes">
@ -55,11 +72,11 @@
<!-- Gestor de Projeto ISPT --> <!-- Gestor de Projeto ISPT -->
<div class="form-group col-sm-6"> <div class="form-group col-sm-6">
<label>{{ __('messages.createProject.ispt_project_manager') }} <b <label>
style="color:red">*</b></label> {{ __('messages.createProject.ispt_project_manager') }}
</label>
<input type="text" name="responsible_project_ispt" class="form-control" <input type="text" name="responsible_project_ispt" class="form-control"
placeholder="{{ __('messages.createProject.ispt_project_manager') }}&hellip;" placeholder="{{ __('messages.createProject.ispt_project_manager') }}&hellip;" >
required>
</div> </div>
<!-- Número do Projeto ISPT --> <!-- Número do Projeto ISPT -->
@ -80,8 +97,9 @@
<!-- Empresa Contratante --> <!-- Empresa Contratante -->
<div class="form-group col-sm" id="companyField"> <div class="form-group col-sm" id="companyField">
<label>{{ __('messages.createProject.select_company.contracting_company') }} <b <label>
style="color:red">*</b></label> Cliente <b style="color:red">*</b>
</label>
<select class="form-control" name="company_select" id="company_select" <select class="form-control" name="company_select" id="company_select"
@required(true)> @required(true)>
{{-- <option>{{ __('messages.createProject.select_plant.plant') }} ...</option> --}} {{-- <option>{{ __('messages.createProject.select_plant.plant') }} ...</option> --}}
@ -100,9 +118,10 @@
<!-- Gestor de Projeto da Empresa --> <!-- Gestor de Projeto da Empresa -->
<div class="form-group col-sm" id="companyProjectManager"> <div class="form-group col-sm" id="companyProjectManager">
<label for="user_id">{{ __('messages.createProject.compan_project_manager') }}<b <label for="user_id">
style="color:red">*</b></label> Gestor de Projeto do Cliente
<select class="form-control" name="user_id" id="user_id" required> </label>
<select class="form-control" name="user_id" id="user_id" >
<option value="#" disabled selected>Selecione um gestor...</option> <option value="#" disabled selected>Selecione um gestor...</option>
<!-- As opções de instalação serão preenchidas dinamicamente --> <!-- As opções de instalação serão preenchidas dinamicamente -->
</select> </select>
@ -163,8 +182,9 @@
<!-- Número do Projeto da Empresa --> <!-- Número do Projeto da Empresa -->
<div class="form-group col-sm-6"> <div class="form-group col-sm-6">
<label>{{ __('messages.createProject.company_project_number') }}<b <label>Número do Projeto do Cliente
style="color:red">*</b></label> <b style="color:red">*</b></label>
{{-- <input type="number" name="project_company_name" class="form-control" {{-- <input type="number" name="project_company_name" class="form-control"
data-type="company" data-type="company"

View File

@ -44,6 +44,7 @@ class="btn btn-block bg-gradient-primary btn-lg">Articulado</a>
Trabalho</a> Trabalho</a>
</div> </div>
</div> </div>
<br><br> <br><br>
<div class="card card-primary" id="CardDetalhesObra"> <div class="card card-primary" id="CardDetalhesObra">

View File

@ -344,6 +344,7 @@
:dataControlEquipment="$dataControlEquipment" :dataControlEquipment="$dataControlEquipment"
:taskImages="$taskImages" :taskImages="$taskImages"
/> />
<footer> <footer>
<div class="footer-container"> <div class="footer-container">
<div class="row"> <div class="row">

View File

@ -1,26 +1,33 @@
@extends('Templates/AdminLayout/AdminLayout') @extends('Templates/AdminLayout/AdminLayout')
@section('Main-content') @section('Main-content')
<input type="hidden" value="{{ $numberProject->company_projects_id }}" id="receiveNumberProject">
<!-- Content Header (Page header) --> <!-- Content Header (Page header) -->
<section class="content-header"> <section class="content-header">
<div class="container-fluid"> <div class="container-fluid">
<div class="row mb-2"> <div class="row mb-2 align-items-center">
<!-- Título da página à esquerda -->
<div class="col-sm-6"> <div class="col-sm-6">
<h1>{{ $numberProject->company_project_description }}</h1> <h1 class="text-left">{{ $numberProject->company_project_description }}</h1>
<input type="hidden" value="{{ $numberProject->company_projects_id }}" id="receiveNumberProject">
</div> </div>
<!-- Breadcrumb alinhado à direita -->
<div class="col-sm-6"> <div class="col-sm-6">
<ol class="breadcrumb float-sm-right"> <ol class="breadcrumb float-sm-right">
<li class="breadcrumb-item"><a href="{{ route('home') }}">Dashboard</a></li> <li class="breadcrumb-item">
{{-- <li class="breadcrumb-item"><a href="{{ route('')}}./preparadas.html">Preparadas</a></li> --}} <a href="{{ route('viewProjectsList', ['orderProjectID' => 1]) }}">Preparadas</a>
<li class="breadcrumb-item active">{{ $numberProject->company_project_description }}</li> </li>
<li class="breadcrumb-item active">{{ $numberProject->company_project_description }}
</li>
</ol> </ol>
</div><!-- /.col -->
</div> </div>
</div><!-- /.container-fluid --> </div>
</div>
</section> </section>
<!-- /.content-header --> <!-- /.content-header -->
<!-- Main content --> <!-- Main content -->
<section class="content"> <section class="content">
<div class="container-fluid"> <div class="container-fluid">
@ -244,6 +251,7 @@ class="table table-bordered table-striped">
</tr> </tr>
</thead> </thead>
</table> </table>
</div> </div>
<!--/articulado de obra--> <!--/articulado de obra-->
</div> </div>
@ -453,30 +461,32 @@ class="checkboxChoseTasksOficesCV"
<a style="margin: 10px" data-bs-toggle="modal" data-bs-target="#modelChangeProjectForExecution" <a style="margin: 10px" data-bs-toggle="modal" data-bs-target="#modelChangeProjectForExecution"
class="btn btn-primary float-right">Alterar para execução</a> class="btn btn-primary float-right">Avançar para Execução</a>
<!-- Modal --> <!-- Modal -->
<div class="modal fade" id="modelChangeProjectForExecution" tabindex="-1" aria-labelledby="modelChangeProjectForExecution" <div class="modal fade" id="modelChangeProjectForExecution" tabindex="-1"
aria-hidden="true"> aria-labelledby="modelChangeProjectForExecution" aria-hidden="true">
<div class="modal-dialog"> <div class="modal-dialog">
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<h3 class="modal-title fs-5" id="exampleModalLabel">Confirmação de alteração para <h3 class="modal-title fs-5" id="exampleModalLabel">Confirmação de alteração de estado
execução</h3> </h3>
</div> </div>
<form <form
action="{{ route('changeStateProject', ['projectId' => $numberProject->company_projects_id]) }}"> action="{{ route('changeStateProject', ['projectId' => $numberProject->company_projects_id]) }}">
@csrf @csrf
<div class="modal-body"> <div class="modal-body">
<p> <p>
A inicialização está planeada para {{ $numberProject->date_started }} Ao O inicio da obra está previsto para {{ $numberProject->date_started }}.
prosseguir, irá alterar o estado para execução imediata. Confirma a operação? Confima que pretende dar
início à obra?
</p> </p>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-secondary" <button type="button" class="btn btn-secondary"
data-bs-dismiss="modal">Close</button> data-bs-dismiss="modal">Cancelar</button>
<button type="submit" class="btn btn-primary">Alterar</button> <button type="submit" class="btn btn-primary">Confirmar</button>
</div> </div>
</form> </form>
@ -564,7 +574,11 @@ class="btn btn-primary float-right">Alterar para execução</a>
processing: true, processing: true,
serverSide: true, serverSide: true,
ajax: { ajax: {
url: '/api/receiveWorkstationProject/' + $('#receiveNumberProject').val() url: '/api/receiveWorkstationProject/' + $('#receiveNumberProject').val(),
type: 'GET',
data: function(d){
d.typePage = 'preparedProject';
}
}, },
columns: [{ columns: [{
data: 'name_workstations', data: 'name_workstations',
@ -584,6 +598,7 @@ class="btn btn-primary float-right">Alterar para execução</a>
</script> </script>
<script type="text/javascript"> <script type="text/javascript">
var dataTables; var dataTables;
$(document).ready(function() { $(document).ready(function() {

View File

@ -19,6 +19,29 @@
<fieldset class="content"> <fieldset class="content">
<section class="content-header">
<div class="container-fluid">
<div class="row mb-2 align-items-center">
<!-- Título da página à esquerda -->
<div class="col-sm-6">
<h1 class="text-left">{{ $projects->company_project_description }} - Detalhes da Obra</h1>
</div>
<!-- Breadcrumb alinhado à direita -->
<div class="col-sm-6">
<ol class="breadcrumb float-sm-right">
<li class="breadcrumb-item">
<a href="{{ route('viewProjectsList', ['orderProjectID' => 1]) }}">Em Planeamento</a>
</li>
<li class="breadcrumb-item active">{{ $projects->company_project_description }}</li>
<li class="breadcrumb-item active">1 - Detalhes da Obra</li>
</ol>
</div>
</div>
</div>
</section>
{{-- @dd($projects) --}}
<div class="container-fluid"> <div class="container-fluid">
<div class="card card-primary" id="CardDetalhes"> <div class="card card-primary" id="CardDetalhes">
<div class="card-header bg-primary text-white"> <div class="card-header bg-primary text-white">
@ -175,8 +198,7 @@ class="form-control float-right" min="{{ now()->format('Y-m-d\TH:i') }}">
<div class="card-footer"> <div class="card-footer">
<div class="float-right"> <div class="float-right">
<button type="submit" class="btn btn-primary" <button type="submit" class="btn btn-primary" id="submitButton">Gravar</button>
id="submitButton">Atualizar</button>
</div> </div>
</div> </div>
</form> </form>
@ -220,7 +242,7 @@ class="form-control float-right" min="{{ now()->format('Y-m-d\TH:i') }}">
class="btn btn-danger next float-left mt-3">Apagar Obra</a> class="btn btn-danger next float-left mt-3">Apagar Obra</a>
<a style="margin: 10px"" href="{{ route('articulated_2', ['projectID' => $projects]) }}" <a style="margin: 10px"" href="{{ route('articulated_2', ['projectID' => $projects]) }}"
class="btn btn-primary next float-right mt-3">Articulado</a> class="btn btn-primary next float-right mt-3">2 - Criar Articulado</a>
</div> </div>
{{-- /.card card-primary --}} {{-- /.card card-primary --}}
</fieldset> </fieldset>

View File

@ -96,13 +96,14 @@ class="fas fa-minus"></i>
</div> </div>
@endif --}} @endif --}}
<div class="col-sm"> <div class="col-sm">
<form action="{{route('removingElementalTasksFromProject')}}" method="POST"> <form action="{{ route('removingElementalTasksFromProject') }}" method="POST">
@csrf @csrf
<input type="hidden" name="numberProject" value="{{ $numberProject }}"> <input type="hidden" name="numberProject" value="{{ $numberProject }}">
@if (count($allMissingTasks['elemental']) > 0) @if (count($allMissingTasks['elemental']) > 0)
<div class="card card-danger"> <div class="card card-danger">
<div class="card-header"> <div class="card-header">
<h3 class="card-title">Tarefas elementares não atribuídas - (Seleciona para remover da obra, se necessário)</h3> <h3 class="card-title">Tarefas elementares não atribuídas - (Seleciona para remover
da obra, se necessário)</h3>
<div class="card-tools"> <div class="card-tools">
<button type="button" class="btn btn-tool" data-card-widget="collapse"> <button type="button" class="btn btn-tool" data-card-widget="collapse">
<i class="fas fa-minus"></i> <i class="fas fa-minus"></i>
@ -127,7 +128,8 @@ class="fas fa-minus"></i>
<div class="card-footer"> <div class="card-footer">
<button type="button" class="btn btn-info btn-sm" data-toggle="tooltip" <button type="button" class="btn btn-info btn-sm" data-toggle="tooltip"
data-placement="top" title="Todas as tarefas selecionadas serão retiradas de execução, e consequentemente, todos os equipamentos deixarão de ter essas tarefas para realizar. Para reverter esta alteração, basta entrar nos equipamentos individualmente e adicionar a tarefa removida. Assim, apenas os equipamentos que tiverem a tarefa adicionada realizarão a mesma."> data-placement="top"
title="Todas as tarefas selecionadas serão retiradas de execução, e consequentemente, todos os equipamentos deixarão de ter essas tarefas para realizar. Para reverter esta alteração, basta entrar nos equipamentos individualmente e adicionar a tarefa removida. Assim, apenas os equipamentos que tiverem a tarefa adicionada realizarão a mesma.">
Info Info
</button> </button>
<button type="button" class="btn btn-secondary btn-sm" id="select-all">Selecionar <button type="button" class="btn btn-secondary btn-sm" id="select-all">Selecionar
@ -185,34 +187,43 @@ class="fas fa-minus"></i>
@endif @endif
<input type="hidden" value="{{ $receiveDataCompanyProject->company_projects_id }}" id="receiveNumberProject">
<section class="content-header"> <section class="content-header">
<div class="container-fluid"> <div class="container-fluid">
<div class="row mb-2 align-items-center">
<!-- Progressbar --> <!-- Título da página à esquerda -->
<ul id="progressbar" class="nav nav-pills d-flex flex-sm-row justify-content-center"> <div class="col-sm-6">
<li class="@if ($step == 3) active @endif "></li> <h1 class="text-left">{{ $receiveDataCompanyProject->company_project_description }}</h1>
{{-- Project details --}} </div>
<li class="@if ($step == 3) active @endif "></li> <!-- Breadcrumb alinhado à direita -->
{{-- Articulated --}} <div class="col-sm-6">
<li class="@if ($step == 3) active @endif "></li> <ol class="breadcrumb float-sm-right">
{{-- Workstation --}} <li class="breadcrumb-item">
</ul> <a href="{{ route('viewProjectsList', ['orderProjectID' => 1]) }}">Em Planeamento</a>
</li>
<li class="breadcrumb-item active">{{ $receiveDataCompanyProject->company_project_description }}
</li>
<li class="breadcrumb-item active">3 - Criar Postos de Trabalho</li>
</ol>
</div>
</div>
</div> </div>
</section> </section>
{{-- ./content-header --}} {{-- ./content-header --}}
<fieldset class="content"> <fieldset class="content">
<div class="container-fluid"> <div class="container-fluid">
<div class="card card-primary"> <div class="card card-primary">
<div class="card-header"> <div class="card-header">
<h3 class="card-title">Postos de Trabalho</h3> <h3 class="card-title">3 - Criar Postos de Trabalho</h3>
</div> </div>
<!-- ./Card-header --> <!-- ./Card-header -->
<div class="card-body"> <div class="card-body">
<!-- Criar tarefa --> <!-- Criar tarefa -->
<div class="card card-success"> {{-- <div class="card card-success">
<div class="card-header"> <div class="card-header">
<h3 class="card-title">Criar Postos de Trabalho</h3> <h3 class="card-title">Criar Postos de Trabalho</h3>
@ -244,20 +255,53 @@ class="fas fa-minus"></i>
</div> </div>
<!-- /.card-body --> <!-- /.card-body -->
</div> </div> --}}
<!--/Criar tarefa--> <!--/Criar tarefa-->
<div class="form-group col-md-12">
<form action="{{ route('createWorkStations') }}" method="post">
@csrf
<input type="hidden" name="numberProject" value="{{ $numberProject }}">
<div style="display: flex; justify-content: space-between;">
<div style="display: flex; align-items: center;">
<label class="mt-3" for="selectWorkstations" style="margin-right: 10px;">
Quantos postos de trabalho pretende criar?
</label>
<select class="form-control mt-3 mr-2" name="numberWorkstations"
id="selectWorkstations">
@for ($i = 1; $i <= 10; $i++)
<option value="{{ $i }}">{{ $i }}</option>
@endfor
</select>
<button class="btn btn-success mb-2" type="submit"
style="align-self: flex-end;">Criar</button>
</div>
</div>
</form>
</div>
</div>
<!-- ./card-body -->
</div>
<!-- ./Card card-primary -->
<!-- Card Posto de Trabalho --> <!-- Card Posto de Trabalho -->
<div class="card card-danger"> <div class="card card-danger">
<div class="card-header"> <div class="card-header">
<h3 class="card-title">Postos da Obra</h3> <h3 class="card-title">Postos de Trabalho</h3>
</div> </div>
<div class="card-body"> <div class="card-body">
<div class="table-responsive">
{{-- <div class="table-responsive">
<table id="workstationTable" class="table table-bordered table-striped"> <table id="workstationTable" class="table table-bordered table-striped">
<thead> <thead>
<tr> <tr>
{{-- <th>Posto de Trabalho</th> --}} <!-- <th>Posto de Trabalho</th> -->
<th>Nome Posto de Trabalho</th> <th>Nome Posto de Trabalho</th>
<th>Detalhes</th> <th>Detalhes</th>
</tr> </tr>
@ -265,7 +309,7 @@ class="fas fa-minus"></i>
<tbody> <tbody>
@foreach ($listWorkstations as $listWorkstation) @foreach ($listWorkstations as $listWorkstation)
<tr> <tr>
{{-- <td>{{ $listWorkstation->name_workstations }}</td> --}} <!-- <td>{{ $listWorkstation->name_workstations }}</td> -->
<td class="text-center"> <td class="text-center">
<span>{{ $listWorkstation->nomenclature_workstation ?? '' }}</span> <span>{{ $listWorkstation->nomenclature_workstation ?? '' }}</span>
</td> </td>
@ -284,16 +328,35 @@ class="fas fa-minus"></i>
@endforeach @endforeach
</tbody> </tbody>
</table> </table>
</div> </div> --}}
<!--/articulado de obra-->
{{-- <table id="TableWorkstation" class="table table-bordered table-striped">
<thead>
<tr>
<th>Postos de Trabalho</th>
<th>Nome Posto de Trabalho</th>
<th>Tarefas elementares</th>
<th>Acções</th>
</tr>
</thead>
</table> --}}
<table id="TablePreparedProjectWorkstation" class="table table-bordered table-striped">
<thead>
<tr>
<th>Postos de Trabalho</th>
<th>Nome do Posto de Trabalho</th>
<th>Tarefas Elementares</th>
</tr>
</thead>
</table>
</div> </div>
<!-- /.card-body --> <!-- /.card-body -->
</div> </div>
<!-- ./Card Posto de Trabalho --> <!-- ./Card Posto de Trabalho -->
</div>
{{-- ./card-body --}}
</div>
<!-- ./Card card-primary -->
<a href="{{ route('articulated_2', ['projectID' => $numberProject]) }}" <a href="{{ route('articulated_2', ['projectID' => $numberProject]) }}"
class="btn btn-primary previous float-left mb-3">Articulado</a> class="btn btn-primary previous float-left mb-3">Articulado</a>
@ -306,10 +369,10 @@ class="btn btn-primary previous float-left mb-3">Articulado</a>
{{-- ./container-fluid --}} {{-- ./container-fluid --}}
</fieldset> </fieldset>
{{-- ./content --}} {{-- ./content --}}
@foreach ($listWorkstations as $listWorkstation) @foreach ($listWorkstations as $listWorkstation)
@livewire('articulado.select-elemental-tasks-in-wonkstation', ['workstation' => $listWorkstation, 'key' => $listWorkstation->id_workstations]) @livewire('articulado.select-elemental-tasks-in-wonkstation', ['workstation' => $listWorkstation, 'key' => $listWorkstation->id_workstations])
{{-- modal-remover --}} {{-- modal-remover --}}
<div class="modal fade" id="modal-remover-{{ $listWorkstation->id_workstations }}"> <div class="modal fade" id="modal-remover-{{ $listWorkstation->id_workstations }}">
<div class="modal-dialog"> <div class="modal-dialog">
@ -336,8 +399,98 @@ class="btn btn-primary previous float-left mb-3">Articulado</a>
</div> </div>
{{-- ./modal-remover --}} {{-- ./modal-remover --}}
@endforeach @endforeach
{{-- <script type="Text/javascript">
$(document).ready(function() {
$('#TablePreparedProjectWorkstation').DataTable({
autoWidth: false,
processing: true,
serverSide: true,
ajax: {
url: '/api/receiveWorkstationProject/' + $('#receiveNumberProject').val(),
type: 'GET',
data: function(d){
d.typePage = 'workStation';
}
},
columns: [{
data: 'name_workstations',
name: 'name_workstations'
},
{
data: 'nomenclature_workstation',
name: 'nomenclature_workstation'
},
{
data: 'workstations_Association_Tasks',
name: 'workstations_Association_Tasks'
}
]
})
})
</script> --}}
<script type="Text/javascript">
$(document).ready(function() {
$('#TablePreparedProjectWorkstation').DataTable({
autoWidth: false,
processing: true,
serverSide: true,
ajax: {
url: '/api/receiveWorkstationProject/' + $('#receiveNumberProject').val(),
type: 'GET',
data: function(d) {
d.typePage = 'workStation'; // Passa o valor de 'typePage' na requisição
}
},
columns: [
{ data: 'name_workstations', name: 'name_workstations' },
{ data: 'nomenclature_workstation', name: 'nomenclature_workstation' },
{ data: 'workstations_Association_Tasks', name: 'workstations_Association_Tasks' }
]
});
});
</script>
@endsection @endsection
{{-- <script type="Text/javascript">
$(document).ready(function(){
$('#TableWorkstation').DataTable({
autoWidth: false,
processing: true,
serverSide: true,
ajax: {
url: '/api/receiveWorkstationProject/' + $('#receiveNumberProject').val()
},
columns: [
{
data: 'name_workstations',
name: 'name_workstations'
},
{
data: 'nomenclature_workstation',
name: 'nomenclature_workstation'
},
{
data: 'workstations_Association_Tasks',
name: 'workstations_Association_Tasks'
},
// {
// data: 'action',
// name: 'action',
// orderable: false,
// searchable: false
// },
],
})
})
</script> --}}
@section('scriptsTemplateAdmin') @section('scriptsTemplateAdmin')
<script> <script>
$(function() { $(function() {

View File

@ -378,9 +378,12 @@
Route::post('enviar-formulario', [FormController::class, 'enviarEmail'])->name('enviar.formulario'); Route::post('enviar-formulario', [FormController::class, 'enviarEmail'])->name('enviar.formulario');
Route::get('/CreateUsers/{id}', [Pending_UserController::class, 'ShowFormUser'])->name('ShowPendingUser'); Route::get('/CreateUsers/{id}', [Pending_UserController::class, 'ShowFormUser'])->name('ShowPendingUser');
Route::get('/CreateUsers', [Pending_UserController::class, 'ListPendingUsers'])->name('CreateUsers'); // Route::get('/CreateUsers', [Pending_UserController::class, 'ListPendingUsers'])->name('CreateUsers');
Route::post('/register', [CustomRegistrationController::class, 'store'])->name('register'); Route::post('/register', [CustomRegistrationController::class, 'store'])->name('register');
Route::get('/createNewUsers/{typeUser}', [Pending_UserController::class, 'ListPendingUsers'])->name('createNewUsers');
// Mostrar Instalação click // Mostrar Instalação click
}); });