From c06c626d52303df22e6c990dddcee2ca2e62e41a Mon Sep 17 00:00:00 2001 From: joylink_zhaoerwei Date: Thu, 24 Oct 2024 15:11:25 +0800 Subject: [PATCH 1/7] =?UTF-8?q?=E5=86=B3=E7=AD=96=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/DecisionInfoManage.vue | 134 +++++++++++++++++++------------ 1 file changed, 81 insertions(+), 53 deletions(-) diff --git a/src/pages/DecisionInfoManage.vue b/src/pages/DecisionInfoManage.vue index b9896a1..6aa538c 100644 --- a/src/pages/DecisionInfoManage.vue +++ b/src/pages/DecisionInfoManage.vue @@ -27,13 +27,51 @@ @@ -287,16 +293,42 @@ const pagination = ref({ rowsNumber: 10, }); +const filter = ref({ + alertType: '全部', + areaConfigName: '', + lineId: 0, + lineType: '全部', +}); + const onRequest: QTable['onRequest'] = async (props) => { const { page, rowsPerPage, sortBy, descending } = props.pagination; loading.value = true; try { - let response = await alarmInfoPageQuery({ + const params = { current: page, size: rowsPerPage, - alertType: (saveAlertTypeData as never)[filter.value.alertType], - areaConfigName: filter.value.areaConfigName, - }); + }; + if (filter.value.lineId !== 0) { + Object.assign(params, { + lineId: filter.value.lineId, + }); + } + if (filter.value.lineType !== '全部') { + Object.assign(params, { + lineType: filter.value.lineType, + }); + } + if (filter.value.alertType !== '全部') { + Object.assign(params, { + alertType: (saveAlertTypeData as never)[filter.value.alertType], + }); + } + if (filter.value.areaConfigName) { + Object.assign(params, { + areaConfigName: filter.value.areaConfigName, + }); + } + let response = await alarmInfoPageQuery(params); const pageData = response; pagination.value.rowsNumber = pageData.total; pagination.value.page = page; @@ -321,17 +353,7 @@ onMounted(() => { }); }); -const searchDialog = ref(false); -const filter = ref({ - alertType: '', - areaConfigName: '', -}); -function openSearchDialog() { - filter.value = { alertType: '', areaConfigName: '' }; - searchDialog.value = true; -} function searchDecisionInfo() { - searchDialog.value = false; tableRef.value.requestServerInteraction(); } @@ -349,6 +371,9 @@ const creatForm = reactive({ }); const optionsLineId = ref<{ label: string; value: number }[]>([]); +const searchOptionsLineId = ref<{ label: string; value: number }[]>([ + { label: '全部', value: 0 }, +]); async function queryLineInfo() { try { let response = await pageQuery({ @@ -357,6 +382,7 @@ async function queryLineInfo() { }); response.records.forEach((info) => { optionsLineId.value.push({ label: info.name, value: info.lineId }); + searchOptionsLineId.value.push({ label: info.name, value: info.lineId }); }); } catch (err) { const error = err as ApiError; @@ -367,6 +393,7 @@ async function queryLineInfo() { } } const optionsLineType = ['NCC', 'OCC']; +const searchOptionsLineType = ['全部', ...optionsLineType]; const optionsAlertType = [ '蓝显', '全线蓝显', @@ -388,6 +415,7 @@ const optionsAlertType = [ '联锁区橙光带', '联锁区失表', ]; +const searchOptionsAlertType = ['全部', ...optionsAlertType]; let optionsLocationType = ref([]); let optionsLocationList: AreaConfigItem[] = []; async function searchLocationType() { From a486e97e5ab2c08ebe5f8a98c1900a496f64d6ed Mon Sep 17 00:00:00 2001 From: joylink_zhaoerwei Date: Thu, 24 Oct 2024 15:13:57 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E5=BE=AE=E8=B0=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/DecisionInfoManage.vue | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/pages/DecisionInfoManage.vue b/src/pages/DecisionInfoManage.vue index 6aa538c..3f72365 100644 --- a/src/pages/DecisionInfoManage.vue +++ b/src/pages/DecisionInfoManage.vue @@ -44,7 +44,6 @@ /> From 37835ed2d676186d839f79345e01203ecde0c091 Mon Sep 17 00:00:00 2001 From: joylink_zhaoerwei Date: Thu, 24 Oct 2024 15:33:14 +0800 Subject: [PATCH 3/7] =?UTF-8?q?=E6=8A=A5=E8=AD=A6=E8=AE=B0=E5=BD=95?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/AlarmInfoList.vue | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/pages/AlarmInfoList.vue b/src/pages/AlarmInfoList.vue index 842e31c..3d125ca 100644 --- a/src/pages/AlarmInfoList.vue +++ b/src/pages/AlarmInfoList.vue @@ -44,6 +44,13 @@ lazy-rules :rules="[(val) => val >= 0 || '请选择线路ID!']" /> + ([ { label: '全部', value: 0 }, ]); +const searchOptionsLineType = ['全部', 'NCC', 'OCC']; async function queryLineInfo() { try { let response = await pageQuery({ From ca75a70a0f302b562407f6f51081175f0fbc1116 Mon Sep 17 00:00:00 2001 From: joylink_fanyuhong <18706759286@163.com> Date: Fri, 25 Oct 2024 10:44:35 +0800 Subject: [PATCH 4/7] =?UTF-8?q?=E7=99=BB=E5=BD=95=E8=AE=B0=E5=BD=95&?= =?UTF-8?q?=E6=93=8D=E4=BD=9C=E8=AE=B0=E5=BD=95=E5=85=A5=E5=8F=82=E6=8F=90?= =?UTF-8?q?=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/LogApi.ts | 5 +- src/pages/LoginRecord.vue | 115 +++++++++++++++++++++++++++++++++++- src/pages/OperateRecord.vue | 115 +++++++++++++++++++++++++++++++++++- 3 files changed, 230 insertions(+), 5 deletions(-) diff --git a/src/api/LogApi.ts b/src/api/LogApi.ts index e054910..a9e8fbe 100644 --- a/src/api/LogApi.ts +++ b/src/api/LogApi.ts @@ -19,7 +19,10 @@ export interface Record { } export class PagingQueryParams extends PageQueryDto { - logType = 'logType'; + logType?: string; + name?: string; + beginDate?: string; + endDate?: string; } /** diff --git a/src/pages/LoginRecord.vue b/src/pages/LoginRecord.vue index 4a1a42e..4381bf6 100644 --- a/src/pages/LoginRecord.vue +++ b/src/pages/LoginRecord.vue @@ -15,6 +15,103 @@ binary-state-sort @request="onRequest" > + + - + + @@ -189,6 +192,7 @@ import { findContainDevice, handleCentralizedStationsData, } from 'src/graphics/concentrationDividingLine/ConcentrationDividingLineUtils'; +import AxleCountingConfig from 'src/components/draw-app/properties/AxleCountingConfig.vue'; const route = useRoute(); const router = useRouter(); @@ -358,10 +362,14 @@ function oneClickSeparator() { .getDrawAssistant(Separator.Type) as SeparatorDraw; separatorDraw.oneGenerates(); } + +const showGenerateAxleCountingConfig = ref(false); +const closeGenerateAxleCountingConfig = () => { + showGenerateAxleCountingConfig.value = false; +}; function oneClickAxleCounting() { //一键生成计轴 - drawStore.oneClickType = 'AxleCounting'; - drawStore.getDrawApp().interactionPlugin(OneClickGenerate.Type).resume(); + showGenerateAxleCountingConfig.value = true; } function oneClickTurnoutSection() { diff --git a/src/protos/stationLayoutGraphics.ts b/src/protos/stationLayoutGraphics.ts index fcb12d2..fa6cac0 100644 --- a/src/protos/stationLayoutGraphics.ts +++ b/src/protos/stationLayoutGraphics.ts @@ -28,6 +28,7 @@ export namespace graphicData { separators?: Separator[]; logicSections?: LogicSection[]; concentrationDividingLines?: ConcentrationDividingLine[]; + generateAxleCountingConfig?: GenerateAxleCountingConfig; }) { super(); pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20], this.#one_of_decls); @@ -92,6 +93,9 @@ export namespace graphicData { if ("concentrationDividingLines" in data && data.concentrationDividingLines != undefined) { this.concentrationDividingLines = data.concentrationDividingLines; } + if ("generateAxleCountingConfig" in data && data.generateAxleCountingConfig != undefined) { + this.generateAxleCountingConfig = data.generateAxleCountingConfig; + } } } get canvas() { @@ -217,6 +221,15 @@ export namespace graphicData { set concentrationDividingLines(value: ConcentrationDividingLine[]) { pb_1.Message.setRepeatedWrapperField(this, 20, value); } + get generateAxleCountingConfig() { + return pb_1.Message.getWrapperField(this, GenerateAxleCountingConfig, 21) as GenerateAxleCountingConfig; + } + set generateAxleCountingConfig(value: GenerateAxleCountingConfig) { + pb_1.Message.setWrapperField(this, 21, value); + } + get has_generateAxleCountingConfig() { + return pb_1.Message.getField(this, 21) != null; + } static fromObject(data: { canvas?: ReturnType; links?: ReturnType[]; @@ -238,6 +251,7 @@ export namespace graphicData { separators?: ReturnType[]; logicSections?: ReturnType[]; concentrationDividingLines?: ReturnType[]; + generateAxleCountingConfig?: ReturnType; }): RtssGraphicStorage { const message = new RtssGraphicStorage({}); if (data.canvas != null) { @@ -300,6 +314,9 @@ export namespace graphicData { if (data.concentrationDividingLines != null) { message.concentrationDividingLines = data.concentrationDividingLines.map(item => ConcentrationDividingLine.fromObject(item)); } + if (data.generateAxleCountingConfig != null) { + message.generateAxleCountingConfig = GenerateAxleCountingConfig.fromObject(data.generateAxleCountingConfig); + } return message; } toObject() { @@ -324,6 +341,7 @@ export namespace graphicData { separators?: ReturnType[]; logicSections?: ReturnType[]; concentrationDividingLines?: ReturnType[]; + generateAxleCountingConfig?: ReturnType; } = {}; if (this.canvas != null) { data.canvas = this.canvas.toObject(); @@ -385,6 +403,9 @@ export namespace graphicData { if (this.concentrationDividingLines != null) { data.concentrationDividingLines = this.concentrationDividingLines.map((item: ConcentrationDividingLine) => item.toObject()); } + if (this.generateAxleCountingConfig != null) { + data.generateAxleCountingConfig = this.generateAxleCountingConfig.toObject(); + } return data; } serialize(): Uint8Array; @@ -431,6 +452,8 @@ export namespace graphicData { writer.writeRepeatedMessage(19, this.logicSections, (item: LogicSection) => item.serialize(writer)); if (this.concentrationDividingLines.length) writer.writeRepeatedMessage(20, this.concentrationDividingLines, (item: ConcentrationDividingLine) => item.serialize(writer)); + if (this.has_generateAxleCountingConfig) + writer.writeMessage(21, this.generateAxleCountingConfig, () => this.generateAxleCountingConfig.serialize(writer)); if (!w) return writer.getResultBuffer(); } @@ -500,6 +523,9 @@ export namespace graphicData { case 20: reader.readMessage(message.concentrationDividingLines, () => pb_1.Message.addToRepeatedWrapperField(message, 20, ConcentrationDividingLine.deserialize(reader), ConcentrationDividingLine)); break; + case 21: + reader.readMessage(message.generateAxleCountingConfig, () => message.generateAxleCountingConfig = GenerateAxleCountingConfig.deserialize(reader)); + break; default: reader.skipField(); } } @@ -5241,4 +5267,94 @@ export namespace graphicData { return Separator.deserialize(bytes); } } + export class GenerateAxleCountingConfig extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + bbConnect?: number[]; + noGenerateGroup?: number[]; + }) { + 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 ("bbConnect" in data && data.bbConnect != undefined) { + this.bbConnect = data.bbConnect; + } + if ("noGenerateGroup" in data && data.noGenerateGroup != undefined) { + this.noGenerateGroup = data.noGenerateGroup; + } + } + } + get bbConnect() { + return pb_1.Message.getFieldWithDefault(this, 1, []) as number[]; + } + set bbConnect(value: number[]) { + pb_1.Message.setField(this, 1, value); + } + get noGenerateGroup() { + return pb_1.Message.getFieldWithDefault(this, 2, []) as number[]; + } + set noGenerateGroup(value: number[]) { + pb_1.Message.setField(this, 2, value); + } + static fromObject(data: { + bbConnect?: number[]; + noGenerateGroup?: number[]; + }): GenerateAxleCountingConfig { + const message = new GenerateAxleCountingConfig({}); + if (data.bbConnect != null) { + message.bbConnect = data.bbConnect; + } + if (data.noGenerateGroup != null) { + message.noGenerateGroup = data.noGenerateGroup; + } + return message; + } + toObject() { + const data: { + bbConnect?: number[]; + noGenerateGroup?: number[]; + } = {}; + if (this.bbConnect != null) { + data.bbConnect = this.bbConnect; + } + if (this.noGenerateGroup != null) { + data.noGenerateGroup = this.noGenerateGroup; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.bbConnect.length) + writer.writePackedUint32(1, this.bbConnect); + if (this.noGenerateGroup.length) + writer.writePackedUint32(2, this.noGenerateGroup); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): GenerateAxleCountingConfig { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new GenerateAxleCountingConfig(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.bbConnect = reader.readPackedUint32(); + break; + case 2: + message.noGenerateGroup = reader.readPackedUint32(); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): GenerateAxleCountingConfig { + return GenerateAxleCountingConfig.deserialize(bytes); + } + } } diff --git a/xian-ncc-da-message b/xian-ncc-da-message index 4f9012b..91cfbc3 160000 --- a/xian-ncc-da-message +++ b/xian-ncc-da-message @@ -1 +1 @@ -Subproject commit 4f9012b0795f62bf352b078ebbc1b1fffa86849d +Subproject commit 91cfbc3ee5574419615ae177661239cdc0d7d53e