aggiunta conferma movimenti

This commit is contained in:
zaccaria.majid
2023-02-17 11:47:54 +01:00
parent 0c5803611d
commit 3f09b6b520
9 changed files with 85 additions and 21 deletions
@@ -2,7 +2,7 @@
{
<div class="card my-2 h-100">
<div class="card my-2" style="height: 33rem;">
<div class="card-header d-flex justify-content-between ">
<div class="d-flex flex-wrap align-content-center">
<b>Dettagli articolo</b>
@@ -11,6 +11,13 @@
{
<button class="btnMod" @onclick="()=>setEditMode()"><i class="fa-solid fa-pen-to-square"></i></button>
}
else
{
<div class="text-end">
<button class="btnAccept"><i class="fa-regular fa-circle-check" @onclick="()=>modItem()"></i></button>
<button class="btnDecline"><i class="fa-solid fa-ban" @onclick="()=>clodeModMode()"></i></button>
</div>
}
</div>
<div class="card-body">
<div class="w-100 modItem">
@@ -64,12 +71,5 @@
</div>
</div>
</div>
@if (isMod)
{
<div class="text-end">
<button class="btnAccept"><i class="fa-regular fa-circle-check" @onclick="()=>modItem()"></i></button>
<button class="btnDecline"><i class="fa-solid fa-ban" @onclick="()=>clodeModMode()"></i></button>
</div>
}
</div>
}
@@ -36,7 +36,8 @@ namespace StockMan.CORE.Components
{
await reloadData();
}
[Parameter]
public EventCallback<decimal> unitValue { get; set; }
private async Task reloadData()
{
listItemsSearch = await SDService.ItemsGetByID(ItemID);
@@ -44,6 +45,10 @@ namespace StockMan.CORE.Components
{
itemToDet = listItemsSearch.FirstOrDefault();
}
if (itemToDet != null)
{
await unitValue.InvokeAsync(itemToDet.CurrValue);
}
itemFams = await SDService.ItemFamilyGetAll();
await Task.Delay(1);
}
+1 -1
View File
@@ -33,7 +33,7 @@
{
<tr>
<td>
@flux.DtMov.Date
@flux.DtMov.Date.ToString("yyyy/MM/dd")
</td>
<td>
@flux.LocationId
+2 -2
View File
@@ -33,7 +33,7 @@
</table>
<div class="row">
<button class="btn btn-outline-primary col mx-1"><i class="fa-solid fa-download"></i>&nbsp; Conferma Movimenti</button>
<button class="btn btn-outline-primary col mx-1" @onclick="()=>confermaMovimenti()"><i class="fa-solid fa-download"></i>&nbsp; Conferma Movimenti</button>
<button class="btn btn-outline-primary col mx-1">Elimina Duplicati &nbsp;<i class="fa-solid fa-delete-left"></i></button>
</div>
<div class="row mt-2">
@@ -143,7 +143,7 @@
</div>
</div>
<div class="text-end">
@if (!string.IsNullOrEmpty(fornitore) && !string.IsNullOrEmpty(pos))
@if ((!string.IsNullOrEmpty(fornitore) || !string.IsNullOrEmpty(cliente)) && !string.IsNullOrEmpty(pos))
{
<button class="btnAccept" @onclick="()=>saveCarico()"><i class="fa-regular fa-circle-check"></i></button>
}
@@ -30,26 +30,38 @@ namespace StockMan.CORE.Components
listLocation = await SDService.LocationGetAll();
}
private async Task confermaMovimenti()
{
var done = await SDService.ConfermaMov(ItemID);
if (done)
{
NavManager.NavigateTo(NavManager.Uri, true);
}
}
private async Task saveCarico()
{
await Task.Delay(1);
string movTipo = "";
string cliOrForn = "";
int qtaScarCar = 0;
if (isCarico)
{
movTipo = "CAR";
cliOrForn = fornitore;
qtaScarCar = 0+qta;
}
else if (isScarico)
{
movTipo = "SCAR";
cliOrForn = cliente;
qtaScarCar = 0-qta;
}
else if (isRettifica)
{
movTipo = "SCAR";
movTipo = "RETT";
cliOrForn = cliente;
}
@@ -60,9 +72,8 @@ namespace StockMan.CORE.Components
MovTypeId = movTipo,
ExtLocationId = cliOrForn,
DtMov = DateTime.Now.Date,
Qta = qta,
Qta = qtaScarCar,
TotValue = importo,
UnitVal = (importo / qta),
OperatorId = "ND",
Note = note,
CodDoc = documento,
@@ -79,7 +90,7 @@ namespace StockMan.CORE.Components
[Parameter]
public int ItemID { get; set; } = 0;
[Parameter]
public decimal valoreUnit { get; set; } = 0.0M;
public decimal valoreUnit { get; set; } = 0.0M;
protected bool isCarico { get; set; } = false;
protected bool isScarico { get; set; } = false;
+13
View File
@@ -318,6 +318,19 @@ namespace StockMan.CORE.Data
return dbResult;
}
public async Task<bool> ConfermaMov(int itemID)
{
Stopwatch stopWatch = new Stopwatch();
stopWatch.Start();
bool result = false;
string source = "DB";
result = await dbController.ConfermaMov(itemID);
stopWatch.Stop();
TimeSpan ts = stopWatch.Elapsed;
Log.Debug($"ConfermaMov Read from {source}: {ts.TotalMilliseconds}ms");
return result;
}
/// <summary>
/// Lista Articoli da ricerca
/// </summary>
+5 -2
View File
@@ -10,8 +10,11 @@
</div>
<div class="col-7">
<StockGiacenze ItemID="@ItemID"></StockGiacenze>
<Movimenti ItemID="@ItemID"></Movimenti>
<Movimenti valoreUnit="@itemToDet.CurrValue" ItemID="@ItemID"></Movimenti>
</div>
</div>
}
else
{
<div class="alert alert-warning">Articolo non trovato!</div>
}
+10 -1
View File
@@ -50,7 +50,10 @@ namespace StockMan.CORE.Pages
{
itemToDet = listItemsSearch.FirstOrDefault();
}
if(itemToDet != null)
{
valoreUnit = itemToDet.CurrValue;
}
await Task.Delay(1);
itemFlux = await SDService.ItemFluxGetById(itemToDet.Id);
@@ -67,6 +70,7 @@ namespace StockMan.CORE.Pages
isMod = true;
}
protected int ItemID { get; set; } = 0;
protected decimal valoreUnit { get; set; } = 0.00M;
protected bool isMod { get; set; } = false;
protected bool isCarico { get; set; } = false;
protected bool isScarico { get; set; } = false;
@@ -157,5 +161,10 @@ namespace StockMan.CORE.Pages
get => _note;
set => _note = value;
}
protected void UpdateCurrImportoUnit(decimal importoUnit)
{
valoreUnit = importoUnit;
}
}
}
+24 -1
View File
@@ -1,4 +1,5 @@
using Microsoft.EntityFrameworkCore;
using Microsoft.Data.SqlClient;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using NLog;
using StockMan.Data.DbModels;
@@ -543,6 +544,28 @@ namespace StockMan.Data.Controllers
return dbResult;
}
/// <summary>
/// Conferma movimenti
/// </summary>
/// <param name="itemID"></param>
/// <returns></returns>
public async Task<bool> ConfermaMov(int itemID)
{
bool answ = false;
using (var dbCtx = new StockManContext(_configuration))
{
var ItemID = new SqlParameter("@ItemID", itemID);
var callResulr = await dbCtx
.Database
.ExecuteSqlRawAsync("exec dbo.stp_ItemConsolidate @ItemID", ItemID);
answ = true;
}
return answ;
}
#endregion Public Methods
#region Private Fields