Пример #1
0
        public async Task <_ServiceResponse <string> > Login(CAD_usuarioInserirDTO cAD_usuarioDTO)
        {
            _ServiceResponse <string> _serviceResponse = new _ServiceResponse <string>();

            try
            {
                CAD_pessoa  cAD_pessoa  = _dataContext.CAD_Pessoa.FirstOrDefault(x => x.Email == cAD_usuarioDTO.Email);
                CAD_Usuario cAD_Usuario = await _dataContext.CAD_usuario.FirstOrDefaultAsync(x => x.CAD_pessoa.Id == cAD_pessoa.Id);

                if (cAD_Usuario.Equals(null))
                {
                    _serviceResponse.Success = false;
                    _serviceResponse.Message = UsuarioMensagem.UsuarioNaoEncontrado();
                    return(_serviceResponse);
                }
                else if (!VerificarPasswordHash(cAD_usuarioDTO.Senha, cAD_Usuario.SenhaHash, cAD_Usuario.SenhaSalt))
                {
                    _serviceResponse.Success = false;
                    _serviceResponse.Message = UsuarioMensagem.SenhaInvalida();
                    return(_serviceResponse);
                }

                _serviceResponse.Data = CreateToken(cAD_Usuario);
            }
            catch (Exception ex)
            {
                _serviceResponse.Success = false;
                _serviceResponse.Message = ex.Message;
            }

            return(_serviceResponse);
        }
Пример #2
0
        public async Task <_ServiceResponse <CAD_usuarioInserirDTO> > Registrar(CAD_usuarioInserirDTO cAD_usuarioDTO)
        {
            CAD_Usuario cAD_usuario = new CAD_Usuario();
            _ServiceResponse <CAD_usuarioInserirDTO> _serviceResponse = new _ServiceResponse <CAD_usuarioInserirDTO>();

            try
            {
                if (await Existe(cAD_usuarioDTO))
                {
                    _serviceResponse.Success = false;
                    _serviceResponse.Message = UsuarioMensagem.UsuarioJaCadastrado();
                    return(_serviceResponse);
                }

                SenhaHashUtil.CriarSenhaHash(cAD_usuarioDTO.Senha, out byte[] senhaHash, out byte[] senhaSalt);
                cAD_usuario.SenhaHash  = senhaHash;
                cAD_usuario.SenhaSalt  = senhaSalt;
                cAD_usuario.CAD_pessoa = new CAD_pessoa
                {
                    Nome  = cAD_usuarioDTO.Nome,
                    Email = cAD_usuarioDTO.Email
                };

                await _dataContext.CAD_usuario.AddAsync(cAD_usuario);

                await _dataContext.SaveChangesAsync();

                _serviceResponse.Data    = cAD_usuarioDTO;
                _serviceResponse.Message = UsuarioMensagem.SucessoCadastro();
                return(_serviceResponse);
            }
            catch (Exception ex)
            {
                _serviceResponse.Success = false;
                _serviceResponse.Message = ex.Message;
                return(_serviceResponse);
            }
        }