Ejemplo n.º 1
0
        private void Load(Eleicao e)
        {
            EtapasService etapasService = new EtapasService();

            PrazosEtapasObj = new HashSet <PrazosEtapasDTO>();

            if (e == null)
            {
                return;
            }
            Codigo          = e.Codigo;
            Gestao          = e.Gestao;
            DataInicio      = e.DataInicio;
            DataFechamento  = e.DataFechamento;
            CodigoEtapa     = e.CodigoEtapa;
            CodigoUnidade   = e.CodigoUnidade;
            CodigoModulo    = e.CodigoModulo;
            CodigoSindicato = e.CodigoSindicato;
            if (e.Modulo != null)
            {
                NomeModulo = e.Modulo.NomeModulo;
            }
            if (e.EtapaAtual != null)
            {
                NomeEtapa = e.EtapaAtual.NomeEtapa;
            }
            if (e.Unidade != null)
            {
                UnidadeObj = new UnidadeDTO(e.Unidade);
            }
            if (e.Sindicato != null)
            {
                SindicatoObj = new SindicatoDTO(e.Sindicato);
            }

            foreach (Etapa etapa in etapasService.GetEtapas(CodigoModulo))
            {
                PrazoEtapa prazo = e.PrazosEtapas?.FirstOrDefault(x => x.CodigoEtapa == etapa.CodigoEtapa);

                if (e.CodigoEtapa == prazo.CodigoEtapa)
                {
                    OrdemEtapa = prazo.Ordem ?? etapa.Ordem.Value;
                }

                ((HashSet <PrazosEtapasDTO>)PrazosEtapasObj).Add(new PrazosEtapasDTO
                {
                    CodigoEtapa    = etapa.CodigoEtapa,
                    CodigoEleicao  = Codigo,
                    NomeEtapa      = etapa.NomeEtapa,
                    DataRealizada  = prazo?.DataRealizada,
                    DataProposta   = prazo?.DataProposta,
                    Ordem          = prazo.Ordem ?? etapa.Ordem.Value,
                    CodigoTemplate = etapa.CodigoTemplate
                });
            }
        }