|
|
@ -5,162 +5,166 @@ import { ref } from 'vue' |
|
|
|
|
|
|
|
import { sendCmd } from '@/apis/system' |
|
|
|
|
|
|
|
export const useSystemStore = defineStore('system', () => { |
|
|
|
const websocketConnected = ref(true) |
|
|
|
const systemUser = ref<any>(null) |
|
|
|
const systemLogList = ref<System.SystemLog[]>([]) |
|
|
|
const insertLog = (log: System.SystemLog) => { |
|
|
|
systemLogList.value.unshift(log) |
|
|
|
systemLogList.value = systemLogList.value.slice(0, 200) |
|
|
|
} |
|
|
|
const uuids: Set<string> = new Set() |
|
|
|
const insertLogs = (appEvents: System.appEvent[]) => { |
|
|
|
appEvents.forEach((item) => { |
|
|
|
if (uuids.has(item.uuid)) { |
|
|
|
return |
|
|
|
} |
|
|
|
if (uuids.size > 500) { |
|
|
|
uuids.clear() |
|
|
|
} |
|
|
|
uuids.add(item.uuid) |
|
|
|
if (item.type === 'AppCheckPointCheckFailEvent' && item.errCheckPoints) { |
|
|
|
// 传感器检测失败弹窗事件
|
|
|
|
item.errCheckPoints.forEach((errCheckPoint) => { |
|
|
|
export const useSystemStore = defineStore( |
|
|
|
'system', |
|
|
|
() => { |
|
|
|
const websocketConnected = ref(true) |
|
|
|
const systemUser = ref<any>(null) |
|
|
|
const systemLogList = ref<System.SystemLog[]>([]) |
|
|
|
const insertLog = (log: System.SystemLog) => { |
|
|
|
systemLogList.value.unshift(log) |
|
|
|
systemLogList.value = systemLogList.value.slice(0, 200) |
|
|
|
} |
|
|
|
const uuids: Set<string> = new Set() |
|
|
|
const insertLogs = (appEvents: System.appEvent[]) => { |
|
|
|
appEvents.forEach((item) => { |
|
|
|
if (uuids.has(item.uuid)) { |
|
|
|
return |
|
|
|
} |
|
|
|
if (uuids.size > 500) { |
|
|
|
uuids.clear() |
|
|
|
} |
|
|
|
uuids.add(item.uuid) |
|
|
|
if (item.type === 'AppCheckPointCheckFailEvent' && item.errCheckPoints) { |
|
|
|
// 传感器检测失败弹窗事件
|
|
|
|
item.errCheckPoints.forEach((errCheckPoint) => { |
|
|
|
const log: System.SystemLog = { |
|
|
|
name: `${errCheckPoint.ecodeInfo}(${errCheckPoint.ecode})`, |
|
|
|
status: 'check', |
|
|
|
time: formatDateTime('YYYY-MM-DD HH:mm:ss', Date.now()), |
|
|
|
uuid: item.uuid, |
|
|
|
} |
|
|
|
insertLog(log) |
|
|
|
}) |
|
|
|
} |
|
|
|
if (item.type === 'AppWarningPromoptEvent') { |
|
|
|
// 报警事件
|
|
|
|
const log: System.SystemLog = { |
|
|
|
name: `${errCheckPoint.ecodeInfo}(${errCheckPoint.ecode})`, |
|
|
|
status: 'check', |
|
|
|
name: item.description || '', |
|
|
|
status: 'warn', |
|
|
|
time: formatDateTime('YYYY-MM-DD HH:mm:ss', Date.now()), |
|
|
|
uuid: item.uuid, |
|
|
|
} |
|
|
|
ElMessage.warning(item.description) |
|
|
|
insertLog(log) |
|
|
|
}) |
|
|
|
} |
|
|
|
if (item.type === 'AppWarningPromoptEvent') { |
|
|
|
// 报警事件
|
|
|
|
const log: System.SystemLog = { |
|
|
|
name: item.description || '', |
|
|
|
status: 'warn', |
|
|
|
time: formatDateTime('YYYY-MM-DD HH:mm:ss', Date.now()), |
|
|
|
uuid: item.uuid, |
|
|
|
} |
|
|
|
ElMessage.warning(item.description) |
|
|
|
insertLog(log) |
|
|
|
} |
|
|
|
if (item.type === 'AppPromoptEvent') { |
|
|
|
// 普通弹窗事件
|
|
|
|
const log: System.SystemLog = { |
|
|
|
name: item.message || '', |
|
|
|
status: 'info', |
|
|
|
time: formatDateTime('YYYY-MM-DD HH:mm:ss', Date.now()), |
|
|
|
uuid: item.uuid, |
|
|
|
if (item.type === 'AppPromoptEvent') { |
|
|
|
// 普通弹窗事件
|
|
|
|
const log: System.SystemLog = { |
|
|
|
name: item.message || '', |
|
|
|
status: 'info', |
|
|
|
time: formatDateTime('YYYY-MM-DD HH:mm:ss', Date.now()), |
|
|
|
uuid: item.uuid, |
|
|
|
} |
|
|
|
insertLog(log) |
|
|
|
} |
|
|
|
insertLog(log) |
|
|
|
} |
|
|
|
}) |
|
|
|
} |
|
|
|
const loginForm = ref({ |
|
|
|
name: import.meta.env.FT_NODE_ENV !== 'prod' ? 'admin' : '', |
|
|
|
pwd: import.meta.env.FT_NODE_ENV !== 'prod' ? '9973' : '', |
|
|
|
}) |
|
|
|
} |
|
|
|
const loginForm = ref({ |
|
|
|
name: import.meta.env.FT_NODE_ENV !== 'prod' ? 'admin' : '', |
|
|
|
pwd: import.meta.env.FT_NODE_ENV !== 'prod' ? '9973' : '', |
|
|
|
}) |
|
|
|
|
|
|
|
const languages = [ |
|
|
|
{ |
|
|
|
name: '中文', |
|
|
|
value: 'zh-cn', |
|
|
|
}, |
|
|
|
// {
|
|
|
|
// name: 'English',
|
|
|
|
// value: 'en',
|
|
|
|
// },
|
|
|
|
] |
|
|
|
const languages = [ |
|
|
|
{ |
|
|
|
name: '中文', |
|
|
|
value: 'zh-cn', |
|
|
|
}, |
|
|
|
// {
|
|
|
|
// name: 'English',
|
|
|
|
// value: 'en',
|
|
|
|
// },
|
|
|
|
] |
|
|
|
|
|
|
|
const menuExpand = true |
|
|
|
const isDebug = import.meta.env.FT_NODE_ENV !== 'prod' |
|
|
|
const streamVisible = false |
|
|
|
const systemList = ref([]) |
|
|
|
const loading = ref(false) |
|
|
|
const systemTime = ref(Date.now()) |
|
|
|
const menuExpand = true |
|
|
|
const isDebug = import.meta.env.FT_NODE_ENV !== 'prod' |
|
|
|
const streamVisible = false |
|
|
|
const systemList = ref([]) |
|
|
|
const loading = ref(false) |
|
|
|
const systemTime = ref(Date.now()) |
|
|
|
|
|
|
|
const updateLoading = (loadVal: boolean) => { |
|
|
|
loading.value = loadVal |
|
|
|
// setTimeout(() => {
|
|
|
|
// loading.value = false
|
|
|
|
// }, 1500)
|
|
|
|
} |
|
|
|
const updateLoading = (loadVal: boolean) => { |
|
|
|
loading.value = loadVal |
|
|
|
// setTimeout(() => {
|
|
|
|
// loading.value = false
|
|
|
|
// }, 1500)
|
|
|
|
} |
|
|
|
|
|
|
|
const updateConnected = (isConnected: boolean) => { |
|
|
|
websocketConnected.value = isConnected |
|
|
|
} |
|
|
|
const updateConnected = (isConnected: boolean) => { |
|
|
|
websocketConnected.value = isConnected |
|
|
|
} |
|
|
|
|
|
|
|
const updateUser = (data: any) => { |
|
|
|
systemUser.value = data |
|
|
|
} |
|
|
|
const updateUser = (data: any) => { |
|
|
|
systemUser.value = data |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* @function subscribeDisinfectEvent |
|
|
|
* @desc 订阅消毒状态变更事件 |
|
|
|
*/ |
|
|
|
// const subscribeDisinfectEvent = async () => {
|
|
|
|
// // 发起订阅
|
|
|
|
// const subParams = {
|
|
|
|
// className: 'DisinfectionCtrlServiceExt',
|
|
|
|
// fnName: 'startStateReport',
|
|
|
|
// }
|
|
|
|
// syncSendCmd(subParams)
|
|
|
|
// }
|
|
|
|
/** |
|
|
|
* @function subscribeDisinfectEvent |
|
|
|
* @desc 订阅消毒状态变更事件 |
|
|
|
*/ |
|
|
|
// const subscribeDisinfectEvent = async () => {
|
|
|
|
// // 发起订阅
|
|
|
|
// const subParams = {
|
|
|
|
// className: 'DisinfectionCtrlServiceExt',
|
|
|
|
// fnName: 'startStateReport',
|
|
|
|
// }
|
|
|
|
// syncSendCmd(subParams)
|
|
|
|
// }
|
|
|
|
|
|
|
|
/** |
|
|
|
* @function subscribeAddLiquidEvent |
|
|
|
* @desc 加液状态变更事件 |
|
|
|
*/ |
|
|
|
// const subscribeAddLiquidEvent = async () => {
|
|
|
|
// // 发起订阅
|
|
|
|
// const subParams = {
|
|
|
|
// className: 'AddLiquidService',
|
|
|
|
// fnName: 'startStateReport',
|
|
|
|
// }
|
|
|
|
// syncSendCmd(subParams)
|
|
|
|
// }
|
|
|
|
/** |
|
|
|
* @function subscribeAddLiquidEvent |
|
|
|
* @desc 加液状态变更事件 |
|
|
|
*/ |
|
|
|
// const subscribeAddLiquidEvent = async () => {
|
|
|
|
// // 发起订阅
|
|
|
|
// const subParams = {
|
|
|
|
// className: 'AddLiquidService',
|
|
|
|
// fnName: 'startStateReport',
|
|
|
|
// }
|
|
|
|
// syncSendCmd(subParams)
|
|
|
|
// }
|
|
|
|
|
|
|
|
/** |
|
|
|
* @function subscribeDrainLiquidEvent |
|
|
|
* @desc 排液状态变更事件 |
|
|
|
*/ |
|
|
|
// const subscribeDrainLiquidEvent = async () => {
|
|
|
|
// // 发起订阅
|
|
|
|
// const subParams = {
|
|
|
|
// className: 'DrainLiquidService',
|
|
|
|
// fnName: 'startStateReport',
|
|
|
|
// }
|
|
|
|
// syncSendCmd(subParams)
|
|
|
|
// }
|
|
|
|
/** |
|
|
|
* @function subscribeDrainLiquidEvent |
|
|
|
* @desc 排液状态变更事件 |
|
|
|
*/ |
|
|
|
// const subscribeDrainLiquidEvent = async () => {
|
|
|
|
// // 发起订阅
|
|
|
|
// const subParams = {
|
|
|
|
// className: 'DrainLiquidService',
|
|
|
|
// fnName: 'startStateReport',
|
|
|
|
// }
|
|
|
|
// syncSendCmd(subParams)
|
|
|
|
// }
|
|
|
|
|
|
|
|
const getSystemTime = async () => { |
|
|
|
const timeParams = { |
|
|
|
className: 'OsMgrService', |
|
|
|
fnName: 'getTime', |
|
|
|
const getSystemTime = async () => { |
|
|
|
const timeParams = { |
|
|
|
className: 'OsMgrService', |
|
|
|
fnName: 'getTime', |
|
|
|
} |
|
|
|
const res = await sendCmd(timeParams) |
|
|
|
systemTime.value = res.time |
|
|
|
} |
|
|
|
const res = await sendCmd(timeParams) |
|
|
|
systemTime.value = res.time |
|
|
|
} |
|
|
|
|
|
|
|
return { |
|
|
|
systemUser, |
|
|
|
loginForm, |
|
|
|
languages, |
|
|
|
menuExpand, |
|
|
|
isDebug, |
|
|
|
streamVisible, |
|
|
|
systemList, |
|
|
|
loading, |
|
|
|
websocketConnected, |
|
|
|
systemTime, |
|
|
|
systemLogList, |
|
|
|
updateUser, |
|
|
|
updateLoading, |
|
|
|
updateConnected, |
|
|
|
getSystemTime, |
|
|
|
insertLog, |
|
|
|
insertLogs, |
|
|
|
} |
|
|
|
}) |
|
|
|
return { |
|
|
|
systemUser, |
|
|
|
loginForm, |
|
|
|
languages, |
|
|
|
menuExpand, |
|
|
|
isDebug, |
|
|
|
streamVisible, |
|
|
|
systemList, |
|
|
|
loading, |
|
|
|
websocketConnected, |
|
|
|
systemTime, |
|
|
|
systemLogList, |
|
|
|
updateUser, |
|
|
|
updateLoading, |
|
|
|
updateConnected, |
|
|
|
getSystemTime, |
|
|
|
insertLog, |
|
|
|
insertLogs, |
|
|
|
} |
|
|
|
}, |
|
|
|
{ persist: true }, |
|
|
|
) |