partner.php 1.57 KB
<?php
class Flora_Api_Service_Partner extends Flora_Api_Service
{
    const API_PARTNERS = 'partner/partners';
    const API_PARTNER = 'partner/partner';
    const API_CLIENTS = 'partner/clients';
    const API_ORDERS = 'partner/orders';
    const API_CODE = 'partner/code';

    /**
     * @return array|stdClass[]
     */
    public function partners()
    {
        return $this->call(self::API_PARTNERS, array());
    }

    /**
     * @param $id
     * @param int $from
     * @param int $to
     * @return stdClass
     */
    public function partner($id, $from = 0, $to = 0)
    {
        return $this->call(self::API_PARTNER, array('id' => $id, 'from_datetime' => $from, 'to_datetime' => $to));
    }

    /**
     * @param int $partner_id
     * @param int $from
     * @param int $to
     * @return array|stdClass[]
     */
    public function clients($partner_id = 0, $from = 0, $to = 0)
    {
        return $this->call(self::API_CLIENTS, array('partner_id' => $partner_id, 'from_datetime' => $from, 'to_datetime' => $to));
    }

    /**
     * @param int $from
     * @param int $to
     * @param array $ids
     * @return Flora_Collection
     */
    public function orders($from = 0, $to = 0, $ids = [])
    {
        return $this->call(self::API_ORDERS, array('from_datetime' => $from, 'to_datetime' => $to, 'ids' => implode(',', $ids)));
    }

    /**
     * @param $code
     * @param $partner_id
     * @return bool
     */
    public function code($code, $partner_id = false)
    {
        return $this->call(self::API_CODE, array('code' => $code, 'partner_id' => $partner_id));
    }
}