订餐系统之同步饿了么商家订单

      随着阿里入主饿了么,咱们一个配送口碑外卖订单的客户,正在步入正轨,人员齐整,训练有素... 但,忽然一会儿失去的全部订单来源,没有订单,也就没有了收入,线上7,8个客服,线下近100个配送员,只能开始寻找新的活计了...偶然想起,早年间公司给口碑外卖1.0作打印机时,刚基本完成时,口碑外卖没了,没想到几年后,口碑外卖2.0又深深的伤害了咱们一次。。。陈年旧事,唏嘘两下,回归正文。程序员

 

背景

   以前实时获取口碑外卖商家订单,及点点送订单,再使用的咱们的调度系通通一调度各个来源的订单,再结合配送员自主抢单,加上配送员队长线上调度,最大限度的让配送员加”顺路单“,提升效率...这套班子不该该由于口碑没了,就变成破铜废铁。暮然回首,原来饿了么也有商户接口,虽然没有淘宝外卖开放平台那么强大,提供好几种语言的示例代码,没有怎么办?本身动手,丰衣足食!api

  动手以前,仍是偷懒的百度了下,觉得能找到一些基础代码,或者借鉴之类的,也不知道是没人用呢,仍是没人分享... 真没有,有的话,估计也没有这篇文章了。浏览器

  虽然,咱们更想能有锋鸟配送的接口,现实老是那么实现,真没有,那权且用商户的接口了解这个流程吧,往后,若是他们能开放配送商接口,估计代码也能用上。工具

准备工做

  

  API 文档 http://merchant.openapi.eleme.io/post

      估计大部分程序员,知道上面这个地址就能够了哈,最后有代码哦。测试

    文档中 有一个要注意的地方就是  consumer key,这个目前是经过发送邮件获取的,邮件里写上商家的访问地址就能够了,以下图(图一),另外,邮件中还提到接单方式的修改,操做如图二url

      

                                                                        (图一)3d

 

     

 

  

   虽然,他们提供了一个 能够测试的商家,可是我好几个浏览器都测试了,下订单就提示让我加地址,如图3,个人心里几乎是崩溃,最后让一个客户给了我一个帐号才勉强抚慰了一下受伤的心。若是你样要测试,仍是用正式的商家吧,我敢保证大家奔溃。rest

     

      

 

大家熟悉的代码

   代码方面,目前实现了两个主要接口:获取新订单,订单详情两个接口。其余接口也都差很少了。代码写得很差,若蒙斧正,不胜感激。日志

   代码结构以下

   

 

  baseEleAPI.cs 实现签名,生成请求的url等功能。

  NewOrdersInfo.cs 获取新订单对应的实体

    eleOrder.cs  获取订单详情对应的实体

  EleUtil.cs 配置 consumer_key,consumer_secret 及一些 工具之类的方法。

      HttpHelper.cs  看名称就知道了,这是使用了别人的类,里面有原做者信息。

  

  代码里就一个地方要注意下,生成签名时,每一个数据都是转成小写的。

  结尾部分有 demo 下载。  

 

成功获取数据

  当看日志输出下面的信息时,我知道已经已经胜利在望了,集成了这么多接口,流程基本都差很少,个把小时弄好了,固然,要实现全部接口,让订单跑起来,还有不少工做要作,等后面有空了,再完善下。固然,更多但愿有人能用上这个。

  

2016-05-14 17:43:28 returnmsg={"message":"ok","code":200,"data":{"original_price":58.0,"restaurant_name":"沈蔬果店 ","status_code":2,"restaurant_id":860035,"service_fee":7.5,"consignee":"张一平","invoice":"","description":"","user_id":24086157,"delivery_geo":"24.46839,118.09094","detail":{"abandoned_extra":[],"group":[[{"category_id":1,"name":"鲜切红心火龙果~1斤装","price":24.0,"sale_mode":0,"specs":[],"garnish":[],"id":82727401,"quantity":1},{"category_id":1,"name":"三拼果盘","price":12.0,"sale_mode":0,"specs":[],"garnish":[],"id":82727363,"quantity":1},{"category_id":1,"name":"云霄枇杷之乡","price":18.0,"sale_mode":0,"specs":[],"garnish":[],"id":82727558,"quantity":1}]],"extra":[{"description":"","quantity":1,"price":-10.0,"stats_quantity":1,"category_id":12,"type":102,"id":10087364,"name":"在线支付立减优惠"},{"description":"","price":4.0,"name":"配送费","category_id":2,"id":-10,"quantity":1},{"description":"","price":-7.0,"name":"使用红包","category_id":13,"type":0,"id":194098285927,"quantity":1}]},"active_at":"2016-05-13 22:54:30","invoiced":0,"user_name":"32b93b42c","deliver_fee":0,"is_book":0,"restaurant_part":4.0,"deliver_time":null,"order_id":"100646048067066976","eleme_part":6.0,"income":42.5,"restaurant_number":3,"address":"百脑汇科技大厦1906","hongbao":-7.0,"is_online_paid":1,"delivery_poi_address":"百脑汇科技大厦1906(福建省厦门市思明)","total_price":41.0,"created_at":"2016-05-13 22:53:48","service_rate":0.15,"package_fee":0,"activity_total":10.0,"phone_list":["1361092"]},"request_id":"b32835ae1f8040409624274d924860f0"}
2016-05-14 17:43:28 订单数据:百脑汇科技大厦1906 delivertime=

结语

  商家接口到这里就告一段落了,对于平台配送的,估计意见也不是很大,但对于单个商家,或者连锁商家仍是很是有用的,若是他们在几个平台都开店了,订单能合在一块儿,不论是配送,仍是统计就是很是有意义,也不用开着几个平台的商户端了。听着烦人的,您有新的饿了么订单,您有的百度订单,您有新的美团外卖订单...

  接下来,我会关注下其余平台的商户接口,有新的进展会,再分享给你们,我坚信:予人玫瑰 手有余香。

 

  demo 就在这里,扫码加好友,哈哈,主要为了交朋友哈.

  

  

     成为一名优秀的程序员!

相关文章
相关标签/搜索