Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
W
web-project
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
海康威视
web-project
Commits
7583a04c
Commit
7583a04c
authored
Aug 20, 2024
by
裴文涛
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改Bug,统一调整表单校验规则样式
parent
44482294
Changes
7
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
281 additions
and
94 deletions
+281
-94
AnnualParamPage.vue
src/views/SchedulingPage/AnnualParamPage.vue
+80
-19
PhenomenonPage.vue
src/views/SchedulingPage/PhenomenonPage.vue
+16
-15
WeatherManagePage.vue
src/views/SchedulingPage/WeatherManagePage.vue
+1
-0
WindManagePage.vue
src/views/SchedulingPage/WindManagePage.vue
+13
-13
AddWindow.vue
src/views/SchedulingPage/weatherManageSub/AddWindow.vue
+84
-21
BindWindow.vue
src/views/SchedulingPage/weatherManageSub/BindWindow.vue
+6
-2
ReviseWindow.vue
src/views/SchedulingPage/weatherManageSub/ReviseWindow.vue
+81
-24
No files found.
src/views/SchedulingPage/AnnualParamPage.vue
View file @
7583a04c
This diff is collapsed.
Click to expand it.
src/views/SchedulingPage/PhenomenonPage.vue
View file @
7583a04c
...
...
@@ -12,15 +12,15 @@ const addWindowOpen = ref(false)
const
reviseForm
=
ref
({})
// 修改表单
const
addForm
=
ref
({})
// 新增表单
const
addSaveBtnLoading
=
ref
(
false
)
const
labelPosition
=
ref
(
'top'
)
const
formRef
=
ref
()
//校验规则
const
rules
=
reactive
({
phenomenonTemp
:
[
{
required
:
true
,
message
:
'请输入正确的对应温度'
,
trigger
:
'blur'
},
{
pattern
:
/^
(
-
?\d{1,11})(\.[
0-9
]{1,4})?
$/
,
message
:
"请输入正确的对应温度"
,
trigger
:
"
change
"
}
{
pattern
:
/^
(
-
?\d{1,11})(\.[
0-9
]{1,4})?
$/
,
message
:
"请输入正确的对应温度"
,
trigger
:
"
blur
"
}
]
});
const
tableHeaderClass
=
data
=>
{
// 表头样式
...
...
@@ -90,11 +90,12 @@ function handleClose() {
function
onReviseSubmit
()
{
formRef
.
value
.
validate
((
valid
)
=>
{
if
(
valid
)
{
if
(
Math
.
abs
(
Number
(
reviseForm
.
value
.
phenomenonTemp
))
>
30
){
if
(
Number
(
reviseForm
.
value
.
phenomenonTemp
)
>
45
||
Number
(
reviseForm
.
value
.
phenomenonTemp
)
<
-
30
){
ElMessage
({
message
:
'对应温度不能大于
30
度或小于-30度'
,
message
:
'对应温度不能大于
45
度或小于-30度'
,
type
:
'error'
,
})
reviseSaveBtnLoading
.
value
=
false
return
}
if
(
reviseForm
.
value
.
phenomenonName
===
'晴天'
)
{
...
...
@@ -132,9 +133,9 @@ function onReviseSubmit() {
function
onAddSubmit
()
{
addSaveBtnLoading
.
value
=
true
formRef
.
value
.
validate
(
valid
=>
{
if
(
Math
.
abs
(
Number
(
addForm
.
value
.
phenomenonTemp
))
>
30
){
if
(
Number
(
addForm
.
value
.
phenomenonTemp
)
>
45
||
Number
(
addForm
.
value
.
phenomenonTemp
)
<
-
30
){
ElMessage
({
message
:
'对应温度不能大于
30
度或小于-30度'
,
message
:
'对应温度不能大于
45
度或小于-30度'
,
type
:
'error'
,
})
addSaveBtnLoading
.
value
=
false
...
...
@@ -238,11 +239,11 @@ function customSort(a, b) {
<div
class=
"dialog-window"
>
<el-dialog
title=
"天气工况设置修改"
v-model=
"reviseWindowOpen"
width=
"700px"
:before-close=
"handleClose"
>
<
template
#
default
>
<el-form
ref=
"formRef"
:rules=
"rules"
:model=
"reviseForm"
label-width=
"auto"
>
<el-form
ref=
"formRef"
:rules=
"rules"
:model=
"reviseForm"
:inline-message=
"true"
label-width=
"auto"
>
<el-row
first
>
<el-col
:span=
"8"
col-label
class=
"energy-type-class"
>
名称:
</el-col>
<el-col
:span=
"16"
col-value
>
<el-select
placeholder=
""
size=
"small"
v-model=
"reviseForm.phenomenonName"
style=
"width:
37
0px"
>
<el-select
placeholder=
""
size=
"small"
v-model=
"reviseForm.phenomenonName"
style=
"width:
29
0px"
>
<el-option
value=
"晴天"
label=
"晴天"
/>
<el-option
value=
"多云"
label=
"多云"
/>
<el-option
value=
"阴天"
label=
"阴天"
/>
...
...
@@ -253,14 +254,14 @@ function customSort(a, b) {
<el-col
:span=
"8"
col-label
>
对应温度:
</el-col>
<el-col
:span=
"16"
col-value
>
<el-form-item
prop=
"phenomenonTemp"
style=
"padding: 0;margin: 0;"
>
<el-input
maxlength=
"1
1"
v-model=
"reviseForm.phenomenonTemp"
placeholder=
""
style=
"width: 37
0px"
/>
<el-input
maxlength=
"1
0"
v-model=
"reviseForm.phenomenonTemp"
placeholder=
""
style=
"width: 29
0px"
/>
</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
maxlength=
"1
1"
v-model=
"reviseForm.phenomenonDesc"
placeholder=
""
style=
"width: 37
0px"
/>
<el-input
maxlength=
"1
0"
v-model=
"reviseForm.phenomenonDesc"
placeholder=
""
style=
"width: 29
0px"
/>
</el-col>
</el-row>
</el-form>
...
...
@@ -275,11 +276,11 @@ function customSort(a, b) {
</el-dialog>
<!-- 修改弹窗 -->
<el-dialog
title=
"天气工况设置新增"
v-model=
"addWindowOpen"
width=
"700px"
:before-close=
"handleClose"
>
<
template
#
default
>
<el-form
ref=
"formRef"
:model=
"addForm"
:rules=
"rules"
label-width=
"auto"
>
<el-form
ref=
"formRef"
:model=
"addForm"
:rules=
"rules"
:inline-message=
"true"
label-width=
"auto"
>
<el-row
first
>
<el-col
:span=
"8"
col-label
class=
"energy-type-class"
>
名称:
</el-col>
<el-col
:span=
"16"
col-value
>
<el-select
placeholder=
""
size=
"small"
v-model=
"addForm.phenomenonName"
style=
"width:
37
0px"
>
<el-select
placeholder=
""
size=
"small"
v-model=
"addForm.phenomenonName"
style=
"width:
29
0px"
>
<el-option
value=
"晴天"
label=
"晴天"
/>
<el-option
value=
"多云"
label=
"多云"
/>
<el-option
value=
"阴天"
label=
"阴天"
/>
...
...
@@ -289,15 +290,15 @@ function customSort(a, b) {
<el-row>
<el-col
:span=
"8"
col-label
>
对应温度:
</el-col>
<el-col
:span=
"16"
col-value
>
<el-form-item
prop=
"phenomenonTemp"
style=
"padding: 0;margin: 0;"
>
<el-input
maxlength=
"1
1"
v-model=
"addForm.phenomenonTemp"
placeholder=
""
style=
"width: 37
0px"
/>
<el-form-item
prop=
"phenomenonTemp"
style=
"padding: 0;margin: 0;"
>
<el-input
maxlength=
"1
0"
v-model=
"addForm.phenomenonTemp"
placeholder=
""
style=
"width: 29
0px"
/>
</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
maxlength=
"1
1"
v-model=
"addForm.phenomenonDesc"
placeholder=
""
style=
"width: 37
0px"
/>
<el-input
maxlength=
"1
0"
v-model=
"addForm.phenomenonDesc"
placeholder=
""
style=
"width: 29
0px"
/>
</el-col>
</el-row>
</el-form>
...
...
src/views/SchedulingPage/WeatherManagePage.vue
View file @
7583a04c
...
...
@@ -56,6 +56,7 @@ const revise = (row) => { // 修改按钮单击事件
}
const
bind
=
(
row
)
=>
{
// 绑定按钮单击事件
dependentSub
.
value
=
row
console
.
log
(
'绑定换热站数据'
,
row
)
bindWindowOpen
.
value
=
true
}
const
cancelRevise
=
()
=>
{
...
...
src/views/SchedulingPage/WindManagePage.vue
View file @
7583a04c
...
...
@@ -46,7 +46,7 @@ const rules = reactive({
{
pattern
:
/^
(
-
?\d{1,11})(\.[
0-9
]{1,4})?
$/
,
message
:
"请输入正确的对应温度"
,
trigger
:
"
change
"
trigger
:
"
blur
"
}
]
});
...
...
@@ -113,9 +113,9 @@ function onReviseSubmit() {
reviseSaveBtnLoading
.
value
=
true
formRef
.
value
.
validate
(
valid
=>
{
if
(
valid
){
if
(
Math
.
abs
(
Number
(
reviseForm
.
value
.
windTemp
))
>
30
){
if
(
Number
(
reviseForm
.
value
.
windTemp
)
>
45
||
Number
(
reviseForm
.
value
.
windTemp
)
<
-
30
){
ElMessage
({
message
:
'对应温度不能大于
30
度或小于-30度'
,
message
:
'对应温度不能大于
45
度或小于-30度'
,
type
:
'error'
,
})
reviseSaveBtnLoading
.
value
=
false
...
...
@@ -153,9 +153,9 @@ function onAddSubmit() {
addSaveBtnLoading
.
value
=
true
;
formRef
.
value
.
validate
(
valid
=>
{
if
(
valid
){
if
(
Math
.
abs
(
Number
(
addForm
.
value
.
windTemp
))
>
30
){
if
(
Number
(
addForm
.
value
.
windTemp
)
>
45
||
Number
(
addForm
.
value
.
windTemp
)
<
-
30
){
ElMessage
({
message
:
'对应温度不能大于
30
度或小于-30度'
,
message
:
'对应温度不能大于
45
度或小于-30度'
,
type
:
'error'
,
})
addSaveBtnLoading
.
value
=
false
...
...
@@ -254,11 +254,11 @@ function customSort(a, b) {
<div
class=
"dialog-window"
>
<el-dialog
title=
"风力配置修改"
v-model=
"reviseWindowOpen"
width=
"700px"
:before-close=
"handleClose"
>
<
template
#
default
>
<el-form
:rules=
"rules"
ref=
"formRef"
:model=
"reviseForm"
label-width=
"auto"
>
<el-form
:rules=
"rules"
ref=
"formRef"
:
inline-message=
"true"
:
model=
"reviseForm"
label-width=
"auto"
>
<el-row
first
>
<el-col
:span=
"8"
col-label
class=
"energy-type-class"
>
级数:
</el-col>
<el-col
:span=
"16"
col-value
>
<el-select
placeholder=
""
size=
"small"
v-model=
"reviseForm.windLevel"
style=
"width:
37
0px"
>
<el-select
placeholder=
""
size=
"small"
v-model=
"reviseForm.windLevel"
style=
"width:
29
0px"
>
<el-option
v-for=
"(item, index) in 14"
:key=
"index"
:value=
"item"
:label=
"item + '级风'"
/>
</el-select>
</el-col>
...
...
@@ -267,14 +267,14 @@ function customSort(a, b) {
<el-col
:span=
"8"
col-label
>
对应温度:
</el-col>
<el-col
:span=
"16"
col-value
>
<el-form-item
prop=
"windTemp"
style=
"padding: 0; margin: 0;"
>
<el-input
maxlength=
"1
1"
v-model=
"reviseForm.windTemp"
placeholder=
""
style=
"width: 37
0px"
/>
<el-input
maxlength=
"1
0"
v-model=
"reviseForm.windTemp"
placeholder=
""
style=
"width: 29
0px"
/>
</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
maxlength=
"1
1"
v-model=
"reviseForm.windDesc"
placeholder=
""
style=
"width: 37
0px"
/>
<el-input
maxlength=
"1
0"
v-model=
"reviseForm.windDesc"
placeholder=
""
style=
"width: 29
0px"
/>
</el-col>
</el-row>
</el-form>
...
...
@@ -290,11 +290,11 @@ function customSort(a, b) {
<!-- 修改弹窗 -->
<el-dialog
title=
"风力配置新增"
v-model=
"addWindowOpen"
width=
"700px"
:before-close=
"handleClose"
>
<
template
#
default
>
<el-form
ref=
"formRef"
:rules=
"rules"
:model=
"addForm"
label-width=
"auto"
>
<el-form
ref=
"formRef"
:rules=
"rules"
:model=
"addForm"
:inline-message=
"true"
label-width=
"auto"
>
<el-row
first
>
<el-col
:span=
"8"
col-label
class=
"energy-type-class"
>
级数:
</el-col>
<el-col
:span=
"16"
col-value
>
<el-select
placeholder=
""
size=
"small"
v-model=
"addForm.windLevel"
style=
"width:
37
0px"
>
<el-select
placeholder=
""
size=
"small"
v-model=
"addForm.windLevel"
style=
"width:
29
0px"
>
<el-option
v-for=
"(item, index) in 14"
:key=
"index"
:value=
"item"
:label=
"item + '级风'"
/>
</el-select>
</el-col>
...
...
@@ -303,14 +303,14 @@ function customSort(a, b) {
<el-col
:span=
"8"
col-label
>
对应温度:
</el-col>
<el-col
:span=
"16"
col-value
>
<el-form-item
prop=
"windTemp"
style=
"padding: 0; margin: 0;"
>
<el-input
maxlength=
"1
1"
v-model=
"addForm.windTemp"
placeholder=
""
style=
"width: 37
0px"
/>
<el-input
maxlength=
"1
0"
v-model=
"addForm.windTemp"
placeholder=
""
style=
"width: 29
0px"
/>
</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
maxlength=
"1
1"
v-model=
"addForm.windDesc"
placeholder=
""
style=
"width: 37
0px"
/>
<el-input
maxlength=
"1
0"
v-model=
"addForm.windDesc"
placeholder=
""
style=
"width: 29
0px"
/>
</el-col>
</el-row>
</el-form>
...
...
src/views/SchedulingPage/weatherManageSub/AddWindow.vue
View file @
7583a04c
<
script
setup
>
import
{
ref
,
defineProps
,
defineEmits
,
computed
,
isRef
,
onMounted
,
watchEffect
,
reactive
}
from
"vue"
;
import
{
vFloatNumber
}
from
"@/utils/directives.js"
;
import
{
ElMessage
}
from
"element-plus"
;
const
props
=
defineProps
({
open
:
{
...
...
@@ -39,6 +40,54 @@ function handleConfirm() {
addSaveBtnLoading
.
value
=
true
formRef
.
value
.
validate
(
valid
=>
{
if
(
valid
){
if
(
Number
(
addData
.
value
.
temperature
)
>
45
||
Number
(
addData
.
value
.
temperature
)
<
-
30
){
ElMessage
({
message
:
'温度不能大于45度或小于-30度'
,
type
:
'error'
,
})
addSaveBtnLoading
.
value
=
false
return
}
if
(
Number
(
addData
.
value
.
wind
)
>
17
||
Number
(
addData
.
value
.
wind
)
<=
0
){
ElMessage
({
message
:
'风速不能大于17或小于等于0'
,
type
:
'error'
,
})
addSaveBtnLoading
.
value
=
false
return
}
if
(
Number
(
addData
.
value
.
illumination
)
>
5000
||
Number
(
addData
.
value
.
illumination
)
<=
0
){
ElMessage
({
message
:
'光照不能大于5000或小于等于0'
,
type
:
'error'
,
})
addSaveBtnLoading
.
value
=
false
return
}
if
(
Number
(
addData
.
value
.
diffPercentage
)
>
100
||
Number
(
addData
.
value
.
diffPercentage
)
<=
0
){
ElMessage
({
message
:
'自动偏差百分比不能大于100或小于等于0'
,
type
:
'error'
,
})
addSaveBtnLoading
.
value
=
false
return
}
if
(
Number
(
addData
.
value
.
sort
)
<
0
){
ElMessage
({
message
:
'排序不能小于0'
,
type
:
'error'
,
})
addSaveBtnLoading
.
value
=
false
return
}
if
(
Number
(
addData
.
value
.
timeoutMin
)
<
0
){
ElMessage
({
message
:
'自动验证循环时间不能小于0'
,
type
:
'error'
,
})
addSaveBtnLoading
.
value
=
false
return
}
addData
.
value
.
operateTime
=
getCurrentDateTime
()
emit
(
'onConfirm'
,
addData
.
value
)
resetInput
()
...
...
@@ -87,26 +136,38 @@ const formRef = ref()
//校验规则
const
rules
=
reactive
({
diffPercentage
:
[
{
pattern
:
/^
([
0-9
]\d{0,1}
|100$
)(\.\d{1,4})?
$/
,
"message"
:
"请输入正确的百分比格式"
,
trigger
:
"blur"
}
customizeName
:
[
// 自定义名称
{
required
:
true
,
message
:
'请输入自定义名称'
}
],
wind
:
[
{
pattern
:
/^
(\d{1,11})(\.[
0-9
]{1,4})?
$/
,
"message"
:
"风速必须是1-11位实数"
,
trigger
:
"blur"
}
diffPercentage
:
[
// 自动偏差百分比
{
required
:
true
,
message
:
'请输入正确数值'
},
{
pattern
:
/
[
0-9
]{1,10}
/
,
"message"
:
"请输入正确数值"
,
trigger
:
"blur"
}
],
wind
:
[
// 风速
{
required
:
true
,
message
:
'请输入正确数值'
},
{
pattern
:
/
[
0-9
]{1,10}
/
,
"message"
:
"请输入正确数值"
,
trigger
:
"blur"
}
],
illumination
:
[
{
pattern
:
/^
(\d{1,2})?
$/
,
"message"
:
"光照必须是1-2位实数"
,
trigger
:
"blur"
}
{
required
:
true
,
message
:
'请输入正确数值'
},
{
pattern
:
/
[
0-9
]{1,10}
/
,
"message"
:
"请输入正确数值"
,
trigger
:
"blur"
}
],
sort
:
[
{
pattern
:
/^
(\d{1,11})
$/
,
"message"
:
"排序必须是1-11位正整数"
,
trigger
:
"blur"
}
{
required
:
true
,
message
:
'请输入正确数值'
},
{
pattern
:
/
[
0-9
]{1,10}
/
,
"message"
:
"请输入正确数值"
,
trigger
:
"blur"
}
],
timeoutMin
:
[
{
pattern
:
/^
(\d{1,11})(\.[
0-9
]{1,4})?
$/
,
"message"
:
"判断时间必须是1-11位实数"
,
trigger
:
"blur"
}
timeoutMin
:
[
// 验证时间
{
required
:
true
,
message
:
'请输入正确数值'
},
{
pattern
:
/
[
0-9
]{1,10}
/
,
"message"
:
"请输入正确数值"
,
trigger
:
"blur"
}
],
temperature
:
[
{
required
:
true
,
message
:
'请输入正确的温度'
},
{
pattern
:
/^
(
-
?\d{1,11})(\.[
0-9
]{1,4})?
$/
,
message
:
"请输入正确的温度"
,
trigger
:
"blur"
}
],
tempRegulation
:
[
{
required
:
true
,
message
:
'请输入正确数值'
},
{
pattern
:
/^
(
-
?\d{1,11})(\.[
0-9
]{1,4})?
$/
,
message
:
"请输入正确数值"
,
trigger
:
"blur"
}
]
})
;
})
</
script
>
<
template
>
...
...
@@ -114,12 +175,14 @@ const rules = reactive({
<template
#
default
>
<div
class=
"dialog-content"
>
<el-form
:rules=
"rules"
ref=
"formRef"
:model=
"addData"
label-width=
"auto"
>
<el-form
:rules=
"rules"
ref=
"formRef"
:model=
"addData"
:inline-message=
"true"
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-form-item
prop=
"customizeName"
style=
"padding: 0;margin: 0;"
>
<el-input
maxlength=
"10"
:input-style=
"inputStyle"
v-model=
"addData.customizeName"
style=
"width: 510px"
/>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -138,7 +201,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=
"temperature"
style=
"padding: 0;margin: 0;"
>
<el-input
maxlength=
"1
1
"
:input-style=
"inputStyle"
v-model=
"addData.temperature"
style=
"width: 510px"
/>
<el-input
maxlength=
"1
0
"
:input-style=
"inputStyle"
v-model=
"addData.temperature"
style=
"width: 510px"
/>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -147,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=
"1
1
"
v-model=
"addData.wind"
style=
"width: 510px"
/>
<el-input
:input-style=
"inputStyle"
maxlength=
"1
0
"
v-model=
"addData.wind"
style=
"width: 510px"
/>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -155,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=
"
2
"
v-model=
"addData.illumination"
<el-input
:input-style=
"inputStyle"
maxlength=
"
10
"
v-model=
"addData.illumination"
style=
"width: 510px"
/>
</el-form-item>
</el-col>
...
...
@@ -165,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=
"1
1
"
v-model=
"addData.sort"
style=
"width: 510px"
/>
<el-input
:input-style=
"inputStyle"
maxlength=
"1
0
"
v-model=
"addData.sort"
style=
"width: 510px"
/>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -178,8 +241,8 @@ const rules = reactive({
<el-col
:span=
"5"
class=
"content-col-label"
>
自动偏差百分比(%d):
</el-col>
<el-col
:span=
"7"
class=
"content-col-value"
>
<el-form-item
prop=
"diffPercentage"
style=
"padding: 0;margin: 0;"
>
<el-input
v-float-number
:input-style=
"inputStyle"
maxlength=
"1
1
"
v-model=
"addData.diffPercentage"
style=
"width:
240
px"
/>
<el-input
v-float-number
:input-style=
"inputStyle"
maxlength=
"1
0
"
v-model=
"addData.diffPercentage"
style=
"width:
175
px"
/>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -188,16 +251,16 @@ const rules = reactive({
<el-col
:span=
"5"
class=
"content-col-label"
>
自动验证循环时间(分钟):
</el-col>
<el-col
:span=
"7"
class=
"content-col-value"
>
<el-form-item
prop=
"timeoutMin"
style=
"padding: 0;margin: 0;"
>
<el-input
v-float-number
:input-style=
"inputStyle"
maxlength=
"1
1
"
v-model=
"addData.timeoutMin"
style=
"width:
240
px"
/>
<el-input
v-float-number
:input-style=
"inputStyle"
maxlength=
"1
0
"
v-model=
"addData.timeoutMin"
style=
"width:
175
px"
/>
</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"
style=
"padding: 0;margin: 0;"
>
<el-input
:input-style=
"inputStyle"
maxlength=
"1
1
"
v-model=
"addData.tempRegulation"
style=
"width:
240
px"
/>
<el-input
:input-style=
"inputStyle"
maxlength=
"1
0
"
v-model=
"addData.tempRegulation"
style=
"width:
175
px"
/>
</el-form-item>
</el-col>
</el-row>
...
...
src/views/SchedulingPage/weatherManageSub/BindWindow.vue
View file @
7583a04c
...
...
@@ -71,7 +71,7 @@ function onSubmit() {
bindData
.
value
.
isAuto
=
bindData
.
value
.
isAuto
===
'自动模式'
?
true
:
false
;
bindData
.
value
.
isFixed
=
bindData
.
value
.
isFixed
===
'固定模式'
?
true
:
false
;
bindData
.
value
.
updateNullFields
=
""
emit
(
'onConfirm'
,
bindData
.
value
)
gi
emit
(
'onConfirm'
,
bindData
.
value
)
}
else
{
ElMessage
.
error
(
'请选择供热站'
)
}
...
...
@@ -83,7 +83,7 @@ function onSubmit() {
* @param isAvailable 是否可用,默认为true,表示可用
*/
async
function
getTransfer
(
supplyId
,
isAvailable
=
true
)
{
selectedTransfer
.
value
.
length
=
0
// 置空,不然会重复添加
console
.
log
(
'supplyId>>>>>>>'
,
supplyId
)
let
param
=
{
customizeId
:
bindData
.
value
.
customizeId
,
supplyId
:
supplyId
...
...
@@ -93,6 +93,10 @@ async function getTransfer(supplyId, isAvailable = true) {
*/
const
result
=
await
getTransferInterface
(
param
)
transferData
.
value
=
result
.
data
if
(
isAvailable
){
// 每次需要为换热站推入数据时,清空已有的数据
selectedTransfer
.
value
.
length
=
0
}
for
(
const
item
of
transferData
.
value
)
{
if
(
!
isAvailable
)
{
item
.
selected
=
item
.
selected
.
toLowerCase
()
===
'true'
?
true
:
false
...
...
src/views/SchedulingPage/weatherManageSub/ReviseWindow.vue
View file @
7583a04c
...
...
@@ -3,6 +3,7 @@ import {ref, defineProps, defineEmits, computed, isRef, onMounted, watchEffect,
import
cloneDeep
from
'lodash/cloneDeep'
import
{
vFloatNumber
}
from
"@/utils/directives.js"
;
import
{
getTransferInterface
}
from
"@/api/scheduling.js"
;
import
{
ElMessage
}
from
"element-plus"
;
const
props
=
defineProps
({
...
...
@@ -46,26 +47,38 @@ const formRef = ref()
//校验规则
const
rules
=
reactive
({
diffPercentage
:
[
{
pattern
:
/^
([
0-9
]\d{0,1}
|100$
)(\.\d{1,4})?
$/
,
"message"
:
"请输入正确的百分比格式"
,
trigger
:
"blur"
}
customizeName
:
[
// 自定义名称
{
required
:
true
,
message
:
'请输入自定义名称'
}
],
wind
:
[
{
pattern
:
/^
(\d{1,11})(\.[
0-9
]{1,4})?
$/
,
"message"
:
"风速必须是1-11位实数"
,
trigger
:
"blur"
}
diffPercentage
:
[
// 自动偏差百分比
{
required
:
true
,
message
:
'请输入正确数值'
},
{
pattern
:
/
[
0-9
]{1,10}
/
,
"message"
:
"请输入正确数值"
,
trigger
:
"blur"
}
],
wind
:
[
// 风速
{
required
:
true
,
message
:
'请输入正确数值'
},
{
pattern
:
/
[
0-9
]{1,10}
/
,
"message"
:
"请输入正确数值"
,
trigger
:
"blur"
}
],
illumination
:
[
{
pattern
:
/^
(\d{1,2})?
$/
,
"message"
:
"光照必须是1-11位实数"
,
trigger
:
"blur"
}
{
required
:
true
,
message
:
'请输入正确数值'
},
{
pattern
:
/
[
0-9
]{1,10}
/
,
"message"
:
"请输入正确数值"
,
trigger
:
"blur"
}
],
sort
:
[
{
pattern
:
/^
(\d{1,11})
$/
,
"message"
:
"排序必须是1-11位正整数"
,
trigger
:
"blur"
}
{
required
:
true
,
message
:
'请输入正确数值'
},
{
pattern
:
/
[
0-9
]{1,10}
/
,
"message"
:
"请输入正确数值"
,
trigger
:
"blur"
}
],
timeoutMin
:
[
{
pattern
:
/^
(\d{1,11})(\.[
0-9
]{1,4})?
$/
,
"message"
:
"判断时间必须是1-10位实数"
,
trigger
:
"blur"
}
timeoutMin
:
[
// 验证时间
{
required
:
true
,
message
:
'请输入正确数值'
},
{
pattern
:
/
[
0-9
]{1,10}
/
,
"message"
:
"请输入正确数值"
,
trigger
:
"blur"
}
],
temperature
:
[
{
required
:
true
,
message
:
'请输入正确的温度'
,
trigger
:
'blur'
},
{
pattern
:
/^
(
-
?\d{1,11})(\.[
0-9
]{1,4})?
$/
,
message
:
"请输入正确的温度"
,
trigger
:
"blur"
}
{
required
:
true
,
message
:
'请输入正确的温度'
},
{
pattern
:
/^
(
-
?\d{1,11})(\.[
0-9
]{1,4})?
$/
,
message
:
"请输入正确的温度"
,
trigger
:
"blur"
}
],
tempRegulation
:
[
{
required
:
true
,
message
:
'请输入正确数值'
},
{
pattern
:
/^
(
-
?\d{1,11})(\.[
0-9
]{1,4})?
$/
,
message
:
"请输入正确数值"
,
trigger
:
"blur"
}
]
})
;
})
watchEffect
(()
=>
{
reviseData
.
value
=
props
.
data
// 深拷贝数据
})
...
...
@@ -93,6 +106,48 @@ function handleConfirm() {
reviseData
.
value
.
transfers
=
[]
formRef
.
value
.
validate
(
async
valid
=>
{
if
(
valid
)
{
if
(
Number
(
reviseData
.
value
.
temperature
)
>
45
||
Number
(
reviseData
.
value
.
temperature
)
<
-
30
){
ElMessage
({
message
:
'温度不能大于45度或小于-30度'
,
type
:
'error'
,
})
return
}
if
(
Number
(
reviseData
.
value
.
wind
)
>
17
||
Number
(
reviseData
.
value
.
wind
)
<=
0
){
ElMessage
({
message
:
'风速不能大于17或小于等于0'
,
type
:
'error'
,
})
return
}
if
(
Number
(
reviseData
.
value
.
illumination
)
>
5000
||
Number
(
reviseData
.
value
.
illumination
)
<=
0
){
ElMessage
({
message
:
'光照不能大于5000或小于等于0'
,
type
:
'error'
,
})
return
}
if
(
Number
(
reviseData
.
value
.
diffPercentage
)
>
100
||
Number
(
reviseData
.
value
.
diffPercentage
)
<=
0
){
ElMessage
({
message
:
'自动偏差百分比不能大于100或小于等于0'
,
type
:
'error'
,
})
return
}
if
(
Number
(
reviseData
.
value
.
sort
)
<
0
){
ElMessage
({
message
:
'排序不能小于0'
,
type
:
'error'
,
})
return
}
if
(
Number
(
reviseData
.
value
.
timeoutMin
)
<
0
){
ElMessage
({
message
:
'自动验证循环时间不能小于0'
,
type
:
'error'
,
})
return
}
if
(
reviseData
.
value
.
supplyId
!==
undefined
&&
reviseData
.
value
.
supplyId
!==
''
)
{
const
result
=
await
getTransferInterface
({
customizeId
:
reviseData
.
value
.
customizeId
,
...
...
@@ -130,12 +185,14 @@ function onClose() {
<el-dialog
v-model=
"props.open"
width=
"1000px"
title=
"自定义修改"
@
close=
"onClose"
@
open=
"onOpen"
>
<template
#
default
>
<div
class=
"dialog-content"
>
<el-form
ref=
"formRef"
:model=
"reviseData"
:rules=
"rules"
label-width=
"auto"
>
<el-form
ref=
"formRef"
:model=
"reviseData"
:rules=
"rules"
:inline-message=
"true"
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=
"reviseData.customizeName"
style=
"width: 510px"
/>
<el-form-item
prop=
"customizeName"
style=
"padding: 0;margin: 0;"
>
<el-input
maxlength=
"10"
:input-style=
"inputStyle"
v-model=
"reviseData.customizeName"
style=
"width: 510px"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
...
...
@@ -151,7 +208,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=
"temperature"
style=
"padding: 0;margin: 0;"
>
<el-input
maxlength=
"1
1
"
:input-style=
"inputStyle"
v-model=
"reviseData.temperature"
<el-input
maxlength=
"1
0
"
:input-style=
"inputStyle"
v-model=
"reviseData.temperature"
style=
"width: 510px"
/>
</el-form-item>
</el-col>
...
...
@@ -160,7 +217,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=
"wind"
style=
"padding: 0;margin: 0;"
>
<el-input
:input-style=
"inputStyle"
maxlength=
"1
1
"
v-model=
"reviseData.wind"
style=
"width: 510px"
/>
<el-input
:input-style=
"inputStyle"
maxlength=
"1
0
"
v-model=
"reviseData.wind"
style=
"width: 510px"
/>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -168,7 +225,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=
"
2
"
v-model=
"reviseData.illumination"
<el-input
:input-style=
"inputStyle"
maxlength=
"
10
"
v-model=
"reviseData.illumination"
style=
"width: 510px"
/>
</el-form-item>
</el-col>
...
...
@@ -177,7 +234,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=
"sort"
style=
"padding: 0;margin: 0;"
>
<el-input
:input-style=
"inputStyle"
maxlength=
"1
1
"
v-model=
"reviseData.sort"
style=
"width: 510px"
/>
<el-input
:input-style=
"inputStyle"
maxlength=
"1
0
"
v-model=
"reviseData.sort"
style=
"width: 510px"
/>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -189,8 +246,8 @@ function onClose() {
<el-col
:span=
"5"
class=
"content-col-label"
>
自动偏差百分比(%d):
</el-col>
<el-col
:span=
"7"
class=
"content-col-value"
>
<el-form-item
prop=
"diffPercentage"
style=
"padding: 0;margin: 0;"
>
<el-input
v-float-number
:input-style=
"inputStyle"
maxlength=
"1
1
"
v-model=
"reviseData.diffPercentage"
style=
"width:
240
px"
/>
<el-input
v-float-number
:input-style=
"inputStyle"
maxlength=
"1
0
"
v-model=
"reviseData.diffPercentage"
style=
"width:
175
px"
/>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -198,15 +255,15 @@ function onClose() {
<el-col
:span=
"5"
class=
"content-col-label"
>
自动验证循环时间(分钟):
</el-col>
<el-col
:span=
"7"
class=
"content-col-value"
>
<el-form-item
prop=
"timeoutMin"
style=
"padding: 0;margin: 0;"
>
<el-input
v-float-number
:input-style=
"inputStyle"
maxlength=
"1
1
"
v-model=
"reviseData.timeoutMin"
style=
"width:
240
px"
/>
<el-input
v-float-number
:input-style=
"inputStyle"
maxlength=
"1
0
"
v-model=
"reviseData.timeoutMin"
style=
"width:
175
px"
/>
</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"
style=
"padding: 0;margin: 0;"
>
<el-input
:input-style=
"inputStyle"
maxlength=
"1
1
"
v-model=
"reviseData.tempRegulation"
style=
"width:
240
px"
/>
<el-input
:input-style=
"inputStyle"
maxlength=
"1
0
"
v-model=
"reviseData.tempRegulation"
style=
"width:
175
px"
/>
</el-form-item>
</el-col>
</el-row>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment