UNPKG

7.53 kBJavaScriptView Raw
1'use strict';
2
3// 微信门店接口文档请参考:http://mp.weixin.qq.com/wiki/16/8f182af4d8dcea02c56506306bdb2f4c.html
4var util = require('./util');
5var wrapper = util.wrapper;
6var postJSON = util.postJSON;
7var make = util.make;
8
9/**
10 * 创建门店
11 *
12 * Tips:
13 * - 创建门店接口调用成功后不会实时返回poi_id。
14 * - 成功创建后,门店信息会经过审核,审核通过后方可使用并获取poi_id。
15 * - 图片photo_url必须为上传图片接口(api.uploadLogo,参见卡券接口)生成的url。
16 * - 门店类目categories请参考微信公众号后台的门店管理部分。
17 *
18 * Poi:
19 * ```
20 * {
21 * "sid": "5794560",
22 * "business_name": "肯打鸡",
23 * "branch_name": "东方路店",
24 * "province": "上海市",
25 * "city": "上海市",
26 * "district": "浦东新区",
27 * "address": "东方路88号",
28 * "telephone": "021-5794560",
29 * "categories": ["美食,快餐小吃"],
30 * "offset_type": 1,
31 * "longitude": 125.5794560,
32 * "latitude": 45.5794560,
33 * "photo_list": [{
34 * "photo_url": "https://5794560.qq.com/1"
35 * }, {
36 * "photo_url": "https://5794560.qq.com/2"
37 * }],
38 * "recommend": "脉娜鸡腿堡套餐,脉乐鸡,全家捅",
39 * "special": "免费WIFE,外卖服务",
40 * "introduction": "肯打鸡是全球大型跨国连锁餐厅,2015年创立于米国,在世界上大约拥有3 亿间分店,主要售卖肯打鸡等垃圾食品",
41 * "open_time": "10:00-18:00",
42 * "avg_price": 88
43 * }
44 * ```
45 * Examples:
46 * ```
47 * api.addPoi(poi, callback);
48 * ```
49 * Callback:
50 *
51 * - `err`, 调用失败时得到的异常
52 * - `result`, 调用正常时得到的对象
53 *
54 * Result:
55 * ```
56 * {"errcode":0,"errmsg":"ok"}
57 * ```
58 * @name addPoi
59 * @param {Object} poi 门店对象
60 * @param {Function} callback 回调函数
61 */
62make(exports, 'addPoi', function (poi, callback) {
63 var data = {
64 business: {
65 base_info: poi
66 }
67 };
68 var url = this.endpoint + '/cgi-bin/poi/addpoi?access_token=' + this.token.accessToken;
69 this.request(url, postJSON(data), wrapper(callback));
70});
71
72/**
73 * 获取门店信息
74 *
75 * Examples:
76 * ```
77 * api.getPoi(POI_ID, callback);
78 * ```
79 * Callback:
80 *
81 * - `err`, 调用失败时得到的异常
82 * - `result`, 调用正常时得到的对象
83 *
84 * Result:
85 * ```
86 * {
87 * "sid": "5794560",
88 * "business_name": "肯打鸡",
89 * "branch_name": "东方路店",
90 * "province": "上海市",
91 * "city": "上海市",
92 * "district": "浦东新区",
93 * "address": "东方路88号",
94 * "telephone": "021-5794560",
95 * "categories": ["美食,快餐小吃"],
96 * "offset_type": 1,
97 * "longitude": 125.5794560,
98 * "latitude": 45.5794560,
99 * "photo_list": [{
100 * "photo_url": "https://5794560.qq.com/1"
101 * }, {
102 * "photo_url": "https://5794560.qq.com/2"
103 * }],
104 * "recommend": "脉娜鸡腿堡套餐,脉乐鸡,全家捅",
105 * "special": "免费WIFE,外卖服务",
106 * "introduction": "肯打鸡是全球大型跨国连锁餐厅,2015年创立于米国,在世界上大约拥有3 亿间分店,主要售卖肯打鸡等垃圾食品",
107 * "open_time": "10:00-18:00",
108 * "avg_price": 88,
109 * "available_state": 3,
110 * "update_status": 0
111 * }
112 * ```
113 * @name getPoi
114 * @param {Number} poiId 门店ID
115 * @param {Function} callback 回调函数
116 */
117make(exports, 'getPoi', function (poiId, callback) {
118 var url = this.endpoint + '/cgi-bin/poi/getpoi?access_token=' + this.token.accessToken;
119 var data = {
120 poi_id: poiId
121 };
122 this.request(url, postJSON(data), wrapper(callback));
123});
124
125/**
126 * 获取门店列表
127 * Examples:
128 * ```
129 * api.getPois(0, 20, callback);
130 * ```
131 * Callback:
132 *
133 * - `err`, 调用失败时得到的异常
134 * - `result`, 调用正常时得到的对象
135 *
136 * Result:
137 * ```
138 * {
139 * "errcode": 0,
140 * "errmsg": "ok"
141 * "business_list": [{
142 * "base_info": {
143 * "sid": "100",
144 * "poi_id": "5794560",
145 * "business_name": "肯打鸡",
146 * "branch_name": "东方路店",
147 * "address": "东方路88号",
148 * "available_state": 3
149 * }
150 * }, {
151 * "base_info": {
152 * "sid": "101",
153 * "business_name": "肯打鸡",
154 * "branch_name": "西方路店",
155 * "address": "西方路88号",
156 * "available_state": 4
157 * }
158 * }],
159 * "total_count": "2",
160 * }
161 * ```
162 * @name getPois
163 * @param {Number} begin 开始位置,0即为从第一条开始查询
164 * @param {Number} limit 返回数据条数,最大允许50,默认为20
165 * @param {Function} callback 回调函数
166 */
167make(exports, 'getPois', function (begin, limit, callback) {
168 var url = this.endpoint + '/cgi-bin/poi/getpoilist?access_token=' + this.token.accessToken;
169 var data = {
170 begin: begin,
171 limit: limit
172 };
173 this.request(url, postJSON(data), wrapper(callback));
174});
175
176/**
177 * 删除门店
178 *
179 * Tips:
180 *
181 * - 待审核门店不允许删除
182 *
183 * Examples:
184 * ```
185 * api.delPoi(POI_ID, callback);
186 * ```
187 * Callback:
188 *
189 * - `err`, 调用失败时得到的异常
190 * - `result`, 调用正常时得到的对象
191 *
192 * @name delPoi
193 * @param {Number} poiId 门店ID
194 * @param {Function} callback 回调函数
195 */
196make(exports, 'delPoi', function (poiId, callback) {
197 var url = this.endpoint + '/cgi-bin/poi/delpoi?access_token=' + this.token.accessToken;
198 var data = {
199 poi_id: poiId
200 };
201 this.request(url, postJSON(data), wrapper(callback));
202});
203
204/**
205 * 修改门店服务信息
206 *
207 * Tips:
208 *
209 * - 待审核门店不允许修改
210 *
211 * Poi:
212 * ```
213 * {
214 * "poi_id": "5794560",
215 * "telephone": "021-5794560",
216 * "photo_list": [{
217 * "photo_url": "https://5794560.qq.com/1"
218 * }, {
219 * "photo_url": "https://5794560.qq.com/2"
220 * }],
221 * "recommend": "脉娜鸡腿堡套餐,脉乐鸡,全家捅",
222 * "special": "免费WIFE,外卖服务",
223 * "introduction": "肯打鸡是全球大型跨国连锁餐厅,2015年创立于米国,在世界上大约拥有3 亿间分店,主要售卖肯打鸡等垃圾食品",
224 * "open_time": "10:00-18:00",
225 * "avg_price": 88
226 * }
227 * ```
228 * 特别注意,以上7个字段,若有填写内容则为覆盖更新,若无内容则视为不修改,维持原有内容。
229 * photo_list字段为全列表覆盖,若需要增加图片,需将之前图片同样放入list中,在其后增加新增图片。
230 *
231 * Examples:
232 * ```
233 * api.updatePoi(poi, callback);
234 * ```
235 * Callback:
236 *
237 * - `err`, 调用失败时得到的异常
238 * - `result`, 调用正常时得到的对象
239 *
240 * Result:
241 * ```
242 * {"errcode":0,"errmsg":"ok"}
243 * ```
244 * @name updatePoi
245 * @param {Object} poi 门店对象
246 * @param {Function} callback 回调函数
247 */
248make(exports, 'updatePoi', function (poi, callback) {
249 var data = {
250 business: {
251 base_info: poi
252 }
253 };
254 var url = this.endpoint + '/cgi-bin/poi/updatepoi?access_token=' + this.token.accessToken;
255 this.request(url, postJSON(data), wrapper(callback));
256});
257
258/**
259 * 门店类目表
260 *
261 * Tips:
262 *
263 * - 类目名称接口是为商户提供自己门店类型信息的接口。门店类目定位的越规范,能够精准的吸引更多用户,提高曝光率。
264 *
265 * Examples:
266 * ```
267 * api.getWXCategory(callback);
268 * ```
269 * Callback:
270 *
271 * - `err`, 调用失败时得到的异常
272 * - `result`, 调用正常时得到的对象
273 *
274 * @name getWXCategory
275 * @param {Function} callback 回调函数
276 */
277make(exports, 'getWXCategory', function (callback) {
278 var url = this.endpoint + '/cgi-bin/poi/getwxcategory?access_token=' + this.token.accessToken;
279 this.request(url, {dataType: 'json'}, wrapper(callback));
280});
281