COmpletato fatturazione + incasso

This commit is contained in:
Samuele Locatelli
2021-05-13 14:14:53 +02:00
parent a9bb7945d2
commit 1956d76499
8 changed files with 227 additions and 187 deletions
+11 -11
View File
@@ -1,4 +1,5 @@
@using SHERPA.BBM.UI.Data
@using Blazorise
@using SHERPA.BBM.UI.Data
@using SHERPA.BBM.UI.Components;
@using DatabaseModels
@inject BBM_EFService BBMService
@@ -10,31 +11,31 @@
<div class="card-body small">
<EditForm Model="@_currItem">
<DataAnnotationsValidator />
<ValidationSummary />
<Blazorise.ValidationSummary />
<div class="row">
<div class="col-6 col-lg-4 text-right">
<div class="col-4 col-lg-2">
<div class="form-group">
<label for="qtyPrev">Data Fattura:</label>
<InputDate id="DataIns" @bind-Value="_currItem.DataIns" class="form-control form-control-sm text-right" title="Data Emissione Fattura" />
<DateEdit InputMode="DateInputMode.DateTime" @bind-Date="@_currItem.DataIns" Class="form-control form-control-sm" title="Data Emissione Fattura" />
</div>
</div>
<div class="col-6 col-lg-2 text-right">
<div class="col-4 col-lg-2 text-right">
<div class="form-group">
<label for="qtyOff">Importo Fattura:</label>
<label for="qtyOff">Importo Fattura</label>
<InputNumber id="Importo" @bind-Value="_currItem.Importo" class="form-control form-control-sm text-right" title="Importo Complessivo" />
</div>
</div>
<div class="col-6 col-lg-2 text-right">
<div class="col-4 col-lg-2 text-right">
<div class="form-group">
<label for="qtyOff">Incasso Fattura:</label>
<label for="qtyOff">Incasso Fattura</label>
<InputNumber id="Incassato" @bind-Value="_currItem.Incassato" class="form-control form-control-sm text-right" title="Importo Incassato" />
</div>
</div>
<div class="col-6 col-lg-2">
<div class="col-6 col-lg-3">
<label for="btnSave"></label>
<input type="submit" class="btn btn-sm btn-success btn-block" value="Save" @onclick="saveUpdate" />
</div>
<div class="col-6 col-lg-2 align-bottom">
<div class="col-6 col-lg-3 align-bottom">
<label for="btnCancel"></label>
<button type="button" class="btn btn-sm btn-warning btn-block" value="Cancel" @onclick="cancelUpdate">Cancel</button>
</div>
@@ -60,7 +61,6 @@
}
}
[Parameter]
public EventCallback<int> DataReset { get; set; }
[Parameter]
+38 -33
View File
@@ -34,7 +34,7 @@ namespace SHERPA.BBM.UI.Data
_logger = logger;
_configuration = configuration;
connStringBBM = _configuration["SherpaBBM"];
connStringFatt= _configuration["SherpaFatt"];
connStringFatt = _configuration["SherpaFatt"];
//_logger.LogInformation($"ConnString: {connString}");
if (string.IsNullOrEmpty(connStringBBM) || string.IsNullOrEmpty(connStringFatt))
{
@@ -109,6 +109,43 @@ namespace SHERPA.BBM.UI.Data
}
}
public void BillDelete(DatabaseModels.Fatt2DocModel currItem)
{
try
{
dbController.BillDelete(currItem.IdxFatt);
}
catch
{
}
}
public Task<DatabaseModels.Fatt2DocModel[]> BillsGetAsync(int DocId)
{
return Task.FromResult(dbController.BillsGetByDoc(DocId).ToArray());
}
public Task<decimal> BillsGetTotImporto(int DocId)
{
return Task.FromResult(dbController.BillsGetTotImporto(DocId));
}
public Task<decimal> BillsGetTotIncasso(int DocId)
{
return Task.FromResult(dbController.BillsGetTotIncasso(DocId));
}
public void BillUpdate(DatabaseModels.Fatt2DocModel currItem)
{
try
{
dbController.BillUpdate(currItem);
}
catch
{
}
}
public Task<DatabaseModels.FluxCountersModel[]> CounterGetAll()
{
return Task.FromResult(dbController.CountersGetAll().ToArray());
@@ -210,38 +247,6 @@ namespace SHERPA.BBM.UI.Data
}
}
public void BillDelete(DatabaseModels.Fatt2DocModel currItem)
{
try
{
dbController.BillDelete(currItem.IdxFatt);
}
catch
{
}
}
public Task<DatabaseModels.Fatt2DocModel[]> BillsGetAsync(int DocId)
{
return Task.FromResult(dbController.BillsGetByDoc(DocId).ToArray());
}
public Task<decimal> BillsGetGrandTotal(int DocId)
{
return Task.FromResult(dbController.BillsGetGrandTotal(DocId));
}
public void BillUpdate(DatabaseModels.Fatt2DocModel currItem)
{
try
{
dbController.BillUpdate(currItem);
}
catch
{
}
}
public void ItemAdd(DatabaseModels.ItemsModel newItem)
{
try
+3 -3
View File
@@ -25,7 +25,7 @@
<b>@(@resGrandTotal.ToString("C2"))</b>
</div>
<div>
<i>Importo complessivo</i>
<i>@currDoc.Note</i>
</div>
</div>
<div class="col-6 col-lg-3">
@@ -101,10 +101,10 @@
protected string checkValue(double currVal, double tgtVal)
{
string answ = "text-success";
string answ = "text-warning";
if (currVal == tgtVal)
{
answ = "text-warning";
answ = "text-success";
}
else if (currVal == 0)
{
+16
View File
@@ -77,6 +77,7 @@
<th>Cod</th>
<th>Descrizione</th>
<th class="text-right">Importo</th>
<th class="text-right">Fatturazione</th>
<th class="text-right"></th>
</tr>
</thead>
@@ -101,6 +102,10 @@
<div class="small">@record.Note</div>
</td>
<td class="text-right"><b>@getGrandTot(@record.DocId).Result.ToString("C2")</b></td>
<td class="text-right">
<div><b>@getFatturato(@record.DocId).Result.ToString("C2")</b></div>
<div class="small">@getIncassato(@record.DocId).Result.ToString("C2")</div>
</td>
<td class="text-right"><button class="btn btn-sm btn-danger" @onclick="() => Delete(record)"><span class="oi oi-trash"></span></button></td>
</tr>
}
@@ -146,6 +151,17 @@
return grandTot;
}
protected async Task<decimal> getFatturato(int DocId)
{
decimal fatturato= await BBMService.BillsGetTotImporto(DocId);
return fatturato;
}
protected async Task<decimal> getIncassato(int DocId)
{
decimal incassato = await BBMService.BillsGetTotIncasso(DocId);
return incassato;
}
private int numRecord { get; set; } = 10;
private DatabaseModels.DocsModel currItem = null;
+156 -138
View File
@@ -151,6 +151,146 @@ namespace SHERPA.BBM.Controllers
return done;
}
/// <summary>
/// Elimina item Fatt2Doc
/// </summary>
/// <param name="IdxFatt"></param>
/// <returns></returns>
public bool BillDelete(int IdxFatt)
{
bool done = false;
try
{
var item2del = dbCtx
.DbSetFatt2Doc
.Where(x => x.IdxFatt == IdxFatt)
.FirstOrDefault();
dbCtx.DbSetFatt2Doc.Remove(item2del);
dbCtx.SaveChanges();
done = true;
}
catch
{ }
return done;
}
/// <summary>
/// Elimina Fatture del doc indicato
/// </summary>
/// <param name="DocId"></param>
/// <returns></returns>
public bool BillDeleteByDoc(int DocId)
{
bool done = false;
try
{
var item2del = dbCtx
.DbSetFatt2Doc
.Where(x => x.DocId == DocId)
.ToList();
dbCtx.DbSetFatt2Doc.RemoveRange(item2del);
dbCtx.SaveChanges();
done = true;
}
catch
{ }
return done;
}
/// <summary>
/// Conteggio fatture
/// </summary>
/// <returns></returns>
public int BillsCount()
{
int answ = dbCtx
.DbSetFatt2Doc
.Count();
return answ;
}
/// <summary>
/// Elenco Docs da Item
/// </summary>
/// <param name="DocId"></param>
/// <returns></returns>
public List<DatabaseModels.Fatt2DocModel> BillsGetByDoc(int DocId = 0)
{
List<DatabaseModels.Fatt2DocModel> dbResult = new List<DatabaseModels.Fatt2DocModel>();
dbResult = dbCtx
.DbSetFatt2Doc
.Where(x => (x.DocId == DocId || DocId == 0))
.OrderByDescending(x => x.DataIns)
.ToList();
return dbResult;
}
/// <summary>
/// Importo complessivo fatture emesse x DOC
/// </summary>
/// <param name="numRecord"></param>
/// <returns></returns>
public decimal BillsGetTotImporto(int DocId = 0)
{
decimal answ = dbCtx
.DbSetFatt2Doc
.Where(x => (x.DocId == DocId || DocId == 0))
.Select(x => x.Importo)
.Sum();
return answ;
}
/// <summary>
/// Incasso complessivo fatture emesse x DOC
/// </summary>
/// <param name="numRecord"></param>
/// <returns></returns>
public decimal BillsGetTotIncasso(int DocId = 0)
{
decimal answ = dbCtx
.DbSetFatt2Doc
.Where(x => (x.DocId == DocId || DocId == 0))
.Select(x => x.Incassato)
.Sum();
return answ;
}
/// <summary>
/// Aggiunge un nuova Fattura
/// </summary>
/// <param name="updItem"></param>
/// <returns></returns>
public bool BillUpdate(DatabaseModels.Fatt2DocModel updItem)
{
bool done = false;
try
{
var currData = dbCtx
.DbSetFatt2Doc
.Where(x => x.IdxFatt == updItem.IdxFatt)
.FirstOrDefault();
if (currData != null)
{
dbCtx.Entry(updItem).State = System.Data.Entity.EntityState.Modified;
}
else
{
dbCtx
.DbSetFatt2Doc
.Add(updItem);
}
dbCtx.SaveChanges();
done = true;
}
catch
{ }
return done;
}
public string CounterGetNext(string CodCounter, int numZeros)
{
string answ = $"{CodCounter}.0000";
@@ -499,129 +639,6 @@ namespace SHERPA.BBM.Controllers
return done;
}
/// <summary>
/// Aggiunge un nuova Fattura
/// </summary>
/// <param name="updItem"></param>
/// <returns></returns>
public bool BillUpdate(DatabaseModels.Fatt2DocModel updItem)
{
bool done = false;
try
{
var currData = dbCtx
.DbSetFatt2Doc
.Where(x => x.IdxFatt == updItem.IdxFatt)
.FirstOrDefault();
if (currData != null)
{
dbCtx.Entry(updItem).State = System.Data.Entity.EntityState.Modified;
}
else
{
dbCtx
.DbSetFatt2Doc
.Add(updItem);
}
dbCtx.SaveChanges();
done = true;
}
catch
{ }
return done;
}
/// <summary>
/// Elimina item Fatt2Doc
/// </summary>
/// <param name="IdxFatt"></param>
/// <returns></returns>
public bool BillDelete(int IdxFatt)
{
bool done = false;
try
{
var item2del = dbCtx
.DbSetFatt2Doc
.Where(x => x.IdxFatt == IdxFatt)
.FirstOrDefault();
dbCtx.DbSetFatt2Doc.Remove(item2del);
dbCtx.SaveChanges();
done = true;
}
catch
{ }
return done;
}
/// <summary>
/// Elimina Fatture del doc indicato
/// </summary>
/// <param name="DocId"></param>
/// <returns></returns>
public bool BillDeleteByDoc(int DocId)
{
bool done = false;
try
{
var item2del = dbCtx
.DbSetFatt2Doc
.Where(x => x.DocId == DocId)
.ToList();
dbCtx.DbSetFatt2Doc.RemoveRange(item2del);
dbCtx.SaveChanges();
done = true;
}
catch
{ }
return done;
}
/// <summary>
/// Importo complessivo fatture emesse x DOC
/// </summary>
/// <param name="numRecord"></param>
/// <returns></returns>
public decimal BillsGetGrandTotal(int DocId = 0)
{
decimal answ = dbCtx
.DbSetFatt2Doc
.Where(x => (x.DocId == DocId || DocId == 0))
.Select(x => x.Importo)
.Sum();
return answ;
}
/// <summary>
/// Elenco Docs da Item
/// </summary>
/// <param name="DocId"></param>
/// <returns></returns>
public List<DatabaseModels.Fatt2DocModel> BillsGetByDoc(int DocId = 0)
{
List<DatabaseModels.Fatt2DocModel> dbResult = new List<DatabaseModels.Fatt2DocModel>();
dbResult = dbCtx
.DbSetFatt2Doc
.Where(x => (x.DocId == DocId || DocId == 0))
.OrderByDescending(x => x.DataIns)
.ToList();
return dbResult;
}
/// <summary>
/// Conteggio fatture
/// </summary>
/// <returns></returns>
public int BillsCount()
{
int answ = dbCtx
.DbSetFatt2Doc
.Count();
return answ;
}
/// <summary>
/// Aggiunge un nuovo item
/// </summary>
@@ -972,6 +989,22 @@ namespace SHERPA.BBM.Controllers
return done;
}
/// <summary>
/// Elenco ultimi Items
/// </summary>
/// <param name="numRecord"></param>
/// <returns></returns>
public double ResourceGetGrandTotal(int DocId = 0)
{
double answ = dbCtx
.DbSetResources
.Where(x => (x.DocId == DocId || DocId == 0))
.Select(x => x.FinalPrice)
.Sum();
return answ;
}
/// <summary>
/// Elenco ultimi Items
/// </summary>
@@ -993,21 +1026,6 @@ namespace SHERPA.BBM.Controllers
return dbResult;
}
/// <summary>
/// Elenco ultimi Items
/// </summary>
/// <param name="numRecord"></param>
/// <returns></returns>
public double ResourceGetGrandTotal(int DocId = 0)
{
double answ = dbCtx
.DbSetResources
.Where(x => (x.DocId == DocId || DocId == 0))
.Select(x => x.FinalPrice)
.Sum();
return answ;
}
/// <summary>
/// Elenco ultimi Items
@@ -3,6 +3,7 @@ using System.Data.Entity;
using System.Linq;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Collections.Generic;
namespace SHERPA.BBM.DatabaseModels
{
+1 -1
View File
@@ -91,7 +91,7 @@
<Compile Include="DatabaseModels\ItemsModel.cs" />
<Compile Include="DatabaseModels\BasketsModel.cs" />
<Compile Include="DatabaseModels\ResurcesModel.cs" />
<Compile Include="DatabaseModels\DocModel.cs" />
<Compile Include="DatabaseModels\DocsModel.cs" />
<Compile Include="DatabaseModels\NegotiationsModel.cs" />
<Compile Include="DataLayer.cs" />
<Compile Include="MainDbContext.Views.cs" />
+1 -1
View File
@@ -10,7 +10,7 @@
<IISExpressSSLPort />
<IISExpressUseClassicPipelineMode />
<UseGlobalApplicationHostFile />
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
</PropertyGroup>
<ProjectExtensions>
<VisualStudio>