From d03f30d4cca892dd8a337205a99a243e713c0070 Mon Sep 17 00:00:00 2001 From: joylink_zhaoerwei Date: Thu, 17 Oct 2024 13:50:52 +0800 Subject: [PATCH 1/2] =?UTF-8?q?CCTV=E8=AE=BE=E5=A4=87=E5=B8=83=E5=B1=80?= =?UTF-8?q?=E5=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- rtss-proto-msg | 2 +- src/drawApp/iscsApp.ts | 48 +++++++++++++++++---------------- src/layouts/IscsDrawLayout.vue | 2 +- src/protos/iscs_graphic_data.ts | 44 +++++++++++++++--------------- 4 files changed, 49 insertions(+), 47 deletions(-) diff --git a/rtss-proto-msg b/rtss-proto-msg index c3ebea5..587a787 160000 --- a/rtss-proto-msg +++ b/rtss-proto-msg @@ -1 +1 @@ -Subproject commit c3ebea56bd46e93f4bd5204bdc3966b5b9fb9d58 +Subproject commit 587a787812fa16a17d02fd3ab70e3731fc94e36f diff --git a/src/drawApp/iscsApp.ts b/src/drawApp/iscsApp.ts index 1a4df6d..7b003f0 100644 --- a/src/drawApp/iscsApp.ts +++ b/src/drawApp/iscsApp.ts @@ -157,18 +157,19 @@ function handleSubscribe(app: IDrawApp) { console.log(fasPlatformAlarm, 'fasPlatformAlarm'); } } - } else if (syncData.submenu === '监控布局图') { + } else if (syncData.submenu === 'CCTV设备布局图') { for ( let i = 0; - i < storage.cctvOfStationControlStorages.length; + i < storage.cctvOfEquipmentLayoutStorages.length; i++ ) { - const ctvOfStationControl = storage.cctvOfStationControlStorages[i]; - if (ctvOfStationControl.stationName == syncData.station) { + const cctvOfEquipmentLayout = + storage.cctvOfEquipmentLayoutStorages[i]; + if (cctvOfEquipmentLayout.stationName == syncData.station) { syncData.datas.forEach((data) => { handlerNoEditCommonData( data, - ctvOfStationControl, + cctvOfEquipmentLayout, syncData.operationType ); }); @@ -246,15 +247,16 @@ export async function loadDrawDatas(): Promise { } } break; - case '监控布局图': - for (let i = 0; i < storage.cctvOfStationControlStorages.length; i++) { - const ctvOfStationControl = storage.cctvOfStationControlStorages[i]; + case 'CCTV设备布局图': + for (let i = 0; i < storage.cctvOfEquipmentLayoutStorages.length; i++) { + const cctvOfEquipmentLayout = + storage.cctvOfEquipmentLayoutStorages[i]; if ( - ctvOfStationControl.stationName == + cctvOfEquipmentLayout.stationName == drawStore.selectSubmenuAndStation.station ) { - canvasProperty = ctvOfStationControl.canvas; - datas = loadCommonDrawDatas(ctvOfStationControl); + canvasProperty = cctvOfEquipmentLayout.canvas; + datas = loadCommonDrawDatas(cctvOfEquipmentLayout); /* ctvOfStationControl.cctvButtons.forEach((cctvButton) => { datas.push(new CCTVButtonData(cctvButton)); }); */ @@ -295,10 +297,10 @@ export function saveDrawDatas(app: IDrawApp) { ) ); } - if (!storage?.cctvOfStationControlStorages.length) { + if (!storage?.cctvOfEquipmentLayoutStorages.length) { stationOption.forEach((station) => - storage?.cctvOfStationControlStorages.push( - new iscsGraphicData.CCTVOfStationControlStorage({ + storage?.cctvOfEquipmentLayoutStorages.push( + new iscsGraphicData.CCTVOfEquipmentLayoutStorage({ stationName: station, commonGraphicStorage: new iscsGraphicData.CommonGraphicStorage(), }) @@ -339,22 +341,22 @@ export function saveDrawDatas(app: IDrawApp) { } } break; - case '监控布局图': - for (let i = 0; i < storage.cctvOfStationControlStorages.length; i++) { - let cctvOfStationControl = storage.cctvOfStationControlStorages[i]; + case 'CCTV设备布局图': + for (let i = 0; i < storage.cctvOfEquipmentLayoutStorages.length; i++) { + let cctvOfEquipmentLayout = storage.cctvOfEquipmentLayoutStorages[i]; if ( - cctvOfStationControl.stationName == + cctvOfEquipmentLayout.stationName == drawStore.selectSubmenuAndStation.station ) { - cctvOfStationControl = - new iscsGraphicData.CCTVOfStationControlStorage({ + cctvOfEquipmentLayout = + new iscsGraphicData.CCTVOfEquipmentLayoutStorage({ stationName: drawStore.selectSubmenuAndStation.station, commonGraphicStorage: new iscsGraphicData.CommonGraphicStorage(), }); const cctvStorage = saveCommonDrawDatas( app, - cctvOfStationControl - ) as iscsGraphicData.CCTVOfStationControlStorage; + cctvOfEquipmentLayout + ) as iscsGraphicData.CCTVOfEquipmentLayoutStorage; /* graphics.forEach((g) => { if (g instanceof CCTVButton) { @@ -364,7 +366,7 @@ export function saveDrawDatas(app: IDrawApp) { ); } }); */ - storage.cctvOfStationControlStorages[i] = cctvStorage; + storage.cctvOfEquipmentLayoutStorages[i] = cctvStorage; break; } } diff --git a/src/layouts/IscsDrawLayout.vue b/src/layouts/IscsDrawLayout.vue index 088a095..bf515b5 100644 --- a/src/layouts/IscsDrawLayout.vue +++ b/src/layouts/IscsDrawLayout.vue @@ -388,7 +388,7 @@ function handleUtilsOption() { Button.Type, ]; switch (drawStore.selectSubmenuAndStation.submenu) { - case '监控布局图': + case 'CCTV设备布局图': //drawAssistantsTypes.push(CCTVButton.Type); break; case '火灾报警平面图': diff --git a/src/protos/iscs_graphic_data.ts b/src/protos/iscs_graphic_data.ts index 639d091..4af205f 100644 --- a/src/protos/iscs_graphic_data.ts +++ b/src/protos/iscs_graphic_data.ts @@ -9,24 +9,24 @@ export namespace iscsGraphicData { export class IscsGraphicStorage extends pb_1.Message { #one_of_decls: number[][] = []; constructor(data?: any[] | { - cctvOfStationControlStorages?: CCTVOfStationControlStorage[]; + cctvOfEquipmentLayoutStorages?: CCTVOfEquipmentLayoutStorage[]; fasOfPlatformAlarmStorages?: FASOfPlatformAlarmStorage[]; }) { super(); pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [1, 2], this.#one_of_decls); if (!Array.isArray(data) && typeof data == "object") { - if ("cctvOfStationControlStorages" in data && data.cctvOfStationControlStorages != undefined) { - this.cctvOfStationControlStorages = data.cctvOfStationControlStorages; + if ("cctvOfEquipmentLayoutStorages" in data && data.cctvOfEquipmentLayoutStorages != undefined) { + this.cctvOfEquipmentLayoutStorages = data.cctvOfEquipmentLayoutStorages; } if ("fasOfPlatformAlarmStorages" in data && data.fasOfPlatformAlarmStorages != undefined) { this.fasOfPlatformAlarmStorages = data.fasOfPlatformAlarmStorages; } } } - get cctvOfStationControlStorages() { - return pb_1.Message.getRepeatedWrapperField(this, CCTVOfStationControlStorage, 1) as CCTVOfStationControlStorage[]; + get cctvOfEquipmentLayoutStorages() { + return pb_1.Message.getRepeatedWrapperField(this, CCTVOfEquipmentLayoutStorage, 1) as CCTVOfEquipmentLayoutStorage[]; } - set cctvOfStationControlStorages(value: CCTVOfStationControlStorage[]) { + set cctvOfEquipmentLayoutStorages(value: CCTVOfEquipmentLayoutStorage[]) { pb_1.Message.setRepeatedWrapperField(this, 1, value); } get fasOfPlatformAlarmStorages() { @@ -36,12 +36,12 @@ export namespace iscsGraphicData { pb_1.Message.setRepeatedWrapperField(this, 2, value); } static fromObject(data: { - cctvOfStationControlStorages?: ReturnType[]; + cctvOfEquipmentLayoutStorages?: ReturnType[]; fasOfPlatformAlarmStorages?: ReturnType[]; }): IscsGraphicStorage { const message = new IscsGraphicStorage({}); - if (data.cctvOfStationControlStorages != null) { - message.cctvOfStationControlStorages = data.cctvOfStationControlStorages.map(item => CCTVOfStationControlStorage.fromObject(item)); + if (data.cctvOfEquipmentLayoutStorages != null) { + message.cctvOfEquipmentLayoutStorages = data.cctvOfEquipmentLayoutStorages.map(item => CCTVOfEquipmentLayoutStorage.fromObject(item)); } if (data.fasOfPlatformAlarmStorages != null) { message.fasOfPlatformAlarmStorages = data.fasOfPlatformAlarmStorages.map(item => FASOfPlatformAlarmStorage.fromObject(item)); @@ -50,11 +50,11 @@ export namespace iscsGraphicData { } toObject() { const data: { - cctvOfStationControlStorages?: ReturnType[]; + cctvOfEquipmentLayoutStorages?: ReturnType[]; fasOfPlatformAlarmStorages?: ReturnType[]; } = {}; - if (this.cctvOfStationControlStorages != null) { - data.cctvOfStationControlStorages = this.cctvOfStationControlStorages.map((item: CCTVOfStationControlStorage) => item.toObject()); + if (this.cctvOfEquipmentLayoutStorages != null) { + data.cctvOfEquipmentLayoutStorages = this.cctvOfEquipmentLayoutStorages.map((item: CCTVOfEquipmentLayoutStorage) => item.toObject()); } if (this.fasOfPlatformAlarmStorages != null) { data.fasOfPlatformAlarmStorages = this.fasOfPlatformAlarmStorages.map((item: FASOfPlatformAlarmStorage) => item.toObject()); @@ -65,8 +65,8 @@ export namespace iscsGraphicData { serialize(w: pb_1.BinaryWriter): void; serialize(w?: pb_1.BinaryWriter): Uint8Array | void { const writer = w || new pb_1.BinaryWriter(); - if (this.cctvOfStationControlStorages.length) - writer.writeRepeatedMessage(1, this.cctvOfStationControlStorages, (item: CCTVOfStationControlStorage) => item.serialize(writer)); + if (this.cctvOfEquipmentLayoutStorages.length) + writer.writeRepeatedMessage(1, this.cctvOfEquipmentLayoutStorages, (item: CCTVOfEquipmentLayoutStorage) => item.serialize(writer)); if (this.fasOfPlatformAlarmStorages.length) writer.writeRepeatedMessage(2, this.fasOfPlatformAlarmStorages, (item: FASOfPlatformAlarmStorage) => item.serialize(writer)); if (!w) @@ -79,7 +79,7 @@ export namespace iscsGraphicData { break; switch (reader.getFieldNumber()) { case 1: - reader.readMessage(message.cctvOfStationControlStorages, () => pb_1.Message.addToRepeatedWrapperField(message, 1, CCTVOfStationControlStorage.deserialize(reader), CCTVOfStationControlStorage)); + reader.readMessage(message.cctvOfEquipmentLayoutStorages, () => pb_1.Message.addToRepeatedWrapperField(message, 1, CCTVOfEquipmentLayoutStorage.deserialize(reader), CCTVOfEquipmentLayoutStorage)); break; case 2: reader.readMessage(message.fasOfPlatformAlarmStorages, () => pb_1.Message.addToRepeatedWrapperField(message, 2, FASOfPlatformAlarmStorage.deserialize(reader), FASOfPlatformAlarmStorage)); @@ -2164,7 +2164,7 @@ export namespace iscsGraphicData { return TemperatureDetector.deserialize(bytes); } } - export class CCTVOfStationControlStorage extends pb_1.Message { + export class CCTVOfEquipmentLayoutStorage extends pb_1.Message { #one_of_decls: number[][] = []; constructor(data?: any[] | { stationName?: string; @@ -2213,8 +2213,8 @@ export namespace iscsGraphicData { stationName?: string; canvas?: ReturnType; commonGraphicStorage?: ReturnType; - }): CCTVOfStationControlStorage { - const message = new CCTVOfStationControlStorage({}); + }): CCTVOfEquipmentLayoutStorage { + const message = new CCTVOfEquipmentLayoutStorage({}); if (data.stationName != null) { message.stationName = data.stationName; } @@ -2256,8 +2256,8 @@ export namespace iscsGraphicData { if (!w) return writer.getResultBuffer(); } - static deserialize(bytes: Uint8Array | pb_1.BinaryReader): CCTVOfStationControlStorage { - const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new CCTVOfStationControlStorage(); + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): CCTVOfEquipmentLayoutStorage { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new CCTVOfEquipmentLayoutStorage(); while (reader.nextField()) { if (reader.isEndGroup()) break; @@ -2279,8 +2279,8 @@ export namespace iscsGraphicData { serializeBinary(): Uint8Array { return this.serialize(); } - static deserializeBinary(bytes: Uint8Array): CCTVOfStationControlStorage { - return CCTVOfStationControlStorage.deserialize(bytes); + static deserializeBinary(bytes: Uint8Array): CCTVOfEquipmentLayoutStorage { + return CCTVOfEquipmentLayoutStorage.deserialize(bytes); } } export class FASOfPlatformAlarmStorage extends pb_1.Message { From 07b35b5360c41b2abebdf3423e48d13074694683 Mon Sep 17 00:00:00 2001 From: joylink_zhaoerwei Date: Thu, 17 Oct 2024 14:50:52 +0800 Subject: [PATCH 2/2] =?UTF-8?q?cctv=E5=8A=A0=E5=88=86=E5=B1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- rtss-proto-msg | 2 +- src/drawApp/iscsApp.ts | 19 +++++++++++-------- src/protos/iscs_graphic_data.ts | 30 ++++++++++++++++++++++++++++++ 3 files changed, 42 insertions(+), 9 deletions(-) diff --git a/rtss-proto-msg b/rtss-proto-msg index 587a787..cf2e52a 160000 --- a/rtss-proto-msg +++ b/rtss-proto-msg @@ -1 +1 @@ -Subproject commit 587a787812fa16a17d02fd3ab70e3731fc94e36f +Subproject commit cf2e52a1e02d3f8c001c05ba6480fc201b016bef diff --git a/src/drawApp/iscsApp.ts b/src/drawApp/iscsApp.ts index 7b003f0..cb7b5d7 100644 --- a/src/drawApp/iscsApp.ts +++ b/src/drawApp/iscsApp.ts @@ -298,14 +298,17 @@ export function saveDrawDatas(app: IDrawApp) { ); } if (!storage?.cctvOfEquipmentLayoutStorages.length) { - stationOption.forEach((station) => - storage?.cctvOfEquipmentLayoutStorages.push( - new iscsGraphicData.CCTVOfEquipmentLayoutStorage({ - stationName: station, - commonGraphicStorage: new iscsGraphicData.CommonGraphicStorage(), - }) - ) - ); + stationOption.forEach((station) => { + for (let layer = 0; layer < 3; layer++) { + storage?.cctvOfEquipmentLayoutStorages.push( + new iscsGraphicData.CCTVOfEquipmentLayoutStorage({ + stationName: station, + commonGraphicStorage: new iscsGraphicData.CommonGraphicStorage(), + layer, + }) + ); + } + }); } const graphics = app.queryStore.getAllGraphics(); switch (drawStore.selectSubmenuAndStation.submenu) { diff --git a/src/protos/iscs_graphic_data.ts b/src/protos/iscs_graphic_data.ts index 4af205f..b7df49c 100644 --- a/src/protos/iscs_graphic_data.ts +++ b/src/protos/iscs_graphic_data.ts @@ -2170,6 +2170,7 @@ export namespace iscsGraphicData { stationName?: string; canvas?: dependency_1.common.Canvas; commonGraphicStorage?: CommonGraphicStorage; + layer?: CCTVOfEquipmentLayoutStorage.LayerType; }) { super(); pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); @@ -2183,6 +2184,9 @@ export namespace iscsGraphicData { if ("commonGraphicStorage" in data && data.commonGraphicStorage != undefined) { this.commonGraphicStorage = data.commonGraphicStorage; } + if ("layer" in data && data.layer != undefined) { + this.layer = data.layer; + } } } get stationName() { @@ -2209,10 +2213,17 @@ export namespace iscsGraphicData { get has_commonGraphicStorage() { return pb_1.Message.getField(this, 3) != null; } + get layer() { + return pb_1.Message.getFieldWithDefault(this, 4, CCTVOfEquipmentLayoutStorage.LayerType.StationHall) as CCTVOfEquipmentLayoutStorage.LayerType; + } + set layer(value: CCTVOfEquipmentLayoutStorage.LayerType) { + pb_1.Message.setField(this, 4, value); + } static fromObject(data: { stationName?: string; canvas?: ReturnType; commonGraphicStorage?: ReturnType; + layer?: CCTVOfEquipmentLayoutStorage.LayerType; }): CCTVOfEquipmentLayoutStorage { const message = new CCTVOfEquipmentLayoutStorage({}); if (data.stationName != null) { @@ -2224,6 +2235,9 @@ export namespace iscsGraphicData { if (data.commonGraphicStorage != null) { message.commonGraphicStorage = CommonGraphicStorage.fromObject(data.commonGraphicStorage); } + if (data.layer != null) { + message.layer = data.layer; + } return message; } toObject() { @@ -2231,6 +2245,7 @@ export namespace iscsGraphicData { stationName?: string; canvas?: ReturnType; commonGraphicStorage?: ReturnType; + layer?: CCTVOfEquipmentLayoutStorage.LayerType; } = {}; if (this.stationName != null) { data.stationName = this.stationName; @@ -2241,6 +2256,9 @@ export namespace iscsGraphicData { if (this.commonGraphicStorage != null) { data.commonGraphicStorage = this.commonGraphicStorage.toObject(); } + if (this.layer != null) { + data.layer = this.layer; + } return data; } serialize(): Uint8Array; @@ -2253,6 +2271,8 @@ export namespace iscsGraphicData { writer.writeMessage(2, this.canvas, () => this.canvas.serialize(writer)); if (this.has_commonGraphicStorage) writer.writeMessage(3, this.commonGraphicStorage, () => this.commonGraphicStorage.serialize(writer)); + if (this.layer != CCTVOfEquipmentLayoutStorage.LayerType.StationHall) + writer.writeEnum(4, this.layer); if (!w) return writer.getResultBuffer(); } @@ -2271,6 +2291,9 @@ export namespace iscsGraphicData { case 3: reader.readMessage(message.commonGraphicStorage, () => message.commonGraphicStorage = CommonGraphicStorage.deserialize(reader)); break; + case 4: + message.layer = reader.readEnum(); + break; default: reader.skipField(); } } @@ -2283,6 +2306,13 @@ export namespace iscsGraphicData { return CCTVOfEquipmentLayoutStorage.deserialize(bytes); } } + export namespace CCTVOfEquipmentLayoutStorage { + export enum LayerType { + StationHall = 0, + platform = 1, + PTZ = 2 + } + } export class FASOfPlatformAlarmStorage extends pb_1.Message { #one_of_decls: number[][] = []; constructor(data?: any[] | {