diff --git a/TecniStamp/TecniStamp.Service/CommessaService.cs b/TecniStamp/TecniStamp.Service/CommessaService.cs new file mode 100644 index 0000000..5ca7656 --- /dev/null +++ b/TecniStamp/TecniStamp.Service/CommessaService.cs @@ -0,0 +1,13 @@ +using OAService.Service.Servizi.Implementazioni; +using TecniStamp.Domain; +using TecniStamp.Service.Interfaces; +using TecniStamp.Service.Repository; + +namespace TecniStamp.Service; + +public class CommessaService : TService, ICommessaService +{ + public CommessaService(ITecniStampUnitOfWork unitOfWork) : base(unitOfWork) + { + } +} \ No newline at end of file diff --git a/TecniStamp/TecniStamp.Service/Interfaces/ICommessaService.cs b/TecniStamp/TecniStamp.Service/Interfaces/ICommessaService.cs new file mode 100644 index 0000000..8a1ae69 --- /dev/null +++ b/TecniStamp/TecniStamp.Service/Interfaces/ICommessaService.cs @@ -0,0 +1,8 @@ +using OAService.Service.Servizi.Interfacce; +using TecniStamp.Domain; + +namespace TecniStamp.Service.Interfaces; + +public interface ICommessaService : ITService +{ +} \ No newline at end of file diff --git a/TecniStamp/TecniStamp.Service/Interfaces/IManagerService.cs b/TecniStamp/TecniStamp.Service/Interfaces/IManagerService.cs index d186e4e..66f6c3e 100644 --- a/TecniStamp/TecniStamp.Service/Interfaces/IManagerService.cs +++ b/TecniStamp/TecniStamp.Service/Interfaces/IManagerService.cs @@ -2,6 +2,7 @@ public interface IManagerService { + ICommessaService CommessaService { get; set; } IFeatureService FeatureService { get; set; } IPermissionService PermissionService { get; set; } IRuoloService RuoloService{ get; set; } diff --git a/TecniStamp/TecniStamp.Service/Interfaces/IRuoloService.cs b/TecniStamp/TecniStamp.Service/Interfaces/IRuoloService.cs index 0caf075..c1deb4a 100644 --- a/TecniStamp/TecniStamp.Service/Interfaces/IRuoloService.cs +++ b/TecniStamp/TecniStamp.Service/Interfaces/IRuoloService.cs @@ -1,4 +1,3 @@ -using OAService.Service.Repository; using OAService.Service.Servizi.Interfacce; using TecniStamp.Domain; diff --git a/TecniStamp/TecniStamp.Service/ManagerService.cs b/TecniStamp/TecniStamp.Service/ManagerService.cs index be8991f..491b23f 100644 --- a/TecniStamp/TecniStamp.Service/ManagerService.cs +++ b/TecniStamp/TecniStamp.Service/ManagerService.cs @@ -4,15 +4,17 @@ namespace TecniStamp.Service; public class ManagerService : IManagerService { - public ManagerService(IUserService userService, ISezioneService sezioneService, IPermissionService permissionService, IRuoloService ruoloService, IFeatureService featureService) + public ManagerService(IUserService userService, ISezioneService sezioneService, IPermissionService permissionService, IRuoloService ruoloService, IFeatureService featureService, ICommessaService commessaService) { UtenteService = userService; SezioneService = sezioneService; PermissionService = permissionService; RuoloService = ruoloService; FeatureService = featureService; + CommessaService = commessaService; } + public ICommessaService CommessaService { get; set; } public IFeatureService FeatureService { get; set; } public IPermissionService PermissionService { get; set; } public IRuoloService RuoloService { get; set; } diff --git a/TecniStamp/TecniStamp/Components/Pages/Commesse/Commesse.razor b/TecniStamp/TecniStamp/Components/Pages/Commesse/Commesse.razor index 4a6a55b..fcab76a 100644 --- a/TecniStamp/TecniStamp/Components/Pages/Commesse/Commesse.razor +++ b/TecniStamp/TecniStamp/Components/Pages/Commesse/Commesse.razor @@ -1,5 +1,6 @@ @page "/commesse" @using Microsoft.EntityFrameworkCore +@using TecniStamp.Model.Commesse @using TecniStamp.Model.Common @using TecniStamp.Utils @@ -8,11 +9,15 @@ @code { public List BreadcrumbList { get; set; } = new(); + public List CommesseList { get; set; } = new(); protected override async Task OnInitializedAsync() { await base.OnInitializedAsync(); BreadcrumbList = await BreadcrumbUtils.BuildBreadcrumbByFeature(_managerService, "Commesse_Info"); + + CommesseList = (await _managerService.CommessaService.RicercaQueryable(x => x.Eliminato == false)) + .Select(x => (CommessaViewModel)x).ToList(); } } \ No newline at end of file diff --git a/TecniStamp/TecniStamp/Components/Widget/HomeTile.razor b/TecniStamp/TecniStamp/Components/Widget/HomeTile.razor index 4182d5a..01ab815 100644 --- a/TecniStamp/TecniStamp/Components/Widget/HomeTile.razor +++ b/TecniStamp/TecniStamp/Components/Widget/HomeTile.razor @@ -4,7 +4,7 @@

- +

@Model.Text diff --git a/TecniStamp/TecniStamp/Model/Commesse/ClienteViewModel.cs b/TecniStamp/TecniStamp/Model/Commesse/ClienteViewModel.cs new file mode 100644 index 0000000..4f0c68f --- /dev/null +++ b/TecniStamp/TecniStamp/Model/Commesse/ClienteViewModel.cs @@ -0,0 +1,50 @@ +using TecniStamp.Domain; + +namespace TecniStamp.Model.Commesse; + +public class ClienteViewModel : BaseViewModel +{ + public string RagioneSociale { get; set; } + public string PartitaIva { get; set; } + public string Paese { get; set; } + public string Telefono { get; set; } + public string Email { get; set; } + public string Indirizzo { get; set; } + public string CAP { get; set; } + public string Citta { get; set; } + public string NumeroCivico { get; set; } + public string Via { get; set; } + public string Provincia { get; set; } + public string Note { get; set; } + public Guid? ComuneId { get; set; } + public ComuneIstatViewModel Comune { get; set; } + + public override void Validate() + { + + } + + public static implicit operator ClienteViewModel(Cliente model) + { + return model == null + ? null + : new ClienteViewModel() + { + RagioneSociale = model.RagioneSociale, + PartitaIva = model.PartitaIva, + Paese = model.Paese, + Telefono = model.Telefono, + Email = model.Email, + Indirizzo = model.Indirizzo, + CAP = model.CAP, + Citta = model.Citta, + NumeroCivico = model.NumeroCivico, + Via = model.Via, + Provincia = model.Provincia, + Note = model.Note, + ComuneId = model.ComuneId, + Comune = model.Comune, + Id = model.Id + }; + } +} \ No newline at end of file diff --git a/TecniStamp/TecniStamp/Model/Commesse/CommessaViewModel.cs b/TecniStamp/TecniStamp/Model/Commesse/CommessaViewModel.cs new file mode 100644 index 0000000..688bd8d --- /dev/null +++ b/TecniStamp/TecniStamp/Model/Commesse/CommessaViewModel.cs @@ -0,0 +1,44 @@ +using TecniStamp.Domain; + +namespace TecniStamp.Model.Commesse; + +public class CommessaViewModel : BaseViewModel +{ + public string CodiceCommessa { get; set; } + public int AnnoCommessa { get; set; } + public Guid? ClienteId { get; set; } + public ClienteViewModel Cliente { get; set; } + public string RiferimentoCliente { get; set; } + public string OrdineNr { get; set; } + public decimal? OreTotali { get; set; } + public DateTime DataOrdine { get; set; } + public DateTime DataConsegnaPrevista { get; set; } + public DateTime DataConsegna { get; set; } + public CommessaStato Stato { get; set; } + + public override void Validate() + { + + } + + public static implicit operator CommessaViewModel(Commessa model) + { + return model == null + ? null + : new CommessaViewModel() + { + Stato = model.Stato, + CodiceCommessa = model.CodiceCommessa, + AnnoCommessa = model.AnnoCommessa, + ClienteId = model.ClienteId, + Cliente = model.Cliente, + RiferimentoCliente = model.RiferimentoCliente, + OrdineNr = model.OrdineNr, + OreTotali = model.OreTotali, + DataOrdine = model.DataOrdine, + DataConsegnaPrevista = model.DataConsegnaPrevista, + DataConsegna = model.DataConsegna, + Id = model.Id + }; + } +} \ No newline at end of file diff --git a/TecniStamp/TecniStamp/Model/Commesse/ComuneIstatViewModel.cs b/TecniStamp/TecniStamp/Model/Commesse/ComuneIstatViewModel.cs new file mode 100644 index 0000000..e4f9749 --- /dev/null +++ b/TecniStamp/TecniStamp/Model/Commesse/ComuneIstatViewModel.cs @@ -0,0 +1,35 @@ +using TecniStamp.Domain; + +namespace TecniStamp.Model.Commesse; + +public class ComuneIstatViewModel : BaseViewModel +{ + public string Istat { get; set; } + public string Comune { get; set; } + public string Regione { get; set; } + public string Provincia { get; set; } + public string Prefisso { get; set; } + public string CodFisco { get; set; } + public ProvinciaIstatViewModel ProvinciaIstat { get; set; } + public override void Validate() + { + + } + + public static implicit operator ComuneIstatViewModel(ComuneIstat model) + { + return model == null + ? null + : new ComuneIstatViewModel() + { + Provincia = model.Provincia, + CodFisco = model.CodFisco, + Prefisso = model.Prefisso, + Regione = model.Regione, + Istat = model.Istat, + Comune = model.Comune, + ProvinciaIstat = model.ProvinciaIstat, + Id = model.Id + }; + } +} \ No newline at end of file diff --git a/TecniStamp/TecniStamp/Model/Commesse/ProvinciaIstatViewModel.cs b/TecniStamp/TecniStamp/Model/Commesse/ProvinciaIstatViewModel.cs new file mode 100644 index 0000000..d26e83a --- /dev/null +++ b/TecniStamp/TecniStamp/Model/Commesse/ProvinciaIstatViewModel.cs @@ -0,0 +1,26 @@ +using TecniStamp.Domain; + +namespace TecniStamp.Model.Commesse; + +public class ProvinciaIstatViewModel : BaseViewModel +{ + public string Sigla { get; set; } + public string Provincia { get; set; } + + public override void Validate() + { + + } + + public static implicit operator ProvinciaIstatViewModel(ProvinciaIstat model) + { + return model == null + ? null + : new ProvinciaIstatViewModel() + { + Provincia = model.Provincia, + Sigla = model.Sigla, + Id = model.Id + }; + } +} \ No newline at end of file