Example #1
0
        public RealizarPagamento(Projeto projeto) : base(new FormRealizarPagamento())
        {
            this.projeto        = projeto;
            servicoProjetos     = CRUDProjetos.ObterInstancia();
            servicoDespacho     = CRUDDespacho.ObterInstancia();
            servicoPagamento    = CRUDPagamento.ObterInstancia();
            servicoObterEstados = ObterEstados.ObterInstancia();
            despacho            = servicoDespacho.LerUltimoDespacho(projeto);
            despachoMaisRecente = despacho.DespachoIncentivo;
            bool expirou = ConfirmarData();

            totalAPagar();
            Vista.AlterarDados(Convert.ToString(aPagar));
            Vista.Notificavel = this;
            if (expirou)
            {
                Erro erro = new Erro("A data de pagamento do projeto expirou.");
                Vista.Hide();
                Vista.Close();
            }
            else
            {
                Vista.ShowDialog();
            }
        }
Example #2
0
        public override void Notificar(RealizarDespachoArgs args)
        {
            if (verificarArgumentos(args))
            {
                new Erro("Por favor preencha todos os campos necessários");
                return;
            }

            Despacho despachoRejeitar = new Despacho()
            {
                id_projeto    = projeto.id,
                resultado     = resultado.ToLower(),
                data_despacho = DateTime.Now
            };
            int idDespacho = servicoDespacho.CriarDespacho(despachoRejeitar);

            DespachoIncentivo despachoIncentivo = new DespachoIncentivo()
            {
                id_despacho    = idDespacho,
                montante       = Convert.ToDouble(args.val1),
                custo_elegivel = Convert.ToDouble(args.val2),
                prazo_execucao = Convert.ToDateTime(args.data)
            };

            servicoDespacho.CriarDespachoIncentivo(despachoIncentivo);

            string estado     = servicoObterEstados.ObterEstado(projeto.estado).estado1;
            string estadoNovo = Utils.EstadoParaString(MaquinaDeEstados.processar(Utils.StringParaEstado(estado), EventosProjeto.despacho_aprovado));

            projeto.estado = servicoObterEstados.ObterIdEstado(estadoNovo);
            servicoProjetos.AtualizarProjeto(projeto);

            Vista.Hide();
            Vista.Close();
        }
Example #3
0
 public void CriarDespachoIncentivo(DespachoIncentivo despacho)
 {
     using (Entidades context = new Entidades())
     {
         DespachoIncentivo despachoNovo = new DespachoIncentivo
         {
             id_despacho    = despacho.id_despacho,
             prazo_execucao = despacho.prazo_execucao,
             montante       = despacho.montante,
             custo_elegivel = despacho.custo_elegivel
         };
         context.DespachoIncentivo.Add(despachoNovo);
         context.SaveChanges();
     }
 }
Example #4
0
        private void totalAPagar()
        {
            despacho            = servicoDespacho.LerUltimoDespacho(projeto);
            despachoMaisRecente = despacho.DespachoIncentivo;
            double totalAPagar = despachoMaisRecente.montante.GetValueOrDefault();

            foreach (PedidoDeReforco pedidoDeReforco in despacho.PedidoDeReforco)
            {
                if (pedidoDeReforco.decisao.Equals("aprovado"))
                {
                    totalAPagar += pedidoDeReforco.montante;
                }
            }

            pago = servicoPagamento
                   .ObterPagamentosDeProjeto(projeto)
                   .Where(p => p.id_despacho == despachoMaisRecente.id_despacho)
                   .Select(p => p.valor)
                   .Sum();

            aPagar = totalAPagar - pago;
        }
Example #5
0
        private void RejeitarProjeto(String resultado)
        {
            Despacho despachoRejeitar = new Despacho()
            {
                id_projeto    = projeto.id,
                resultado     = resultado.ToLower(),
                data_despacho = DateTime.Now
            };
            int idDespacho = servicoDespacho.CriarDespacho(despachoRejeitar);

            if (projeto.Incentivo != null)
            {
                DespachoIncentivo despachoIncentivo = new DespachoIncentivo()
                {
                    id_despacho    = idDespacho,
                    montante       = null,
                    custo_elegivel = null,
                    prazo_execucao = null
                };
                servicoDespacho.CriarDespachoIncentivo(despachoIncentivo);
            }
            if (projeto.Bonificacao != null)
            {
                DespachoBonificacao despachoBonificacao = new DespachoBonificacao()
                {
                    id_despacho     = idDespacho,
                    montante_maximo = null,
                    periodo         = null,
                    taxa            = null
                };
                servicoDespacho.CriarDespachoBonificacao(despachoBonificacao);
            }

            string estado     = servicoObterEstados.ObterEstado(projeto.estado).estado1;
            string estadoNovo = Utils.EstadoParaString(MaquinaDeEstados.processar(Utils.StringParaEstado(estado), EventosProjeto.despacho_rejeitado));

            projeto.estado = servicoObterEstados.ObterIdEstado(estadoNovo);
            servicoProjetos.AtualizarProjeto(projeto);
        }