创建订单(3.0可用)

js调用示例

QFH5.Order(json,function(state,data){
});

如果要兼容2.2的包

可以试试try、catch,建议慢慢淘汰2.2的版本支持
try{
    //3.0的方法
    QFH5.Order(json,function(state,data){
    });
}catche(e){
    //2.2的方法
    QFH5.createOrder(type,item,send_type,address,allow_pay_type,function(state,data){
    });
}

参数

@params        string        json
    json的object内容
        type             int        订单类型(在小后台添加)
        item             array      商品内容,支持多商品
                title         string        商品名
                subtitle      string        商品自定义属性
                cover         string        商品图片(可为空)
                num           int            购买数量(可为0)
                gold_cost     float        商品的金币单价(可为0)
                cash_cost     float        商品现金单价(可为0),单位:元
                get_expire    int            限时领取的时间戳,(超过这个时间不允许用户领取,为空,不显示该行字段)
        send_type        int        配送方式 0:无,1:自提,2:快递
        send_cost        string     快递的快递费用,单位:元
        allow_change_address int    是否允许修改快递的收货地址(默认是1,只有选择快递的时候才能为0)
        address          obj        自提、快递的联系方式
                name          string        联系人
                mobile        string        联系电话
                address       string        地址
        allow_pay_type   int        允许的支付方式:2:余额,4:微信,8:支付宝,    希望支持的几个方式相加。默认14,即全部。 例:12:禁止余额支付,6:禁止支付宝支付,10:禁止微信支付,2:只允许余额支付.....
        allow_pay_time   int        允许的支付时间,(秒数),此时间之后不允许支付,默认900秒,数值应在1-30分钟之间
        out_trade_no     string     站点自己的商户订单号(需要唯一,可为空,千帆会默认分配一个20位的订单号)(站点可以选择一个不是20位的订单号,来避开千帆的规则,这样可以最大可能的避免重复订单号的出现,重复订单号会下单失败)
        ext              string     业务扩展参数,异步回调里面原样返回,如果是object请传json

返回值

@return int     state           1:成功,2:失败
@return object  data
                {
                    error       string 失败原因
                    order_id    int    成功的订单ID
                }

案例

<a href="javascript:void(0)" onclick="Order();"&59.跳转下订单(Order)</a&
    <script&
        function Order() {
            var time = new Date().getTime();
            var chars = "abcdefghijklmnopqrstuvwxyz0123456789";
            var len = chars.length;
            for(var i = 1;i < 8; i++){
                time = time + chars.charAt(Math.floor(Math.random() * len));
            }
            var data = {
                type: 10001,
                item: [
                    {
                        title: "商品1",
                        subtitle: "颜色:红色",
                        cover: "http://qianfan-qianfanyun.qiniudn.com/1820_20170915135834_59bb6c0a412a8.jpg",
                        num: 1,
                        cash_cost: 1.00,
                        gold_cost: 5,
                        get_expire: 0
                    },
                    {
                        title: "商品2",
                        subtitle: "颜色:黄色",
                        cover: "http://qianfan-qianfanyun.qiniudn.com/1820_20170915135834_59bb6c0a412a8.jpg",
                        num: 3,
                        cash_cost: 3.00,
                        gold_cost: 5,
                        get_expire: 0
                    }
                ],
                send_type: 2,
                send_cost: '1.00',
                allow_change_address:0//快递可以不传address项,此处是demo举例,所以传了
                address: {
                    name: '千帆',
                    mobile: '15888888888',
                    address: '常州千帆'
                },
                allow_pay_type: 14,
                allow_pay_time: 900,
                out_trade_no: time
            };
            QFH5.Order(JSON.stringify(data), function (state, data) {
                alert(state);
                alert(JSON.stringify(data));
                if(state == 1){
                    QFH5.jumpPayOrder(parseInt(data.order_id),function(state,data){
                        if(state == 1){
                            alert('支付成功');
                        }
                    })
                }
            });
        }
    </script&

H5创建订单(2.2可用)

js调用示例

QFH5.createOrder(type,item,send_type,address,allow_pay_type,function(state,data){
});

参数

@params int     type        订单类型(请前往小后台&&金币与支付&&支付管理&&支付JS类型 获取你想要的支付类型)
@params json    item        商品详情
                [
                    {
                        title       标题
                        cover       图片(可为空)
                        num         商品数量(可为0)
                        gold_cost   商品金币价格(可为0)
                        cash_cost   商品现金价格(可为0)
                    },
                    {
                    ...
                    }
                ]
@params int     send_type   配送方式:0:无,1:自提,2:快递
@params json    address     自提时的自提地址
                {
                    name        自提联系人
                    mobile      自提联系方式
                    address     自提地址
                }
@params  int     allow_pay_type    允许的支付方式:    2:余额,4:微信,8:支付宝,    希望支持的几个方式相加。默认14,即全部。 例:12:禁止余额支付,6:禁止支付宝支付,10:禁止微信支付,2:只允许余额支付.....

返回值

@return int     state           1:成功,2:失败
@return object  data
                {
                    error       string 失败原因
                    order_id    int    成功的订单号
                }

根据订单id,调起支付页面 (2.2可用)

& 如需异步查询订单状态,请使用此接口:订单状态查询

QFH5.jumpPayOrder(int order_id,function(state,data){
    if(state==1){
        //支付成功
    }else{
        //支付失败、用户取消支付
        alert(data.error);//data.error  string
    }
});

参数

@params int     order_id    订单id

返回值

@return int     state           1:成功,2:失败
@return object  data
                {
                    error       string 失败原因
                }

H5调起打赏接口(2.1.0使用)

js调用示例

QFH5.jumpReward(json,function(state,data){
});

参数

@params string     json
    json的object内容
        ###打赏目标###
         int     type            1:帖子、2:圈子、3:h5链接
         int     target_id       帖子id、圈子id             #可选择为空#
         string  target_url      打赏h5链接的url地址        #可选择为空#
        ###目标用户的信息###
         int     uid              被打赏的目标用户id   #打赏资金的结算目标用户,必填#
        ###打赏方法###
         int     reward_type     打赏的方式1:仅金币打赏,2:仅现金打赏,3:金币+现金打赏(同时出现,让用户选择)
         ###打赏文案###
         string  desc            求打赏的文案  #可为空#
         string  descplaceholder 默认打赏文案  #可为空#

返回值

@return int     state           1:成功,2:失败
@return object  data
                {
                    error       string 失败原因
                    order_id    int    成功的订单号
                }
文档更新时间: 2023-08-02 17:12   作者:李伟