对接示例
模板id | 说明 | SDK支持版本 |
---|---|---|
01 | 文本 | 不限 |
02 | 文本+按钮列表 | 不限 |
drawer_list | 抽屉列表 | >=5.1.0 |
bubble_list | 气泡列表 | >=5.1.0 |
bubble_node_list | 气泡节点列表 | >=5.1.0 |
horizontal_sliding_list | 横滑卡片 | >=5.1.0 |
注:其他端不受版本限制
#示例 1:文本
在一触即达的流程中,根据企业在节点中设置的提取变量,结合企业接口地址,获取文本消息并填充到模板中,返回示例为:
{
"code": 200,
"desc": "success",
"result": {
"data": {
"item_list": [
{
"item_type": 0,
"label": "七鱼客服bot对接"
},
{
"item_type": 1,
"label": "<a href="http://qiyukf.netease.com/">七鱼客服</a>"
}
]
}
}
}
- 字段说明
参数 | 类型 | 必传 | 说明 |
---|---|---|---|
item_type | Int | 是 | 文本类型,0-普通文本,1-富文本 |
label | String | 是 | 文本内容 |
- xml模板填充样式
<template id="01">
#if(${data.item_list} && ${data.item_list.size()} > 0)
#foreach($item in $!{data.item_list})
<LinearLayout>
#if($!{item.item_type} == 0)
<text name="label">$!{item.label}</text>
#else
<richText name="label">$!{item.label}</richText>
#end
</LinearLayout>
#end
#end
</template>
#示例 2:文本+按钮列表
本模板为文本模板升级版,支持文本+按钮列表的样式。在一触即达的流程中,根据企业在节点中设置的提取变量,结合企业接口地址,获取文本消息并填充到模板中,返回示例为:
{
"code": 200,
"desc": "success",
"result": {
"data": {
"introducer": "引导语",
"item_list": [
{
"item_type": "0",
"label": "按钮1",
"params": "orderNo=0"
},
{
"item_type": "1",
"label": "按钮2",
"target": "http://qiyukf.netease.com",
"params": "orderNo=0"
}
]
}
}
}
- 字段说明
参数 | 类型 | 必传 | 说明 |
---|---|---|---|
introducer | String | 否 | 引导语文案 |
item_list | Array | 是 | 按钮列表 |
- 按钮字段说明
参数 | 类型 | 必传 | 说明 |
---|---|---|---|
item_type | Int | 是 | 按钮类型,0-跳转至下一个节点,1-跳转至外部链接 |
label | String | 是 | 按钮文案 |
params | String | 否 | 点击item跳转时携带的参数 |
target | String | 否 | 跳转至下一个节点时可不传target,跳转至外部链接时需配置链接地址 |
- xml模板填充样式
<template id="02">
<LinearLayout>
<text name="label">$!{data.introducer}</text>
</LinearLayout>
#if(${data.item_list} && ${data.item_list.size()} > 0)
#foreach(${item} in $!{data.item_list})
#if($!{item.item_type} == 0)
<LinearLayout>
<link type="block" style="button" target="${xml_nfid_block_1}" params="$!{item.params}">
<text name="label">$!{item.label}</text>
</link>
</LinearLayout>
#else
<LinearLayout>
<link type="url" style="button" target="$!{item.target}" params="$!{item.params}">
<text name="label">$!{item.label}</text>
</link>
</LinearLayout>
#end
#end
#end
</template>
#示例 3:抽屉列表
抽屉列表可以用于展示订单列表或商品列表,支持展示图文内容,也支持仅展示文字内容,样式如图:
如果需要返回抽屉列表内容,企业需要在一触即达查询节点内配置接口,并加入固定入参tabId,currentPage(代表当前要请求第几页),pageSize(代表每页的大小是多少)。拉取抽屉列表时,七鱼调用企业服务器,例如:tabId=1,currentPage=1,pageSize=5,代表拉取第1个分组的第1页共5条数据(注意:若params包含的参数为空,默认拉取第1个分组的第1页共5条数据,即相当于tabId=1,currentPage=1,pageSize=5)。企业可以自定义pageSize,默认值为5,最大不超过10。tabId和currentPage可以根据访客的点选动态赋值。在一触即达查询节点中的配置如下:
result返回值为企业订单列表的JSON数组,返回示例:
{
"code": 200,
"desc": "success",
"result": {
"data": {
"tab_id": 1,
"current_page": 1,
"page_size": 5,
"introducer": "请选择您想咨询的订单",
"banner": "选择咨询的订单",
"empty_list_hint": "无数据返回提示文案aaa",
"tab1":{
"name": "分组1",
"item_list": [
{
"item_type": "1",
"img": "https://img.alicdn.com/imgextra/i2/2228361831/12228361831.jpg",
"title": "考拉海购",
"sub_title": "卖家已发货"
},
{
"item_type": "0",
"img": "https://img.alicdn.com/imgextra/i2/2228361831/12228361831.jpg",
"title": "1ZARA 女装 加大码飞行员夹克777",
"sub_title": "1ZARA 女装 加大码飞行员夹克",
"attr_1": "100",
"attr_2": "100",
"attr_3": "100",
"target": "http://www.baidu.com",
"params": "orderNo=0"
},
{
"item_type": "0",
"img": "https://img.alicdn.com/imgextra/i2/2228361831/12228361831.jpg",
"title": "1ZARA 女装 加大码飞行员夹克888",
"sub_title": "1ZARA 女装 加大码飞行员夹克",
"attr_1": "100",
"attr_2": "100",
"attr_3": "100",
"target": "http://www.baidu.com",
"params": "orderNo=0"
},
{
"item_type": "1",
"img": "https://img.alicdn.com/imgextra/i2/2228361831/12228361831.jpg",
"title": "网易严选",
"sub_title": "卖家已发货"
},
{
"item_type": "0",
"img": "https://img.alicdn.com/imgextra/i2/2228361831/12228361831.jpg",
"title": "1ZARA 女装 加大码飞行员夹克999",
"sub_title": "1ZARA 女装 加大码飞行员夹克",
"attr_1": "100",
"attr_2": "100",
"attr_3": "100",
"target": "http://www.baidu.com",
"params": "orderNo=0"
},
{
"item_type": "0",
"img": "https://img.alicdn.com/imgextra/i2/2228361831/12228361831.jpg",
"title": "1ZARA 女装 加大码飞行员夹克000",
"sub_title": "1ZARA 女装 加大码飞行员夹克",
"attr_1": "100",
"attr_2": "100",
"attr_3": "100",
"target": "http://www.baidu.com",
"params": "orderNo=0"
}
]
},
"tab2":{
"name": "分组2",
"item_list": []
},
"tab3":{
"name": "分组3",
"item_list": []
},
"tab4":{
"name": "分组4",
"item_list": []
}
}
}
}
- 字段说明
参数 | 类型 | 必传 | 说明 |
---|---|---|---|
tab_id | Int | 是 | 当前列表分组id,从params中获取,若params为空,默认为1 |
current_page | Int | 是 | 当前页,从params中获取,若params为空,默认为1 |
page_size | Int | 是 | 每页数据条数,从params中获取,若params为空,默认为5,最多不超过10条 |
introducer | String | 是 | 引导语,不可为空值 |
banner | String | 否 | 提示语 |
empty_list_hint | String | 是 | 无数据返回提示文案,不可为空值 |
tab1 | Object | 是 | 列表分组1,对应分组id为1 |
tab2 | Object | 否 | 列表分组2,对应分组id为2 |
tab3 | Object | 否 | 列表分组3,对应分组id为3 |
tab4 | Object | 否 | 列表分组4,对应分组id为4 |
列表分组tab格式说明:
参数 | 类型 | 必传 | 说明 |
---|---|---|---|
name | String | 否 | 列表分组名称,如果不传则不展示该行内容 |
item_list | Array | 是 | 列表分组中item分组数据和item详细数据 |
item分组数据(item_type=1
)格式说明:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
item_type | String | 是 | 值固定为1 |
img | String | 否 | 缩略图地址 |
title | String | 否 | 标题,可以为空 |
sub_title | String | 否 | 副标题 |
item详细数据(item_type=0
)格式说明:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
item_type | String | 是 | 值固定为0 |
img | String | 否 | 缩略图地址 |
title | String | 否 | 标题 |
sub_title | String | 否 | 副标题 |
attr_1 | String | 否 | 属性1 |
attr_2 | String | 否 | 属性2 |
attr_3 | String | 否 | 属性3 |
params | String | 否 | 点击item跳转时携带的参数 |
target | String | 否 | 点击item的跳转目标地址或目标节点,若仅展示列表内容可以为空 |
注意事项:
<1> 为了降低企业对接难度和简化分页处理,item分组与item采用混排平铺的方式实现分组效果,item分组被当做一个特殊的item,两者的区别是item_type不同
<2> 抽屉列表要求至少包含一个列表分组,即tab1。当包含多个分组时,每次返回结果只需包含当前请求分组的item_list字段,但是需要填充其他分组的name字段。例如存在3个列表分组的情况下,在请求分组1的数据时,除了要填充tab1.name,tab1.item_list外,还需要填充tab2.name,tab3.name。
- xml模板填充样式
<template id="drawer_list">
<LinearLayout>
<text name="label">$!{data.introducer}</text>
<text name="empty_list_hint">$!{data.empty_list_hint}</text>
<text name="tab_id">$!{data.tab_id}</text>
<text name="title">$!{data.banner}</text>
</LinearLayout>
<group>
<tab>
<text name="tab_name">$!{data.tab1.name}</text>
</tab>
#if(1 == ${data.tab_id} && ${data.tab1.item_list} && ${data.tab1.item_list.size()} > 0)
#foreach(${item} in $!{data.tab1.item_list})
<LinearLayout>
<text name="p_item_type">$!{item.item_type}</text>
<link type="block" style="button" target="${xml_nfid_block_1}" params="$!{item.params}">
<image name="p_img" url="$!{item.img}"/>
<text name="p_title">$!{item.title}</text>
<text name="p_sub_title">$!{item.sub_title}</text>
<text name="p_attr_1">$!{item.attr_1}</text>
<text name="p_attr_2">$!{item.attr_2}</text>
<text name="p_attr_3">$!{item.attr_3}</text>
</link>
</LinearLayout>
#end
#end
#if(1 == ${data.tab_id})
#set($page_1 = ${data.current_page} + 1)
#else
#set($page_1 = 1)
#end
<action>
<link type="block" style="button" target="${xml_nfid_block_self}" params="tabId=1¤tPage=$!{page_1}&pageSize=5" >
<text name="label">查看更多</text>
</link>
</action>
</group>
<group>
<tab>
<text name="tab_name">$!{data.tab2.name}</text>
</tab>
#if(2 == ${data.tab_id} && ${data.tab2.item_list} && ${data.tab2.item_list.size()} > 0)
#foreach(${item} in $!{data.tab2.item_list})
<LinearLayout>
<text name="p_item_type">$!{item.item_type}</text>
<link type="block" style="button" target="${xml_nfid_block_2}" params="$!{item.params}">
<image name="p_img" url="$!{item.img}"/>
<text name="p_title">$!{item.title}</text>
<text name="p_sub_title">$!{item.sub_title}</text>
<text name="p_attr_1">$!{item.attr_1}</text>
<text name="p_attr_2">$!{item.attr_2}</text>
<text name="p_attr_3">$!{item.attr_3}</text>
</link>
</LinearLayout>
#end
#end
#if(2 == ${data.tab_id})
#set($page_2 = ${data.current_page} + 1)
#else
#set($page_2 = 1)
#end
<action>
<link type="block" style="button" target="${xml_nfid_block_self}" params="tabId=2¤tPage=$!{page_2}&pageSize=5" >
<text name="label">查看更多</text>
</link>
</action>
</group>
<group>
<tab>
<text name="tab_name">$!{data.tab3.name}</text>
</tab>
#if(3 == ${data.tab_id} && ${data.tab3.item_list} && ${data.tab3.item_list.size()} > 0)
#foreach(${item} in $!{data.tab3.item_list})
<LinearLayout>
<text name="p_item_type">$!{item.item_type}</text>
<link type="display" style="button" >
<image name="p_img" url="$!{item.img}"/>
<text name="p_title">$!{item.title}</text>
<text name="p_sub_title">$!{item.sub_title}</text>
<text name="p_attr_1">$!{item.attr_1}</text>
<text name="p_attr_2">$!{item.attr_2}</text>
<text name="p_attr_3">$!{item.attr_3}</text>
</link>
</LinearLayout>
#end
#end
#if(3 == ${data.tab_id})
#set($page_3 = ${data.current_page} + 1)
#else
#set($page_3 = 1)
#end
<action>
<link type="block" style="button" target="${xml_nfid_block_self}" params="tabId=3¤tPage=$!{page_3}&pageSize=5" >
<text name="label">查看更多</text>
</link>
</action>
</group>
<group>
<tab>
<text name="tab_name">$!{data.tab4.name}</text>
</tab>
#if(4 == ${data.tab_id} && ${data.tab4.item_list} && ${data.tab4.item_list.size()} > 0)
#foreach(${item} in $!{data.tab4.item_list})
<LinearLayout>
<text name="p_item_type">$!{item.item_type}</text>
<link type="url" style="button" target="$!{item.target}" params="$!{item.params}">
<image name="p_img" url="$!{item.img}"/>
<text name="p_title">$!{item.title}</text>
<text name="p_sub_title">$!{item.sub_title}</text>
<text name="p_attr_1">$!{item.attr_1}</text>
<text name="p_attr_2">$!{item.attr_2}</text>
<text name="p_attr_3">$!{item.attr_3}</text>
</link>
</LinearLayout>
#end
#end
#if(4 == ${data.tab_id})
#set($page_4 = ${data.current_page} + 1)
#else
#set($page_4 = 1)
#end
<action>
<link type="block" style="button" target="${xml_nfid_block_self}" params="tabId=4¤tPage=$!{page_4}&pageSize=5" >
<text name="label">查看更多</text>
</link>
</action>
</group>
</template>
#示例 4:气泡列表
气泡列表可以用于展示订单列表或商品列表,支持展示图文内容,也支持仅展示文字内容,样式如图:
如果需要返回气泡列表内容,企业需要在一触即达查询节点内配置接口,并加入固定入参currentPage,pageSize。拉取列表时,七鱼调用企业服务器,例如:currentPage=1,pageSize=5,代表拉取第1页共5条数据(注意:若params包含的参数为空,默认拉取的第1页共5条数据,即相当于currentPage=1,pageSize=5)。企业可以自定义pageSize,默认值为5,最大不超过10。currentPage可以根据访客的点选动态赋值。一触即达查询节点的配置请参看上文抽屉列表示例部分。
result返回值为企业订单列表的JSON数组,返回示例:
{
"code": 200,
"desc": "success",
"result": {
"data": {
"current_page": 1,
"page_size": 5,
"introducer": "请选择您想咨询的订单",
"banner": "选择咨询的订单",
"empty_list_hint": "无数据返回提示文案aaa",
"tab1":{
"item_list": [
{
"item_type": "1",
"img": "https://img.alicdn.com/imgextra/i2/2228361831/12228361831.jpg",
"title": "item分组",
"sub_title": "卖家已发货"
},
{
"item_type": "0",
"img": "https://img.alicdn.com/imgextra/i2/2228361831/12228361831.jpg",
"title": "1ZARA 女装 加大码飞行员夹克777",
"sub_title": "1ZARA 女装 加大码飞行员夹克",
"attr_1": "100",
"attr_2": "100",
"attr_3": "100",
"target": "http://www.baidu.com",
"params": "orderNo=0"
},
{
"item_type": "0",
"img": "https://img.alicdn.com/imgextra/i2/2228361831/12228361831.jpg",
"title": "1ZARA 女装 加大码飞行员夹克888",
"sub_title": "1ZARA 女装 加大码飞行员夹克",
"attr_1": "100",
"attr_2": "100",
"attr_3": "100",
"target": "http://www.baidu.com",
"params": "orderNo=0"
},
{
"item_type": "1",
"img": "https://img.alicdn.com/imgextra/i2/2228361831/12228361831.jpg",
"title": "item分组",
"sub_title": "卖家已发货"
},
{
"item_type": "0",
"img": "https://img.alicdn.com/imgextra/i2/2228361831/12228361831.jpg",
"title": "1ZARA 女装 加大码飞行员夹克999",
"sub_title": "1ZARA 女装 加大码飞行员夹克",
"attr_1": "100",
"attr_2": "100",
"attr_3": "100",
"target": "http://www.baidu.com",
"params": "orderNo=0"
},
{
"item_type": "0",
"img": "https://img.alicdn.com/imgextra/i2/2228361831/12228361831.jpg",
"title": "1ZARA 女装 加大码飞行员夹克000",
"sub_title": "1ZARA 女装 加大码飞行员夹克",
"attr_1": "100",
"attr_2": "100",
"attr_3": "100",
"target": "http://www.baidu.com",
"params": "orderNo=0"
}
]
}
}
}
}
- 字段说明
参数 | 类型 | 必传 | 说明 |
---|---|---|---|
current_page | Int | 是 | 当前页,从params中获取,若params为空,默认为1 |
page_size | Int | 是 | 每页数据条数,从params中获取,若params为空,默认为5,最多不超过10条 |
introducer | String | 是 | 引导语,不可为空值 |
banner | String | 否 | 提示语 |
empty_list_hint | String | 是 | 无数据返回提示文案,不可为空值 |
tab1 | Object | 是 | 列表分组,气泡列表仅支持一个列表分组 |
列表分组格式说明:
参数 | 类型 | 必传 | 说明 |
---|---|---|---|
item_list | Array | 是 | 列表分组中item分组数据和item详细数据 |
item分组数据(item_type=1
)格式说明:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
item_type | String | 是 | 值固定为1 |
img | String | 否 | 缩略图地址 |
title | String | 否 | 标题,可以为空 |
sub_title | String | 否 | 副标题 |
item详细数据(item_type=0
)格式说明:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
item_type | String | 是 | 值固定为0 |
img | String | 否 | 缩略图地址 |
title | String | 否 | 标题 |
sub_title | String | 否 | 副标题 |
attr_1 | String | 否 | 属性1 |
attr_2 | String | 否 | 属性2 |
attr_3 | String | 否 | 属性3 |
params | String | 否 | 点击item跳转时携带的参数 |
target | String | 否 | 点击item的跳转目标地址或目标节点,若仅展示列表内容可以为空 |
- xml模板填充样式
<template id="bubble_list">
<LinearLayout>
<text name="label">$!{data.introducer}</text>
<text name="empty_list_hint">$!{data.empty_list_hint}</text>
<text name="title">$!{data.banner}</text>
</LinearLayout>
<group>
#if(${data.tab1.item_list} && ${data.tab1.item_list.size()} > 0)
#foreach(${item} in $!{data.tab1.item_list})
<LinearLayout>
<text name="p_item_type">$!{item.item_type}</text>
<link type="block" style="button" target="${xml_nfid_block_1}" params="$!{item.params}">
<image name="p_img" url="$!{item.img}"/>
<text name="p_title">$!{item.title}</text>
<text name="p_sub_title">$!{item.sub_title}</text>
<text name="p_attr_1">$!{item.attr_1}</text>
<text name="p_attr_2">$!{item.attr_2}</text>
<text name="p_attr_3">$!{item.attr_3}</text>
</link>
</LinearLayout>
#end
#end
#set($page = ${data.current_page} + 1)
<action>
<link type="block" style="button" target="${xml_nfid_block_self}" params="currentPage=$!{page}&pageSize=5" >
<text name="label">查看更多</text>
</link>
</action>
</group>
</template>
#示例 5:横滑卡片列表
横滑卡片列表可以用于展示商品列表,支持展示图文内容,样式如下:
如果需要返回横滑卡片列表内容,企业需要在一触即达查询节点内配置接口,并加入固定入参currentPage,pageSize。拉取列表时,七鱼调用企业服务器,例如:currentPage=1,pageSize=5,代表拉取第1页共5条数据(注意:若params包含的参数为空,默认拉取的第1页共5条数据,即相当于currentPage=1,pageSize=5)。企业可以自定义pageSize,默认值为5,最大不超过10。currentPage可以根据访客的点选动态赋值。一触即达查询节点的配置请参看上文抽屉列表示例部分。
result返回值为企业订单列表的JSON数组,返回示例:
{
"code": 200,
"desc": "success",
"result": {
"data": {
"current_page": 1,
"page_size": 5,
"introducer": "引导语aaa",
"empty_list_hint": "无数据返回提示文案aaa",
"tab1":{
"item_list": [
{
"item_type": "0",
"img": "https://img.alicdn.com/imgextra/i2/2228361831/12228361831.jpg",
"title": "1ZARA 女装 加大码飞行员夹克777",
"sub_title": "1ZARA 女装 加大码飞行员夹克",
"attr_1": "100",
"attr_2": "100",
"attr_3": "100",
"target": "http://www.baidu.com",
"params": "orderNo=0"
},
{
"item_type": "0",
"img": "https://img.alicdn.com/imgextra/i2/2228361831/12228361831.jpg",
"title": "1ZARA 女装 加大码飞行员夹克888",
"sub_title": "1ZARA 女装 加大码飞行员夹克",
"attr_1": "100",
"attr_2": "100",
"attr_3": "100",
"target": "http://www.baidu.com",
"params": "orderNo=0"
},
{
"item_type": "0",
"img": "https://img.alicdn.com/imgextra/i2/2228361831/TB2Zo._a5GO.eBjSZFjXXcU9FXa_!!2228361831.jpg",
"title": "1ZARA 女装 加大码飞行员夹克",
"sub_title": "1ZARA 女装 加大码飞行员夹克",
"attr_1": "100",
"attr_2": "100",
"attr_3": "100",
"target": "http://www.baidu.com",
"params": "orderNo=0"
},
{
"item_type": "0",
"img": "https://img.alicdn.com/imgextra/i2/2228361831/12228361831.jpg",
"title": "1ZARA 女装 加大码飞行员夹克999",
"sub_title": "1ZARA 女装 加大码飞行员夹克",
"attr_1": "100",
"attr_2": "100",
"attr_3": "100",
"target": "http://www.baidu.com",
"params": "orderNo=0"
},
{
"item_type": "0",
"img": "https://img.alicdn.com/imgextra/i2/2228361831/12228361831.jpg",
"title": "1ZARA 女装 加大码飞行员夹克000",
"sub_title": "1ZARA 女装 加大码飞行员夹克",
"attr_1": "100",
"attr_2": "100",
"attr_3": "100",
"target": "http://www.baidu.com",
"params": "orderNo=0"
}
]
}
}
}
}
- 字段说明
参数 | 类型 | 必传 | 说明 |
---|---|---|---|
current_page | Int | 是 | 当前页,从params中获取,若params为空,默认为1 |
page_size | Int | 是 | 每页数据条数,从params中获取,若params为空,默认为5,最多不超过5条 |
introducer | String | 是 | 引导语,不可为空值 |
empty_list_hint | String | 是 | 无数据返回提示文案,不可为空值 |
tab1 | Object | 是 | 列表分组,横滑卡片列表仅支持一个列表分组 |
列表分组格式说明:
参数 | 类型 | 必传 | 说明 |
---|---|---|---|
item_list | Array | 是 | 列表分组中的item详细数据 |
item分组数据(item_type=1
)格式说明:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
item_type | String | 是 | 值固定为1 |
img | String | 否 | 缩略图地址 |
title | String | 否 | 标题,可以为空 |
item详细数据(item_type=0
)格式说明:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
item_type | String | 是 | 值固定为0 |
img | String | 否 | 缩略图地址 |
title | String | 否 | 标题 |
sub_title | String | 否 | 副标题 |
attr_1 | String | 否 | 属性1 |
attr_2 | String | 否 | 属性2 |
attr_3 | String | 否 | 属性3 |
params | String | 否 | 点击item跳转时携带的参数 |
target | String | 否 | 点击item的跳转目标地址或目标节点,若仅展示列表内容可以为空 |
注意事项:
<1> 横滑卡片的数据填充企业可以按两种模式处理:一种是传统的分页模式,此时currentPage代表页码;一种是随机模式,此时currentPage代表轮次,可以随机返回item。企业可以根据不同场景选择合适的模式。
- xml模板填充样式
<template id="horizontal_sliding_list">
<LinearLayout>
<text name="label">$!{data.introducer}</text>
<text name="empty_list_hint">$!{data.empty_list_hint}</text>
</LinearLayout>
#if(${data.tab1.item_list} && ${data.tab1.item_list.size()} > 0)
#foreach(${item} in $!{data.tab1.item_list})
<LinearLayout>
<link type="block" style="button" target="${xml_nfid_block_1}" params="$!{item.params}">
<image name="p_img" url="$!{item.img}"/>
<text name="p_title">$!{item.title}</text>
<text name="p_sub_title">$!{item.sub_title}</text>
<text name="p_attr_1">$!{item.attr_1}</text>
<text name="p_attr_2">$!{item.attr_2}</text>
<text name="p_attr_3">$!{item.attr_3}</text>
</link>
</LinearLayout>
#end
#end
#set($page = ${data.current_page} + 1)
<action>
<link type="block" style="button" target="${xml_nfid_block_self}" params="currentPage=$!{page}&pageSize=5" >
<text name="label">换一批</text>
</link>
</action>
</template>
#示例 6:气泡节点列表
气泡节点列表可以实现类似时间轴列表的效果,可以用于展示物流信息,企业也可以根据自己的需求灵活定制,样式如下:
拉取气泡节点列表时,七鱼调用企业服务器,目前不用在一触即达查询节点的接口配置中设置固定入参。result返回值为订单列表的JSON数组,返回示例为:
{
"code": 200,
"desc": "success",
"result": {
"data":
{
"introducer": "引导语",
"empty_list_hint": "无数据返回提示文案",
"banner": "标题",
"footer": "查看更多",
"target": "https://qiyukf.com",
"item_list": [
{
"title": "业务员二片区岸上蓝山正在第1次派件",
"desc": "2017-05-17 18:01:38",
"is_current": "1"
},
{
"title": "业务员二片区岸上蓝山正在第2次派件",
"desc": "2017-05-17 18:01:38",
"is_current": "0"
},
{
"title": "业务员二片区岸上蓝山正在第3次派件",
"desc": "2017-05-17 18:01:38",
"is_current": "0"
},
{
"title": "业务员二片区岸上蓝山正在第4次派件",
"desc": "2017-05-17 18:01:38",
"is_current": "0"
},
{
"title": "业务员二片区岸上蓝山正在第5次派件",
"desc": "2017-05-17 18:01:38",
"is_current": "0"
},
{
"title": "业务员二片区岸上蓝山正在第6次派件",
"desc": "2017-05-17 18:01:38",
"is_current": "0"
},
{
"title": "业务员二片区岸上蓝山正在第7次派件",
"desc": "2017-05-17 18:01:38",
"is_current": "0"
}
]
}
}
}
- 字段说明
参数 | 类型 | 必传 | 说明 |
---|---|---|---|
introducer | String | 是 | 引导语,不可为空值 |
banner | String | 否 | 标题 |
footer | String | 否 | 自定义底部按钮的提示语,默认“查看更多” |
target | String | 否 | 如果底部按钮的跳转事件设置为跳转到外链,此处传入外链的链接地址 |
empty_list_hint | String | 是 | 无数据返回提示文案,不可为空值 |
item_list | Array | 是 | 列表 |
item数据格式说明:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
title | String | 否 | 标题 |
desc | String | 否 | 描述 |
is_current | String | 是 | 是否停留在当前节点:1-是 0-否 |
- xml模板填充样式
<template id="bubble_node_list">
<LinearLayout>
<text name="label">$!{data.introducer}</text>
<text name="empty_list_hint">$!{data.empty_list_hint}</text>
<text name="title">$!{data.banner}</text>
</LinearLayout>
<LinearLayout>
<text name="label">$!{data.title}</text>
</LinearLayout>
#if(${data.item_list} && ${data.item_list.size()} > 0)
#foreach($item in $!{data.item_list})
<LinearLayout>
<text name="p_title">$!{item.title}</text>
<text name="p_desc">$!{item.desc}</text>
<text name="p_is_current">$!{item.is_current}</text>
</LinearLayout>
#end
</LinearLayout>
#end
<action>
<link type="url" style="button" target="$!{data.target}"">
<text name=\"label\">${data.footer}</text>
</link>
</action>
</template>