public RespuestaUsuarioLogin LoginUsuario(EntradaUsuarioLogin entradaDatos)
        {
            RespuestaUsuarioLogin respuestaUsuario = new RespuestaUsuarioLogin();

            int      IdUsuario = servicioUsuario.TraerLogin(entradaDatos.Rut, entradaDatos.Email, entradaDatos.Clave);
            IUsuario usuario   = servicioUsuario.Traer(IdUsuario, string.Empty);

            if (usuario == null)
            {
                respuestaUsuario.Exito         = false;
                respuestaUsuario.MotivoNoExito = MotivoNoExitoLogin.UsuarioNoExiste;
                respuestaUsuario.Usuario       = new Hosteria.Clases.Usuario();
                return(respuestaUsuario);
            }

            Guid guid = Guid.NewGuid();

            try
            {
                servicioUsuario.CrearLoginUsuario(usuario.Rut, guid);
            }
            catch (Exception ex)
            {
                return(new RespuestaUsuarioLogin()
                {
                    Exito = false,
                    IdSesion = Guid.Empty,
                    MotivoNoExito = MotivoNoExitoLogin.ErrorNoControlado,
                    Usuario = new Clases.Usuario()
                });
            }
            respuestaUsuario.Exito    = true;
            respuestaUsuario.IdSesion = guid;
            respuestaUsuario.Usuario  = (Hosteria.Clases.Usuario)usuario;

            return(respuestaUsuario);
        }
        public RespuestaClienteLogin LoginCliente(EntradaUsuarioLogin entradaDatos)
        {
            RespuestaClienteLogin respuestaUsuario = new RespuestaClienteLogin();

            int     IdCliente = servicioUsuario.TraerLoginCliente(entradaDatos.Rut, entradaDatos.Email, entradaDatos.Clave);
            Empresa empresa   = servicioEmpresa.Traer(IdCliente, "-1");

            if (IdCliente.Equals(0))
            {
                respuestaUsuario.Exito         = false;
                respuestaUsuario.MotivoNoExito = MotivoNoExitoLogin.UsuarioNoExiste;
                respuestaUsuario.Empresa       = new Hosteria.Clases.Empresa();
                return(respuestaUsuario);
            }
            Guid guid = Guid.NewGuid();

            try
            {
                servicioUsuario.CrearLoginCliente(empresa.RutCliente, guid);
            }
            catch (Exception ex)
            {
                return(new RespuestaClienteLogin()
                {
                    Exito = false,
                    IdSesion = Guid.Empty,
                    MotivoNoExito = MotivoNoExitoLogin.ErrorNoControlado,
                    Empresa = new Clases.Empresa()
                });
            }
            respuestaUsuario.Exito    = true;
            respuestaUsuario.IdSesion = guid;
            respuestaUsuario.Empresa  = empresa;

            return(respuestaUsuario);
        }
 public async Task <RespuestaUsuarioLogin> LoginUsuarioAsync(EntradaUsuarioLogin entradaDatos)
 {
     return(LoginUsuario(entradaDatos));
 }