v0.5.3: fix multi-company API isolation (client_id param)

This commit is contained in:
2026-06-02 10:57:52 +03:00
parent a083f65323
commit 1b1b3b6bd7
3 changed files with 15 additions and 4 deletions
+4 -1
View File
@@ -37,6 +37,7 @@ function createEntriesRouter({ q }) {
// Определить компанию из запроса.
// Admin с ?company=<id> → компания по ID.
// User с ?client_id=<id> (мульти-компания) → компания по clientId.
// Иначе → компания пользователя (UPSERT).
async function resolveCompany(req) {
if (req.user.isAdmin && req.query.company) {
@@ -48,7 +49,9 @@ function createEntriesRouter({ q }) {
if (!c) throw Object.assign(new Error('Company not found'), { status: 404 });
return c;
}
return q.getOrCreateCompany(req.user.clientId, req.user.companyName);
// Мульти-компания: если передан client_id — использовать его
const effectiveClientId = req.query.client_id || req.user.clientId;
return q.getOrCreateCompany(effectiveClientId, req.user.companyName);
}
// GET /api/v1/entries — список записей + лимит