You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
72 lines
2.0 KiB
72 lines
2.0 KiB
import { defineStore } from 'pinia'
|
|
|
|
import { HandDetector, HandDetectorApi } from '@/api/gas/handdetector'
|
|
import { Type, TypeApi } from '@/api/gas/gastype'
|
|
import { Fence, FenceApi } from '@/api/gas/fence'
|
|
import { AlarmType, AlarmTypeApi } from '@/api/gas/alarmtype'
|
|
|
|
export const useHandDetectorStore = defineStore('handDetector', {
|
|
state() {
|
|
return {
|
|
handDetectorList: [] as HandDetector[],
|
|
gasTypes: [] as Type[],
|
|
fences: [] as Fence[],
|
|
alarmTypes: [] as AlarmType[]
|
|
}
|
|
},
|
|
getters: {
|
|
getHandDetectorList(): HandDetector[] {
|
|
return this.handDetectorList
|
|
},
|
|
getGasTypes(): Type[] {
|
|
return this.gasTypes
|
|
},
|
|
getFences(): Fence[] {
|
|
return this.fences
|
|
},
|
|
getAlarmTypes(): AlarmType[] {
|
|
return this.alarmTypes
|
|
}
|
|
},
|
|
actions: {
|
|
async getAllHandDetector(refresh: boolean = false) {
|
|
if (refresh || this.handDetectorList.length === 0) {
|
|
const data = await HandDetectorApi.getListAll()
|
|
this.handDetectorList = data
|
|
return this.handDetectorList
|
|
} else {
|
|
return this.handDetectorList
|
|
}
|
|
},
|
|
async getAllFences(refresh: boolean = false) {
|
|
if (refresh || this.fences.length === 0) {
|
|
const data = await FenceApi.getListAll()
|
|
this.fences = data
|
|
return this.fences
|
|
} else {
|
|
return this.fences
|
|
}
|
|
},
|
|
async getAllGasTypes(refresh: boolean = false) {
|
|
if (refresh || this.gasTypes.length === 0) {
|
|
const data = await TypeApi.getTypePage({
|
|
pageNo: 1,
|
|
pageSize: 100
|
|
})
|
|
this.gasTypes = data.list
|
|
return this.gasTypes
|
|
} else {
|
|
return this.gasTypes
|
|
}
|
|
},
|
|
async getAllAlarmTypes(refresh: boolean = false) {
|
|
if (refresh || this.alarmTypes.length === 0) {
|
|
const data = await AlarmTypeApi.listAll()
|
|
this.alarmTypes = data
|
|
return this.alarmTypes
|
|
} else {
|
|
return this.alarmTypes
|
|
}
|
|
}
|
|
}
|
|
})
|
|
|