COmpleto gestione note

This commit is contained in:
2025-10-21 11:47:07 +02:00
parent 8f56a39943
commit 64a25072fb
2 changed files with 97 additions and 89 deletions
+1 -1
View File
@@ -4,7 +4,7 @@
<TargetFramework>net8.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<Version>0.9.2510.2110</Version>
<Version>0.9.2510.2111</Version>
</PropertyGroup>
<ItemGroup>
+96 -88
View File
@@ -83,10 +83,11 @@ else
<tbody>
@foreach (var item in ListRecords)
{
bool isNote = item.SellingItemID == null;
<tr class="@RowClass(item)">
<td class="text-nowrap">
<span class="px-1">
@item.RowNum
@* @item.RowNum *@
<button class="btn btn-sm btn-primary" @onclick="() => DoSelect(item)"><i class="fa-solid fa-magnifying-glass"></i></button>
</span>
@if (DisplayMode == EgwCoreLib.Lux.Core.Enums.DisplayMode.Edit)
@@ -109,103 +110,110 @@ else
@item.RowNum
}
</td>
@if (DisplayMode == EgwCoreLib.Lux.Core.Enums.DisplayMode.Edit)
@if (isNote)
{
<td>
@if (string.IsNullOrEmpty(item.SerStruct) || item.SerStruct.Length <= 2)
{
<img class="img-fluid" src="@(imgUrl(item.OfferRowUID, $"{item.Envir}"))" width="48" />
}
else
{
<img class="img-fluid" src="@(imgUrl(item.OfferRowUID, $"{item.Envir}"))" width="48" @onclick="() => DoEditJwd(item)" title="Edit Item" />
}
</td>
}
<td class="small">
<div>@item.OfferRowUID</div>
@if (DisplayMode == EgwCoreLib.Lux.Core.Enums.DisplayMode.Edit && !string.IsNullOrEmpty(item.SerStruct) && item.SerStruct.Length > 2)
{
<button class="btn btn-sm btn-primary" @onclick="() => RequestBom(item)" title="Richiesta ricalcolo BOM">
BOM <i class="fa-solid fa-arrow-right-arrow-left pe-2"></i>
@if (item.AwaitBom)
{
<span class="text-warning spinner-grow spinner-grow-sm" aria-hidden="true"></span>
}
</button>
}
@if (item.Envir != EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS.WINDOW || !string.IsNullOrEmpty(item.FileName))
{
<div class="input-group input-group-sm">
@if (EditRecord != null && EditRecord.OfferRowID == item.OfferRowID)
{
<span>
<InputFile class="form-control" OnChange="UploadFile" style="width: 24rem;" />
</span>
<button class="btn btn-sm btn-info" @onclick="() => ToggleFileEdit(null)"><i class="fa-solid fa-floppy-disk"></i></button>
}
else
{
<span class="input-group-text small"><b>@item.FileName</b> | @fSize(item.FileSize)</span>
<button class="btn btn-sm btn-primary" @onclick="() => ToggleFileEdit(item)"><i class="fa-solid fa-floppy-disk"></i></button>
}
</div>
}
</td>
@if (CurrEditMode == EditMode.RecData && EditRecord != null && EditRecord.OfferRowID == item.OfferRowID)
{
<td>
<div class="input-group">
<input class="form-input w-100" style="width: 16rem;" type="text" @bind="@item.Note" />
</div>
</td>
<td class="text-end">
<input class="text-end" style="width: 4rem;" type="number" @bind="@item.Qty" />
</td>
<td colspan="8" class="small">@item.Note</td>
}
else
{
<td>@item.Note</td>
<td class="text-end">
<b>@item.Qty</b>
</td>
}
<td class="text-end text-nowrap">
<div class="fw-bold" title="Prezzo Finito">
@if (!(item.BomOk && item.ItemOk))
@if (DisplayMode == EgwCoreLib.Lux.Core.Enums.DisplayMode.Edit)
{
<td>
@if (string.IsNullOrEmpty(item.SerStruct) || item.SerStruct.Length <= 2)
{
<img class="img-fluid" src="@(imgUrl(item.OfferRowUID, $"{item.Envir}"))" width="48" />
}
else
{
<img class="img-fluid" src="@(imgUrl(item.OfferRowUID, $"{item.Envir}"))" width="48" @onclick="() => DoEditJwd(item)" title="Edit Item" />
}
</td>
}
<td class="small">
<div>@item.OfferRowUID</div>
@if (DisplayMode == EgwCoreLib.Lux.Core.Enums.DisplayMode.Edit && !string.IsNullOrEmpty(item.SerStruct) && item.SerStruct.Length > 2)
{
<span class="text-danger me-2" title=""><i class="fa-solid fa-triangle-exclamation"></i></span>
<button class="btn btn-sm btn-primary" @onclick="() => RequestBom(item)" title="Richiesta ricalcolo BOM">
BOM <i class="fa-solid fa-arrow-right-arrow-left pe-2"></i>
@if (item.AwaitBom)
{
<span class="text-warning spinner-grow spinner-grow-sm" aria-hidden="true"></span>
}
</button>
}
@if (item.AwaitPrice)
@if (item.Envir != EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS.WINDOW || !string.IsNullOrEmpty(item.FileName))
{
<span class="text-warning spinner-grow spinner-grow-sm" aria-hidden="true"></span>
}
@($"{item.UnitPrice:C2}")
</div>
<div class="small text-secondary" title="RockBottom Price">(@item.UnitCost.ToString("C2"))</div>
</td>
@if (DisplayMode == EgwCoreLib.Lux.Core.Enums.DisplayMode.Edit)
{
<td class="text-end">
@if (!string.IsNullOrEmpty(item.ItemBOM))
{
<button class="btn btn-sm btn-info" title="Cambio materiali assegnati" @onclick="() => DoSwapMat(item)"><i class="fa-solid fa-arrow-right-arrow-left"></i></button>
<div class="input-group input-group-sm">
@if (EditRecord != null && EditRecord.OfferRowID == item.OfferRowID)
{
<span>
<InputFile class="form-control" OnChange="UploadFile" style="width: 24rem;" />
</span>
<button class="btn btn-sm btn-info" @onclick="() => ToggleFileEdit(null)"><i class="fa-solid fa-floppy-disk"></i></button>
}
else
{
<span class="input-group-text small"><b>@item.FileName</b> | @fSize(item.FileSize)</span>
<button class="btn btn-sm btn-primary" @onclick="() => ToggleFileEdit(item)"><i class="fa-solid fa-floppy-disk"></i></button>
}
</div>
}
</td>
@if (CurrEditMode == EditMode.RecData && EditRecord != null && EditRecord.OfferRowID == item.OfferRowID)
{
<td>
<div class="input-group">
<input class="form-input w-100" style="width: 16rem;" type="text" @bind="@item.Note" />
</div>
</td>
<td class="text-end">
<input class="text-end" style="width: 4rem;" type="number" @bind="@item.Qty" />
</td>
}
else
{
<td>@item.Note</td>
<td class="text-end">
<b>@item.Qty</b>
</td>
}
<td class="text-end text-nowrap">
<div class="fw-bold" title="Prezzo Finito">
@if (!(item.BomOk && item.ItemOk))
{
<span class="text-danger me-2" title=""><i class="fa-solid fa-triangle-exclamation"></i></span>
}
@if (item.AwaitPrice)
{
<span class="text-warning spinner-grow spinner-grow-sm" aria-hidden="true"></span>
}
@($"{item.UnitPrice:C2}")
</div>
<div class="small text-secondary" title="RockBottom Price">(@item.UnitCost.ToString("C2"))</div>
</td>
@if (DisplayMode == EgwCoreLib.Lux.Core.Enums.DisplayMode.Edit)
{
<td class="text-end">
@if (!string.IsNullOrEmpty(item.ItemBOM))
{
<button class="btn btn-sm btn-info" title="Cambio materiali assegnati" @onclick="() => DoSwapMat(item)"><i class="fa-solid fa-arrow-right-arrow-left"></i></button>
}
</td>
}
<td class="text-end text-nowrap">
<div class="fw-bold" title="Prezzo Finito">
@if (item.AwaitPrice)
{
<span class="text-warning spinner-grow spinner-grow-sm" aria-hidden="true"></span>
}
@($"{item.TotalPrice:C2}")
</div>
<div class="small text-secondary" title="RockBottom Price">(@item.TotalCost.ToString("C2"))</div>
</td>
<td class="text-end text-nowrap" title="Margine / Sconto MAX applicabile">
@item.MaxDiscount.ToString("P2")
</td>
}
<td class="text-end text-nowrap">
<div class="fw-bold" title="Prezzo Finito">
@if (item.AwaitPrice)
{
<span class="text-warning spinner-grow spinner-grow-sm" aria-hidden="true"></span>
}
@($"{item.TotalPrice:C2}")
</div>
<div class="small text-secondary" title="RockBottom Price">(@item.TotalCost.ToString("C2"))</div>
</td>
<td class="text-end text-nowrap" title="Margine / Sconto MAX applicabile">
@item.MaxDiscount.ToString("P2")
</td>
@if (DisplayMode == EgwCoreLib.Lux.Core.Enums.DisplayMode.Edit)
{
<td>