fix(mileage): 7天里程趋势忽略负值脏数据
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
v_vehicle_daily_stats.daily_km 偶发负值(粤A00828F 在 5.1 录得 -82061km), 源于里程表回滚 / 换 GPS 设备。SQL 聚合时把负值置 0,避免一辆脏数据车 拖垮整组的当日趋势柱。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -19,8 +19,10 @@ app.get('/', async (c) => {
|
|||||||
if (plates.length === 0) return c.json([]);
|
if (plates.length === 0) return c.json([]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 单车日里程负值视为脏数据(里程表回滚 / 换 GPS 设备),不纳入统计
|
||||||
let sql = `
|
let sql = `
|
||||||
SELECT DATE_FORMAT(stat_date, '%m-%d') as date, SUM(daily_km) as mileage
|
SELECT DATE_FORMAT(stat_date, '%m-%d') as date,
|
||||||
|
SUM(IF(daily_km < 0, 0, daily_km)) as mileage
|
||||||
FROM v_vehicle_daily_stats
|
FROM v_vehicle_daily_stats
|
||||||
WHERE stat_date >= DATE_SUB(CURDATE(), INTERVAL ? DAY) AND stat_date < CURDATE()
|
WHERE stat_date >= DATE_SUB(CURDATE(), INTERVAL ? DAY) AND stat_date < CURDATE()
|
||||||
`;
|
`;
|
||||||
|
|||||||
Reference in New Issue
Block a user