feat: 添加 IP 字段到房间状态和注册行,更新数据库管理器以支持新字段
This commit is contained in:
11
bls-register-backend/dist/index.js
vendored
11
bls-register-backend/dist/index.js
vendored
@@ -120,6 +120,7 @@ const registerColumns = [
|
|||||||
const roomStatusColumns = [
|
const roomStatusColumns = [
|
||||||
"hotel_id",
|
"hotel_id",
|
||||||
"room_id",
|
"room_id",
|
||||||
|
"ip",
|
||||||
"app_version",
|
"app_version",
|
||||||
"launcher_version",
|
"launcher_version",
|
||||||
"config_version",
|
"config_version",
|
||||||
@@ -208,13 +209,15 @@ class DatabaseManager {
|
|||||||
$3::text[],
|
$3::text[],
|
||||||
$4::text[],
|
$4::text[],
|
||||||
$5::text[],
|
$5::text[],
|
||||||
$6::int8[],
|
$6::text[],
|
||||||
$7::int8[]
|
$7::int8[],
|
||||||
|
$8::int8[]
|
||||||
) AS u(${roomStatusColumns.join(", ")})
|
) AS u(${roomStatusColumns.join(", ")})
|
||||||
), dedup AS (
|
), dedup AS (
|
||||||
SELECT DISTINCT ON (hotel_id, room_id)
|
SELECT DISTINCT ON (hotel_id, room_id)
|
||||||
hotel_id,
|
hotel_id,
|
||||||
room_id,
|
room_id,
|
||||||
|
ip,
|
||||||
app_version,
|
app_version,
|
||||||
launcher_version,
|
launcher_version,
|
||||||
config_version,
|
config_version,
|
||||||
@@ -233,6 +236,7 @@ class DatabaseManager {
|
|||||||
hotel_id,
|
hotel_id,
|
||||||
room_id,
|
room_id,
|
||||||
device_id,
|
device_id,
|
||||||
|
ip,
|
||||||
app_version,
|
app_version,
|
||||||
launcher_version,
|
launcher_version,
|
||||||
config_version,
|
config_version,
|
||||||
@@ -243,6 +247,7 @@ class DatabaseManager {
|
|||||||
hotel_id,
|
hotel_id,
|
||||||
room_id,
|
room_id,
|
||||||
device_id,
|
device_id,
|
||||||
|
ip,
|
||||||
app_version,
|
app_version,
|
||||||
launcher_version,
|
launcher_version,
|
||||||
config_version,
|
config_version,
|
||||||
@@ -251,6 +256,7 @@ class DatabaseManager {
|
|||||||
FROM existing
|
FROM existing
|
||||||
ON CONFLICT (hotel_id, room_id) DO UPDATE
|
ON CONFLICT (hotel_id, room_id) DO UPDATE
|
||||||
SET
|
SET
|
||||||
|
ip = EXCLUDED.ip,
|
||||||
app_version = EXCLUDED.app_version,
|
app_version = EXCLUDED.app_version,
|
||||||
launcher_version = EXCLUDED.launcher_version,
|
launcher_version = EXCLUDED.launcher_version,
|
||||||
config_version = EXCLUDED.config_version,
|
config_version = EXCLUDED.config_version,
|
||||||
@@ -728,6 +734,7 @@ const buildRowsFromPayload = (rawPayload) => {
|
|||||||
const roomStatusUpdateRow = {
|
const roomStatusUpdateRow = {
|
||||||
hotel_id: hotelId,
|
hotel_id: hotelId,
|
||||||
room_id: roomId,
|
room_id: roomId,
|
||||||
|
ip: registerRow.ip,
|
||||||
app_version: registerRow.app_version,
|
app_version: registerRow.app_version,
|
||||||
launcher_version: registerRow.launcher_version,
|
launcher_version: registerRow.launcher_version,
|
||||||
config_version: registerRow.config_version,
|
config_version: registerRow.config_version,
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ const registerColumns = [
|
|||||||
const roomStatusColumns = [
|
const roomStatusColumns = [
|
||||||
'hotel_id',
|
'hotel_id',
|
||||||
'room_id',
|
'room_id',
|
||||||
|
'ip',
|
||||||
'app_version',
|
'app_version',
|
||||||
'launcher_version',
|
'launcher_version',
|
||||||
'config_version',
|
'config_version',
|
||||||
@@ -137,13 +138,15 @@ export class DatabaseManager {
|
|||||||
$3::text[],
|
$3::text[],
|
||||||
$4::text[],
|
$4::text[],
|
||||||
$5::text[],
|
$5::text[],
|
||||||
$6::int8[],
|
$6::text[],
|
||||||
$7::int8[]
|
$7::int8[],
|
||||||
|
$8::int8[]
|
||||||
) AS u(${roomStatusColumns.join(', ')})
|
) AS u(${roomStatusColumns.join(', ')})
|
||||||
), dedup AS (
|
), dedup AS (
|
||||||
SELECT DISTINCT ON (hotel_id, room_id)
|
SELECT DISTINCT ON (hotel_id, room_id)
|
||||||
hotel_id,
|
hotel_id,
|
||||||
room_id,
|
room_id,
|
||||||
|
ip,
|
||||||
app_version,
|
app_version,
|
||||||
launcher_version,
|
launcher_version,
|
||||||
config_version,
|
config_version,
|
||||||
@@ -162,6 +165,7 @@ export class DatabaseManager {
|
|||||||
hotel_id,
|
hotel_id,
|
||||||
room_id,
|
room_id,
|
||||||
device_id,
|
device_id,
|
||||||
|
ip,
|
||||||
app_version,
|
app_version,
|
||||||
launcher_version,
|
launcher_version,
|
||||||
config_version,
|
config_version,
|
||||||
@@ -172,6 +176,7 @@ export class DatabaseManager {
|
|||||||
hotel_id,
|
hotel_id,
|
||||||
room_id,
|
room_id,
|
||||||
device_id,
|
device_id,
|
||||||
|
ip,
|
||||||
app_version,
|
app_version,
|
||||||
launcher_version,
|
launcher_version,
|
||||||
config_version,
|
config_version,
|
||||||
@@ -180,6 +185,7 @@ export class DatabaseManager {
|
|||||||
FROM existing
|
FROM existing
|
||||||
ON CONFLICT (hotel_id, room_id) DO UPDATE
|
ON CONFLICT (hotel_id, room_id) DO UPDATE
|
||||||
SET
|
SET
|
||||||
|
ip = EXCLUDED.ip,
|
||||||
app_version = EXCLUDED.app_version,
|
app_version = EXCLUDED.app_version,
|
||||||
launcher_version = EXCLUDED.launcher_version,
|
launcher_version = EXCLUDED.launcher_version,
|
||||||
config_version = EXCLUDED.config_version,
|
config_version = EXCLUDED.config_version,
|
||||||
|
|||||||
@@ -213,6 +213,7 @@ export const buildRowsFromPayload = (rawPayload) => {
|
|||||||
const roomStatusUpdateRow = {
|
const roomStatusUpdateRow = {
|
||||||
hotel_id: hotelId,
|
hotel_id: hotelId,
|
||||||
room_id: roomId,
|
room_id: roomId,
|
||||||
|
ip: registerRow.ip,
|
||||||
app_version: registerRow.app_version,
|
app_version: registerRow.app_version,
|
||||||
launcher_version: registerRow.launcher_version,
|
launcher_version: registerRow.launcher_version,
|
||||||
config_version: registerRow.config_version,
|
config_version: registerRow.config_version,
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ describe('Register Processor', () => {
|
|||||||
hotel_id: 1085,
|
hotel_id: 1085,
|
||||||
room_id: '8888',
|
room_id: '8888',
|
||||||
device_id: '091123987456',
|
device_id: '091123987456',
|
||||||
|
ip: '10.1.2.3:5678',
|
||||||
is_send: 0,
|
is_send: 0,
|
||||||
app_version: '2.1.0',
|
app_version: '2.1.0',
|
||||||
launcher_version: '1.0.0',
|
launcher_version: '1.0.0',
|
||||||
@@ -24,6 +25,7 @@ describe('Register Processor', () => {
|
|||||||
expect(rows.registerRows[0].room_id).toBe('8888');
|
expect(rows.registerRows[0].room_id).toBe('8888');
|
||||||
expect(rows.registerRows[0].device_id).toBe('091123987456');
|
expect(rows.registerRows[0].device_id).toBe('091123987456');
|
||||||
|
|
||||||
|
expect(rows.roomStatusRows[0].ip).toBe('10.1.2.3:5678');
|
||||||
expect(rows.roomStatusRows[0].register_ts_ms).toBe(1770000235000);
|
expect(rows.roomStatusRows[0].register_ts_ms).toBe(1770000235000);
|
||||||
expect(rows.roomStatusRows[0].upgrade_ts_ms).toBe(1770001235000);
|
expect(rows.roomStatusRows[0].upgrade_ts_ms).toBe(1770001235000);
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user