using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Consulenza.ReportCommon
{
    /// <summary>
    /// E' la rappresentazione dell' Area di bisogno.
    /// </summary>
    public class AreaBisogno
    {
        /// <summary>
        /// Imposta o recupera il codice dell'area di bisogno. Ext,Ris,Liq,Inv,Pre,Tut
        /// </summary>
        public string Codice { get; set; }

        /// <summary>
        /// Imposta o recupera l'abbreviazione dell'area di bisogno. E,R,L,I,P,T
        /// </summary>
        public string Abbreviazione { get; set; }

        /// <summary>
        /// Imposta o recupera il nome dell'area di bisogno. Extra Rendimento, Riserva, Liquidità, Investimento, Previdenza, Tutela
        /// </summary>
        public string Nome { get; set; }

        /// <summary>
        /// Imposta o recupera il nome dell'area di bisogno relativa al file di immagine. ExtraRendimento, Riserva, Liquidita, Investimento, Previdenza, Tutela
        /// </summary>
        public string NomePerImmagine { get; set; }

        /// <summary>
        /// Imposta o recupera un bool che indica se l'area è visibile oppure no.
        /// Tutte le aree tranne CC, SELF...sono visibili.
        /// </summary>
        public bool Visibile { get; set; }

        /// <summary>
        /// Costruttore
        /// </summary>
        /// <param name="codice"></param>
        public AreaBisogno(string codice)
        {
            Codice = codice;

            switch (codice.ToString())
            {
                case "Ext":
                    Abbreviazione = "E";
                    Nome = "Extra Rendimento";
                    NomePerImmagine = "ExtraRendimento";
                    Visibile = true;
                    break;
                case "Inv":
                    Abbreviazione = "I";
                    Nome = "Investimento";
                    NomePerImmagine = "Investimento";
                    Visibile = true;
                    break;
                case "Liq":
                    Abbreviazione = "L";
                    Nome = "Liquidità";
                    NomePerImmagine = "Liquidita";
                    Visibile = true;
                    break;
                case "Pre":
                    Abbreviazione = "P";
                    Nome = "Previdenza";
                    NomePerImmagine = "Previdenza";
                    Visibile = true;
                    break;
                case "Ris":
                    Abbreviazione = "R";
                    Nome = "Riserva";
                    NomePerImmagine = "Riserva";
                    Visibile = true;
                    break;
                case "Tut":
                    Abbreviazione = "T";
                    Nome = "Tutela";
                    NomePerImmagine = "Tutela";
                    Visibile = true;
                    break;
                default:
                    Abbreviazione = string.Empty;
                    Nome = string.Empty;
                    NomePerImmagine = string.Empty;
                    Visibile = false;
                    break;
                //throw new Exception("Consulenza.ReportCommon.AreaBisogno: Area di bisogno non esistente");
            }
        }
    }
}
