步数统计.md 4.1 KB

添加日常步数记录

stepRecord/addDaily

参数

  • 传单条记录
参数 类型 必须 备注
step int
distance int 距离 米
time string 日期时间 如 2020-01-01 00:00:00
  • 传多条记录
参数 类型 必须 备注
data json 每一条记录是一个数组,存 [步数,距离,时间戳]

[[100,200,1603261671]]


日常步数请求条件

  • 打开 app

打开 app 时 一年内 未汇报的数据 按小时 分条上报。如果超过一个月,则每个月发一次请求(一次请求有 24 * 30 条左右)

  • 用户查看数据图表

立即汇报所有未汇报的数据,不用按小时分条

  • 每分钟

如果未汇报步数记录超过了 5,则汇报一次

备注

  • 如果批量上传记录超过 100 条,则会转为任务进程处理,读取相关表格数据时 is_synchronizing 为 true,表示有数据正在同步
  • 后端会丢弃步数少于 5 的记录
  • 后端会将多条记录按 小时 粒度合成一条记录

一天

stepRecord/listOneDay

参数

参数 类型 必须 备注
date string 日期 如 2020-01-01 不传默认当天

返回

{
    "result":1,
    "code":0,
    "msg":"成功",
    "data":{
	"steps": [ // 24 个元素的数组,一天的 24 个小时的步数
		0,
		100,
	],
        "records":[
            {
				"type": "game",
				"record_id": 938,
				"consume": 9,
				"duration": 277,
				"step": 401,
				"distance": 120,
				"step_rate": "86.9",
				"created_at": "2021-03-29 02:00:00",
            }
        ],
        "sum":{
            "step":10747,               // 总步数
            "distance":5382,
            "step_game":9813,           // 游戏步数
            "step_daily":934,           // 日常步数
			"step_jog": 1000            // 跑步步数
            "step_rate_game": 95.4,     // 游戏步频
			"step_rate_game_max": 109.8 // 游戏最高步频
        },
		"is_synchronizing": false       // 后台是否正在同步数据
    }
}

按天

stepRecord/listByDay

参数

参数 类型 必须 备注
begin string 开始日期 如 2020-01-01
end string 结束日期 如 2020-01-01

返回

{
    "result":1,
    "code":0,
    "msg":"成功",
    "data":{
        "records":[
            {
				"consume": 154,
				"consume_game": 67,
				"consume_jog": 87,
				"duration": 2669,
				"duration_game": 2154,
				"duration_jog": 515,
				"step": 6932,
				"step_game": 3740,
				"step_jog": 2484,
				"step_daily": 708,
				"distance": 3477,
				"distance_game": 1810,
				"distance_jog": 1242,
				"distance_daily": 425,
				"created_at": "2021-03-01",
            }
        ],
        "sum":{
			"distance": 187141,
			"step_day_avg": 17134,
			"step": 376958,
			"step_game": 64545,
			"step_daily": 22201,
			"step_jog": 290212,
			"step_rate_game": 99.9,
			"step_rate_game_max": 120
        },
		"is_synchronizing": false  // 后台是否正在同步数据
    }
}

按月

stepRecord/listByMonth

参数

参数 类型 必须 备注
year int 年份 如 2020

返回

{
    "result":1,
    "code":0,
    "msg":"成功",
    "data":{
        "records":[
            {
				"consume": 2958,
				"consume_game": 343,
				"consume_jog": 2615,
				"duration": 28160,
				"duration_game": 11091,
				"duration_jog": 17069,
				"step": 101172,
				"step_game": 18382,
				"step_jog": 74704,
				"step_daily": 8086,
				"distance": 50216,
				"distance_game": 9563,
				"distance_jog": 37352,
				"distance_daily": 3301,
				"year": 2021,
				"month": 2,
            }
        ],
        "sum":{
			"distance": 244706,
			"step_day_avg": 16428,
			"step": 492845,
			"step_game": 85714,
			"step_daily": 30287,
			"step_jog": 376844,
			"step_rate_game": 99.6,
			"step_rate_game_max": 120
        },
		"is_synchronizing": false
    }
}