using System;
using System.Collections.Generic;
using System.Text;
namespace Egw.Data.Window.Dto
{
///
/// Payload complessivo delle anagrafiche necessarie x Window
///
public class BaseListPayload
{
///
/// Elenco Famiglie HW in formato DTO
///
public List FamilyHardware { get; set; } = new List();
///
/// Elenco HW
///
public List Hardware { get; set; } = new List();
///
/// Elenco colori
///
public List ColorMaterial { get; set; } = new List();
///
/// Elenco Materiali impiegabili
///
public List Wood { get; set; } = new List();
///
/// Elenco vetri ammessi
///
public List Glass { get; set; } = new List();
///
/// Lista info profili nel nuovo formato compatto
///
public List ProfileList { get; set; }
///
/// Verifica di validità dell'intero Payload
///
///
public bool IsValid()
{
bool famHwOK = FamilyHardware != null && FamilyHardware.Count > 0;
bool hwOK = Hardware != null && Hardware.Count > 0;
bool glassOK = Glass != null && Glass.Count > 0;
bool woodOK = Wood != null && Wood.Count > 0;
bool colorOK = ColorMaterial != null && ColorMaterial.Count > 0;
bool profileOK = ProfileList != null && ProfileList.Count > 0;
return famHwOK && glassOK && hwOK && colorOK && woodOK && profileOK;
}
///
/// Verifica che Payload sia almeno parzialmente popolato
///
///
public bool IsPopulated()
{
bool famHwOK = FamilyHardware != null && FamilyHardware.Count > 0;
bool hwOK = Hardware != null && Hardware.Count > 0;
bool glassOK = Glass != null && Glass.Count > 0;
bool woodOK = Wood != null && Wood.Count > 0;
bool colorOK = ColorMaterial != null && ColorMaterial.Count > 0;
bool profileOK = ProfileList != null && ProfileList.Count > 0;
return famHwOK || glassOK || hwOK || colorOK || woodOK || profileOK;
}
}
}