Ejemplo n.º 1
0
        public int Create(DoacoesViewModel vm)
        {
            var obj = Mapper.Map <DoacoesViewModel, Doacoes>(vm);

            var doador   = _doadorRep.Get(vm.Doador.Id);
            var user     = _doadorRep.GetUserByIdDoador(doador);
            var donation = _rep.VerificaDisponibilidadeDeDoacao(user);

            if (donation.Equals(1))
            {
                return(406); //Informar que ele doou a menos de 90 dias, por isso não pode doador agora.
            }
            BeginTransaction();
            var result = _rep.AddDoacoes(obj);

            if (result == 0)
            {
                return(0);
            }

            BancoSangue banco   = new BancoSangue();
            var         Cliente = _repClientes.GetClienteByIdUsuario();

            var Doacoes = _rep.Get(result);

            banco.Clientes   = Cliente;
            banco.Doacoes    = Doacoes;
            banco.Quantidade = obj.Quantidade;
            banco.TipoSangue = obj.Tiposangue;
            banco.Vencimento = obj.DataDoacao.AddDays(42);

            _repBanco.AddBancoSangue(banco);

            return(result);
        }
Ejemplo n.º 2
0
        public IActionResult Edit(DoacoesViewModel vm)
        {
            if (!ModelState.IsValid)
            {
                return(SmartResult(vm));
            }

            try
            {
                var oDoacao      = Mapper.Map <Doacoes>(vm);
                var oBancoSangue = _bancoSangueApp.GetBancoSangueByDoacao(oDoacao);
                _app.Edit(vm);

                oBancoSangue.TipoSangue = vm.TipoSangue;
                oBancoSangue.Quantidade = vm.Quantidade;

                _bancoSangueApp.EditBancoByDoacao(oBancoSangue);
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", "Ocorreu um erro ao processar sua requisição.");
                Log(ex, "DoacoesController.Create.Post");
            }
            return(SmartResult(vm));
        }
Ejemplo n.º 3
0
        public int Edit(DoacoesViewModel vm)
        {
            var obj = _rep.Get(vm.Id);

            obj.Tiposangue = vm.TipoSangue;
            obj.Quantidade = vm.Quantidade;
            BeginTransaction();
            _rep.Update(obj);
            return(Commit());
        }
Ejemplo n.º 4
0
 public int Save(DoacoesViewModel vm)
 {
     if (vm.Id == 0)
     {
         return(Create(vm));
     }
     else
     {
         return(Edit(vm));
     }
 }
Ejemplo n.º 5
0
        public IActionResult Create(DoacoesViewModel vm)
        {
            ModelState["Doador.CEP"].Errors.Clear();
            ModelState["Doador.CPF"].Errors.Clear();
            ModelState["Doador.Nome"].Errors.Clear();
            ModelState["Doador.Sexo"].Errors.Clear();
            ModelState["Doador.Bairro"].Errors.Clear();
            ModelState["Doador.Cidade"].Errors.Clear();
            ModelState["Doador.Numero"].Errors.Clear();
            ModelState["Doador.Logradouro"].Errors.Clear();
            ModelState["Doador.TipoSangue"].Errors.Clear();
            ModelState["Doador.Id"].Errors.Clear();

            ModelState["Doador.CEP"].ValidationState        = Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid;
            ModelState["Doador.CPF"].ValidationState        = Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid;
            ModelState["Doador.Nome"].ValidationState       = Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid;
            ModelState["Doador.Sexo"].ValidationState       = Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid;
            ModelState["Doador.Bairro"].ValidationState     = Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid;
            ModelState["Doador.Cidade"].ValidationState     = Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid;
            ModelState["Doador.Numero"].ValidationState     = Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid;
            ModelState["Doador.Logradouro"].ValidationState = Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid;
            ModelState["Doador.TipoSangue"].ValidationState = Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid;
            ModelState["Doador.Id"].ValidationState         = Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid;

            if (!ModelState.IsValid)
            {
                return(SmartResult(vm));
            }

            try
            {
                vm.Cliente   = _app.GetClienteByIdUsuario();
                vm.Doador.Id = vm.Id;
                vm.Id        = 0;
                var result = _app.Create(vm);

                if (result == 406)
                {
                    ModelState.AddModelError("", "O doador selecionado não pode fazer a doação, pois fez uma doação a menos de 90 dias!");
                    return(SmartResult(vm));
                }

                if (result == 1)
                {
                    return(Redirect("~/admin/Doacoes"));
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", "Ocorreu um erro ao processar sua requisição.");
                Log(ex, "DoacoesController.Create.Post");
            }
            return(SmartResult(vm));
        }
Ejemplo n.º 6
0
 public int Delete(DoacoesViewModel vm)
 {
     return(Delete(vm.Id));
 }
Ejemplo n.º 7
0
        public IActionResult Create()
        {
            var vm = new DoacoesViewModel();

            return(SmartResult(vm));
        }