Commit 890795eb authored by 裴文涛's avatar 裴文涛

天气工况,风力配置描述输入调整,年度参数增加输入限制

parent f7c2bbac
......@@ -35,40 +35,85 @@ const addForm = ref({
})
const formRef = ref()
const rules = reactive({
energyType: [
{
required: true,
message: "请选择节能等级",
trigger: "blur"
}
],
year: [
{
required: true,
message: "请选择年度",
trigger: "blur"
}
],
supplyId: [
{
required: true,
message: "请选择供热站",
trigger: "blur"
}
],
degreeStandard: [
{
required: true,
message: "请输入标定值",
trigger: "blur"
},
{
pattern: /^(-?\d{1,11})(\.[0-9]{1,4})?$/,
message: "请输入正确的标定值",
trigger: "blur"
}
],
standard: [
{
required: true,
message: "请输入热指标",
trigger: "blur"
},
{
pattern: /^(-?\d{1,11})(\.[0-9]{1,4})?$/,
message: "请输入正确的热指标",
trigger: "blur"
}
],
indoorTemperature: [
{
required: true,
message: '请输入正确的室内温度',
message: "请输入室内温度",
trigger: "blur"
},
{
pattern: /^(-?\d{1,11})(\.[0-9]{1,4})?$/,
message: "请输入正确的室内温度",
trigger: "change"
trigger: "blur"
}
],
outdoorTemperature: [
{
required: true,
message: '请输入正确的室外温度',
message: "请输入室外温度",
trigger: "blur"
},
{
pattern: /^(-?\d{1,11})(\.[0-9]{1,4})?$/,
message: "请输入正确的室外温度",
trigger: "change"
trigger: "blur"
}
],
backWaterTemperature: [
{
required: true,
message: '请输入正确的回水温度',
message: "请输入回水温度",
trigger: "blur"
},
{
pattern: /^(-?\d{1,11})(\.[0-9]{1,4})?$/,
message: "请输入正确的回水温度",
trigger: "change"
trigger: "blur"
}
]
})
......@@ -164,9 +209,16 @@ function onReviseSubmit() {
})
return
}
if(Number(reviseForm.value.backWaterTemperature) > 45 || Number(reviseForm.value.backWaterTemperature) < -30){
if(Number(reviseForm.value.backWaterTemperature) > 100 || Number(reviseForm.value.backWaterTemperature) < -30){
ElMessage({
message: '回水温度不能大于45度或小于-30度',
message: '回水温度不能大于100度或小于-30度',
type: 'error',
})
return
}
if(Number(reviseForm.value.standard) > 100 || Number(reviseForm.value.standard) < 0){
ElMessage({
message: '热指标不能大于100或小于0',
type: 'error',
})
return
......@@ -233,25 +285,17 @@ function onAddSubmit() { // 提交新增
addSaveBtnLoading.value = false
return
}
if(Number(addForm.value.backWaterTemperature) > 45 || Number(addForm.value.backWaterTemperature) < -30){
ElMessage({
message: '回水温度不能大于45度或小于-30度',
type: 'error',
})
addSaveBtnLoading.value = false
return
}
if(addForm.value.energyType.trim() === ''){
if(Number(addForm.value.backWaterTemperature) > 100 || Number(addForm.value.backWaterTemperature) < -30){
ElMessage({
message: '节能等级不能为空',
message: '回水温度不能大于100度或小于-30度',
type: 'error',
})
addSaveBtnLoading.value = false
return
}
if(addForm.value.year.trim() === ''){
if(Number(addForm.value.standard) > 100 || Number(addForm.value.standard) < 0){
ElMessage({
message: '年度不能为空',
message: '热指标不能大于100或小于0',
type: 'error',
})
addSaveBtnLoading.value = false
......@@ -441,39 +485,50 @@ function getOrganizationStructure() {
<el-row first>
<el-col :span="8" col-label class="energy-type-class">节能等级:</el-col>
<el-col :span="16" col-value>
<el-form-item prop="energyType" style="padding: 0; margin: 0">
<el-select placeholder="" size="small" v-model="reviseForm.energyType" style="width: 290px">
<el-option v-for="item in energyTypeList" :key="item" :label="item" :value="item"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8" col-label>年度:</el-col>
<el-col :span="16" col-value>
<el-form-item prop="year" style="margin: 0;padding: 0">
<el-select placeholder="" size="small" v-model="reviseForm.year" style="width: 290px">
<el-option :value="selectYearValue" :label="selectYearValue"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8" col-label>供热站:</el-col>
<el-col :span="16" col-value>
<el-form-item prop="supplyId" style="margin: 0;padding: 0">
<el-select placeholder="请选择供热站" size="small" v-model="reviseForm.supplyId" style="width: 290px">
<el-option v-for="item in supplyData" :key="item.supplyId" :value="item.supplyId"
:label="item.supplyName"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8" col-label>热指标(W/m²):</el-col>
<el-col :span="16" col-value>
<el-form-item prop="standard" style="margin: 0;padding: 0">
<el-input v-float-number maxlength="10" v-model="reviseForm.standard" placeholder=""
style="width: 290px"/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8" col-label>度日数标定值:</el-col>
<el-col :span="16" col-value>
<el-input v-float-number maxlength="10" v-model="reviseForm.degreeStandard" style="width: 290px"/>
<el-form-item prop="degreeStandard" style="margin: 0;padding: 0">
<el-input maxlength="10" v-model="reviseForm.degreeStandard" placeholder=""
style="width: 290px"/>
</el-form-item>
</el-col>
</el-row>
<el-row>
......@@ -515,38 +570,50 @@ function getOrganizationStructure() {
<el-row first>
<el-col :span="8" col-label class="energy-type-class">节能等级:</el-col>
<el-col :span="16" col-value>
<el-form-item prop="energyType" style="margin: 0;padding: 0">
<el-select placeholder="" size="small" v-model="addForm.energyType" style="width: 290px">
<el-option v-for="item in energyTypeList" :key="item" :label="item" :value="item"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8" col-label>年度:</el-col>
<el-col :span="16" col-value>
<el-form-item prop="year" style="margin: 0;padding: 0">
<el-select placeholder="" size="small" v-model="addForm.year" style="width: 290px">
<el-option :value="selectYearValue" :label="selectYearValue"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8" col-label>供热站:</el-col>
<el-col :span="16" col-value>
<el-select placeholder="请选择供热站" size="small" v-model="addForm.supplyId" style="width: 290px">
<el-form-item prop="supplyId" style="margin: 0;padding: 0">
<el-select placeholder="" size="small" v-model="addForm.supplyId" style="width: 290px">
<el-option v-for="item in supplyData" :key="item.supplyId" :value="item.supplyId"
:label="item.supplyName"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8" col-label>热指标(W/m²):</el-col>
<el-col :span="16" col-value>
<el-input v-float-number maxlength="10" v-model="addForm.standard" placeholder="" style="width: 290px"/>
<el-form-item prop="standard" style="margin: 0;padding: 0">
<el-input v-float-number maxlength="10" v-model="addForm.standard" placeholder=""
style="width: 290px"/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8" col-label>度日数标定值:</el-col>
<el-col :span="16" col-value>
<el-input v-float-number maxlength="10" v-model="addForm.degreeStandard" style="width: 290px"/>
<el-form-item prop="degreeStandard" style="margin: 0;padding: 0">
<el-input maxlength="10" v-model="addForm.degreeStandard" placeholder=""
style="width: 290px"/>
</el-form-item>
</el-col>
</el-row>
<el-row>
......
......@@ -12,12 +12,25 @@ const addWindowOpen = ref(false)
const reviseForm = ref({}) // 修改表单
const addForm = ref({}) // 新增表单
const addSaveBtnLoading = ref(false)
const labelPosition = ref('top')
const formRef = ref()
//校验规则
const rules = reactive({
phenomenonName: [
{
required: true,
message: '请选择天气名称',
trigger: 'blur'
}
],
phenomenonDesc: [
{
required: true,
message: '请输入描述',
trigger: 'blur'
}
],
phenomenonTemp: [
{required: true, message: '请输入正确的对应温度', trigger: 'blur'},
{pattern: /^(-?\d{1,11})(\.[0-9]{1,4})?$/, message: "请输入正确的对应温度", trigger: "blur"}
......@@ -95,7 +108,6 @@ function onReviseSubmit() {
message: '对应温度不能大于45度或小于-30度',
type: 'error',
})
reviseSaveBtnLoading.value = false
return
}
if (reviseForm.value.phenomenonName === '晴天') {
......@@ -243,11 +255,13 @@ function customSort(a, b) {
<el-row first>
<el-col :span="8" col-label class="energy-type-class">名称:</el-col>
<el-col :span="16" col-value>
<el-form-item prop="phenomenonName" style="padding: 0;margin: 0;">
<el-select placeholder="" size="small" v-model="reviseForm.phenomenonName" style="width: 290px">
<el-option value="晴天" label="晴天"/>
<el-option value="多云" label="多云"/>
<el-option value="阴天" label="阴天"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
......@@ -258,10 +272,18 @@ function customSort(a, b) {
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-row id="phenomenonDesc">
<el-col :span="8" col-label>描述:</el-col>
<el-col :span="16" col-value>
<el-input maxlength="10" v-model="reviseForm.phenomenonDesc" placeholder="" style="width: 290px"/>
<el-form-item prop="phenomenonDesc" style="padding: 0;margin: 0;">
<el-input
type="textarea"
v-model="reviseForm.phenomenonDesc"
maxlength="200"
show-word-limit
style="width: 290px"
autosize/>
</el-form-item>
</el-col>
</el-row>
</el-form>
......@@ -280,11 +302,13 @@ function customSort(a, b) {
<el-row first>
<el-col :span="8" col-label class="energy-type-class">名称:</el-col>
<el-col :span="16" col-value>
<el-form-item prop="phenomenonName" style="padding: 0;margin: 0;">
<el-select placeholder="" size="small" v-model="addForm.phenomenonName" style="width: 290px">
<el-option value="晴天" label="晴天"/>
<el-option value="多云" label="多云"/>
<el-option value="阴天" label="阴天"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
......@@ -295,10 +319,18 @@ function customSort(a, b) {
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-row id="phenomenonDesc">
<el-col :span="8" col-label>描述:</el-col>
<el-col :span="16" col-value>
<el-input maxlength="10" v-model="addForm.phenomenonDesc" placeholder="" style="width: 290px"/>
<el-form-item prop="phenomenonDesc" style="padding: 0;margin: 0;">
<el-input
type="textarea"
v-model="addForm.phenomenonDesc"
maxlength="200"
show-word-limit
style="width: 290px"
autosize/>
</el-form-item>
</el-col>
</el-row>
</el-form>
......@@ -399,6 +431,10 @@ function customSort(a, b) {
padding-left: 5px;
}
#phenomenonDesc{
height: 100%;
}
.el-input {
color: black;
height: 24px;
......
......@@ -37,6 +37,13 @@ const formRef = ref()
//校验规则
const rules = reactive({
windLevel: [
{
required: true,
message: '请选择风力级数',
trigger: "blur"
},
],
windTemp: [
{
required: true,
......@@ -48,6 +55,13 @@ const rules = reactive({
message: "请输入正确的对应温度",
trigger: "blur"
}
],
windDesc: [
{
required: true,
message: '请输入描述',
trigger: "blur"
}
]
});
......@@ -258,9 +272,11 @@ function customSort(a, b) {
<el-row first>
<el-col :span="8" col-label class="energy-type-class">级数:</el-col>
<el-col :span="16" col-value>
<el-form-item prop="windLevel" style="padding: 0; margin: 0;">
<el-select placeholder="" size="small" v-model="reviseForm.windLevel" style="width: 290px">
<el-option v-for="(item, index) in 14" :key="index" :value="item" :label="item + '级风'" />
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
......@@ -271,10 +287,18 @@ function customSort(a, b) {
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-row id="windDesc">
<el-col :span="8" col-label>描述:</el-col>
<el-col :span="16" col-value>
<el-input maxlength="10" v-model="reviseForm.windDesc" placeholder="" style="width: 290px" />
<el-form-item prop="windDesc" style="padding: 0; margin: 0;">
<el-input
type="textarea"
v-model="reviseForm.windDesc"
maxlength="200"
show-word-limit
style="width: 290px"
autosize/>
</el-form-item>
</el-col>
</el-row>
</el-form>
......@@ -294,9 +318,11 @@ function customSort(a, b) {
<el-row first>
<el-col :span="8" col-label class="energy-type-class">级数:</el-col>
<el-col :span="16" col-value>
<el-form-item prop="windLevel" style="padding: 0; margin: 0;">
<el-select placeholder="" size="small" v-model="addForm.windLevel" style="width: 290px">
<el-option v-for="(item, index) in 14" :key="index" :value="item" :label="item + '级风'" />
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
......@@ -307,10 +333,18 @@ function customSort(a, b) {
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-row id="windDesc">
<el-col :span="8" col-label>描述:</el-col>
<el-col :span="16" col-value>
<el-input maxlength="10" v-model="addForm.windDesc" placeholder="" style="width: 290px" />
<el-form-item prop="windDesc" style="padding: 0; margin: 0;">
<el-input
type="textarea"
v-model="addForm.windDesc"
maxlength="200"
show-word-limit
style="width: 290px"
autosize/>
</el-form-item>
</el-col>
</el-row>
</el-form>
......@@ -368,7 +402,9 @@ function customSort(a, b) {
font-size: 12px;
color: black;
}
.dialog-window{
height: 500px;
}
.table-operate-column {
display: flex;
justify-content: center;
......@@ -414,6 +450,10 @@ function customSort(a, b) {
padding-left: 5px;
}
#windDesc{
height: 100%;
}
.el-input {
color: black;
height: 24px;
......
......@@ -210,7 +210,7 @@ const rules = reactive({
<el-col :span="8" class="content-col-label">风速:</el-col>
<el-col :span="16" class="content-col-value">
<el-form-item prop="wind" style="padding: 0;margin: 0;">
<el-input :input-style="inputStyle" maxlength="10" v-model="addData.wind" style="width: 510px" />
<el-input v-float-number :input-style="inputStyle" maxlength="10" v-model="addData.wind" style="width: 510px" />
</el-form-item>
</el-col>
</el-row>
......@@ -218,7 +218,7 @@ const rules = reactive({
<el-col :span="8" class="content-col-label">光照:</el-col>
<el-col :span="16" class="content-col-value">
<el-form-item prop="illumination" style="padding: 0;margin: 0;">
<el-input :input-style="inputStyle" maxlength="10" v-model="addData.illumination"
<el-input v-float-number :input-style="inputStyle" maxlength="10" v-model="addData.illumination"
style="width: 510px" />
</el-form-item>
</el-col>
......@@ -228,7 +228,7 @@ const rules = reactive({
<el-col :span="8" class="content-col-label">排序:</el-col>
<el-col :span="16" class="content-col-value">
<el-form-item prop="sort" style="padding: 0;margin: 0;">
<el-input :input-style="inputStyle" maxlength="10" v-model="addData.sort" style="width: 510px" />
<el-input v-float-number :input-style="inputStyle" maxlength="10" v-model="addData.sort" style="width: 510px" />
</el-form-item>
</el-col>
</el-row>
......
......@@ -168,12 +168,8 @@ function handleConfirm() {
)
}
}
formRef.value.validate(valid => {
if (valid) {
emit('onConfirm', reviseData.value)
}
})
}
}
})
}
......@@ -221,7 +217,8 @@ function onClose() {
<el-col :span="8" class="content-col-label">风速:</el-col>
<el-col :span="16" class="content-col-value">
<el-form-item prop="wind" style="padding: 0;margin: 0;">
<el-input :input-style="inputStyle" maxlength="10" v-model="reviseData.wind" style="width: 510px"/>
<el-input v-float-number :input-style="inputStyle" maxlength="10" v-model="reviseData.wind"
style="width: 510px"/>
</el-form-item>
</el-col>
</el-row>
......@@ -229,7 +226,7 @@ function onClose() {
<el-col :span="8" class="content-col-label">光照:</el-col>
<el-col :span="16" class="content-col-value">
<el-form-item prop="illumination" style="padding: 0;margin: 0;">
<el-input :input-style="inputStyle" maxlength="10" v-model="reviseData.illumination"
<el-input v-float-number :input-style="inputStyle" maxlength="10" v-model="reviseData.illumination"
style="width: 510px"/>
</el-form-item>
</el-col>
......@@ -238,7 +235,8 @@ function onClose() {
<el-col :span="8" class="content-col-label">排序:</el-col>
<el-col :span="16" class="content-col-value">
<el-form-item prop="sort" style="padding: 0;margin: 0;">
<el-input :input-style="inputStyle" maxlength="10" v-model="reviseData.sort" style="width: 510px"/>
<el-input v-float-number :input-style="inputStyle" maxlength="10" v-model="reviseData.sort"
style="width: 510px"/>
</el-form-item>
</el-col>
</el-row>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment