UNPKG

co-wechat-api

Version:

微信公共平台Node库API,ES6版本

216 lines (205 loc) 6.12 kB
'use strict'; // 微信门店接口, 当前版本基于《POI 门店管理接口文档 V2.2.3》 // 文档请参考(内置于微信卡券接口文档):http://mp.weixin.qq.com/wiki/9/d8a5f3b102915f30516d79b44fe665ed.html const { postJSON } = require('./util'); /** * 创建门店 * Tips: * - 创建门店接口调用成功后不会实时返回poi_id。 * - 成功创建后,门店信息会经过审核,审核通过后方可使用并获取poi_id。 * - 图片photo_url必须为上传图片接口(api.uploadLogo,参见卡券接口)生成的url。 * - 门店类目categories请参考微信公众号后台的门店管理部分。 * Poi: * ``` * { * "sid": "5794560", * "business_name": "肯打鸡", * "branch_name": "东方路店", * "province": "上海市", * "city": "上海市", * "district": "浦东新区", * "address": "东方路88号", * "telephone": "021-5794560", * "categories": ["美食,快餐小吃"], * "offset_type": 1, * "longitude": 125.5794560, * "latitude": 45.5794560, * "photo_list": [{ * "photo_url": "https://5794560.qq.com/1" * }, { * "photo_url": "https://5794560.qq.com/2" * }], * "recommend": "脉娜鸡腿堡套餐,脉乐鸡,全家捅", * "special": "免费WIFE,外卖服务", * "introduction": "肯打鸡是全球大型跨国连锁餐厅,2015年创立于米国,在世界上大约拥有3 亿间分店,主要售卖肯打鸡等垃圾食品", * "open_time": "10:00-18:00", * "avg_price": 88 * } * ``` * Examples: * ``` * api.addPoi(poi); * ``` * Result: * ``` * {"errcode":0,"errmsg":"ok"} * ``` * @name addPoi * @param {Object} poi 门店对象 */ exports.addPoi = async function (poi) { const { accessToken } = await this.ensureAccessToken(); var data = { business: { base_info: poi } }; var url = this.prefix + 'poi/addpoi?access_token=' + accessToken; return this.request(url, postJSON(data)); }; /** * 获取门店信息 * Examples: * ``` * api.getPoi(POI_ID); * ``` * Result: * ``` * { * "sid": "5794560", * "business_name": "肯打鸡", * "branch_name": "东方路店", * "province": "上海市", * "city": "上海市", * "district": "浦东新区", * "address": "东方路88号", * "telephone": "021-5794560", * "categories": ["美食,快餐小吃"], * "offset_type": 1, * "longitude": 125.5794560, * "latitude": 45.5794560, * "photo_list": [{ * "photo_url": "https://5794560.qq.com/1" * }, { * "photo_url": "https://5794560.qq.com/2" * }], * "recommend": "脉娜鸡腿堡套餐,脉乐鸡,全家捅", * "special": "免费WIFE,外卖服务", * "introduction": "肯打鸡是全球大型跨国连锁餐厅,2015年创立于米国,在世界上大约拥有3 亿间分店,主要售卖肯打鸡等垃圾食品", * "open_time": "10:00-18:00", * "avg_price": 88, * "available_state": 3, * "update_status": 0 * } * ``` * @name getPoi * @param {Number} poiId 门店ID */ exports.getPoi = async function (poiId) { const { accessToken } = await this.ensureAccessToken(); var url = this.prefix + 'poi/getpoi?access_token=' + accessToken; var data = { poi_id: poiId }; return this.request(url, postJSON(data)); }; /** * 获取门店列表 * Examples: * ``` * api.getPois(0, 20); * ``` * Result: * ``` * { * "errcode": 0, * "errmsg": "ok" * "business_list": [{ * "base_info": { * "sid": "100", * "poi_id": "5794560", * "business_name": "肯打鸡", * "branch_name": "东方路店", * "address": "东方路88号", * "available_state": 3 * } * }, { * "base_info": { * "sid": "101", * "business_name": "肯打鸡", * "branch_name": "西方路店", * "address": "西方路88号", * "available_state": 4 * } * }], * "total_count": "2", * } * ``` * @name getPois * @param {Number} begin 开始位置,0即为从第一条开始查询 * @param {Number} limit 返回数据条数,最大允许50,默认为20 */ exports.getPois = async function (begin, limit) { const { accessToken } = await this.ensureAccessToken(); var url = this.prefix + 'poi/getpoilist?access_token=' + accessToken; var data = { begin: begin, limit: limit }; return this.request(url, postJSON(data)); }; /** * 删除门店 * Tips: * - 待审核门店不允许删除 * Examples: * ``` * api.delPoi(POI_ID); * ``` * @name delPoi * @param {Number} poiId 门店ID */ exports.delPoi = async function (poiId) { const { accessToken } = await this.ensureAccessToken(); var url = this.prefix + 'poi/delpoi?access_token=' + accessToken; var data = { poi_id: poiId }; return this.request(url, postJSON(data)); }; /** * 修改门店服务信息 * Tips: * - 待审核门店不允许修改 * Poi: * ``` * { * "poi_id": "5794560", * "telephone": "021-5794560", * "photo_list": [{ * "photo_url": "https://5794560.qq.com/1" * }, { * "photo_url": "https://5794560.qq.com/2" * }], * "recommend": "脉娜鸡腿堡套餐,脉乐鸡,全家捅", * "special": "免费WIFE,外卖服务", * "introduction": "肯打鸡是全球大型跨国连锁餐厅,2015年创立于米国,在世界上大约拥有3 亿间分店,主要售卖肯打鸡等垃圾食品", * "open_time": "10:00-18:00", * "avg_price": 88 * } * ``` * 特别注意,以上7个字段,若有填写内容则为覆盖更新,若无内容则视为不修改,维持原有内容。 * photo_list字段为全列表覆盖,若需要增加图片,需将之前图片同样放入list中,在其后增加新增图片。 * Examples: * ``` * api.updatePoi(poi); * ``` * Result: * ``` * {"errcode":0,"errmsg":"ok"} * ``` * @name updatePoi * @param {Object} poi 门店对象 */ exports.updatePoi = async function (poi) { const { accessToken } = await this.ensureAccessToken(); var data = { business: { base_info: poi } }; var url = this.prefix + 'poi/updatepoi?access_token=' + accessToken; return this.request(url, postJSON(data)); };