diff --git a/src/views/SchedulingPage/AnnualParamPage.vue b/src/views/SchedulingPage/AnnualParamPage.vue index d3f0bb588090108c84691d71b2d0a242450589d9..1fe3cd2cdc9b13162bd440e09bab30ac58f189cc 100644 --- a/src/views/SchedulingPage/AnnualParamPage.vue +++ b/src/views/SchedulingPage/AnnualParamPage.vue @@ -121,8 +121,8 @@ function onAddSubmit() { // æäº¤æ–°å¢ž return } }) - console.log('>>>>>>>>==',addForm.value) - console.log('========>>>>',addForm.value.year) + console.log('>>>>>>>>==', addForm.value) + console.log('========>>>>', addForm.value.year) addAnnualParam(addForm.value).then(res => { if (res.success) { getData() @@ -171,7 +171,7 @@ function resetInput() { backWaterTemperature: '' } } -function resetSearch(){ +function resetSearch() { searchKey.value = '' getData() } @@ -265,7 +265,8 @@ function customSort(a, b) { <el-row> <el-col :span="8" col-label>çƒæŒ‡æ ‡(W/m²):</el-col> <el-col :span="16" col-value> - <el-input v-float-number maxlength="11" v-model="reviseForm.standard" placeholder="" style="width: 370px" /> + <el-input v-float-number maxlength="11" v-model="reviseForm.standard" placeholder="" + style="width: 370px" /> </el-col> </el-row> <el-row> @@ -339,7 +340,7 @@ function customSort(a, b) { <el-row> <el-col :span="8" col-label>室外温度:</el-col> <el-col :span="16" col-value> - <el-input maxlength="11" v-model="addForm.outdoorTemperature" style="width: 370px" /> + <el-input maxlength="11" v-model="addForm.outdoorTemperature" style="width: 370px" /> </el-col> </el-row> <el-row> diff --git a/src/views/SchedulingPage/weatherManageSub/AddWindow.vue b/src/views/SchedulingPage/weatherManageSub/AddWindow.vue index 53268586e584aa38a6b1212371434fd42f67e812..81ea76d772a0fc9a4298e2807b9731700437204a 100644 --- a/src/views/SchedulingPage/weatherManageSub/AddWindow.vue +++ b/src/views/SchedulingPage/weatherManageSub/AddWindow.vue @@ -1,6 +1,6 @@ <script setup> -import {ref, defineProps, defineEmits, computed, isRef, onMounted, watchEffect} from "vue"; -import {vFloatNumber} from "@/utils/directives.js"; +import { ref, defineProps, defineEmits, computed, isRef, onMounted, watchEffect, reactive } from "vue"; +import { vFloatNumber } from "@/utils/directives.js"; const props = defineProps({ open: { @@ -9,23 +9,23 @@ const props = defineProps({ required: true } }) -const emit = defineEmits(['onCancel','onConfirm']) +const emit = defineEmits(['onCancel', 'onConfirm']) const addData = ref({ - transfers:[], // æ¢çƒç«™ + transfers: [], // æ¢çƒç«™ customizeName: '', // 自定义åç§° diffPercentage: '', // 自动å差百分比 illumination: '', // 光照 isAuto: false, // 是å¦è‡ªåŠ¨æ¨¡å¼ isFixed: false, // 干预模å¼ï¼štrue 固定模å¼ï¼Œfalse æ°”è±¡ä»ªæ¨¡å¼ - operateTime:"", // æ“作时间 + operateTime: "", // æ“作时间 sort: '', // æŽ’åº tempRegulation: '', // 自动调节温度 temperature: '', // 温度 timeoutMin: '', // 自动验è¯å¾ªçŽ¯æ—¶é—´ wind: '', // 风速 description: null, // 排åºå—段,全为Null - updateNullFields:"", // æ— ç”¨ï¼Œä½†ä¸ä¸ºç©º - isActive:false, // 是å¦å¯ç”¨ + updateNullFields: "", // æ— ç”¨ï¼Œä½†ä¸ä¸ºç©º + isActive: false, // 是å¦å¯ç”¨ }) const inputStyle = { color: 'black', @@ -37,7 +37,7 @@ function handleClose() { } function handleConfirm() { addData.value.operateTime = getCurrentDateTime() - emit('onConfirm',addData.value) + emit('onConfirm', addData.value) resetInput() } function getCurrentDateTime() { @@ -51,98 +51,146 @@ function getCurrentDateTime() { return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; } // ç”Ÿæˆæ—¶é—´ -function onOpen(){ +function onOpen() { resetInput() } -function resetInput(){ - addData.value={ - transfers:[], // æ¢çƒç«™ +function resetInput() { + addData.value = { + transfers: [], // æ¢çƒç«™ customizeName: '', // 自定义åç§° diffPercentage: '', // 自动å差百分比 illumination: '', // 光照 isAuto: false, // 是å¦è‡ªåŠ¨æ¨¡å¼ isFixed: false, // 干预模å¼ï¼štrue 固定模å¼ï¼Œfalse æ°”è±¡ä»ªæ¨¡å¼ - operateTime:"", // æ“作时间 + operateTime: "", // æ“作时间 sort: '', // æŽ’åº tempRegulation: '', // 自动调节温度 temperature: '', // 温度 timeoutMin: '', // 自动验è¯å¾ªçŽ¯æ—¶é—´ wind: '', // 风速 description: null, // 排åºå—段,全为Null - updateNullFields:"", // æ— ç”¨ï¼Œä½†ä¸ä¸ºç©º - isActive:false, // 是å¦å¯ç”¨ + updateNullFields: "", // æ— ç”¨ï¼Œä½†ä¸ä¸ºç©º + isActive: false, // 是å¦å¯ç”¨ } } +const formRef = ref() + +//æ ¡éªŒè§„åˆ™ +const rules = reactive({ + diffPercentage: [ + { pattern: /^([0-9]\d{0,1}|100$)(\.\d{1,4})?$/, "message": "请输入æ£ç¡®çš„ç™¾åˆ†æ¯”æ ¼å¼", trigger: "blur" } + ], + wind: [ + { pattern: /^(\d{1,11})(\.[0-9]{1,4})?$/, "message": "风速必须是1-11ä½å®žæ•°", trigger: "blur" } + ], + illumination: [ + { pattern: /^(\d{1,11})(\.[0-9]{1,4})?$/, "message": "光照必须是1-11ä½å®žæ•°", trigger: "blur" } + ], + sort: [ + { pattern: /^(\d{1,11})$/, "message": "排åºå¿…须是1-11使£æ•´æ•°", trigger: "blur" } + ], + timeoutMin: [ + { pattern: /^(\d{1,11})(\.[0-9]{1,4})?$/, "message": "åˆ¤æ–æ—¶é—´å¿…须是1-10ä½å®žæ•°", trigger: "blur" } + ], + temperature: [ + { pattern: /^(-?\d{1,11})(\.[0-9]{1,4})?$/, message: "请输入æ£ç¡®çš„调节温度", trigger: "blur" } + ] +}); </script> <template> - <el-dialog - v-model="props.open" - width="1000px" - title="新增" - @close="emit('onCancel')" - @open="onOpen"> + <el-dialog v-model="props.open" width="1000px" title="新增" @close="emit('onCancel')" @open="onOpen"> <template #default> <div class="dialog-content"> - <el-row style="border-top: #a6c3e9 1px solid"> - <el-col :span="8" class="content-col-label">自定义å称:</el-col> - <el-col :span="16" class="content-col-value"> - <el-input maxlength="11" :input-style="inputStyle" v-model="addData.customizeName" style="width: 510px"/> - </el-col> - </el-row> - <el-row> - <el-col :span="8" class="content-col-label">干预模å¼ï¼š</el-col> - <el-col :span="16" class="content-col-value"> - <el-radio-group v-model="addData.isFixed"> - <el-radio :value="true" :style="{marginLeft:'10px'}">固定模å¼</el-radio> - <el-radio :value="false" :style="{marginLeft:'-15px'}">气象仪模å¼</el-radio> - </el-radio-group> - </el-col> - </el-row> - <el-row> - <el-col :span="8" class="content-col-label">温度:</el-col> - <el-col :span="16" class="content-col-value"> - <el-input maxlength="11" :input-style="inputStyle" v-model="addData.temperature" style="width: 510px"/> - </el-col> - </el-row> - <el-row> - <el-col :span="8" class="content-col-label">风速:</el-col> - <el-col :span="16" class="content-col-value"> - <el-input :input-style="inputStyle" maxlength="11" v-model="addData.wind" style="width: 510px"/> - </el-col> - </el-row> - <el-row> - <el-col :span="8" class="content-col-label">光照:</el-col> - <el-col :span="16" class="content-col-value"> - <el-input :input-style="inputStyle" maxlength="11" v-model="addData.illumination" style="width: 510px"/> - </el-col> - </el-row> - <el-row> - <el-col :span="8" class="content-col-label">排åºï¼š</el-col> - <el-col :span="16" class="content-col-value"> - <el-input :input-style="inputStyle" maxlength="11" v-model="addData.sort" style="width: 510px"/> - </el-col> - </el-row> - <el-row> - <el-col :span="5" class="content-col-label">切æ¢è‡ªåŠ¨æ¨¡å¼ï¼š</el-col> - <el-col :span="7" class="content-col-value"> - <el-checkbox :style="{marginLeft:'10px'}" v-model="addData.isAuto" label="自动模å¼"/> - </el-col> - <el-col :span="5" class="content-col-label">自动å差百分比(%d):</el-col> - <el-col :span="7" class="content-col-value"> - <el-input v-float-number :input-style="inputStyle" maxlength="11" v-model="addData.diffPercentage" style="width: 240px"/> - </el-col> - </el-row> - <el-row> - <el-col :span="5" class="content-col-label">自动验è¯å¾ªçŽ¯æ—¶é—´ï¼ˆåˆ†é’Ÿï¼‰ï¼š</el-col> - <el-col :span="7" class="content-col-value"> - <el-input v-float-number :input-style="inputStyle" maxlength="11" v-model="addData.timeoutMin" style="width: 240px"/> - </el-col> - <el-col :span="5" class="content-col-label">自动调节温度(℃):</el-col> - <el-col :span="7" class="content-col-value"> - <el-input :input-style="inputStyle" maxlength="11" v-model="addData.tempRegulation" style="width: 240px"/> - </el-col> - </el-row> + + <el-form :rules="rules" ref="formRef" :model="addData" label-width="auto"> + + <el-row style="border-top: #a6c3e9 1px solid"> + <el-col :span="8" class="content-col-label">自定义å称:</el-col> + <el-col :span="16" class="content-col-value"> + <el-input maxlength="11" :input-style="inputStyle" v-model="addData.customizeName" style="width: 510px" /> + </el-col> + </el-row> + + <el-row> + <el-col :span="8" class="content-col-label">干预模å¼ï¼š</el-col> + <el-col :span="16" class="content-col-value"> + <el-radio-group v-model="addData.isFixed"> + <el-radio :value="true" :style="{ marginLeft: '10px' }">固定模å¼</el-radio> + <el-radio :value="false" :style="{ marginLeft: '-15px' }">气象仪模å¼</el-radio> + </el-radio-group> + </el-col> + </el-row> + + + <el-row> + <el-col :span="8" class="content-col-label">温度:</el-col> + <el-col :span="16" class="content-col-value"> + <el-form-item prop="temperature"> + <el-input maxlength="11" :input-style="inputStyle" v-model="addData.temperature" style="width: 510px" /> + </el-form-item> + </el-col> + </el-row> + + <el-row> + <el-col :span="8" class="content-col-label">风速:</el-col> + <el-col :span="16" class="content-col-value"> + <el-form-item prop="wind"> + <el-input :input-style="inputStyle" maxlength="11" v-model="addData.wind" style="width: 510px" /> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="8" class="content-col-label">光照:</el-col> + <el-col :span="16" class="content-col-value"> + <el-form-item prop="illumination"> + <el-input :input-style="inputStyle" maxlength="11" v-model="addData.illumination" + style="width: 510px" /> + </el-form-item> + </el-col> + </el-row> + + <el-row> + <el-col :span="8" class="content-col-label">排åºï¼š</el-col> + <el-col :span="16" class="content-col-value"> + <el-form-item prop="sort"> + <el-input :input-style="inputStyle" maxlength="11" v-model="addData.sort" style="width: 510px" /> + </el-form-item> + </el-col> + </el-row> + + <el-row> + <el-col :span="5" class="content-col-label">切æ¢è‡ªåŠ¨æ¨¡å¼ï¼š</el-col> + <el-col :span="7" class="content-col-value"> + <el-checkbox :style="{ marginLeft: '10px' }" v-model="addData.isAuto" label="自动模å¼" /> + </el-col> + <el-col :span="5" class="content-col-label">自动å差百分比(%d):</el-col> + <el-col :span="7" class="content-col-value"> + <el-form-item prop="diffPercentage"> + <el-input v-float-number :input-style="inputStyle" maxlength="11" v-model="addData.diffPercentage" + style="width: 240px" /> + </el-form-item> + </el-col> + </el-row> + + <el-row> + <el-col :span="5" class="content-col-label">自动验è¯å¾ªçŽ¯æ—¶é—´ï¼ˆåˆ†é’Ÿï¼‰ï¼š</el-col> + <el-col :span="7" class="content-col-value"> + <el-form-item prop="timeoutMin"> + <el-input v-float-number :input-style="inputStyle" maxlength="11" v-model="addData.timeoutMin" + style="width: 240px" /> + </el-form-item> + </el-col> + + <el-col :span="5" class="content-col-label">自动调节温度(℃):</el-col> + <el-col :span="7" class="content-col-value"> + <el-form-item prop="tempRegulation"> + <el-input :input-style="inputStyle" maxlength="11" v-model="addData.tempRegulation" + style="width: 240px" /> + </el-form-item> + </el-col> + </el-row> + </el-form> </div> </template> <template #footer> @@ -155,7 +203,6 @@ function resetInput(){ </template> <style scoped> - .el-row { color: black; height: 35px; @@ -183,10 +230,12 @@ function resetInput(){ .el-input { color: black; } -.el-radio{ + +.el-radio { color: black; } -.el-checkbox{ + +.el-checkbox { color: black; } </style> \ No newline at end of file