Browse Source

fix: 一些调整

main
betaqi 4 days ago
parent
commit
0a4ce04449
  1. 4
      src/composables/useZMQJsonWorker.ts
  2. 6
      src/stores/transferData.ts
  3. 25
      src/views/stationData/index.vue
  4. 4
      src/views/taskList/index.vue
  5. 4
      src/views/taskList/infoDrawer.vue

4
src/composables/useZMQJsonWorker.ts

@ -8,6 +8,7 @@ import type { @@ -8,6 +8,7 @@ import type {
ZmqMessage
} from '@/utils/zmq'
import webWorker from '@/utils/zmqJsonWorker?worker'
import dayjs from "dayjs";
const env = import.meta.env
let defaultHost = env.VITE_ZMQ_BASE_URL
@ -121,7 +122,8 @@ class ZMQJsonWorker { @@ -121,7 +122,8 @@ class ZMQJsonWorker {
private handleMessage(e: MessageEvent<ZmqMessage>) {
const { cmd, msg, topic, community } = e.data;
console.log(e.data)
// const now = dayjs().format('YYYY-MM-DD HH:mm:ss')
// console.log(now, e.data)
if (cmd === ZmqCMD.STATUS) {
const status = community ? 'disconnected' : 'connected';
if (this.statusCallback) {

6
src/stores/transferData.ts

@ -4,12 +4,14 @@ import type { IOnlineDevice, IUpFirmwareStatus } from '@/views/stationData/type' @@ -4,12 +4,14 @@ import type { IOnlineDevice, IUpFirmwareStatus } from '@/views/stationData/type'
import ZMQWorker from '@/composables/useZMQJsonWorker'
import { getSubTopic, type SubMsgData } from '@/utils/zmq'
import { getDeviceTopic } from '@/views/stationData/utils'
export const useTransferDataStore = defineStore('transfer', () => {
const subDevices = getSubTopic('client', 'status', 'transfer')
const worker = ZMQWorker.getInstance()
const isConnected = ref(false)
const connectSite = ref<any>(null)
async function initConnectSite() {
if (connectSite.value) return
connectSite.value = {
@ -21,11 +23,12 @@ export const useTransferDataStore = defineStore('transfer', () => { @@ -21,11 +23,12 @@ export const useTransferDataStore = defineStore('transfer', () => {
const devicesMap = reactive(new Map<string, IOnlineDevice>())
const checkDeviceStatusInterval = ref<NodeJS.Timeout>()
function checkDeviceStatus() {
checkDeviceStatusInterval.value = setInterval(() => {
const now = Date.now();
devicesMap.forEach((device: IOnlineDevice, sn) => {
if (now - device.lastUpdated > 5000) {
if (now - device.lastUpdated > 5500) {
device.status = '离线';
}
});
@ -97,7 +100,6 @@ export const useTransferDataStore = defineStore('transfer', () => { @@ -97,7 +100,6 @@ export const useTransferDataStore = defineStore('transfer', () => {
})
function upFirmwareStatus(sn: string, feedback: any[]) {
const device = devicesMap.get(sn)
if (device) {

25
src/views/stationData/index.vue

@ -1,7 +1,8 @@ @@ -1,7 +1,8 @@
<template>
<div class="flex-col gap-16 wh-full">
<template v-if="env.VITE_APP_ENV == 'local'">
<EdfsWrap title="当前连接站点" v-if="connectSite?.title" shape="circle" shapeColor="#4B9E5F" class="h-auto">
<EdfsWrap title="当前连接站点" v-if="connectSite?.title" shape="circle" shapeColor="#4B9E5F"
class="h-auto">
<div class="station-list-flow">
<div class="station-item">
<div class="title bg-[#4B9E5F]">
@ -28,7 +29,8 @@ @@ -28,7 +29,8 @@
<div class="footer row-end-0">
<div class="m-l-auto p-b-8">
<el-button type="primary" style="height: 28px; padding: 0 12px" color="#4B9E5F"
@click="onTransferData">设备详情</el-button>
@click="onTransferData">设备详情
</el-button>
</div>
</div>
</div>
@ -36,8 +38,9 @@ @@ -36,8 +38,9 @@
</EdfsWrap>
</template>
<EdfsWrap :title="`${env.VITE_APP_ENV == 'local' ? '数据迁移历史' : '数据导入历史'}`" shape="circle" shapeColor="#F1BF63"
class="flex-1" useScrollBar>
<EdfsWrap :title="`${env.VITE_APP_ENV == 'local' ? '数据迁移历史' : '数据导入历史'}`"
shape="circle" shapeColor="#F1BF63"
class="flex-1" useScrollBar>
<div class="station-list-flow">
<div class="station-item" v-for="item in siteList" :key="item.id">
<div class="title bg-[#F1BF63]">
@ -55,7 +58,9 @@ @@ -55,7 +58,9 @@
<div class="info">
<div class="info-item">
<div class="info-item-label">导出路径</div>
<div class="info-item-value">{{ item.export_root_path }}</div>
<el-tooltip :content="item.export_root_path">
<div class="info-item-path">{{ item.export_root_path }}</div>
</el-tooltip>
</div>
</div>
</div>
@ -72,7 +77,7 @@ @@ -72,7 +77,7 @@
<div class="body">
<div class="info">
<div class="info-item">
<div class="info-item-label">导入时间</div>
<div class="info-item-label">创建时间</div>
<div class="info-item-value">{{ item.create_time }}</div>
</div>
</div>
@ -90,6 +95,7 @@ import { useTransferDataStore } from '@/stores/transferData' @@ -90,6 +95,7 @@ import { useTransferDataStore } from '@/stores/transferData'
import { storeToRefs } from 'pinia'
import { getSiteList, type ISite } from '@/api/module/transfer'
import EdfsWrap from "@/components/Edfs-wrap.vue";
const env = import.meta.env
const router = useRouter()
@ -124,6 +130,7 @@ function onSiteDetails(site: ISite) { @@ -124,6 +130,7 @@ function onSiteDetails(site: ISite) {
}
const siteList = ref<ISite[]>([])
async function loadSiteList() {
const res = await getSiteList()
if (res.code === 200 || res.code === 0) {
@ -207,7 +214,7 @@ onMounted(() => { @@ -207,7 +214,7 @@ onMounted(() => {
color: var(--label-color);
}
.info-item-value {
.info-item-value, .info-item-path {
font-size: 20px;
font-weight: 500;
margin-top: 4px;
@ -223,6 +230,10 @@ onMounted(() => { @@ -223,6 +230,10 @@ onMounted(() => {
padding: 0 8px;
color: var(--station-info-val-text);
}
.info-item-path {
display: block;
}
}
}
}

4
src/views/taskList/index.vue

@ -139,8 +139,8 @@ const onCancel = async (id: string) => { @@ -139,8 +139,8 @@ const onCancel = async (id: string) => {
await getList()
}
function onTaskFinish(sn: string, status: -1 | 0 | 1 | 2 | 3) {
const curTask = list.value.findIndex(item => item.id === sn)
function onTaskFinish(id: string, status: -1 | 0 | 1 | 2 | 3) {
const curTask = list.value.findIndex(item => item.id === id)
if (curTask !== -1) {
list.value[curTask].status = status
}

4
src/views/taskList/infoDrawer.vue

@ -106,8 +106,8 @@ function zmqTaskCb(msg: SubMsgData) { @@ -106,8 +106,8 @@ function zmqTaskCb(msg: SubMsgData) {
detail.status = deviceStatus
detail.finish = finish
detail.total = total
if (detail.finish === detail.finish) {
emit('task-finish', deviceSN, deviceStatus)
if (finish === total) {
emit('task-finish', taskId, deviceStatus)
}
}

Loading…
Cancel
Save