diff --git a/src/components/ValueItem/index.vue b/src/components/ValueItem/index.vue index 516bdcec..9c559337 100644 --- a/src/components/ValueItem/index.vue +++ b/src/components/ValueItem/index.vue @@ -13,7 +13,7 @@ v-else-if="typeMap.get(itemType) === 'time'" v-model:value="myValue" allowClear - format="HH:mm:ss" + valueFormat="HH:mm:ss" style="width: 100%" @change='timeChange' /> @@ -22,8 +22,7 @@ v-model:value="myValue" allowClear showTime - lang="cn" - format="YYYY-MM-DD HH:mm:ss" + valueFormat="YYYY-MM-DD HH:mm:ss" style="width: 100%" @change='dateChange' /> diff --git a/src/store/scene.ts b/src/store/scene.ts index 1128e00a..b58ab447 100644 --- a/src/store/scene.ts +++ b/src/store/scene.ts @@ -1,5 +1,5 @@ import { defineStore } from 'pinia' -import type { FormModelType, SceneItem } from '@/views/rule-engine/Scene/typings' +import type { FormModelType } from '@/views/rule-engine/Scene/typings' import { detail } from '@/api/rule-engine/scene' import { cloneDeep, isArray } from 'lodash-es' import { randomString } from '@/utils/utils' @@ -63,7 +63,7 @@ const defaultOptions = { { terms: [ { - terms: [], + terms: [['','eq','','and']], }, ], }, @@ -71,7 +71,7 @@ const defaultOptions = { }; export const useSceneStore = defineStore('scene', () => { - const data = reactive({ + const data = ref({ trigger: { type: ''}, options: defaultOptions, branches: defaultBranches, @@ -84,7 +84,7 @@ export const useSceneStore = defineStore('scene', () => { const getDetail = async (id: string) => { const resp = await detail(id) if (resp.success) { - const result = resp.result as SceneItem + const result = resp.result as any const triggerType = result.triggerType let branches: any[] = result.branches @@ -105,19 +105,30 @@ export const useSceneStore = defineStore('scene', () => { branches.push(null); } } - - Object.assign(data, { + data.value = { ...result, trigger: result.trigger || {}, branches: cloneDeep(assignmentKey(branches)), options: result.options ? {...defaultOptions, ...result.options } : defaultOptions, - }) + } + } + } + + const refresh = () => { + data.value = { + trigger: { type: ''}, + options: cloneDeep(defaultOptions), + branches: cloneDeep(defaultBranches), + description: '', + name: '', + id: undefined } } return { data, productCache, - getDetail + getDetail, + refresh } }) diff --git a/src/views/rule-engine/Scene/Save/Device/AddModal.vue b/src/views/rule-engine/Scene/Save/Device/AddModal.vue index 04d4f974..7566f936 100644 --- a/src/views/rule-engine/Scene/Save/Device/AddModal.vue +++ b/src/views/rule-engine/Scene/Save/Device/AddModal.vue @@ -5,6 +5,7 @@ :width='820' @click='save' @cancel='cancel' + :maskClosable="false" > @@ -274,5 +275,10 @@ nextTick(() => { \ No newline at end of file diff --git a/src/views/rule-engine/Scene/Save/Device/DeviceList.vue b/src/views/rule-engine/Scene/Save/Device/DeviceList.vue index 106a6584..28b61408 100644 --- a/src/views/rule-engine/Scene/Save/Device/DeviceList.vue +++ b/src/views/rule-engine/Scene/Save/Device/DeviceList.vue @@ -26,7 +26,7 @@ :status="slotProps.state?.value" :statusText="slotProps.state?.text" :statusNames="{ - online: 'success', + online: 'processing', offline: 'error', notActive: 'warning', }" diff --git a/src/views/rule-engine/Scene/Save/Device/Product.vue b/src/views/rule-engine/Scene/Save/Device/Product.vue index a47de3a6..73c2a386 100644 --- a/src/views/rule-engine/Scene/Save/Device/Product.vue +++ b/src/views/rule-engine/Scene/Save/Device/Product.vue @@ -26,7 +26,7 @@ :active="rowKey === slotProps.id" :status="slotProps.state" :statusText="slotProps.state === 1 ? '正常' : '禁用'" - :statusNames="{ 1: 'success', 0: 'error', }" + :statusNames="{ 1: 'processing', 0: 'error', }" @click="handleClick" >