fix: 本周动态也基于权限过滤后的车辆计算
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
kkfluous
2026-04-02 16:57:32 +08:00
parent 441f574238
commit 840bf30517

View File

@@ -509,7 +509,8 @@ async function getWeeklyStats(): Promise<WeeklyStats> {
// GET /api/vehicles/summary
app.get('/summary', async (c) => {
const [vehicles, weekly] = await Promise.all([getVehiclesForUser(c), getWeeklyStats()]);
const [vehicles, weeklyIds] = await Promise.all([getVehiclesForUser(c), getWeeklyTruckIds()]);
const vehicleIds = new Set(vehicles.map(v => String(v.id)));
const summary: SummaryData = {
totalAssets: vehicles.length,
operating: {
@@ -525,11 +526,11 @@ app.get('/summary', async (c) => {
abnormal: vehicles.filter((v) => v.status === 'Abnormal').length,
},
pendingDelivery: vehicles.filter((v) => v.status === 'Pending').length,
weeklyNew: weekly.weeklyNew,
weeklyRemoved: weekly.weeklyRemoved,
weeklyDelivered: weekly.weeklyDelivered,
weeklyReturned: weekly.weeklyReturned,
weeklyReplaced: weekly.weeklyReplaced,
weeklyNew: 0,
weeklyRemoved: 0,
weeklyDelivered: [...weeklyIds.delivered].filter(id => vehicleIds.has(id)).length,
weeklyReturned: [...weeklyIds.returned].filter(id => vehicleIds.has(id)).length,
weeklyReplaced: [...weeklyIds.replaced].filter(id => vehicleIds.has(id)).length,
};
return c.json(summary);
});