暂存进度

This commit is contained in:
caozehui
2026-07-15 15:57:14 +08:00
parent 8c7c34cda2
commit 3ed318530a
13 changed files with 350 additions and 49 deletions

View File

@@ -8,6 +8,9 @@
<el-form-item label='相对湿度(%)' prop='humidity' :label-width='110'>
<el-input v-model='formContent.humidity' placeholder='请输入湿度' maxlength='32' show-word-limit />
</el-form-item>
<el-form-item v-if='hasCheckingDevice' label='是否续检' :label-width='110'>
<el-checkbox v-model='resumeFormalChecked' @change='handleResumeFormalChange' />
</el-form-item>
<el-form-item v-if='checkStore.plan.timeCheck === 1' label='守时检测' prop='timeTest' :label-width='110'>
<el-checkbox v-model='timeTestChecked' @change='handleTimeTestChange' />
</el-form-item>
@@ -36,17 +39,22 @@ const dialogFormRef = ref()
const dialogVisible = ref(false)
const formContent = reactive<Device.ResTH>({ temperature: 0, humidity: 0 })
const hasCheckingDevice = ref(false)
const resumeFormalChecked = ref(false)
const timeTestChecked = ref(false)
const checkStore = useCheckStore()
const open = async () => {
resetFormContent()
syncTimeTestSelection(false)
syncResumeFormalSelection()
timeTestChecked.value = Boolean(checkStore.selectTestItems.timeTest)
dialogVisible.value = true
}
// 清空表单内容
const resetFormContent = () => {
Object.assign(formContent, { temperature: '22', humidity: '50' })
hasCheckingDevice.value = false
resumeFormalChecked.value = false
timeTestChecked.value = false
}
@@ -58,6 +66,18 @@ const syncTimeTestSelection = (selected: boolean) => {
})
}
const syncResumeFormalSelection = () => {
hasCheckingDevice.value = checkStore.devices.some(device => Number(device.checkState) === 1)
resumeFormalChecked.value = hasCheckingDevice.value
checkStore.setResumeFormal(hasCheckingDevice.value)
}
const handleResumeFormalChange = (value: string | number | boolean) => {
const selected = hasCheckingDevice.value && Boolean(value)
resumeFormalChecked.value = selected
checkStore.setResumeFormal(selected)
}
const handleTimeTestChange = (value: string | number | boolean) => {
syncTimeTestSelection(Boolean(value))
}
@@ -89,6 +109,7 @@ const handleStart = () => {
if (valid) {
checkStore.setTemperature(formContent.temperature)
checkStore.setHumidity(formContent.humidity)
checkStore.setResumeFormal(hasCheckingDevice.value && resumeFormalChecked.value)
emit('openTestDialog2')
handleClose()
}