public IActionResult Create(BancoSangueViewModel vm, int dias)
        {
            if (ModelState.ContainsKey("Doacoes.Id"))
            {
                ModelState["Doacoes.Id"].Errors.Clear();
                ModelState["Doacoes.TipoSangue"].Errors.Clear();
                ModelState["Doacoes.Id"].ValidationState         = Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid;
                ModelState["Doacoes.TipoSangue"].ValidationState = Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid;
            }

            var id     = int.Parse(vm.TipoSangue);
            var exists = EnumValidate(id);

            if (exists == false)
            {
                ModelState.AddModelError("EnumValidate", "Tipo Sanguíneo Inválido");
            }

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

            vm.Clientes = _clientes.GetClienteByIdUsuario();
            vm.Doacoes  = _doacoes.Get(vm.Id);
            vm.Id       = 0;

            try
            {
                var result = _app.Create(vm, dias);

                if (result == 302)
                {
                    ModelState.AddModelError("Exists", "Doação já está cadastrada no banco de sangue!");
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", "Ocorreu um erro ao processar sua requisição.");
                Log(ex, "BancoSangueController.Create.Post");
            }
            return(SmartResult(vm));
        }
Beispiel #2
0
        public IActionResult Delete(int id)
        {
            var deleted = false;

            try
            {
                var vmDoacao = _app.Get(id);
                var doacao   = AutoMapper.Mapper.Map <Doacoes>(vmDoacao);

                var bdSangue = _bancoSangueApp.GetBancoSangueByDoacao(doacao);

                _bancoSangueApp.Delete(bdSangue.Id);
                _app.Delete(id);

                deleted = true;
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", "Ocorreu um erro ao processar sua requisição.");
                Log(ex, "DoacoesController.Create.Post");
            }
            return(SmartResult(deleted, deleted));
        }