From 8bab92b0d91fc3e4ba6211bd8d1b3f5e53e110ad Mon Sep 17 00:00:00 2001 From: LiLongLong <13717757313@163.com> Date: Sat, 7 Jun 2025 11:15:23 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=8A=A5=E8=AD=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 4 +- src/components/formula/FormulaConfig.vue | 2 +- src/components/home/Environment.vue | 8 +- src/components/home/HomeOperation.vue | 16 ++- src/components/home/HomeSetting.vue | 130 +++++++++++---------- src/components/home/LineChart.vue | 1 - src/components/seal/DashboardChart.vue | 50 +++++--- src/components/setting/SystemDate.vue | 11 +- src/components/system/ErrorEventsModal.vue | 179 +++++++++++++++++++++++++++++ src/layouts/default.vue | 3 +- src/router/routes.ts | 1 + src/stores/deviceStore.ts | 12 +- src/stores/homeStore.ts | 6 +- src/stores/liquidStore.ts | 8 +- src/stores/systemStore.ts | 16 +-- src/views/audit/index.vue | 4 +- src/views/home/chart.vue | 14 ++- src/views/home/index.vue | 15 +++ src/views/liquid/index.vue | 32 +++--- src/views/seal/index.vue | 19 +-- 20 files changed, 401 insertions(+), 130 deletions(-) create mode 100644 src/components/system/ErrorEventsModal.vue diff --git a/package.json b/package.json index 2863e47..be5a9d3 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "matrix-spray-web", "type": "module", - "version": "0.0.9", + "version": "0.0.1", "description": "", "author": "", "license": "ISC", @@ -100,4 +100,4 @@ "lint-staged" ] } -} \ No newline at end of file +} diff --git a/src/components/formula/FormulaConfig.vue b/src/components/formula/FormulaConfig.vue index 12b3398..5c3e4cc 100644 --- a/src/components/formula/FormulaConfig.vue +++ b/src/components/formula/FormulaConfig.vue @@ -244,7 +244,7 @@ const onAddFormula = () => { if (res.ackcode === 0) { const item = res.rely const formulaForm: Record = convertValuesToString(formData.value, 'name') - formulaForm.name = item.name + // formulaForm.name = item.name formulaForm.formula_id = item.formula_id onEditFormula(item.formula_id, formulaForm as Formula.FormulaItem) } diff --git a/src/components/home/Environment.vue b/src/components/home/Environment.vue index e3116dd..3fd52a7 100644 --- a/src/components/home/Environment.vue +++ b/src/components/home/Environment.vue @@ -3,7 +3,7 @@ import homeInside from 'assets/images/home/home-inside.svg' import homeProbe1 from 'assets/images/home/home-probe1.svg' import homeProbe2 from 'assets/images/home/home-probe2.svg' import { roundNumber } from 'libs/utils' -import { onMounted } from 'vue' +import { onMounted, watchEffect } from 'vue' /** * 环境参数展示组件 @@ -11,7 +11,7 @@ import { onMounted } from 'vue' * @props {Object} envParams - 环境参数对象 * @props {string} lineColor - 线条颜色(默认值:red) */ -defineProps({ +const props = defineProps({ envParams: { type: Object, default: () => ({ @@ -29,6 +29,10 @@ defineProps({ }, }) +watchEffect(() => { + console.log('props===', props.envParams) +}) + /** * 图片资源映射对象 * @type {Record} diff --git a/src/components/home/HomeOperation.vue b/src/components/home/HomeOperation.vue index 1f00781..573af58 100644 --- a/src/components/home/HomeOperation.vue +++ b/src/components/home/HomeOperation.vue @@ -76,13 +76,19 @@ const handleDisinfectState = (report: Socket.WebSocketResponse { +const onStartDisinfect = () => { // 校验日志等级 if (!formulaStore.loglevel) { FtMessage.warning('请选择消毒等级') return } + FtMessageBox.warning('请确认是否开始消毒').then(() => { + doStartDisinfect() + }) +} + +const doStartDisinfect = async () => { // 校验设备状态 const statusName = getDeviceStatus() if (statusName) { @@ -114,7 +120,13 @@ const onStartDisinfect = async () => { * @function 结束消毒操作 * @desc 停止倒计时并发起结束消毒请求 */ -const onFinishDisinfect = async () => { +const onFinishDisinfect = () => { + FtMessageBox.warning('请确认是否结束消毒').then(() => { + doStopDisinfect() + }) +} + +const doStopDisinfect = async () => { stopTimer() // 停止倒计时 systemStore.updateLoading(true) try { diff --git a/src/components/home/HomeSetting.vue b/src/components/home/HomeSetting.vue index 42feb58..0b76570 100644 --- a/src/components/home/HomeSetting.vue +++ b/src/components/home/HomeSetting.vue @@ -2,7 +2,7 @@ import { FtMessage } from '@/libs/message' import { useFormulaStore } from '@/stores/formulaStore' import { useHomeStore } from '@/stores/homeStore' -import { sendCmd } from 'apis/system' +import { sendCmd, syncSendCmd } from 'apis/system' import homeChart from 'assets/images/home/home-chart.svg' import homeRunSvg from 'assets/images/home/home-run.svg' import homeSettingSvg from 'assets/images/home/home-setting.svg' @@ -66,9 +66,10 @@ const getPressureConfig = async () => { className: 'PipelinePressureControl', fnName: 'getConfig', } - const res = await sendCmd(pressureParams) - console.log('res---', res) - homeStore.updatePressureConfig(res) + const res = await syncSendCmd(pressureParams) + if (res.ackcode === 0) { + homeStore.updatePressureConfig(res.rely) + } } /** @@ -138,7 +139,7 @@ const onSave = async () => { * @desc 向设备发送实时参数修改指令 */ const setRealtimeConfig = async (key: string, val: string) => { - await sendCmd({ + await syncSendCmd({ className: 'DisinfectionCtrlServiceExt', fnName: 'setRealtimeConfig', params: { key, val }, @@ -202,57 +203,66 @@ const onClose = () => { diff --git a/src/router/routes.ts b/src/router/routes.ts index ed260f7..86d8363 100644 --- a/src/router/routes.ts +++ b/src/router/routes.ts @@ -44,6 +44,7 @@ const authRoutes: RouteRecordRaw[] = [ title: '消毒液', icon: n_liquid, activeIcon: s_liquid, + keepAlive: true, }, }, { diff --git a/src/stores/deviceStore.ts b/src/stores/deviceStore.ts index 0ef5adb..0c7f256 100644 --- a/src/stores/deviceStore.ts +++ b/src/stores/deviceStore.ts @@ -12,9 +12,19 @@ const initDeviceInfo = { projectType: '', } +const initState = { + appEvents: [], + loginUser: { + isLogin: true, + name: '', + roleType: '', + }, + state: DEVICE_STATES.IDLE, +} + export const useDeviceStore = defineStore('device', () => { const deviceInfo = ref(initDeviceInfo) - const deviceStete = ref({ state: DEVICE_STATES.IDLE }) // 设备状态 + const deviceStete = ref(initState) // 设备状态 const updateDeviceInfo = (info: Device.DeviceInfo) => { deviceInfo.value = info diff --git a/src/stores/homeStore.ts b/src/stores/homeStore.ts index 901e96e..89142d6 100644 --- a/src/stores/homeStore.ts +++ b/src/stores/homeStore.ts @@ -1,5 +1,5 @@ import { DEVICE_STATES } from '@/libs/utils' -import { sendCmd } from 'apis/system' +import { syncSendCmd } from 'apis/system' import { PARSSURE_DATA } from 'libs/constant' import { defineStore } from 'pinia' import { computed, ref } from 'vue' @@ -71,7 +71,7 @@ export const useHomeStore = defineStore('home', () => { fnName: 'setType', params: { type }, } - await sendCmd(pressureTypeParams) + syncSendCmd(pressureTypeParams) // 正压或负压时保存设置的压力值 if (type === 'positivePressure' || type === 'negativePressure') { @@ -81,7 +81,7 @@ export const useHomeStore = defineStore('home', () => { fnName: 'setIntensity', params: { intensity }, } - await sendCmd(intensityParams) + syncSendCmd(intensityParams) } } } diff --git a/src/stores/liquidStore.ts b/src/stores/liquidStore.ts index 355f74c..7f78c44 100644 --- a/src/stores/liquidStore.ts +++ b/src/stores/liquidStore.ts @@ -18,6 +18,7 @@ export const useLiquidStore = defineStore('Liquid', () => { const liquidStateData = ref(liquidItem) const liquidTotal = ref(2500) const liquidPeriod = ref(300) + const inputedStopatg = ref(0) /** * @function updateAddLiquidWorkState @@ -58,6 +59,10 @@ export const useLiquidStore = defineStore('Liquid', () => { liquidPeriod.value = liquidConfig.updatePeriod } + const updateinputedStopatg = (inputVal: number) => { + inputedStopatg.value = inputVal + } + return { // 状态属性 liquidAddWorkState, @@ -65,11 +70,12 @@ export const useLiquidStore = defineStore('Liquid', () => { liquidTotal, liquidPeriod, liquidStateData, - + inputedStopatg, // 操作方法 updateAddLiquidWorkState, updateDrainLiquidWorkState, initLiquidConfig, updateLiquidState, + updateinputedStopatg, } }) diff --git a/src/stores/systemStore.ts b/src/stores/systemStore.ts index b1e2058..4627689 100644 --- a/src/stores/systemStore.ts +++ b/src/stores/systemStore.ts @@ -1,4 +1,4 @@ -import { sendCmd } from '@/apis/system' +import { syncSendCmd } from '@/apis/system' import { defineStore } from 'pinia' import { ref } from 'vue' @@ -29,9 +29,9 @@ export const useSystemStore = defineStore('system', () => { const updateLoading = (loadVal: boolean) => { loading.value = loadVal - setTimeout(() => { - loading.value = false - }, 1500) + // setTimeout(() => { + // loading.value = false + // }, 1500) } const updateConnected = (isConnected: boolean) => { @@ -48,7 +48,7 @@ export const useSystemStore = defineStore('system', () => { className: 'DisinfectionCtrlServiceExt', fnName: 'startStateReport', } - await sendCmd(subParams) + syncSendCmd(subParams) } /** @@ -61,7 +61,7 @@ export const useSystemStore = defineStore('system', () => { className: 'AddLiquidService', fnName: 'startStateReport', } - await sendCmd(subParams) + syncSendCmd(subParams) } /** @@ -74,7 +74,7 @@ export const useSystemStore = defineStore('system', () => { className: 'DrainLiquidService', fnName: 'startStateReport', } - await sendCmd(subParams) + syncSendCmd(subParams) } /** @@ -87,7 +87,7 @@ export const useSystemStore = defineStore('system', () => { className: 'AirLeakDetectTest', fnName: 'startStateReport', } - await sendCmd(subParams) + syncSendCmd(subParams) } return { diff --git a/src/views/audit/index.vue b/src/views/audit/index.vue index 3a41bec..e71673b 100644 --- a/src/views/audit/index.vue +++ b/src/views/audit/index.vue @@ -1,6 +1,6 @@ diff --git a/src/views/seal/index.vue b/src/views/seal/index.vue index 1d9a90e..ebc163f 100644 --- a/src/views/seal/index.vue +++ b/src/views/seal/index.vue @@ -81,7 +81,7 @@ const onStartTest = () => { className: 'AirLeakDetectTest', fnName: 'start', params: { - inflationTimeMs: Number(inflationTime.value), + inflationTimeMs: Number(inflationTime.value * 1000), // 转换为ms }, } loading.value = true @@ -102,11 +102,14 @@ const onFinishTest = () => { } // 停止倒计时 stopPosityveTimer() - systemStore.updateLoading(true) loading.value = true - syncSendCmd(stopParams).then(() => { + syncSendCmd(stopParams).then((res) => { + if (res.ackcode === 0) { + FtMessage.success('测试已停止') + } + loading.value = false + }).finally(() => { loading.value = false - FtMessage.success('测试已停止') }) } @@ -163,14 +166,14 @@ const stopDisabled = computed(() => {
{{ currentPressure }} - KPa + Kp
- 测试时间: + 打压时间:
{