V1/cart/get cart list

来自技术开发小组内部wiki
跳转至: 导航搜索

功能说明

获取购物车内的商品信息,以活动分组返回数据

URL

http://[域名]/v1_5/cart/get_cart_list

返回格式

支持json,xml.通过format参数来控制

HTTP请求方式

POST.可以post的数据为xml或json.


输入参数说明

uid = xxxxxxxx 用户UID

参数名称 是否必须 类型 描述
uid string 以json格式POST传入,用户UID

请求示例

http://api.fumubang.com/v1_5/cart/get_cart_list

uid = xxxxxxxx 用户UID

参数用POST方式提交

返回方式说明

xml或json

正确返回说明

购物车为空时

 {
"app_sub_money": "1",//下单立减金额
"cart": []
}

2014.12.10合并同商家票务信息

 cart 示意结构 "cart":[商家1,商家2......] 
商家1示意结构 {"shop_user_name": "商家1","activity":[票务信息1,票务信息2.......]} 
注意邮费(1),(2)shipping_fee 计算逻辑
当同商家不同票务同时结算只取最高邮费 
例如 
a)只选择goods_group_id=663的商品进行结算 邮费为9元,
b)只选择goods_group_id=665的商品进行结算 邮费为5元,
c)同时选择goods_group_id为663,665的商品结算,邮费为9 
规则说明:合并订单情况只出现在于实体票合并,间接来说,在购物车确认订单页,如果出现了合并订单,地址选择一定使用的是收货地址列表选择
例子:
{
"app_sub_money": "2.00",
"cart": [
{
"shop_user_id": "商家1id",
"total_cert_num":5, //购物车该订单需要添加的身份证个数
"activity": [
{
"app_activity": "1",
"shipping_fee": "9.00",(1)
"title": "同商户不同活动1",
"sub_title": "1",
"goods_group_id": "663",
"aid": "100453",
"banner": "",
"is_finish": 0,
"is_cert":0,//是否需要证件:0否1是
"cert_desc":"提示描述",//提示语
"extend_field": [//附加表单信息
   {
       "extend_name": "IDcard",//表单名称
       "extend_value": "",//返回空字符串,则为输入文本;反之,有返回值,则为下拉框,中间以英文分号(';')分隔;
       "require": 1,//是否必填:1必填/必选,0选填
       "extend_validate": "^(\\d{15}$|^\\d{18}$|^\\d{17}(\\d|X|x))$"//验证规则
    },
    {
        "extend_name": "区域",
        "extend_value": "朝阳区-海淀区-东城区-西城区",
        "require": 1,
        "extend_validate": ""
     }
],
"listTicketes": [
 {
   "cart_id": "10985",
   "app_price": "0.00",
   "number": "1",
   "goods_price": "0.01",
   "is_valid": 1,
   "limit_max": "100",
   "limit_min": "1",
   "ticketinfo": "票种:11|使用时间:2014-12-13 10:00",
   "shape_type": "2",
   "ticket_id": "2051",
   "play_time": "2014-12-13 10:00:00",
   "t_number": "96",
   "ticket_type": "1",
    "people_num":"0"//至少几个参与人员
 }
]
},
{
"app_activity": "1",
"shipping_fee": "5.00",(2)
"title": "同商户不同活动2",
"sub_title": "",
"goods_group_id": "665",
"aid": "100455",
"banner": "",
"is_finish": 0,
      "is_cert":1,//是否需要证件:0否1是
       "cert_desc":"提示描述",//提示语
"extend_field": [],
"listTicketes": [
 {
   "cart_id": "10987",
   "app_price": "0.00",
   "number": "1",
   "goods_price": "0.01",
   "is_valid": 1,
   "limit_max": "100",
   "limit_min": "1",
   "ticketinfo": "票种:22|使用时间:2014-12-13 10:00",
   "shape_type": "2",
   "ticket_id": "2053",
   "play_time": "2014-12-13 10:00:00",
   "t_number": "97",
   "ticket_type": "1",
    "people_num":"2"//至少几个参与人员
 }
]
}
]
},
{
"shop_user_id": "商家2id",
"activity": [
{
"app_activity": "1",
"shipping_fee": "0",//当运费方式为自定义时,此为自定义运费返回
"title": "Joanna_实体票",
"sub_title": "aaa",
"goods_group_id": "597",
"aid": "100363",
"banner": "http://img3.fumubang.net/huodong/banner/X20141210111936521.png",
"is_finish": 0,
 "is_cert":0,//是否需要证件:0否1是
       "cert_desc":"提示描述",//提示语
"extend_field": [],
"listTicketes": [
 {
   "cart_id": "10989",
   "app_price": "0.00",
   "number": "1",
   "goods_price": "2.01",
   "is_valid": 1,
   "limit_max": "1",
   "limit_min": "1",
   "ticketinfo": "CPU:x86|内核:1205",
   "shape_type": "1",
   "ticket_id": "2133",
   "play_time": "2014-12-10 00:00:00",
   "t_number": "10",
   "ticket_type": "3",
    "people_num":"0"//至少几个参与人员
 }
],
"shipping_types": {//运送方式
                "shipping_type": 1,//0自定义,1运费模板
                "shipping_method_template": [//运费模板数据
                    {
                        "name": "快递",
                        "price": "16.00",
                        "flag": "1"
                    },
                    {
                        "name": "EMS",
                        "price": "51.00",
                        "flag": "2"
                    }
                ]
            }
}
]
}
]
}

原来通过票务分组购物车数据结构

 {
"app_sub_money": "1",//下单立减金额
"cart": 
[ //活动列表
{
"app_activity": "3",  // app_activity = 1 普通活动 app_activity = 2 app专享活动 app_activity = 3 app专享价格活动
"aid": "100253", //活动id
"banner": "http://img3.fumubang.net/huodong/banner/X20141009115125116.png",//图片banner
"is_finish": "0",//是否过期.  0代表未过期,2:升级app后才可购买,3:升级后也不可购买,其他文本代表活动售罄 等信息(2015.8.11调整)
"is_finish_txt":"过期或是其他内容",//过期或者其他不可购买的原因 (2015.8.11新增)
"sub_title": "副标题", //活动主标题
"title": "主标题”,  //活动副标题
"is_official": 0//是否是官方活动:1是0否
"listTicketes": 
[//票种列表
{
 "cart_id": 12222,//购物车id
 "app_price": "30", //app特惠价  如果没有写0
 "number": 1, //票种的购买数量
 "goods_price": "35", //父母邦价 ,就是现价
 "is_valid": "1", //票种当前状态 1 可以买, 其他状态为不可购买
  "is_valid_txt":"不可购买的原因",//不可以购买的的原因(2015.8.11增加)
 "limit_max": 10, //最多购买(需要考虑限购商品逻辑,比如限购为5,已经买了1个,那么这里返回4)
 "limit_min": 1, //最少购买
 "ticketinfo":"标题:xxxx|时间:xxx",      //以 | 分隔的数据元素,代替原有的 property1 ,property2
 "play_time": "2014-12-01 00:00:00",    //景点票的play_time
 "shape_type": "1",   //票类型 1 电子票,2 实体票 
 "ticket_id": "1212",   //票种id
  "t_number":"10",//剩余库存
  "ticket_type":"1"//票务类型:1:演出;2:景点;3:通用,4:酒店
}
]
}
]

}

错误返回示例

参数不全

<error_code>300000</error_code>
<error_msg>参数不全</error_msg>

用户不存在

<error_code>301001</error_code>
<error_msg>无数据</error_msg>

示例代码