Completato INSERT + DELETE baskets
This commit is contained in:
@@ -60,13 +60,15 @@
|
||||
|
||||
[Parameter]
|
||||
public EventCallback<int> DataReset { get; set; }
|
||||
[Parameter]
|
||||
public EventCallback<int> DataUpdated { get; set; }
|
||||
|
||||
private async Task saveUpdate()
|
||||
{
|
||||
if (_basket != null)
|
||||
{
|
||||
BBMService.BasketsUpdate(_basket);
|
||||
await DataReset.InvokeAsync(1);
|
||||
await DataUpdated.InvokeAsync(1);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -39,11 +39,11 @@ namespace SHERPA.BBM.UI.Data
|
||||
|
||||
#region Public Methods
|
||||
|
||||
public void BasketsAdd(DatabaseModels.BasketsModel negotiation)
|
||||
public void BasketsAdd(DatabaseModels.BasketsModel basket)
|
||||
{
|
||||
try
|
||||
{
|
||||
dbController.BaskAddNew(negotiation);
|
||||
dbController.BaskAddNew(basket);
|
||||
}
|
||||
catch
|
||||
{
|
||||
@@ -78,6 +78,11 @@ namespace SHERPA.BBM.UI.Data
|
||||
}
|
||||
}
|
||||
|
||||
public string CounterGetNext(string CodCounter)
|
||||
{
|
||||
return dbController.CounterGetNext(CodCounter);
|
||||
}
|
||||
|
||||
public void NegotiationAdd(DatabaseModels.NegotiationsModel negotiation)
|
||||
{
|
||||
try
|
||||
|
||||
@@ -1,17 +1,27 @@
|
||||
@page "/baskets"
|
||||
|
||||
@using SHERPA.BBM.UI.Data
|
||||
@using SHERPA.BBM.UI.Components;
|
||||
|
||||
@inject IJSRuntime JSRuntime
|
||||
@inject BBM_EFService BBMService
|
||||
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<h3><span class="oi oi-basket" aria-hidden="true"></span> Gestione Baskets</h3>
|
||||
<div class="row">
|
||||
<div class="col-6 col-lg-10">
|
||||
<h3><span class="oi oi-basket" aria-hidden="true"></span> Gestione Baskets</h3>
|
||||
</div>
|
||||
<div class="col-6 col-lg-2">
|
||||
<button class="btn btn-block btn-success" @onclick="CreateNew">NUOVO</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
@if (currBasket != null)
|
||||
{
|
||||
|
||||
<BasketEditor Basket="@currBasket" DataReset="@ResetData"></BasketEditor>
|
||||
<BasketEditor Basket="@currBasket" DataReset="ResetData" DataUpdated="UpdateData"></BasketEditor>
|
||||
}
|
||||
@if (baskets == null)
|
||||
{
|
||||
@@ -27,6 +37,7 @@
|
||||
<th>Cli</th>
|
||||
<th>Data ins</th>
|
||||
<th>Descript</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -38,6 +49,7 @@
|
||||
<td>@record.CodClient </td>
|
||||
<td>@record.DataIns</td>
|
||||
<td>@record.Descript</td>
|
||||
<td><button class="btn btn-sm btn-danger" @onclick="() => Delete(record)"><span class="oi oi-trash"></span></button></td>
|
||||
</tr>
|
||||
}
|
||||
</tbody>
|
||||
@@ -80,9 +92,37 @@
|
||||
currBasket = null;
|
||||
}
|
||||
|
||||
protected async Task UpdateData()
|
||||
{
|
||||
currBasket = null;
|
||||
baskets = await BBMService.BasketsGetAsync(numRecord);
|
||||
}
|
||||
|
||||
protected void CreateNew()
|
||||
{
|
||||
// recupero counter
|
||||
string newCode = BBMService.CounterGetNext("EGW.B");
|
||||
DatabaseModels.BasketsModel newBasket = new DatabaseModels.BasketsModel()
|
||||
{
|
||||
CodBasket = newCode,
|
||||
DataIns = DateTime.Today,
|
||||
CodClient = "",
|
||||
Descript = "New Basket"
|
||||
};
|
||||
currBasket = newBasket;
|
||||
}
|
||||
|
||||
protected void Edit(SHERPA.BBM.DatabaseModels.BasketsModel currRecord)
|
||||
{
|
||||
currBasket = currRecord;
|
||||
}
|
||||
protected async Task Delete(SHERPA.BBM.DatabaseModels.BasketsModel currRecord)
|
||||
{
|
||||
if (!await JSRuntime.InvokeAsync<bool>("confirm", $"Sicuro di voler eliminare il Basket '{currRecord.CodBasket}'?"))
|
||||
return;
|
||||
|
||||
BBMService.BasketsDelete(currRecord);
|
||||
await UpdateData();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -109,7 +109,20 @@ namespace SHERPA.BBM.Controllers
|
||||
bool done = false;
|
||||
try
|
||||
{
|
||||
dbCtx.Entry(updItem).State = System.Data.Entity.EntityState.Modified;
|
||||
var currData = dbCtx
|
||||
.DbSetBaskets
|
||||
.Where(x => x.CodBasket == updItem.CodBasket)
|
||||
.FirstOrDefault();
|
||||
if (currData != null)
|
||||
{
|
||||
dbCtx.Entry(updItem).State = System.Data.Entity.EntityState.Modified;
|
||||
}
|
||||
else
|
||||
{
|
||||
dbCtx
|
||||
.DbSetBaskets
|
||||
.Add(updItem);
|
||||
}
|
||||
dbCtx.SaveChanges();
|
||||
done = true;
|
||||
}
|
||||
@@ -118,6 +131,37 @@ namespace SHERPA.BBM.Controllers
|
||||
return done;
|
||||
}
|
||||
|
||||
public string CounterGetNext(string CodCounter)
|
||||
{
|
||||
string answ = $"{CodCounter}.0000";
|
||||
int nextId = 1;
|
||||
var lastCount = dbCtx
|
||||
.DbSetCounters
|
||||
.Where(x => x.CodCounter == CodCounter)
|
||||
.OrderByDescending(x => x.LastNum)
|
||||
.FirstOrDefault();
|
||||
if (lastCount != null)
|
||||
{
|
||||
lastCount.LastNum++;
|
||||
nextId = lastCount.LastNum;
|
||||
}
|
||||
else
|
||||
{
|
||||
var newRecord = new DatabaseModels.CountersModel()
|
||||
{
|
||||
CodCounter = CodCounter,
|
||||
LastNum = nextId
|
||||
};
|
||||
dbCtx
|
||||
.DbSetCounters
|
||||
.Add(newRecord);
|
||||
}
|
||||
answ = $"{CodCounter}.{nextId:000000}";
|
||||
dbCtx.SaveChanges();
|
||||
|
||||
return answ;
|
||||
}
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
// Clear database context
|
||||
|
||||
@@ -35,7 +35,7 @@ namespace SHERPA.BBM.Migrations
|
||||
|
||||
context.DbSetBaskets.AddOrUpdate(
|
||||
p => p.CodBasket,
|
||||
new DatabaseModels.BasketsModel { CodBasket = "EGW.0000", CodClient = "", Descript = "Empty", DataIns = new DateTime(2021, 01, 01) }
|
||||
new DatabaseModels.BasketsModel { CodBasket = "EGW.B.000001", CodClient = "", Descript = "Empty", DataIns = new DateTime(2021, 01, 01) }
|
||||
);
|
||||
context.DbSetNegotiations.AddOrUpdate(
|
||||
p => p.CodNegotiation,
|
||||
|
||||
Reference in New Issue
Block a user