예제 #1
0
        public UsuarioPagamento ObterInformacoesCalculadasDeConfiguracaoPagamento(ConfiguracaoPagamento configuracaoPagamento)
        {
            UsuarioPagamento usuarioPagamento = new UsuarioPagamento();

            this.CalcularInformacoes(configuracaoPagamento, usuarioPagamento);
            return(usuarioPagamento);
        }
예제 #2
0
        public void Excluir(ConfiguracaoPagamento configuracaoPagamento)
        {
            if (this.ValidarDependencias(configuracaoPagamento))
            {
                throw new AcademicoException("Exclusão de registro negada. Existem Registros Dependentes.");
            }

            repositorio.Excluir(configuracaoPagamento);
        }
예제 #3
0
        public IList <ConfiguracaoPagamento> ObterPorFiltro(ConfiguracaoPagamento configuracaoPagamento)
        {
            var query = repositorio.session.Query <ConfiguracaoPagamento>();

            if (configuracaoPagamento.TipoPagamento != null)
            {
                query = query.Where(x => x.TipoPagamento.ID == configuracaoPagamento.TipoPagamento.ID);
            }

            return(query.ToList());
        }
 public void AlterarConfiguracaoPagamento(ConfiguracaoPagamento configuracaoPagamento)
 {
     try
     {
         bmConfiguracaoPagamento.Salvar(configuracaoPagamento);
     }
     catch (AcademicoException ex)
     {
         throw ex;
     }
 }
 public void InserirConfiguracaoPagamento(ConfiguracaoPagamento configuracaoPagamento)
 {
     try
     {
         this.PreencherInformacoesDeAuditoria(configuracaoPagamento);
         bmConfiguracaoPagamento.Salvar(configuracaoPagamento);
     }
     catch (AcademicoException ex)
     {
         throw ex;
     }
 }
예제 #6
0
        private void CalcularInformacoes(ConfiguracaoPagamento configuracaoPagamento, UsuarioPagamento usuarioPagamento)
        {
            //Calcular data Fim de vigência
            usuarioPagamento.DataFimVigenciaCalculada = configuracaoPagamento.DataInicioCompetencia.AddDays(configuracaoPagamento.QuantidadeDiasValidade);

            //Data de Inicio da Renovacao
            usuarioPagamento.DataInicioRenovacaoCalculada = configuracaoPagamento.DataFimCompetencia.AddDays(-configuracaoPagamento.QuantidadeDiasRenovacao);

            //Data Máxima de Inadimplência
            usuarioPagamento.DataMaxInadimplenciaCalculada = configuracaoPagamento.DataFimCompetencia.AddDays(configuracaoPagamento.QuantidadeDiasInadimplencia);

            //Data Vencimento
            usuarioPagamento.DataVencimentoCalculada = configuracaoPagamento.DataInicioCompetencia.AddDays(configuracaoPagamento.QuantidadeDiasPagamento);
        }
        public void ExcluirConfiguracaoPagamento(int IdConfiguracaoPagamento)
        {
            try
            {
                ConfiguracaoPagamento   configuracaoPagamento   = null;
                BMConfiguracaoPagamento bmConfiguracaoPagamento = new BMConfiguracaoPagamento();

                if (IdConfiguracaoPagamento > 0)
                {
                    configuracaoPagamento = bmConfiguracaoPagamento.ObterPorID(IdConfiguracaoPagamento);
                }

                bmConfiguracaoPagamento.Excluir(configuracaoPagamento);
            }
            catch (AcademicoException ex)
            {
                throw ex;
            }
        }
예제 #8
0
        private void ValidarConfiguracaoPagamentoInformado(ConfiguracaoPagamento pConfiguracao)
        {
            ValidarInstancia(pConfiguracao);

            if (pConfiguracao.TipoPagamento == null || (pConfiguracao.TipoPagamento != null && pConfiguracao.TipoPagamento.ID == 0))
            {
                throw new AcademicoException("Tipo de Pagamento não informado. Campo Obrigatório");
            }

            if (string.IsNullOrWhiteSpace(pConfiguracao.Nome))
            {
                throw new AcademicoException("Nome. Campo Obrigatório!");
            }

            if (pConfiguracao.QuantidadeDiasPagamento <= 0)
            {
                throw new AcademicoException("Qtd. Dias Para Pagamento. Campo Obrigatório");
            }

            if (string.IsNullOrWhiteSpace(pConfiguracao.TextoTermoAdesao))
            {
                throw new AcademicoException("Termo de Adesão. Campo Obrigatório");
            }

            if (pConfiguracao.ID == 0)
            {
                //Verifica se o nome ja existe
                bool existeRegistroCadastrado = this.VerificarExistenciaDaConfiguracaoPagamento(pConfiguracao.Nome);

                if (existeRegistroCadastrado)
                {
                    throw new AcademicoException(string.Format("A Configuração Pagamento {0} já existe",
                                                               pConfiguracao.Nome));
                }
            }
        }
예제 #9
0
 public void Salvar(ConfiguracaoPagamento pConfiguracao)
 {
     ValidarConfiguracaoPagamentoInformado(pConfiguracao);
     repositorio.Salvar(pConfiguracao);
 }
예제 #10
0
        protected virtual bool ValidarDependencias(object pParametro)
        {
            ConfiguracaoPagamento configuracaoPagamento = (ConfiguracaoPagamento)pParametro;

            return(configuracaoPagamento.ListaPagamento != null && configuracaoPagamento.ListaPagamento.Count > 0);
        }
        private ConfiguracaoPagamento ObterObjetoConfiguracaoPagamento()
        {
            ConfiguracaoPagamento obj;

            if (Request["Id"] == null)
            {
                obj = new ConfiguracaoPagamento();
            }
            else
            {
                obj = new ManterConfiguracaoPagamento().ObterConfiguracaoPagamentoPorId(int.Parse(Request["Id"].ToString()));
            }

            obj.BloqueiaAcesso = chkBloqueiaAcesso.Checked;
            obj.Recursiva      = chkRecursiva.Checked;
            obj.Auditoria      = new Auditoria(null);

            if (string.IsNullOrEmpty(txtInicioCompetencia.Text))
            {
                throw new AcademicoException("Informe uma data início da competência");
            }
            if (string.IsNullOrEmpty(txtFimCompetencia.Text))
            {
                throw new AcademicoException("Informe uma data fim da competência");
            }


            DateTime dataInicioCompentenciaAux;

            if (!DateTime.TryParse(txtInicioCompetencia.Text, out dataInicioCompentenciaAux))
            {
                throw new AcademicoException("Valor inválido para o campo data início competência");
            }
            else
            {
                obj.DataInicioCompetencia = dataInicioCompentenciaAux;
            }

            DateTime dataFimCompentenciaAux;

            if (!DateTime.TryParse(txtFimCompetencia.Text, out dataFimCompentenciaAux))
            {
                throw new AcademicoException("Valor inválido para o campo data fim competência");
            }
            else
            {
                obj.DataFimCompetencia = dataFimCompentenciaAux;
            }

            obj.Ativo = rgpSituacao.SelectedValue == "1" ? true : false;

            //Qtd. Dias de Inadimplência
            var quantidadeDiasInadimplenciaAux = 0;

            if (!int.TryParse(txtQtdDiasInadimplencia.Text, out quantidadeDiasInadimplenciaAux))
            {
                throw new AcademicoException("Valor inválido para o campo Qtd. Dias de Inadimplência");
            }
            else
            {
                obj.QuantidadeDiasInadimplencia = quantidadeDiasInadimplenciaAux;
            }

            //Qtd. Dias Para Pagamento
            var quantidadeDiasPagamentoAux = 0;

            if (!int.TryParse(txtQtdDiasPagamento.Text, out quantidadeDiasPagamentoAux))
            {
                throw new AcademicoException("Valor inválido para o campo Qtd. Dias Para Pagamento");
            }
            else
            {
                obj.QuantidadeDiasPagamento = quantidadeDiasPagamentoAux;
            }

            //Qtd. Dias de Validade
            var quantidadeDiasValidadeAux = 0;

            if (!int.TryParse(txtQtdDiasValidade.Text, out quantidadeDiasValidadeAux))
            {
                throw new AcademicoException("Valor inválido para o campo Qtd. Dias de Validade");
            }
            else
            {
                obj.QuantidadeDiasValidade = quantidadeDiasValidadeAux;
            }

            //Qtd. Dias para Renovação
            var quantidadeDiasRenovacaoAux = 0;

            if (!int.TryParse(txtQtdDiasRenovacao.Text, out quantidadeDiasRenovacaoAux))
            {
                throw new AcademicoException("Valor inválido para o campo Qtd. Dias para Renovação");
            }
            else
            {
                obj.QuantidadeDiasRenovacao = quantidadeDiasRenovacaoAux;
            }

            obj.Nome = txtNomeConfiguracaoPagamento.Text;

            if (!string.IsNullOrWhiteSpace(cbxTipoPagamento.SelectedValue))
            {
                obj.TipoPagamento = new ManterConfiguracaoPagamento().ObterTipoPagamentoPorId(int.Parse(cbxTipoPagamento.SelectedValue));
            }
            else
            {
                throw new AcademicoException("Favor selecionar o tipo do pagamento");
            }

            //Valor a Pagar
            decimal valorAPagar = 0;

            if (!decimal.TryParse(txtValorAPagar.Text, out valorAPagar))
            {
                throw new AcademicoException("Valor inválido para o campo Valor a Pagar");
            }
            else
            {
                obj.ValorAPagar = valorAPagar;
            }

            //Termo de Adesão
            obj.TextoTermoAdesao = this.txtTermoAdesao.Text.Trim();

            obj.ListaConfiguracaoPagamentoPublicoAlvo.Clear();

            using (var manterConfiguracaoPagamento = new ManterConfiguracaoPagamento())
            {
                foreach (ListItem li in ucPermissoes.ObterTodosNiveisOcupacionais)
                {
                    if (li.Selected)
                    {
                        var no = manterConfiguracaoPagamento.ObterNivelOcupacionalPorID(int.Parse(li.Value));

                        var cfpa = new ConfiguracaoPagamentoPublicoAlvo()
                        {
                            ConfiguracaoPagamento = obj,
                            NivelOcupacional      = no,
                            Auditoria             = new Auditoria(null)
                        };


                        obj.ListaConfiguracaoPagamentoPublicoAlvo.Add(cfpa);
                    }
                }

                foreach (ListItem li in ucPermissoes.ObterTodosUfs)
                {
                    if (li.Selected)
                    {
                        var uf   = manterConfiguracaoPagamento.ObterUFPorID(int.Parse(li.Value));
                        var cfpa = new ConfiguracaoPagamentoPublicoAlvo()
                        {
                            ConfiguracaoPagamento = obj,
                            UF        = uf,
                            Auditoria = new Auditoria(null)
                        };


                        obj.ListaConfiguracaoPagamentoPublicoAlvo.Add(cfpa);
                    }
                }

                foreach (ListItem li in ucPermissoes.ObterTodosPerfis)
                {
                    if (li.Selected)
                    {
                        var p    = manterConfiguracaoPagamento.ObterPerfilPorID(int.Parse(li.Value));
                        var cfpa = new ConfiguracaoPagamentoPublicoAlvo()
                        {
                            ConfiguracaoPagamento = obj,
                            Perfil    = p,
                            Auditoria = new Auditoria(null)
                        };


                        obj.ListaConfiguracaoPagamentoPublicoAlvo.Add(cfpa);
                    }
                }
            }

            return(obj);
        }