From 0cac2ec2022418e7077749ca39c26b214293a4dd Mon Sep 17 00:00:00 2001 From: Davide Sandrelli Date: Thu, 4 Dec 2025 18:03:42 +0100 Subject: [PATCH] - IscrizioneEvento: creazione delle iscrizioni --- .../Entita/IscrizioneEvento.cs | 3 + .../Interfaces/IIscrizioneEventoService.cs | 5 +- .../IscrizioneEventoService.cs | 17 ++ .../Components/Layout/MainLayout.razor | 30 +++- StandManager/Components/Pages/Home.razor | 152 ++++++++++++++++-- .../Management/Cliente_Destinazione.razor | 2 +- .../Model/IscrizioneEventoViewModel.cs | 53 ++++++ 7 files changed, 244 insertions(+), 18 deletions(-) create mode 100644 StandManager/Model/IscrizioneEventoViewModel.cs diff --git a/StandManager.Domain/Entita/IscrizioneEvento.cs b/StandManager.Domain/Entita/IscrizioneEvento.cs index 33beccb..6fc3d18 100644 --- a/StandManager.Domain/Entita/IscrizioneEvento.cs +++ b/StandManager.Domain/Entita/IscrizioneEvento.cs @@ -12,6 +12,9 @@ public class InvitoEvento : EntitaBase [ForeignKey(nameof(Cliente))] public Guid? ClienteId { get; set; } public Cliente Cliente { get; set; } + + [InverseProperty(nameof(IscrizioneEvento.InvitoEvento))] + public List IscrizioniEvento { get; set; } } public class IscrizioneEvento : EntitaBase diff --git a/StandManager.Service/Interfaces/IIscrizioneEventoService.cs b/StandManager.Service/Interfaces/IIscrizioneEventoService.cs index 5869676..1e4c70a 100644 --- a/StandManager.Service/Interfaces/IIscrizioneEventoService.cs +++ b/StandManager.Service/Interfaces/IIscrizioneEventoService.cs @@ -3,4 +3,7 @@ using StandManager.Domain.Entita; namespace StandManager.Service.Interfaces; -public interface IIscrizioneEventoService : ITService{} +public interface IIscrizioneEventoService : ITService +{ + Task Salva(IscrizioneEvento model); +} diff --git a/StandManager.Service/IscrizioneEventoService.cs b/StandManager.Service/IscrizioneEventoService.cs index 73a9d43..6ab66fa 100644 --- a/StandManager.Service/IscrizioneEventoService.cs +++ b/StandManager.Service/IscrizioneEventoService.cs @@ -13,4 +13,21 @@ public class IscrizioneEventoService : TService, IIscrizioneEv { _unitOfWork = unitOfWork; } + + public async Task Salva(IscrizioneEvento entita) + { + bool isNuovaEntita = entita.Id == Guid.Empty; + + entita.DataCreazione = isNuovaEntita ? DateTime.Now : entita.DataCreazione; + entita.DataModifica = isNuovaEntita == false ? DateTime.Now : null; + entita.IdUtenteCreazione = isNuovaEntita ? null : entita.IdUtenteCreazione; + entita.IdUtenteModifica = isNuovaEntita == false ? null : null; + + if (isNuovaEntita) + await _unitOfWork.GetRepository().Put(entita); + + int result = await _unitOfWork.Salva(); + + return entita; + } } diff --git a/StandManager/Components/Layout/MainLayout.razor b/StandManager/Components/Layout/MainLayout.razor index 97f3712..a089893 100644 --- a/StandManager/Components/Layout/MainLayout.razor +++ b/StandManager/Components/Layout/MainLayout.razor @@ -1,5 +1,6 @@ @using Microsoft.AspNetCore.Authentication @inherits LayoutComponentBase +@inject NavigationManager NavManager @@ -44,7 +45,7 @@