Esempio n. 1
0
        public override void Notificar(RealizarDespachoArgs args)
        {
            if (verificarArgumentos(args))
            {
                new Erro("Por favor preencha todos os campos necessários");
                return;
            }

            if (resultado.Equals("transformado"))
            {
                servicoProjetos.EliminarIncentivo(projeto);
                servicoProjetos.CriarBonificacao(projeto);
            }

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

            DespachoBonificacao despachoBonificacao = new DespachoBonificacao()
            {
                id_despacho     = idDespacho,
                montante_maximo = Convert.ToDouble(args.val1),
                taxa            = Convert.ToDouble(args.val2),
                periodo         = Convert.ToDateTime(args.data)
            };

            servicoDespacho.CriarDespachoBonificacao(despachoBonificacao);

            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();
        }
Esempio n. 2
0
        public override void Notificar(ApresentarCandidaturaArgs args)
        {
            if (!verificarArgumentos(args))
            {
                Erro erro = new Erro("Por favor preencha todos os campos necessários com o formato pretendido.");
                return;
            }

            Responsavel responsavelGuardado = servicoResponsavel.LerResponsavel(args.telefone, args.email, args.designacaoResponsavel);
            int         idResponsavel;

            if (responsavelGuardado == null)
            {
                servicoResponsavel.CriarResponsavel(new Responsavel()
                {
                    nome     = args.designacaoResponsavel,
                    email    = args.email,
                    telefone = args.telefone
                });
                idResponsavel = servicoResponsavel.LerResponsavel(args.telefone, args.email, args.designacaoResponsavel).id;
            }
            else
            {
                idResponsavel = responsavelGuardado.id;
            }

            decimal  nibNum           = Convert.ToDecimal(args.NIB);
            decimal  nifNum           = Convert.ToDecimal(args.NIF);
            Promotor promotorGuardado = servicoPromotor.LerPromotor(nifNum);
            int      idPromotor;

            if (promotorGuardado == null)
            {
                servicoPromotor.CriarPromotor(new Promotor()
                {
                    nome          = args.designacaoPromotor,
                    nacionalidade = args.nacionalidade,
                    nib           = nibNum,
                    nif           = nifNum
                });
                idPromotor = servicoPromotor.LerPromotor(nifNum).id;
            }
            else
            {
                idPromotor = promotorGuardado.id;
            }

            int     idProjeto = servicoIdsProjeto.GerarIdProjeto();
            Projeto projeto   = new Projeto
            {
                id = idProjeto,
                montante_solicitado = Convert.ToDouble(args.montante),
                descricao           = args.descricao,
                estado         = servicoObterEstados.ObterIdEstado(Utils.EstadoParaString(EstadosProjeto.aberto)),
                data_criacao   = DateTime.Now,
                id_tecnico     = tecnico.id_utilizador,
                id_responsavel = idResponsavel,
                id_promotor    = idPromotor
            };

            servicoProjetos.CriarProjeto(projeto);
            if (args.tipo.ToLower().Equals("bonificação"))
            {
                servicoProjetos.CriarBonificacao(projeto);
            }

            else if (args.tipo.ToLower().Equals("incentivo"))
            {
                servicoProjetos.CriarIncentivo(projeto);
            }

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