Start to implement a FrontOffice index

main
Paul Schneider 9 years ago
parent 126c07d633
commit e2c34067a8
4 changed files with 68 additions and 5 deletions

@ -8,6 +8,8 @@ using Microsoft.Extensions.Logging;
using Yavsc.Models.Booking;
using Yavsc.Helpers;
using System;
using Yavsc.ViewModels.FrontOffice;
using System.Security.Claims;
namespace Yavsc.Controllers
{
@ -27,10 +29,20 @@ namespace Yavsc.Controllers
}
public ActionResult Index()
{
var latestPosts = _context.Blogspot.Where(
x => x.Visible == true
).OrderBy(x => x.Modified).Take(25).ToArray();
return View(latestPosts);
var uid = User.GetUserId();
var now = DateTime.Now;
var model = new FrontOfficeIndexViewModel{
EstimateToProduceCount = _context.Commands.Where(c => c.PerformerId == uid && c.EventDate > now
&& c.ValidationDate == null && !_context.Estimates.Any(e=>(e.CommandId == c.Id && e.ProviderValidationDate != null))).Count(),
EstimateToSignAsProCount = _context.Commands.Where(c => ( c.PerformerId == uid && c.EventDate > now
&& c.ValidationDate == null && _context.Estimates.Any(e=>(e.CommandId == c.Id && e.ProviderValidationDate != null)))).Count(),
EstimateToSignAsCliCount = _context.Estimates.Where(e=>e.ClientId == uid && e.ClientValidationDate == null) .Count(),
BillToSignAsProCount = 0,
BillToSignAsCliCount = 0,
NewPayementsCount = 0
};
return View(model);
}
[Route("Book/{id?}"), HttpGet]

@ -203,6 +203,13 @@
<data name="entries"><value>entrées</value></data>
<data name="Estimate"><value>Estimer</value></data>
<data name="Estimate_not_found"><value>Devis non trouvé</value></data>
<data name="EstimateToProduce"><value>Demandes de Devis en souffrance</value></data>
<data name="EstimateToSignAsPro"><value>Devis à valider</value></data>
<data name="EstimateToSignAsCli"><value>Devis à accèpter ou refuser</value></data>
<data name="BillToSignAsPro"><value>Factures à produire</value></data>
<data name="BillToSignAsCli"><value>Factures à honnorer</value></data>
<data name="PayementsDone"><value>Paiements effectués</value></data>
<data name="EstimationMessageToClient"><value>{0} a validé un devis pour vous : {1}\nAu total : {2} €
Il attend maintenant votre signature.</value></data>
<data name="EstimateWanted"><value>Demande de devis</value></data>

@ -0,0 +1,13 @@
namespace Yavsc.ViewModels.FrontOffice
{
public class FrontOfficeIndexViewModel
{
public int EstimateToProduceCount { get; set; }
public int EstimateToSignAsProCount { get; set; }
public int EstimateToSignAsCliCount { get; set; }
public int BillToSignAsProCount { get; set; }
public int BillToSignAsCliCount { get; set; }
public int NewPayementsCount { get; set; }
}
}

@ -1,7 +1,38 @@
@model Yavsc.ViewModels.FrontOffice.FrontOfficeIndexViewModel
@{
ViewData["Title"] = "Front office";
}
<h2>Index</h2>
<dl class="dl-horizontal">
<dt>@SR["EstimateToProduce"]
</dt>
<dd>@Html.DisplayFor(m=>m.EstimateToProduceCount)
</dd>
<dt>@SR["EstimateToSignAsPro"]
</dt>
<dd>@Html.DisplayFor(m=>m.EstimateToSignAsProCount)
</dd>
<dt>@SR["EstimateToSignAsCli"]
</dt>
<dd>@Html.DisplayFor(m=>m.EstimateToSignAsCliCount)
</dd>
<dt>@SR["BillToSignAsPro"]
</dt>
<dd>@Html.DisplayFor(m=>m.BillToSignAsProCount)
</dd>
<dt>@SR["BillToSignAsCli"]
</dt>
<dd>@Html.DisplayFor(m=>m.BillToSignAsCliCount)
</dd>
<dt>@SR["PayementsDone"]
</dt>
<dd>@Html.DisplayFor(m=>m.NewPayementsCount)
</dd>
</dl>

Loading…