Exemplo n.º 1
0
        public ServiceResult <UsuarioDtoOut> ValidateLogin(LoginDto loginDto)
        {
            try
            {
                if (!usuarioValidationService.IsValidEmail(loginDto.Email))
                {
                    throw new ValidationException(UsuarioMessageConstants.IsInvalidEmail);
                }

                var hashPassword = Encrypt.GetSHA256(loginDto.Password);

                var listListUsuarios = masterRepository.Usuario.GetAll();

                Usuario usuario = null;

                foreach (var usuarioTemp in listListUsuarios)
                {
                    if (usuarioTemp.Email.ToLower() == loginDto.Email.ToLower() && usuarioTemp.HashPassword == hashPassword)
                    {
                        usuario = usuarioTemp;
                        break;
                    }
                }

                if (usuario == null)
                {
                    throw new ValidationException(LoginMessageConstants.CredentialsWrong);
                }

                var usuarioDto = MapToDto(usuario);

                return(ServiceResult <UsuarioDtoOut> .ResultOk(usuarioDto));
            }
            catch (ValidationException e)
            {
                return(ServiceResult <UsuarioDtoOut> .ResultFailed(ResponseCode.Warning, e.Message));
            }
            catch (Exception e)
            {
                return(ServiceResult <UsuarioDtoOut> .ResultFailed(ResponseCode.Error, e.Message));
            }
        }
Exemplo n.º 2
0
        public ServiceResult <bool> CreateUsuario(UsuarioDtoIn usuarioDto)
        {
            try
            {
                if (!tipoUsuarioValidationService.IsExistingTipoUsuarioId(usuarioDto.TipoUsuarioId))
                {
                    throw new ValidationException(TipoUsuarioMessageConstants.NotExistingTipoUsuarioId);
                }

                if (!tipoDocumentoValidationService.IsExistingTipoDocumentoId(usuarioDto.TipoDocumentoId))
                {
                    throw new ValidationException(TipoDocumentoMessageConstants.NotExistingTipoDocumentoId);
                }

                if (!barrioValidationService.IsExistingBarrioId(usuarioDto.BarrioId))
                {
                    throw new ValidationException(BarrioMessageConstants.NotExistingBarrioId);
                }

                if (generalValidationService.IsEmptyText(usuarioDto.Nombres))
                {
                    throw new ValidationException(UsuarioMessageConstants.EmptyUsuarioNombres);
                }

                if (generalValidationService.IsEmptyText(usuarioDto.Apellidos))
                {
                    throw new ValidationException(UsuarioMessageConstants.EmptyUsuarioApellidos);
                }

                if (generalValidationService.IsEmptyText(usuarioDto.Documento))
                {
                    throw new ValidationException(UsuarioMessageConstants.EmptyUsuarioDocumento);
                }

                if (generalValidationService.IsEmptyText(usuarioDto.Email))
                {
                    throw new ValidationException(UsuarioMessageConstants.EmptyUsuarioEmail);
                }

                if (generalValidationService.IsEmptyText(usuarioDto.HashPassword))
                {
                    throw new ValidationException(UsuarioMessageConstants.EmptyUsuarioPassword);
                }

                if (usuarioValidationService.IsExistingDocumento(usuarioDto.TipoDocumentoId, usuarioDto.Documento))
                {
                    throw new ValidationException(UsuarioMessageConstants.IsExistingDocumento);
                }

                if (!usuarioValidationService.IsValidEmail(usuarioDto.Email))
                {
                    throw new ValidationException(UsuarioMessageConstants.IsInvalidEmail);
                }

                if (usuarioValidationService.IsExistingEmail(usuarioDto.Email))
                {
                    throw new ValidationException(UsuarioMessageConstants.IsExistingEmail);
                }

                usuarioDto.Nombres   = generalValidationService.GetRewrittenTextFirstCapitalLetter(usuarioDto.Nombres);
                usuarioDto.Apellidos = generalValidationService.GetRewrittenTextFirstCapitalLetter(usuarioDto.Apellidos);
                usuarioDto.Email     = usuarioDto.Email.ToLower();

                usuarioDto.HashPassword = Encrypt.GetSHA256(usuarioDto.HashPassword);

                var usuario = mapper.Map <Usuario>(usuarioDto);

                masterRepository.Usuario.Create(usuario);
                masterRepository.Save();

                return(ServiceResult <bool> .ResultOk(true));
            }
            catch (ValidationException e)
            {
                return(ServiceResult <bool> .ResultFailed(ResponseCode.Warning, e.Message));
            }
            catch (Exception e)
            {
                return(ServiceResult <bool> .ResultFailed(ResponseCode.Error, e.Message));
            }
        }