Files

174 lines
9.7 KiB
Plaintext

@if (SelItem != null && isEdit)
{
<div class="modal fade show" tabindex="-1" style="display:block; background-color: rgba(10,10,10,.6);" aria-modal="true" role="dialog" data-keyboard="true">
<div class="modal-dialog modal-xl">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Edit Gruppo <b>@SelItem.Gruppo</b></h4>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close" @onclick="() => ForceReload(true)"></button>
</div>
<div class="modal-body p-1">
<GruppiEdit CurrRecord="@SelItem" EC_update="ForceReload"></GruppiEdit>
</div>
</div>
</div>
</div>
}
<div class="card shadow">
<div class="card-header">
<div class="d-flex justify-content-between">
<div class="px-0 d-flex">
<div class="px-2">
<h3>Gestione Gruppi/Dipendenti</h3>
</div>
</div>
<div class="px-0">
<div class="input-group" runat="server">
<span class="input-group-text">Clona</span>
<select @bind="@idxDipFrom" class="form-select form-select-sm">
<option value="0">--- Selezionare ---</option>
@foreach (var item in ListDipendenti)
{
<option value="@item.IdxDipendente">@($"{item.Cognome} {item.Nome}")</option>
}
</select>
@if (idxDipFrom > 0 && idxDipTo > 0)
{
<button class="btn btn-success"><i class="fa fa-angle-double-right px-2" title="Clona Assegnazioni" @onclick="ClonaAssegnDip"></i></button>
}
else
{
<button class="btn btn-secondary" disabled><i class="fa fa-angle-double-right px-2" title="Clona Assegnazioni"></i></button>
}
<select @bind="@idxDipTo" class="form-select form-select-sm">
<option value="0">--- Selezionare ---</option>
@foreach (var item in ListDipendenti.Where(x => (x.Attivo ?? false)).ToList())
{
<option value="@item.IdxDipendente">@($"{item.Cognome} {item.Nome}")</option>
}
</select>
@if (idxDipFrom > 0 || idxDipTo > 0)
{
<button class="btn btn-primary" @onclick="DoResetSelClona"><i class="fa-solid fa-rotate px-1" title="Reset"></i></button>
}
else
{
<button class="btn btn-secondary" disabled><i class="fa-solid fa-rotate px-1" title="Reset"></i></button>
}
</div>
</div>
</div>
</div>
<div class="card-body p-1">
<div class="row">
<div class="col-7">
<div class="card shadow">
<div class="card-header">
<div class="px-0 d-flex justify-content-between">
<div class="px-0">
<h4>Gruppi</h4>
</div>
<div class="px-0">
<button class="btn btn-success" @onclick=CreateNew tooltip="Add New"><i class="fa-solid fa-plus"></i> Add New</button>
</div>
</div>
</div>
<div class="card-body p-1">
@if (ListRecords == null || isLoading)
{
<EgwCoreLib.Razor.LoadingData></EgwCoreLib.Razor.LoadingData>
}
else if (totalCount == 0)
{
<div class="alert alert-info">Nessun record trovato</div>
}
else
{
<table class="table table-striped table-sm text-start">
<thead>
<tr class="">
<th class="text-nowrap">
<button class="btn btn-primary btn-sm" @onclick="() => ForceReload(true)"><i class="fa-solid fa-rotate"></i></button>
</th>
<th>Gruppo <Sorter ParamName="CodGruppo" IsAsc="@sortAsc" CurrParam="@sortField" sortReq="SortRequested"></Sorter></th>
<th>Descrizione <Sorter ParamName="Descrizione" IsAsc="@sortAsc" CurrParam="@sortField" sortReq="SortRequested"></Sorter></th>
<th>CodExt Grp. <Sorter ParamName="CodExt" IsAsc="@sortAsc" CurrParam="@sortField" sortReq="SortRequested"></Sorter></th>
<th># Dip. <Sorter ParamName="NumDip" IsAsc="@sortAsc" CurrParam="@sortField" sortReq="SortRequested"></Sorter></th>
<th class="text-end"><Sorter ParamName="Export" IsAsc="@sortAsc" CurrParam="@sortField" sortReq="SortRequested"></Sorter> Exp. Abil</th>
<th class="text-end"><Sorter ParamName="IsActive" IsAsc="@sortAsc" CurrParam="@sortField" sortReq="SortRequested"></Sorter> Attivo</th>
<th></th>
</tr>
</thead>
<tbody>
@foreach (var item in ListRecords)
{
<tr class="align-middle @CheckSel(item)">
<td class="text-nowrap">
<button class="btn btn-info btn-sm" @onclick="() => DoSelect(item)"><i class="fa-solid fa-search"></i></button>
@if (SelItem == null)
{
<button class="btn btn-primary btn-sm mx-1" @onclick="() => DoEdit(item)">
<i class="fa-solid fa-edit"></i>
</button>
}
else
{
<button class="btn btn-secondary btn-sm mx-1" disabled><i class="fa-solid fa-edit"></i></button>
}
</td>
<td>
@item.Gruppo
</td>
<td>
@item.DescrGruppo
</td>
<td>
@item.CodExt
</td>
<td>
@item.NumDip
</td>
<td class="text-end">
<input class="form-check-input" type="checkbox" disabled role="switch" @bind="@item.ExportEnab">
</td>
<td class="text-end">
<input class="form-check-input" type="checkbox" disabled role="switch" @bind="@item.IsActive">
</td>
<td>
@if (@item.NumDip == 0)
{
<button class="btn btn-danger btn-sm" @onclick="() => DoDelete(item)"><i class="fa-solid fa-trash"></i></button>
}
else
{
<button class="btn btn-secondary btn-sm" disabled><i class="fa-solid fa-trash"></i></button>
}
</td>
</tr>
}
</tbody>
</table>
}
</div>
<div class="card-footer">
<EgwCoreLib.Razor.DataPager PageSize="@numRecord" currPage="@currPage" numRecordChanged="SetNumRec" numPageChanged="SetPage" totalCount="@totalCount" showLoading="@isLoading"></EgwCoreLib.Razor.DataPager>
</div>
</div>
</div>
<div class="col-5">
@if (SelItem != null)
{
<Dip2GrpMan CodGruppo="@SelItem.Gruppo"></Dip2GrpMan>
}
else
{
<div class="alert alert-info p-3 my-5">Selezionare gruppo per visualizzare dipendenti associati</div>
}
</div>
</div>
</div>
</div>