2018国家会展中心可视化项目需求分析 - yty/yty.github.io GitHub Wiki
访问连接:
http://zbh.trwenhua.com:8989/app/queryGridPeopleNumData?reqDate=20180726131500
请求参数:
reqDate string类型,总是5分钟的倍数加1分的时间。 2018.8.25日添加。
返回结果:
根据约定顺序返回对应结果。(顺序见表1)
Json格式:
{
"msg": "",
"status": 0,
"time": 2018.8.24 添加给现场界定问题。
"peopleParameterList": [
0,
0...//2018.9.10 数量同表1数量
]
}
访问连接:
请求参数:
场馆编号 string类型 (如需要同时发送多个场馆,约定,为分隔符,例如:1,4.1) 2018.10.9去掉,始终按表1顺序返回全部的。但为了配合后台还是保留字段。后台会忽略我传的任何编号值。
2018.10.16 今天后台要求必须是all才能正常。
开始时间 string类型
结束时间 string类型 (2018.8.24 开会确定删除,并且未发生的时间不在不补0)
时间间隔 int类型 (单位:分钟,传5就按每5分钟一个间隔来生成数据,传10就按每10分钟一个间隔来生成数据)
数据时间颗粒为5分钟,如果开始设置为00:00,结束设置为13:00,却在02:01时发起请求,每个场馆均只返回12*2=24个数据(但实际情况是并不能保证这个数量)
2018.9.21 本来此接口已经删除掉的,但今天收到需求必须要历史的,所以再次打开。(作用为我程序运行后会先获取历史数据,然后后面用接口1自己缓存)
返回结果:
根据输入时间范围返回对应结果。
10分钟的Json格式:
{
"msg": "",
"status": 0,
"time": 2018.8.24 添加给现场界定问题。
"item": [
{
"name": "Indoor", // 返回数据对应的场景编号 2018.10.03 变更名字
"item": [ //是Indoor人数的集合,每5分钟1个,10分钟是2个,如果是1小时就是12个。
10,
20,
30
]
},
{
"name": "1",
"item": [
1,
2,
3
]
},
{
"name": "4.1",
"item": [
100,
200,
300
]
}
]
}
访问连接:
请求参数:
IMSI号 整数
开始时间 string类型
结束时间 string类型
返回结果:
根据输入的IMSI号、场馆编号、时间范围返回对应用户轨迹数据。(包含场馆编号)
25分钟的Json格式:(目前得知的保存时间精度是5分钟一次)
{
"msg": "",
"status": 0,
"coordParameterList": [
{
"x": 0,
"y": 1,
"region": "4.1"
},
{
"x": 0,
"y": 2,
"region": "4.1"
},
{
"x": 0,
"y": 3,
"region": "4.1"
},
{
"x": 0,
"y": 4,
"region": "4.1"
},
{
"x": 0,
"y": 5,
"region": "4.1"
}
]
}
访问连接:
http://zbh.trwenhua.com:8989/app/queryGridDataByRegion?region=4.1 http://zbh.trwenhua.com:8989/app/queryGridDataByRegion?region=1,2,3,4.1,4.2,5.1,5.2,6.1,6.2,7.1,7.2,8.1,8.2,NH,WH,EH http://zbh.trwenhua.com:8989/app/queryGridDataByRegion?region=V1_1,V1_2,V1_3,V1_4,V2_1,V2_2,V2_3,V3_1,V3_2,V3_3,V3_4,V3_5,V3_6,V3_7,V4_1,V4_2,V4_3,V4_4,V4_5,V4_6,V5 http://zbh.trwenhua.com:8989/app/queryGridDataByRegion?region=1,2,3,4.1,4.2,5.1,5.2,6.1,6.2,7.1,7.2,8.1,8.2,NH,WH,EH,V1_1,V1_2,V1_3,V1_4,V2_1,V2_2,V2_3,V3_1,V3_2,V3_3,V3_4,V3_5,V3_6,V3_7,V4_1,V4_2,V4_3,V4_4,V4_5,V4_6,V5 请求参数:
场馆编号 string类型 (如需要同时获取多个场馆,约定,为分隔符,例如: All,1,4.1)//2018.09.19 为了支持全馆热力图而添加,之前只能返回单馆。
返回结果:
根据指定场馆编号返回栅格集合(同时满足inDoor区域和与传入参数相同的场景编号)
2018.10.13 需要支持返回所有馆的栅格数据
2018.09.19 为了支持全馆热力图而添加region返回参数,
2018.07.29 新增加一个条件,只返回userCount大于0的栅格。
包含5个栅格集合的Json格式:
{
"msg": "",
"status": 0,
"time": 2018.8.24 添加给现场界定问题。
"gridParameterList": [
{
"x": 0,
"y": 1,
"userCount": 1,
"region": "4.1" //2018.09.19 为了支持全馆热力图而添加,
},
{
"x": 0,
"y": 2,
"userCount": 2,
"region": "4.2" //2018.09.19 为了支持全馆热力图而添加,
},
{
"x": 0,
"y": 3,
"userCount": 3,
"region": "1" //2018.09.19 为了支持全馆热力图而添加,
},
{
"x": 1,
"y": 0,
"userCount": 4,
"region": "4.1" //2018.09.19 为了支持全馆热力图而添加,
},
{
"x": 1,
"y": 1,
"userCount": 5,
"region": "NH" //2018.09.19 为了支持全馆热力图而添加,
}
]
}
访问连接:
请求参数:
场馆编号 string类型 新增加indoor和outdoor参数来返回所有馆内和馆外的历史栅格数据,2018.10.13 添加
告警人数 int 类型
2018.9.15 添加
2018.9.17 又取消了,但是这里接口仍然保留,后台忽略我这个参数。
开始时间 string类型
结束时间 string类型
数据时间颗粒为5分钟,如果开始设置为00:00,结束设置为13:00,却在02:01时发起请求,每个场馆均只返回12*2=24组数据
返回结果:
根据指定场馆编号、时间、告警人数返回栅格集合(同时满足inDoor区域和与传入参数相同的场景编号并且userCount大于指定告警人数的栅格)2018.9.15 编辑
2018.08.09 因发现界面还有每个时间段的总人数信息显示需求,之前没有考虑到,现在是临时可视化自己相加得出,后面是否需要增加到返回参数待定。
2018.07.29 新增加一个条件,只返回userCount大于0的栅格。
包含2个时间颗粒的Json格式:
{
"msg": "",
"status": 0,
"gridHistoryParameterList": [
{
"date": "201807251800",
"total": 1000,
"grids": [
{
"x": 0,
"y": 0,
"userCount": 3,
"region": "4.1"
},
{
"x": 2,
"y": 3,
"userCount": 4,
"region": "4.1"
},
{
"x": 1,
"y": 1,
"userCount": 5,
"region": "4.1"
}
],
"misc": { // 2018.9.21 根据新需求添加
"male": 0.0,
"female": 0.0,
"age1": 0.0,
"age2": 0.0,
"age3": 0.0,
"age4": 0.0,
"age5": 0.0,
"imei": 100, //2018.10.13 新增加
"source1": "102,上海",
"source2": "91,_江苏",
"source3": "82,_浙江",
"source4": "73,_北京",
"source5": "64,_山东",
"source6": "55,_安徽",
"source7": "46,_湖南",
"source8": "37,_湖北",
"source9": "28,_广州",
"source10": "19,_河南",
"gloal1": "190,_美国", //2018.09.26 为境外境内需求而添加,规则同国内来源。
"gloal2": "180,_美国",
"gloal3": "170,_美国",
"gloal4": "150,_美国",
"gloal5": "140,_美国",
"gloal6": "130,_美国",
"gloal7": "120,_美国",
"gloal8": "100,_美国",
"gloal9": "60,_美国",
"gloal10": "30,_美国",
"time": ""
}
}
]
}
访问连接:
http://zbh.trwenhua.com:8989/app/queryHiGridDataHourLatest
请求参数: 无
返回结果:
根据场馆约定顺序返回最后1个小时的所有场馆数据。(顺序见表1,注意需要包含所有馆之和的数据在第0位)
Json格式:
{
"msg": "",
"status": 0,
"miscParameter": [
{
"male": 60.0, //2018.9.10 必须是具体人数
"female": 40.0,
"age1": 10.0, //2018.9.10 必须是具体人数
"age2": 20.0,
"age3": 10.0,
"age4": 10.0,
"age5": 5.0,
"imei": 100, //2018.10.13 新增加
"source1": "102,上海", //2018.9.10 来源地由省内、省外变成前10名人数最多的省市。其中102为人数,,为分隔符,上海为省份名
"source2": "91,_江苏",
"source3": "82,_浙江",
"source4": "73,_北京",
"source5": "64,_山东",
"source6": "55,_安徽",
"source7": "46,_湖南",
"source8": "37,_湖北",
"source9": "28,_广州",
"source10": "19,_河南",
"gloal1": "190,_美国", //2018.09.26 为境外境内需求而添加,规则同国内来源。
"gloal2": "180,_美国",
"gloal3": "170,_美国",
"gloal4": "150,_美国",
"gloal5": "140,_美国",
"gloal6": "130,_美国",
"gloal7": "120,_美国",
"gloal8": "100,_美国",
"gloal9": "60,_美国",
"gloal10": "30,_美国",
"time": //2018.8.24 添加给现场界定问题。
},
{
...
} //2018.9.10 数量同表1
]
}
访问连接:
http://zbh.trwenhua.com:8989/app/userScatterPoint
请求参数:
场馆编号 string类型
IMSI号集合 Int64数组类型
时间点集合 string数组类型
返回结果:
根据输入的IMSI号、场馆编号、时间范围返回对应用户散点数据。(包含场馆编号)
请求参数集合json
{"region":"4.1","tels":[13817389873,13917069995,15214300190,13816670801,15921260193,15000070194,15921680193,15921170193,15800700193,15000550024],"times":["11:30","11:45","11:48","12:00","12:06","12:14","12:24","12:31"]}
返回参数集合json
{
"msg": "",
"status": 0,
"scatterParameter": [
{
"tels": 111,
"scatterPar": [
{
"times": "11:30",
"region": {
"X": 0,
"Y": 0,
"REGION": "4.1"
}
},
{
"times": "",
"region": {
"X": 0,
"Y": 0,
"REGION": ""
}
},
{
"times": "",
"region": {
"X": 0,
"Y": 0,
"REGION": ""
}
},
{
"times": "",
"region": {
"X": 0,
"Y": 0,
"REGION": ""
}
},
{
"times": "",
"region": {
"X": 0,
"Y": 0,
"REGION": ""
}
},
{
"times": "",
"region": {
"X": 0,
"Y": 0,
"REGION": ""
}
},
{
"times": "",
"region": {
"X": 0,
"Y": 0,
"REGION": ""
}
},
{
"times": "",
"region": {
"X": 0,
"Y": 0,
"REGION": ""
}
}
]
},
{
"tels": 222,
"scatterPar": []
},
{
"tels": 333,
"scatterPar": []
},
{
"tels": 444,
"scatterPar": []
},
{
"tels": 555,
"scatterPar": []
},
{
"tels": 666,
"scatterPar": []
},
{
"tels": 777,
"scatterPar": []
},
{
"tels": 888,
"scatterPar": []
},
{
"tels": 999,
"scatterPar": []
},
{
"tels": 100,
"scatterPar": []
}
]
}
访问连接: //只有馆内的,但是最后没有用。 http://zbh.trwenhua.com:8989/app/queryGridWarnData?warnNum=20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20
请求参数:
告警人数 string类型 (可分别为每个场馆设置不同的告警人数,约定,为分隔符,例如: 50,40,40,30,50...每次保证数量都是表1的数量-1,也就是没有All) //2018.9.10 修改
如果某个馆为-1,那么可以直接忽略这个馆的告警统计。//2018.9.13 修改
告警时间 string 类型 (2018.08.11由甘老师确认取消)
返回结果:
根据指定的告警人数,返回符合条件的栅格集合(每个栅格只返回最后一个时间的,2018.8.24由小张提出问题,不在是返回最后一个时间,而是和接口1,2,4的机制相同)
(例如告警人数设置为100,告警时间设置01:00:00,就返回所有单个栅格内连续1个小时超过100人的集合,2018.08.11由甘老师确认取消)
包含3个报警信息的Json格式:
{
"msg": "",
"status": 0,
"warningParameter": [
{
"x": 0,
"y": 1,
"userCount": 0,
"region": "4.1",
"times": "2018-08-20 12:00:00" // 此时间为告警从什么时候开始的 ,但2018.08.11由甘老师确认变成当前时间。
},
{
"x": 0,
"y": 2,
"userCount": 0,
"region": "4.2",
"times": "2018-08-20 11:00:00"
},
{
"x": 0,
"y": 3,
"userCount": 0,
"region": "3",
"times": "2018-08-20 13:00:00"
}
]
}
用于解决 “通过约定” 里的 status 为3后(数据没更新不在返回数据),如关闭程序再次运行程序,会因后台数据无改变而不会再次发送数据的问题。
访问连接:
http://zbh.trwenhua.com:8989/app/refreshAllData
请求参数:
无
返回结果:
{
"msg": "",
"status": 0,
}
访问连接:
http://zbh.trwenhua.com:8989/app/setUserPercent?userPercent=0.9
请求参数:
移动百分比 float 类型 值范围 0.00 - 1.00 (对应0% - 100%)
返回结果:
{
"msg": "",
"status": 0,
}
访问连接:
http://zbh.trwenhua.com:8989/app/getUserPercent
请求参数:
无
返回结果:
{
"msg": "",
"status": 0,
"userPercent”:0.1, // 移动百分比 float 类型 值范围 0.00 - 1.00 (对应0% - 100%) 2018.9.15
}
访问连接:
http://zbh.trwenhua.com:8989/app/clearDate?clearDate=20180909121200
请求参数:
开始时间 string类型
2018.9.23 为了提高测试服获取数据效率而添加。
返回结果:
{
"msg": "",
"status": 0,
}
访问连接:
http://zbh.trwenhua.com:8989/app/setGridTime?time=20180909121200
请求参数:
开始时间 string类型
如果设置0 那么自动就采用系统时间
2018.9.23 例如现在晚上6点,却想测试早8点数据连续推送得情况而添加。
返回结果:
{
"msg": "",
"status": 0,
}
访问连接:
请求参数:
场馆编号 string类型 region
开始时间 string类型 beginDate
结束时间 string类型 endDate
数据时间颗粒为1分钟,如果开始设置为00:00,结束设置为13:00,却在02:01时发起请求,每个场馆均只返回60*2=120组数据
返回结果:
根据指定场馆编号、时间返回栅格集合
2018.09.26 根据新需求而添加,具体规则可咨询甘老师。
{
"msg": "",
"status": 0,
"peopleHistoryParameterList": [
{
"date": "20180926210100",
"total": 3
},
{
"date": "20180926210200",
"total": 30
},
{
"date": "20180926210300",
"total": 50
}
]
}
访问连接:
http://zbh.trwenhua.com:8989/app/querySwitchInfo
请求参数:
开关 string类型 0为关,1为开 // 2018.10.13去掉,改完只返回特定人数。
无
返回结果:
{
"count":10, // 2018.10.13添加,具体根据什么得出数量,需与李杰沟通
"msg": "",
"status": 0,
}
访问连接:
请求参数:
场馆编号 string类型 只接受indoor和outdoor参数
开始时间 string类型
结束时间 string类型
数据时间颗粒为5分钟,如果开始设置为00:00,结束设置为13:00,却在02:01时发起请求,每个场馆均只返回12*2=24组数据
返回结果:
根据指定场馆编号、时间、告警人数返回栅格集合(同时满足inDoor区域和与传入参数相同的场景编号并且userCount大于指定告警人数的栅格)
{
"msg": "",
"status": 0,
"gridHistoryParameterList": [
{
"date": "201807251800",
"total": 1000,
"grids": [
{
"x": 0,
"y": 0,
"userCount": 3,
"region": "4.1"
},
{
"x": 2,
"y": 3,
"userCount": 4,
"region": "1"
},
{
"x": 1,
"y": 1,
"userCount": 5,
"region": "2"
}
],
"misc": {
"male": 0.0,
"female": 0.0,
"age1": 0.0,
"age2": 0.0,
"age3": 0.0,
"age4": 0.0,
"age5": 0.0,
"imei": 100,
"source1": "102,上海",
"source2": "91,_江苏",
"source3": "82,_浙江",
"source4": "73,_北京",
"source5": "64,_山东",
"source6": "55,_安徽",
"source7": "46,_湖南",
"source8": "37,_湖北",
"source9": "28,_广州",
"source10": "19,_河南",
"gloal1": "190,_美国",
"gloal2": "180,_美国",
"gloal3": "170,_美国",
"gloal4": "150,_美国",
"gloal5": "140,_美国",
"gloal6": "130,_美国",
"gloal7": "120,_美国",
"gloal8": "100,_美国",
"gloal9": "60,_美国",
"gloal10": "30,_美国",
"time": ""
}
}
]
}
访问连接:
请求参数:
场馆编号 string类型 region 只接受indoor和outdoor参数
开始时间 string类型 beginDate
结束时间 string类型 endDate
数据时间颗粒为1分钟,如果开始设置为00:00,结束设置为13:00,却在02:01时发起请求,每个场馆均只返回60*2=120组数据
返回结果:
根据指定场馆、时间返回栅格集合
{
"msg": "",
"status": 0,
"peopleHistoryParameterList": [
{
"date": "20180926210100",
"total": 3
},
{
"date": "20180926210200",
"total": 30
},
{
"date": "20180926210300",
"total": 50
}
]
}
访问连接:
场馆编号 string类型 (支持表1内的所有编号,包括Indoor和Outdoor)
开始时间 string类型
结束时间 string类型
时间间隔 int类型 (单位:分钟,传5就按每5分钟一个间隔来生成数据,传10就按每10分钟一个间隔来生成数据)
数据时间颗粒为5分钟,如果开始设置为00:00,结束设置为13:00,却在02:01时发起请求,每个场馆均只返回12*2=24个数据(但实际情况是并不能保证这个数量)
返回结果:
根据输入时间范围返回对应结果。
10分钟的Json格式:
{
"msg": "",
"status": 0,
"time": 2018.8.24 添加给现场界定问题。
"item": [ //是Indoor人数的集合,每5分钟1个,10分钟是2个,如果是1小时就是12个。
10,
20,
30
]
}
栅格坐标:
第一版横向300个,纵向栅格230个。gis栅格的左上角0,0, 右上角为0,299。左下角为 229,0,右下角为229,299。
第二版横向150个,纵向栅格115个。gis栅格的左上角0,0, 右上角为0,149。左下角为 114,0,右下角为114,149。
第三版横向134个,纵向栅格186个。gis栅格的左上角133,0, 右上角为133,185。左下角为 0,0,右下角为0,185。 //2018.9.10 添加
时间格式: yyyymmddhhmm (24小时制,例如201807251800)
status: 0 正常 1 没数据 2 异常 3是否更新(还需讨论)
-
- Indoor // 只统计Indoor的 2018.09.16 修改,2018.10.03 变更名字
-
- 1.1 //Indoor //2019.09.17 修改名字
-
- 1.2 //2019.09.17 新增加
-
- 2.1 //2019.09.17 修改名字
-
- 2.2 //2019.09.17 新增加
-
- 3.1 //2019.09.17 修改名字
-
- 4.1
-
- 4.2
-
- 5.1
-
- 5.2
-
- 6.1
-
- 6.2
-
- 7.1
-
- 7.2
-
- 8.1
-
- 8.2
-
- NH
-
- EH
-
- WH
-
- V4_7(界面显示NS)//2019.10.19 新添加
-
- Outdoor //2018.10.03 新添加
-
- V1_1 //outdoor 2018.09.16 添加
-
- V1_2
-
- V1_3
-
- V1_4
-
- V2_1
-
- V2_2
-
- V2_3
-
- V3_1
-
- V3_2
-
- V3_3
-
- V3_4
-
- V3_5
-
- V3_6
-
- V3_7
-
- V4_1
-
- V4_2
-
- V4_3
-
- V4_4
-
- V4_5
-
- V4_6
-
- V5
-
- YGR (盈港东路)
-
- ZGR (诸光路)
-
- LGR (涞港路)
##需求日志:
08.25
1 全展馆热力图
2 圈选或定制小区域
3 top10 栅格
4 展台地图叠加
5 移动市场占用率,隐蔽可配置。
##需要后台要做的配合##
1.添加接口6的新参数。
2.接口2在测试服时,要根据不同的馆返回不同的历史人数。例如馆1都返回1,馆外都返回2,馆3都返回3...以此类推。
3.提供接口15地址。
4.解决测试服20分钟就挂掉的问题 (如果去掉缓存,主要是会加长哪个接口的返回时间,需要在讨论一下) 2018.10.18
5.解决测试服接口1过一段时间就无法更新时间的问题。
6.完成新接口16 2018.10.18
7.完成新接口17 2018.10.18
8.测试服接口5现在要查询几月几号几点到几点哪个馆才会有数据?之前是0726 11点开始到2点的4.1馆,现在已经查不到了。