public RetornoModel <UsuarioModel> Salvar(UsuarioModel model) { RetornoModel <UsuarioModel> result = new RetornoModel <UsuarioModel> { Mensagem = "OK" }; try { var user = _ado.CarregarPorCPF(model.CPF); if (user != null && user.ID != model.ID) { result.Mensagem = "Já existe um usuário com este CPF. Não é possível concluir a operação"; return(result); } model.CPF = model.CPF.OnlyNumbers(); if (!model.CPF.IsValidCPFCNPJ()) { result.Mensagem = "Documento informado não é válido"; return(result); } if (model.ID > 0) { result.Sucesso = _ado.Atualizar(model.MapTo <Usuario>()); result.Retorno = model; if (!result.Sucesso) { result.Mensagem = "Registro não localizado para modificação. Verifique se o ID informado está correto"; } } else { model.Senha = CriptografiaUtil.CriptografarSenha(model.Senha); result.Retorno = _ado.Inserir(model.MapTo <Usuario>()).MapTo <UsuarioModel>(); result.Sucesso = true; } } catch (Exception ex) { LogUtil.Error(ex); throw; } return(result); }
public RetornoModel MudarSenha(MudarSenhaModel model, int usuarioAtual) { var result = new RetornoModel(); try { var usuario = _ado.Carregar(usuarioAtual); if (usuario == null) { result.Mensagem = "Usuario não está autenticado. Por favor efetue novamente o login antes de continuar"; return(result); } else { if (model.UsuarioDiferente && usuario.Perfil != PerfilUsuario.Administrador) { result.Mensagem = "Você não possui permissão para realizar essa operação"; return(result); } if (!model.UsuarioDiferente) { if (!CriptografiaUtil.VerificarSenha(usuario.Senha, model.SenhaAtual)) { result.Mensagem = "Senha atual não confere!"; return(result); } model.IdUsuario = usuarioAtual; } result.Sucesso = _ado.MudarSenha(CriptografiaUtil.CriptografarSenha(model.NovaSenha), model.IdUsuario); result.Mensagem = "Senha alterada com sucesso!"; } return(result); } catch (Exception ex) { LogUtil.Error(ex); throw; } }