示例#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);
        }