From b3d0fc36a6956efb839a98306f19fc0a4b44c9cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9CNaeel=E2=80=9D?= Date: Mon, 15 Jun 2026 10:43:19 +0400 Subject: [PATCH] =?UTF-8?q?v0.6.10:=20=D0=BF=D1=80=D0=BE=D0=B2=D0=B5=D1=80?= =?UTF-8?q?=D0=BA=D0=B0=20clientId=20=D0=B2=20getOrCreateCompany=20(3-?= =?UTF-8?q?=D0=B9=20=D1=83=D1=80=D0=BE=D0=B2=D0=B5=D0=BD=D1=8C)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 +- v2/src/config/index.js | 2 +- v2/src/db/queries.js | 1 + 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 5c56b96..b42b60e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ipwhitelist", - "version": "0.6.9", + "version": "0.6.10", "description": "IP WhiteList microservice for cloud provider", "main": "server.js", "scripts": { diff --git a/v2/src/config/index.js b/v2/src/config/index.js index e25c050..82fb505 100644 --- a/v2/src/config/index.js +++ b/v2/src/config/index.js @@ -9,7 +9,7 @@ // ═══════════════════════════════════════════════════════════════════════════════ module.exports = { - version: '0.6.9', + version: '0.6.10', // ── IAM ────────────────────────────────────────────────────────────────── iamUrl: process.env.V2_IAM_URL || 'https://auth-api.ngcloud.ru/api/v1/auth/user', diff --git a/v2/src/db/queries.js b/v2/src/db/queries.js index bcde74a..1fffcb5 100644 --- a/v2/src/db/queries.js +++ b/v2/src/db/queries.js @@ -30,6 +30,7 @@ const { overlaps } = require('../validators'); * Атомарный upsert — исключает дубли при параллельных запросах. */ async function getOrCreateCompany(clientId, companyName) { + if (!clientId || !String(clientId).trim()) throw new Error('DB: clientId не может быть пустым'); const res = await pool.query( `INSERT INTO companies (client_id, name) VALUES ($1, $2) ON CONFLICT (client_id) DO UPDATE SET name = COALESCE(companies.name, EXCLUDED.name)