定制 amenessisse/package-heo-api 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

amenessisse/package-heo-api

最新稳定版本:v1.3.0

Composer 安装命令:

composer require amenessisse/package-heo-api

包简介

Package bridge Heo API

README 文档

README

Introduction

Le package amenessisse/package-heo-api est un client PHP pour l'API Heo, permettant d'accéder facilement aux ressources de catalogue, collections et produits via une interface simple et intuitive.

Installation

Installez le package via Composer :

composer require amenessisse/package-heo-api

Configuration requise

  • PHP 7.0 ou supérieur
  • Symfony HTTP Client 5.0 ou supérieur

Utilisation de base

Initialisation du client

<?php

use Amenessisse\PackageHeoAPI\HeoApiClient;

// Initialisation avec vos identifiants
$client = new HeoApiClient('votre_nom_utilisateur', 'votre_mot_de_passe');

Accès aux collections

// Récupérer toutes les collections
$collections = $client->getCollectionsAll()->toArray();

// Récupérer les types de collections
$types = $client->getCollectionsTypes()->toArray();

// Autres méthodes disponibles
$themes = $client->getCollectionsThemes()->toArray();
$specials = $client->getCollectionsSpecials()->toArray();
$manufacturers = $client->getCollectionsManufacturers()->toArray();
$categories = $client->getCollectionsCategories()->toArray();

Accès au catalogue

// Récupérer le catalogue complet
$catalog = $client->getCatalog()->toArray();

Accès aux produits

Avec des requêtes simples

// Récupérer les produits (page 1, 50 éléments par page)
$products = $client->getProducts(null, 1, 50)->toArray();

// Requête avec une chaîne de filtre simple
$productsFiltered = $client->getProducts("ageRating==1", 1, 50)->toArray();

Avec le constructeur de requêtes

<?php

use Amenessisse\PackageHeoAPI\QueryBuilder\ProductQueryBuilder;

// Création d'une requête complexe
$queryBuilder = (new ProductQueryBuilder())
    ->where('ageRating', '==', 1)
    ->orWhere('ageRating', '==', 7);

// Utilisation dans la requête de produits
$products = $client->getProducts($queryBuilder, 1, 50)->toArray();

Accès aux prix et disponibilités

// Récupérer les prix des produits
$prices = $client->getPrices($queryBuilder, 1, 50)->toArray();

// Récupérer les disponibilités des produits
$availabilities = $client->getAvailabilities($queryBuilder, 1, 50)->toArray();

Constructeur de requêtes (ProductQueryBuilder)

Le constructeur de requêtes permet de créer des filtres complexes pour vos requêtes API.

Opérateurs disponibles

  • == : égalité
  • != : différence
  • =lt= : inférieur à
  • =le= : inférieur ou égal à
  • =gt= : supérieur à
  • =ge= : supérieur ou égal à
  • =in= : appartient à

Méthodes

where()

Ajoute une condition de filtre.

$queryBuilder->where('field', 'operator', 'value');

orWhere()

Ajoute une condition alternative (OR).

$queryBuilder->where('field1', '==', 'value1')
             ->orWhere('field2', '==', 'value2');
// Génère: field1==value1 or field2==value2

build()

Génère la chaîne de requête finale.

$queryString = $queryBuilder->build();

Gestion des erreurs

Toutes les méthodes de l'API peuvent lancer des exceptions en cas d'erreur :

<?php

use Symfony\Contracts\HttpClient\Exception\TransportExceptionInterface;

try {
    $response = $client->getProducts("ageRating==1", 1, 50);
    $data = $response->toArray();
} catch (Exception $e) {
    // Gestion des erreurs générales
    echo "Erreur : " . $e->getMessage();
} catch (TransportExceptionInterface $e) {
    // Gestion des erreurs de transport HTTP
    echo "Erreur de communication avec l'API : " . $e->getMessage();
}

Constants et endpoints disponibles

Le client expose plusieurs constantes définissant les endpoints de l'API :

  • HEO_BASE_URI : URI de base de l'API
  • HEO_CATALOG : Endpoint du catalogue
  • HEO_COLLECTIONS : Endpoint des collections
  • HEO_PRODUCTS : Endpoint des produits
  • HEO_PRICES : Endpoint des prix
  • HEO_AVAILABILITIES : Endpoint des disponibilités

Mode Sandbox

Le client HeoApiClient offre la possibilité de basculer entre l'environnement de production et l'environnement de test (sandbox) :

// Lors de l'initialisation (true = sandbox, false = production)
$client = new HeoApiClient('votre_nom_utilisateur', 'votre_mot_de_passe', true);

// Ou via la méthode dédiée
$client->setSandboxMode(true);  // Utiliser l'environnement de test
$client->setSandboxMode(false); // Basculer vers l'environnement de production

## Licence

Ce package est distribué sous licence MIT.

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-08-26