* * This source file is subject to the MIT license that is bundled * with this source code in the file LICENSE. */ namespace EasyWeChat\OfficialAccount\Card; use EasyWeChat\Kernel\BaseClient; /** * Class CoinClient. * * @author overtrue */ class CoinClient extends BaseClient { /** * @return array|\EasyWeChat\Kernel\Support\Collection|object|\Psr\Http\Message\ResponseInterface|string * * @throws \EasyWeChat\Kernel\Exceptions\InvalidConfigException */ public function activate() { return $this->httpGet('card/pay/activate'); } /** * @return array|\EasyWeChat\Kernel\Support\Collection|object|\Psr\Http\Message\ResponseInterface|string * * @throws \EasyWeChat\Kernel\Exceptions\InvalidConfigException * @throws \GuzzleHttp\Exception\GuzzleException */ public function getPrice(string $cardId, int $quantity) { return $this->httpPostJson('card/pay/getpayprice', [ 'card_id' => $cardId, 'quantity' => $quantity, ]); } /** * @return array|\EasyWeChat\Kernel\Support\Collection|object|\Psr\Http\Message\ResponseInterface|string * * @throws \EasyWeChat\Kernel\Exceptions\InvalidConfigException */ public function summary() { return $this->httpGet('card/pay/getcoinsinfo'); } /** * @return array|\EasyWeChat\Kernel\Support\Collection|object|\Psr\Http\Message\ResponseInterface|string * * @throws \EasyWeChat\Kernel\Exceptions\InvalidConfigException * @throws \GuzzleHttp\Exception\GuzzleException */ public function recharge(int $count) { return $this->httpPostJson('card/pay/recharge', [ 'coin_count' => $count, ]); } /** * @return array|\EasyWeChat\Kernel\Support\Collection|object|\Psr\Http\Message\ResponseInterface|string * * @throws \EasyWeChat\Kernel\Exceptions\InvalidConfigException * @throws \GuzzleHttp\Exception\GuzzleException */ public function order(string $orderId) { return $this->httpPostJson('card/pay/getorder', ['order_id' => $orderId]); } /** * @return array|\EasyWeChat\Kernel\Support\Collection|object|\Psr\Http\Message\ResponseInterface|string * * @throws \EasyWeChat\Kernel\Exceptions\InvalidConfigException * @throws \GuzzleHttp\Exception\GuzzleException */ public function orders(array $filters) { return $this->httpPostJson('card/pay/getorderlist', $filters); } /** * @return array|\EasyWeChat\Kernel\Support\Collection|object|\Psr\Http\Message\ResponseInterface|string * * @throws \EasyWeChat\Kernel\Exceptions\InvalidConfigException * @throws \GuzzleHttp\Exception\GuzzleException */ public function confirm(string $cardId, string $orderId, int $quantity) { return $this->httpPostJson('card/pay/confirm', [ 'card_id' => $cardId, 'order_id' => $orderId, 'quantity' => $quantity, ]); } }