49 lines
1.6 KiB
C#
49 lines
1.6 KiB
C#
using StandManager.Domain.Entita;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
|
|
namespace StandManager.Model
|
|
{
|
|
public class UtenteViewModel
|
|
{
|
|
public Guid Id { get; set; }
|
|
public string Username { get; set; }
|
|
[Required]
|
|
[EmailAddress(ErrorMessage = "Email non valida")]
|
|
public string Email { get; set; }
|
|
public string Password { get; set; }
|
|
[Required(ErrorMessage = "Il nome è obbligatorio")]
|
|
public string Nome { get; set; }
|
|
[Required(ErrorMessage = "Il cognome è obbligatorio")]
|
|
public string Cognome { get; set; }
|
|
public Guid RuoloId { get; set; }
|
|
public Guid CapoareaId { get; set; }
|
|
public bool IsCapoarea { get; set; }
|
|
public string Info => $"{Nome} {Cognome}";
|
|
|
|
public static implicit operator UtenteViewModel(Utente? model)
|
|
{
|
|
return model == null ? null : new UtenteViewModel
|
|
{
|
|
Id = model.Id,
|
|
Username = model.Username,
|
|
Email = model.Email,
|
|
Nome = model.Nome,
|
|
Cognome = model.Cognome,
|
|
RuoloId = model.Ruolo?.Id ?? Guid.Empty,
|
|
CapoareaId = model.Capoarea?.Id ?? Guid.Empty,
|
|
IsCapoarea = model.IsCapoarea
|
|
};
|
|
}
|
|
|
|
public Utente Map(Utente model)
|
|
{
|
|
model.Nome = Nome;
|
|
model.Cognome = Cognome;
|
|
model.Email = Email;
|
|
model.IsCapoarea = IsCapoarea;
|
|
|
|
return model;
|
|
}
|
|
}
|
|
} |