COmpletato fatturazione + incasso
This commit is contained in:
@@ -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]
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
{
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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
|
||||
{
|
||||
@@ -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" />
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
<IISExpressSSLPort />
|
||||
<IISExpressUseClassicPipelineMode />
|
||||
<UseGlobalApplicationHostFile />
|
||||
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
|
||||
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
|
||||
</PropertyGroup>
|
||||
<ProjectExtensions>
|
||||
<VisualStudio>
|
||||
|
||||
Reference in New Issue
Block a user