第三方平台对接达达配送

第三方平台对接达达配送

一.百度搜索达达开放平台注册好开发者账号,将开发者的app_key和app_secret填入到第三方平台数据库中
二.封装公共类调用

    private static $dmerchhant;  //注册商户
    private static $daddstore;  //创建门店
    private static $update;  //门店更新
    private static $recharge;  //充值
    private static $query;  //充值
    private static $dcitys;  //获取城市信息
    private static $reasons;  //取消订单原因列表
    private static $addOrder;    //下单
    private static $reAddOrder;    //重新下单
    private static $formalCancel;    //商家取消订单
    private static $rider;    //骑手信息
    private static $accept;    //模拟接单
    private static $fetch;    //模拟接单
    private static $finish;    //模拟完成
    private static $cancel;    //模拟取消
    private static $expire;    //模拟过期
    private static $back;    //模拟拒绝返还商品

    public function __construct()
    {
        /*self::$dmerchhant = 'http://newopen.qa.imdada.cn/merchantApi/merchant/add';
        self::$daddstore = 'http://newopen.qa.imdada.cn/api/shop/add';
        self::$recharge = 'http://newopen.qa.imdada.cn/api/recharge';
        self::$query = 'http://newopen.qa.imdada.cn/api/balance/query';
        self::$dcitys = 'http://newopen.qa.imdada.cn/api/cityCode/list';
        self::$reasons = 'http://newopen.qa.imdada.cn/api/order/cancel/reasons';
        self::$addOrder = 'http://newopen.qa.imdada.cn/api/order/addOrder';
        self::$formalCancel = 'http://newopen.qa.imdada.cn/api/order/formalCancel';
        self::$rider = 'http://newopen.qa.imdada.cn/api/order/status/query';
        self::$accept = 'http://newopen.qa.imdada.cn/api/order/accept';
        self::$fetch = 'http://newopen.qa.imdada.cn/api/order/fetch';
        self::$finish = 'http://newopen.qa.imdada.cn/api/order/finish';
        self::$cancel = 'http://newopen.qa.imdada.cn/api/order/cancel';
        self::$expire = 'http://newopen.qa.imdada.cn/api/order/expire';
        self::$back = 'http://newopen.qa.imdada.cn/api/order/delivery/abnormal/back';
        self::$reAddOrder = 'http://newopen.qa.imdada.cn/api/order/reAddOrder';*/
        self::$dmerchhant = 'http://newopen.imdada.cn/merchantApi/merchant/add';
        self::$daddstore = 'http://newopen.imdada.cn/api/shop/add';
        self::$recharge = 'http://newopen.imdada.cn/api/recharge';
        self::$query = 'http://newopen.imdada.cn/api/balance/query';
        self::$dcitys = 'http://newopen.imdada.cn/api/cityCode/list';
        self::$reasons = 'http://newopen.imdada.cn/api/order/cancel/reasons';
        self::$addOrder = 'http://newopen.imdada.cn/api/order/addOrder';
        self::$formalCancel = 'http://newopen.imdada.cn/api/order/formalCancel';
        self::$rider = 'http://newopen.imdada.cn/api/order/status/query';
        self::$accept = 'http://newopen.imdada.cn/api/order/accept';
        self::$fetch = 'http://newopen.imdada.cn/api/order/fetch';
        self::$finish = 'http://newopen.imdada.cn/api/order/finish';
        self::$cancel = 'http://newopen.imdada.cn/api/order/cancel';
        self::$expire = 'http://newopen.imdada.cn/api/order/expire';
        self::$back = 'http://newopen.imdada.cn/api/order/delivery/abnormal/back';
        self::$reAddOrder = 'http://newopen.imdada.cn/api/order/reAddOrder';
        self::$update = 'http://newopen.imdada.cn/api/shop/update';
    }
  /*
     *公共请求接口
     * app_key	String	是	应用Key,对应开发者账号中的app_key
       signature	String	是	签名Hash值,参见:接口签名规则
       timestamp	String	是	时间戳,单位秒,即unix-timestamp
       format	String	是	请求格式,暂时只支持json	json
       v       	String	是	API版本	1.0
      source_id	String	是	商户编号(创建商户账号分配的编号)	测试环境默认为:73753
      body	String	是	业务参数,JSON字符串,详见具体的接口文档
      path 是请求的链接
     */
    public function Currency($app_key, $app_secret, $source_id, $path, $body)
    {
        $headers = array("Content-type: application/json;charset='utf-8'", "Accept: application/json");
        $data = array();
//          $source_id = '73753';
        $data['format'] = 'json';
        $data['timestamp'] = time();
        $data['app_key'] = $app_key;
        $data['v'] = '1.0';
        $data['source_id'] = $source_id;
        $data['body'] = json_encode($body);
        $data['signature'] = $this->Sign($app_key, $app_secret, $data);
        $newdata = json_encode($data);
        $res = $this->curl_post($path, $headers, $newdata);
        return $res;
    }
     function curl_post($url, $headers, $content)
    {
        $ch = curl_init();
        if (substr($url, 0, 5) == 'https') {
            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 跳过证书检查
            curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, true);  // 从证书中检查SSL加密算法是否存在
        }
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $content);
        $response = curl_exec($ch);
        if ($error = curl_error($ch)) {
            die($error);
        }
        curl_close($ch);
        return $response;
    }
      //签名
    private function Sign($app_key, $app_secret, $data)
    {
        ksort($data);
        $str = '';
        foreach ($data as $key => $val) {
            $str .= $key . $val;
        }
        $str = $app_secret . $str . $app_secret;
        $newstr = md5($str);
        $newstr = strtoupper($newstr);
        return $newstr;
    }

具体body内容根据实际情况传入即可例如:

//余额查询
    public function query($app_key, $app_secret, $source_id, $data)
    {
        $path = self::$query;
        $res = $this->Currency($app_key, $app_secret, $source_id, $path, $data);
        return $res;
    }
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
电子书交易平台用户接口设计: 1. 注册/登录界面:用户可以在这个界面进行新用户注册或者已有账号的登录操作。 2. 首页界面:用户可以在这个界面浏览电子书的相关信息,包括书名、作者、价格等,并且可以进行搜索和筛选操作。 3. 书籍详情界面:用户可以在这个界面查看电子书的详细信息,包括封面、简介、评价等,并且可以进行购买操作。 4. 购物车界面:用户可以在这个界面查看已经添加到购物车中的电子书信息,并且可以进行结算操作。 5. 订单管理界面:用户可以在这个界面查看自己的订单信息,包括订单编号、购买时间、收货地址等,并且可以进行订单状态的查询和修改操作。 6. 个人中心界面:用户可以在这个界面查看个人信息,包括用户名、头像、账户余额等,并且可以进行修改操作。 外部接口设计: 1. 支付接口:用户在购买电子书时需要进行支付,电子书交易平台需要与第三方支付平台进行对接,实现支付功能。 2. 物流接口:用户在购买电子书时需要填写收货地址,电子书交易平台需要与物流公司进行对接,实现订单的物流配送功能。 3. 社交媒体接口:电子书交易平台需要与社交媒体进行对接,实现用户可以将自己喜欢的电子书分享到社交媒体上的功能。 内部接口设计: 1. 用户管理接口:电子书交易平台需要实现用户信息的管理功能,包括用户信息的添加、删除、修改、查询等操作。 2. 书籍管理接口:电子书交易平台需要实现书籍信息的管理功能,包括书籍信息的添加、删除、修改、查询等操作。 3. 订单管理接口:电子书交易平台需要实现订单信息的管理功能,包括订单信息的添加、删除、修改、查询等操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值