private void ValidarCampos(PropostaModel desejo) { if (desejo.Usuario.Id == 0) throw new CadastroException("Erro ao recuperar o usuário"); if (desejo.Desejo.Id == 0) throw new CadastroException("Erro ao recuperar o desejo"); if (desejo.ValorProposta == decimal.Zero) throw new CadastroException("Favor informar um valor para a proposta"); }
public PropostaModel CadastrarNovo(PropostaModel model) { ValidarCampos(model); Proposta novoRegistro = new Proposta(); novoRegistro = Mapper.Map<PropostaModel, Proposta>(model); novoRegistro.DataProposta = DateTime.Now; novoRegistro.Deletado = false; novoRegistro.StatusProposta = enumStatusProposta.Nova; //BUSCAR REFERENCIA DAS ENTIDADES novoRegistro.Usuario = new UsuarioRepositorio().BuscarPorId(model.Usuario.Id); novoRegistro.Desejo = new DesejoRepositorio().BuscarPorId(model.Desejo.Id); novoRegistro.TipoProposta = new TipoPropostaRepositorio().BuscarPorId(model.TipoProposta.Id); novoRegistro.ListaAvaliacao = null; novoRegistro.ListaMensagem = null; repositorio.Inserir(novoRegistro); return Mapper.Map<Proposta, PropostaModel>(novoRegistro); }
public Desejo DecidirProposta(PropostaModel destModel) { Desejo desejo = new DesejoRepositorio().BuscarPorId(destModel.Desejo.Id); ; foreach (var item in desejo.ListaProposta) { item.StatusProposta = (item.Id == destModel.Id) ? enumStatusProposta.Aceita : enumStatusProposta.Recusada; } repositorio.Atualizar(desejo); return desejo; }