Files
lux/Lux.UI/Components/Compo/JobTask/JobStepMan.razor
T
2025-10-30 18:32:17 +01:00

165 lines
8.5 KiB
Plaintext

@if (addVisible)
{
<div class="modal" tabindex="-1" style="display:block; background-color: rgba(10,10,10,.6);" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<div class="modal-title fs-4">Aggiunta Fase e Risorsa</div>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close" @onclick="ToggleAdd">
</button>
</div>
<div class="modal-body">
@if (newRecord != null)
{
<div class="row">
<div class="col-12">
<div class="form-floating mb-1">
<input type="text" class="form-control" @bind="@newRecord.Description" />
<label class="small">Descrizione</label>
</div>
</div>
<div class="col-6">
<div class="form-floating mb-1">
<select @bind="@PhaseId" class="form-select">
<option value="0">--- Nessuna Selezione ---</option>
@foreach (var itemAlt in ListPhasesOrd)
{
<option value="@itemAlt.PhaseID">@itemAlt.CodPhase | @itemAlt.Name</option>
}
</select>
<label class="small">Fase</label>
</div>
</div>
<div class="col-6">
<div class="form-floating my-02">
<select @bind="@ResourceId" class="form-select form-select-sm">
<option value="0">--- Nessuna Selezione ---</option>
@foreach (var itemAlt in ListResourcesOrd)
{
<option value="@itemAlt.ResourceID">@itemAlt.CodResource | @itemAlt.Name</option>
}
</select>
<label class="small">Risorsa</label>
</div>
</div>
</div>
}
@if (!string.IsNullOrEmpty(errorMsg))
{
<div class="alert alert-danger my-3">
@errorMsg
</div>
}
<div class="row">
<div class="col">
@if (newRecord != null && newRecord.PhaseID > 0 && newRecord.ResourceID > 0)
{
<button class="btn btn-success w-100" @onclick="DoAdd"><i class="fa-solid fa-save"></i> Save</button>
}
else
{
<button class="btn btn-secondary w-100" disabled><i class="fa-solid fa-save"></i> Save</button>
}
</div>
<div class="col">
<button class="btn btn-warning w-100" @onclick="ToggleAdd">Cancel <i class="fa-solid fa-ban"></i></button>
</div>
</div>
</div>
</div>
</div>
</div>
}
<div class="card border-info shadow">
<div class="card-header bg-info bg-opacity-50 bg-gradient">
Dettaglio <b>Fasi</b> job
</div>
<div class="card-body">
@if (totalCount == 0)
{
<div class="alert alert-info text-center">
<div class="display-5">Nessun record trovato</div>
<button class="btn btn-lg btn-success" @onclick="ToggleAdd">Aggiungi <i class="fa-solid fa-plus"></i></button>
</div>
}
else
{
<table class="table table-sm table-striped">
<thead>
<tr>
<th>
<button class="btn btn-sm btn-primary" title="Reset selezione" @onclick="DoReset"><i class="fa-solid fa-arrow-rotate-right"></i></button>
</th>
<th>Ord.</th>
<th>Fase</th>
<th>Risorsa</th>
<th>Descrizione</th>
<th>Tags</th>
<th>Resa</th>
<th>
<button class="btn btn-sm btn-success" @onclick="ToggleAdd"><i class="fa-solid fa-plus"></i></button>
</th>
</tr>
</thead>
<tbody>
@foreach (var item in ListRecords)
{
<tr class="@checkSel(item)">
@if (editRecord != null)
{
<td class="text-start text-nowrap">
<button class="btn btn-sm btn-success" @onclick="DoSave"><i class="fa-solid fa-floppy-disk"></i></button>
</td>
<td>@item.Index</td>
<td>
<select @bind="@item.PhaseID" class="form-select form-select-sm">
<option value="0">--- Nessuna Selezione ---</option>
@foreach (var itemAlt in ListPhasesOrd)
{
<option value="@itemAlt.PhaseID">@itemAlt.CodPhase | @itemAlt.Name</option>
}
</select>
</td>
<td>
<select @bind="@item.ResourceID" class="form-select form-select-sm">
<option value="0">--- Nessuna Selezione ---</option>
@foreach (var itemAlt in ListResourcesOrd)
{
<option value="@itemAlt.ResourceID">@itemAlt.CodResource | @itemAlt.Name</option>
}
</select>
</td>
<td><input type="text" @bind="@item.Description" /></td>
<td>
<input type="number" @bind="@ProductivityRateProxy" />
</td>
<td>
<button class="btn btn-sm btn-warning" title="Annulla Modifiche" @onclick="DoCancel"><i class="fa-solid fa-ban"></i></button>
</td>
}
else
{
<td class="text-start text-nowrap">
<button class="btn btn-sm btn-primary" @onclick="() => DoSelect(item)"><i class="fa-solid fa-magnifying-glass"></i></button>
<button class="btn btn-sm btn-info" @onclick="() => DoEdit(item)"><i class="fa-solid fa-pencil"></i></button>
</td>
<td>@item.Index</td>
<td>@item.PhaseNav.Name</td>
<td>@item.ResourceNav.Name</td>
<td>@item.Description</td>
<td class="text-center">@item.NumTags</td>
<td>@($"{item.ProductivityRate:P2}")</td>
<td>
<button class="btn btn-sm btn-danger" @onclick="() => DoDelete(item)"><i class="fa-solid fa-trash-can"></i></button>
</td>
}
</tr>
}
</tbody>
</table>
}
</div>
</div>