public HttpResponseMessage CadastrarPessoaFisica([FromBody]PessoaFisica model) { //TODO: Retornar mensagem de sucesso com usuário cadastrado com sucesso if (model != null) { try { var usuario = Mapper.DynamicMap<PessoaFisica>(model); unityOfWork.PessoaFisicaNegocio.Cadastrar(usuario); unityOfWork.Commit(); return Request.CreateResponse(HttpStatusCode.OK, usuario); } catch (NegocioException ex) { var erroMensagemApiModel = new ErroMessageApiModel { Mensagem = ex.Mensagens.FirstOrDefault(), }; return Request.CreateResponse(HttpStatusCode.OK, erroMensagemApiModel); } } else { return Request.CreateResponse(HttpStatusCode.NotFound, "Parâmetro inválido."); } }
public HttpResponseMessage EfetuarLogin([FromBody]EfetuarLoginApiModel model) { if (!string.IsNullOrEmpty(model.Email) && !string.IsNullOrEmpty(model.Password)) { Usuario usuario = unityOfWork.PessoaFisicaNegocio.BuscarUsuarioPorEmail(model.Email); usuario = usuario != null ? usuario : unityOfWork.PessoaJuridicaNegocio.BuscarUsuarioPorEmail(model.Email); if (usuario != null && (usuario.Password == model.Password)) { var usuarioLogado = Mapper.DynamicMap<UsuarioApiModel>(usuario); usuarioLogado.IsPessoaFisica = usuario is PessoaFisica; return Request.CreateResponse(HttpStatusCode.OK, usuarioLogado); } else { var erroMensagemApiModel = new ErroMessageApiModel { Mensagem = "Login ou senha incorretos." }; return Request.CreateResponse(HttpStatusCode.OK, erroMensagemApiModel); } } return Request.CreateResponse(HttpStatusCode.BadRequest); }