From c7f3fd5215399b37d0511b3bd555150ff1b13507 Mon Sep 17 00:00:00 2001 From: charles <981744753@qq.com> Date: 星期一, 29 四月 2024 10:39:30 +0800 Subject: [PATCH] fix:回退原先版本 --- src/stores/devices.ts | 52 ++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 36 insertions(+), 16 deletions(-) diff --git a/src/stores/devices.ts b/src/stores/devices.ts index a961994..0b71784 100644 --- a/src/stores/devices.ts +++ b/src/stores/devices.ts @@ -1,23 +1,43 @@ -import { ref, computed } from 'vue' +import { computed } from 'vue' import { defineStore } from 'pinia' -import type { Devices } from '@/api/device' import { getDeviceList } from '@/api' +import { useRequest } from 'vue-hooks-plus' +import type { Devices } from '@/api/device' +import { DEVICE_INFO_POLLING_DURATION } from '@/common/constants' -export const useDevicesStore = defineStore('counter', () => { - const devices = ref<Devices>() - const deviceIDList = computed(() => devices?.value?.deviceIDList ?? []) +export const useDevicesStore = defineStore('device', () => { + const deviceInfo = computed(() => { + return deviceRes?.value?.data as Devices + }) - function getDevicesInfo() { - getDeviceList().then( - (res) => { - devices.value = res?.data - }, - (err) => { - console.error(err) - devices.value = undefined - } - ) + // 褰撳墠璁惧鍦ㄧ己灏戝伐鑹哄弬鏁扮殑鏃跺�欐槸鍚﹀厑璁镐笅鍙戠敓浜� + const currentDeviceAllowNoParams = computed(() => { + const currentDeviceInfo = deviceInfo.value.deviceList?.find((ele) => { + return ele.deviceID === deviceInfo.value.currentDeviceID + }) + return !currentDeviceInfo?.needSetProcessParams + }) + + /** + * 濡傛灉浠诲姟鐘舵�佹槸杩涜涓�, 鍒欒疆璇� plc 鍙栬繘搴� + */ + const { + data: deviceRes, + run: startDevicePolling, + cancel: cancelDevicePolling + } = useRequest( + getDeviceList + // { + // manual: true, + // pollingInterval: DEVICE_INFO_POLLING_DURATION, + // pollingWhenHidden: false + // } + ) + + function startPollingDevice() { + cancelDevicePolling() + startDevicePolling() } - return { devices, deviceIDList, getDevicesInfo } + return { deviceInfo, startPollingDevice, currentDeviceAllowNoParams } }) -- Gitblit v1.8.0