Exemple #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();
            }
        }
Exemple #2
0
        public void InitVista(Projeto projeto)
        {
            Promotor    promotor    = servicoPromotor.LerPromotor(projeto.id_promotor);
            Responsavel responsavel = servicoResponsavel.LerResponsavel(projeto.id_responsavel);

            Vista.AlterarDadosPromotor(promotor.nome, promotor.nacionalidade, promotor.nib, promotor.nif);
            Vista.AlterarDadosResponsavel(responsavel.nome, responsavel.telefone, responsavel.email);

            String tipo   = projeto.Bonificacao != null ? "Bonificação" : "Incentivo";
            String estado = servicoObterEstados.ObterEstado(projeto.estado).estado1;

            Vista.AlterarDadosProjeto(projeto.id, projeto.Tecnico.Utilizador.username, tipo, projeto.montante_solicitado, projeto.descricao, estado, projeto.data_criacao);

            ListarDespacho(servicoDespacho.LerDespachosDeProjeto(projeto));
            ListarPagamentos(servicoPagamento.LerPagamentosDeProjeto(projeto));
            ListarPareceresTecnico(servicoParecer.LerParecerTecnicosDeProjeto(projeto));
            Despacho ultimoDespacho = servicoDespacho.LerUltimoDespacho(projeto);

            if (ultimoDespacho != null)
            {
                if (ultimoDespacho.DespachoBonificacao != null)
                {
                    ConfirmarDespachoExpirado(projeto, ultimoDespacho.DespachoBonificacao);
                }
                ListarPedidosDeReforco(servicoPedidoDeReforoco.LerPedidosDeReforco(ultimoDespacho));
            }
        }
Exemple #3
0
        public AprovacaoReforco(Projeto projetoSelecionado) : base(new FormAprovacaoReforco())
        {
            servicoProjetos        = CRUDProjetos.ObterInstancia();
            servicoHistorico       = CRUDHistorico.ObterInstancia();
            servicoObterEstados    = ObterEstados.ObterInstancia();
            servicoDespacho        = CRUDDespacho.ObterInstancia();
            servicoPedidoDeReforco = CRUDPedidoDeReforco.ObterInstancia();

            pedidoDeReforco = servicoPedidoDeReforco.LerPedidoDeReforcoPorDecidir(new PedidoDeReforco()
            {
                id_despacho = servicoDespacho.LerUltimoDespacho(projetoSelecionado).id
            });
            Vista.AlterarDados(pedidoDeReforco.montante.ToString(), pedidoDeReforco.prazo.ToString());
            projeto           = projetoSelecionado;
            Vista.Notificavel = this;
            Vista.ShowDialog();
        }
Exemple #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;
        }
Exemple #5
0
        public override void Notificar(ReforcoDeFinanciamentoArgs args)
        {
            if (VerificarArgumentos(args))
            {
                new Erro("Por favor preencha todos os campos necessários");
                return;
            }

            Despacho ultimoDespacho = servicoDespacho.LerUltimoDespacho(projeto);

            servicoPedidoDeReforco.CriarPedidoDeReforco(new PedidoDeReforco()
            {
                id_despacho = ultimoDespacho.id,
                montante    = Convert.ToDouble(args.montante),
                prazo       = Convert.ToDateTime(args.data),
                data_pedido = DateTime.Now
            });

            Historico historico = new Historico()
            {
                id_projeto = projeto.id,
                estado     = projeto.estado
            };

            servicoHistorico.CriarHistorico(historico);          //historico criado

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

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

            Vista.Hide();
            Vista.Close();
        }