123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136 |
- <?php
- /*
- * This file is part of the overtrue/wechat.
- *
- * (c) overtrue <i@overtrue.me>
- *
- * This source file is subject to the MIT license that is bundled
- * with this source code in the file LICENSE.
- */
- /**
- * POI.php.
- *
- * @author overtrue <i@overtrue.me>
- * @copyright 2015 overtrue <i@overtrue.me>
- *
- * @see https://github.com/overtrue
- * @see http://overtrue.me
- */
- namespace EasyWeChat\POI;
- use EasyWeChat\Core\AbstractAPI;
- /**
- * Class POI.
- */
- class POI extends AbstractAPI
- {
- const API_CREATE = 'https://api.weixin.qq.com/cgi-bin/poi/addpoi';
- const API_GET = 'https://api.weixin.qq.com/cgi-bin/poi/getpoi';
- const API_LIST = 'https://api.weixin.qq.com/cgi-bin/poi/getpoilist';
- const API_UPDATE = 'https://api.weixin.qq.com/cgi-bin/poi/updatepoi';
- const API_DELETE = 'https://api.weixin.qq.com/cgi-bin/poi/delpoi';
- const API_GET_CATEGORIES = 'https://api.weixin.qq.com/cgi-bin/poi/getwxcategory';
- /**
- * Get POI supported categories.
- *
- * @return \EasyWeChat\Support\Collection
- */
- public function getCategories()
- {
- return $this->parseJSON('get', [self::API_GET_CATEGORIES]);
- }
- /**
- * Get POI by ID.
- *
- * @param int $poiId
- *
- * @return \EasyWeChat\Support\Collection
- */
- public function get($poiId)
- {
- return $this->parseJSON('json', [self::API_GET, ['poi_id' => $poiId]]);
- }
- /**
- * List POI.
- *
- * @param int $offset
- * @param int $limit
- *
- * @return \EasyWeChat\Support\Collection
- */
- public function lists($offset = 0, $limit = 10)
- {
- $params = [
- 'begin' => $offset,
- 'limit' => $limit,
- ];
- return $this->parseJSON('json', [self::API_LIST, $params]);
- }
- /**
- * Create a POI.
- *
- * @param array $data
- *
- * @return bool
- */
- public function create(array $data)
- {
- $params = [
- 'business' => ['base_info' => $data],
- ];
- return $this->parseJSON('json', [self::API_CREATE, $params]);
- }
- /**
- * @param array $data
- *
- * @return int
- */
- public function createAndGetId(array $data)
- {
- return $this->create($data)['poi_id'];
- }
- /**
- * Update a POI.
- *
- * @param int $poiId
- * @param array $data
- *
- * @return bool
- */
- public function update($poiId, array $data)
- {
- $data = array_merge($data, ['poi_id' => $poiId]);
- $params = [
- 'business' => ['base_info' => $data],
- ];
- return $this->parseJSON('json', [self::API_UPDATE, $params]);
- }
- /**
- * Delete a POI.
- *
- * @param int $poiId
- *
- * @return bool
- */
- public function delete($poiId)
- {
- $params = ['poi_id' => $poiId];
- return $this->parseJSON('json', [self::API_DELETE, $params]);
- }
- }
|