@page "/User/{CodContact}/{IsContact:bool}"
@attribute [Authorize]
@using AutoMapper
@using salesbook.Shared.Components.Layout
@using salesbook.Shared.Core.Entity
@using salesbook.Shared.Core.Interface
@using salesbook.Shared.Components.Layout.Spinner
@using salesbook.Shared.Core.Dto
@using salesbook.Shared.Components.SingleElements
@inject IManageDataService ManageData
@inject IMapper Mapper
@inject IDialogService Dialog
@if (IsLoading)
{
}
else
{
@UtilityString.ExtractInitials(Anag.RagSoc)
@Anag.RagSoc
@if (UserSession.User.KeyGroup is not null)
{
@Anag.Indirizzo
@($"{Anag.Cap} - {Anag.Citta} ({Anag.Prov})")
}
@if (!string.IsNullOrEmpty(Anag.Telefono))
{
Telefono
@Anag.Telefono
}
@if (!string.IsNullOrEmpty(Anag.PartIva))
{
P. IVA
@Anag.PartIva
}
@if (!string.IsNullOrEmpty(Anag.EMail))
{
E-mail
@Anag.EMail
}
@if (PersRif is { Count: > 0 })
{
@{
var index = PersRif.IndexOf(person);
var isLast = index == PersRif.Count - 1;
}
@if (!isLast)
{
}
}
Aggiungi contatto
@if (Commesse.IsNullOrEmpty())
{
}
else
{
}
}
@code {
[Parameter] public string CodContact { get; set; }
[Parameter] public bool IsContact { get; set; }
private ContactDTO Anag { get; set; } = new();
private List? PersRif { get; set; }
private List Commesse { get; set; }
private bool IsLoading { get; set; } = true;
protected override async Task OnInitializedAsync()
{
await LoadData();
}
private async Task LoadData()
{
if (IsContact)
{
var clie = (await ManageData.GetTable(x => x.CodAnag.Equals(CodContact))).Last();
Anag = Mapper.Map(clie);
var pers = await ManageData.GetTable(x => x.CodAnag.Equals(Anag.CodContact));
PersRif = Mapper.Map>(pers);
}
else
{
var pros = (await ManageData.GetTable(x => x.CodPpro.Equals(CodContact))).Last();
Anag = Mapper.Map(pros);
var pers = await ManageData.GetTable(x => x.CodPpro.Equals(Anag.CodContact));
PersRif = Mapper.Map>(pers);
}
Commesse = await ManageData.GetTable(x => x.CodAnag != null && x.CodAnag.Equals(CodContact));
IsLoading = false;
StateHasChanged();
}
private async Task OpenPersRifForm()
{
var result = await ModalHelpers.OpenPersRifForm(Dialog, null);
}
private async Task OpenUserForm(ContactDTO anag)
{
var result = await ModalHelpers.OpenUserForm(Dialog, anag);
}
}