/// <summary> /// Construtor padrão. /// </summary> /// <param name="idRegistro">Identificador do registro.</param> /// <param name="descritor"></param> /// <param name="tipo"></param> /// <param name="valor"></param> public RegistroRentabilidade(int idRegistro, DescritorRegistroRentabilidade descritor, TipoRegistroRentabilidade tipo, decimal valor) { IdRegistro = idRegistro; Descritor = descritor; Tipo = tipo; Valor = valor; }
/// <summary> /// Cria uma instancia do registro. /// </summary> /// <param name="tipo">Tipo do registro.</param> /// <param name="nome">Nome do registro.</param> /// <param name="valor">Valor do registro</param> /// <returns></returns> public virtual IRegistroRentabilidade CriarRegistro(TipoRegistroRentabilidade tipo, string nome, decimal valor) { var registro = RegistrosRentabilidade.FirstOrDefault(f => f.Tipo == tipo && f.Descritor.Nome == nome); if (registro != null) { _registrosRentabilidade.Remove(registro); } return(_criarRegistroRentabilidade(tipo, nome, valor)); }
/// <summary> /// Recupera o identificador do registro pelo tipo e pelo nome informado. /// </summary> /// <param name="tipo">Tipo de registro.</param> /// <param name="nome">Nome do registro.</param> /// <returns>Identificador do registro.</returns> int IProvedorDescritorRegistroRentabilidade.ObterRegistro(TipoRegistroRentabilidade tipo, string nome) { switch (tipo) { case TipoRegistroRentabilidade.Expressao: return(DescritoresExpressaoRentabilidade.FirstOrDefault(f => f.Nome == nome)?.IdExpressaoRentabilidade ?? -1); case TipoRegistroRentabilidade.IndicadorFinaceiro: return(DescritoresIndicadorFinanceiro.FirstOrDefault(f => f.Nome == nome)?.IdIndicadorFinanceiro ?? -1); case TipoRegistroRentabilidade.VariavelItem: return(((byte?)DescritoresVariavelItem.FirstOrDefault(f => f.Nome == nome)?.TipoVariavel) ?? -1); } return(-1); }
/// <summary> /// Recupera o descritor. /// </summary> /// <param name="tipo">Tipo do registro.</param> /// <param name="id">Identificador do registor.</param> /// <returns></returns> DescritorRegistroRentabilidade IProvedorDescritorRegistroRentabilidade.ObterDescritor(TipoRegistroRentabilidade tipo, int id) { switch (tipo) { case TipoRegistroRentabilidade.Expressao: return(DescritoresExpressaoRentabilidade.FirstOrDefault(f => f.IdExpressaoRentabilidade == id)); case TipoRegistroRentabilidade.IndicadorFinaceiro: return(DescritoresIndicadorFinanceiro.FirstOrDefault(f => f.IdIndicadorFinanceiro == id)); case TipoRegistroRentabilidade.VariavelItem: return(DescritoresVariavelItem.FirstOrDefault(f => f.TipoVariavel == (TipoVariavelItemRentabilidade)id)); } return(null); }
/// <summary> /// Recupera os descritores com base no tipo de registro informado. /// </summary> /// <param name="tipo">Tipo de registro que será usado para filtrar os descritores.</param> /// <returns></returns> IEnumerable <DescritorRegistroRentabilidade> IProvedorDescritorRegistroRentabilidade.ObterDescritores(TipoRegistroRentabilidade tipo) { switch (tipo) { case TipoRegistroRentabilidade.Expressao: return(DescritoresExpressaoRentabilidade); case TipoRegistroRentabilidade.IndicadorFinaceiro: return(DescritoresIndicadorFinanceiro); case TipoRegistroRentabilidade.VariavelItem: return(DescritoresVariavelItem); } return(new DescritorRegistroRentabilidade[0]); }
/// <summary> /// Cria uma instancia do registro. /// </summary> /// <param name="tipo">Tipo do registro.</param> /// <param name="nome">Nome do registro.</param> /// <param name="valor">Valor do registro</param> /// <returns></returns> public IRegistroRentabilidade CriarRegistro(TipoRegistroRentabilidade tipo, string nome, decimal valor) => null;