Files
gpw_next/GPW.CORE.UI/Components/RegAtt.razor
T
2022-01-26 14:38:18 +01:00

93 lines
6.5 KiB
Plaintext

@using CORE.Data.DbModels
@using UI.Data
@inject GpwDataService GDataServ
@inject MessageService AppMServ
@inject IJSRuntime JSRuntime
<div class="py-0 small flex-fill @blockCss" style="width: @widthPerc">
<div class="d-flex">
@if (@CurrData.IdxFase > 0)
{
<div class="dropdown">
<button @onclick="() => Edit()" class="@buttonCss px-1 text-center border border-secondary border-top-0 border-bottom-0 border-left-0 btn btn-info btn-sm py-1" style="font-size: 0.72rem;" disabled="@(IsClipboard)">
@if (@CurrData.OreTot > 1)
{
<div>@CurrData.Inizio.ToString("HH:mm")</div>
<div>@CurrData.Fine.ToString("HH:mm")</div>
<div class="badge badge-dark">@($"{@CurrData.Durata.Hours}h {@CurrData.Durata.Minutes:00}'")</div>
}
else
{
<div>@CurrData.Inizio.ToString("HH")</div>
<div>@CurrData.Inizio.ToString("mm")</div>
<div class="badge badge-dark">@($"{CurrData.OreTot*60:N0}'")</div>
}
</button>
@if (!IsClipboard && EnableActionMenu)
{
<div class="@cssDropContent border border-dark table-dark text-light rounded p-2">
<div class="row">
<div class="col-12 pr-0">
<div class="text-light text-left"><b>@($"{CurrData.FasiNav?.ProgettoNav?.ClienteNav?.RagSociale}")</b> - <span class="textTrim max20Char" title="@CurrData.FasiNav?.ProgettoNav?.NomeProj">@($"{CurrData.FasiNav?.ProgettoNav?.NomeProj}")</span> | <span class="text-info text-left textTrim max20Char" title="@CurrData.FasiNav?.DescrizioneFase">@($"{CurrData.FasiNav?.DescrizioneFase}")</span></div>
<div class="text-warning text-left textTrim max30Char" title="@CurrData.Descrizione">@($"{CurrData.Descrizione}")</div>
</div>
</div>
@if (AppMServ.PayloadOk)
{
<div class="btn-group btn-group-sm w-100 py-2">
<button @onclick="() => Edit()" class="btn btn-sm btn-info"><i class="fas fa-pencil-alt"></i> Edit</button>
@if (!VetoInsert || CurrData.FasiNav.Attivo)
{
<button @onclick="() => Clone()" class="btn btn-sm btn-primary"><i class="far fa-copy"></i> Copy</button>
}
else
{
<span class="btn btn-sm btn-secondary disabled"><i class="far fa-copy"></i> Copy</span>
}
<button @onclick="() => Delete()" class="btn btn-sm btn-danger"><i class="fas fa-trash-alt"></i> Delete</button>
</div>
<div class="btn-group btn-group-sm w-100 small">
<button @onclick="() => AddTime(false,-120)" class="btn btn-sm btn-warning">-2h</button>
<button @onclick="() => AddTime(false,-60)" class="btn btn-sm btn-warning">-1h</button>
<button @onclick="() => AddTime(false,-30)" class="btn btn-sm btn-warning">-30'</button>
<button @onclick="() => AddTime(false,-15)" class="btn btn-sm btn-warning">-15'</button>
<span class="bg-dark text-light py-2" style="font-size: 1.3em; width: 4em;">@CurrData.Inizio.ToString("HH:mm")</span>
<button @onclick="() => AddTime(false,15)" class="btn btn-sm btn-success">+15'</button>
<button @onclick="() => AddTime(false,30)" class="btn btn-sm btn-success">+30'</button>
<button @onclick="() => AddTime(false,60)" class="btn btn-sm btn-success">+1h</button>
<button @onclick="() => AddTime(false,120)" class="btn btn-sm btn-success ">+2h</button>
</div>
<div class="btn-group btn-group-sm w-100 small mt-2">
<button @onclick="() => AddTime(true,-120)" class="btn btn-sm btn-outline-warning">-2h</button>
<button @onclick="() => AddTime(true,-60)" class="btn btn-sm btn-outline-warning">-1h</button>
<button @onclick="() => AddTime(true,-30)" class="btn btn-sm btn-outline-warning">-30'</button>
<button @onclick="() => AddTime(true,-15)" class="btn btn-sm btn-outline-warning">-15'</button>
<span class="bg-dark text-light py-2" style="font-size: 1.3em; width: 4em;">@CurrData.Fine.ToString("HH:mm")</span>
<button @onclick="() => AddTime(true,15)" class="btn btn-sm btn-outline-success">+15'</button>
<button @onclick="() => AddTime(true,30)" class="btn btn-sm btn-outline-success">+30'</button>
<button @onclick="() => AddTime(true,60)" class="btn btn-sm btn-outline-success">+1h</button>
<button @onclick="() => AddTime(true,120)" class="btn btn-sm btn-outline-success">+2h</button>
</div>
}
</div>
}
</div>
<div class="px-1 py-0 text-left textTrim flex-fill">
<div class="text-dark" title="@CurrData.FasiNav?.ProgettoNav?.ClienteNav?.RagSociale - @CurrData.FasiNav?.ProgettoNav?.NomeProj"><b>@(trimLine($"{CurrData.FasiNav?.ProgettoNav?.ClienteNav?.RagSociale}",65))</b> - @(trimLine($"{CurrData.FasiNav?.ProgettoNav?.NomeProj}",75))</div>
<div class="text-secondary" title="@CurrData.FasiNav?.DescrizioneFase">@(trimLine($"{CurrData.FasiNav?.DescrizioneFase}",130))</div>
<div class="small" title="@CurrData.Descrizione">@(trimLine($"{CurrData.Descrizione}",250))</div>
</div>
}
else
{
<div class="px-1 small textTrim">
<AddRA IdxDip="@IdxDipSel" NewItemCreated="ReportSelect" InizioPer="@CurrData.Inizio" EnableAction="@EnableActionMenu"></AddRA>
</div>
}
</div>
</div>