|
|
|
@ -52,11 +52,11 @@ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!-- 新增对话框 --> |
|
|
|
|
<el-dialog :title="title" v-model="open" width="1000" append-to-body> |
|
|
|
|
<el-dialog :title="title" v-model="open" width="1100" append-to-body> |
|
|
|
|
<el-form :model="timingForm" ref="userRef" label-width="88px"> |
|
|
|
|
<el-row> |
|
|
|
|
<el-col :span="24"> |
|
|
|
|
<el-form-item label="新建策略:" prop="sceneName" > |
|
|
|
|
<el-form-item label="策略名称:" prop="sceneName" > |
|
|
|
|
<el-input v-model="timingForm.sceneName" placeholder="请输入策略名称" /> |
|
|
|
|
</el-form-item> |
|
|
|
|
</el-col> |
|
|
|
@ -65,6 +65,17 @@ |
|
|
|
|
<el-input v-model="timingForm.sceneRemark" placeholder="请输入策略描述" /> |
|
|
|
|
</el-form-item> |
|
|
|
|
</el-col> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!-- <span style="width: 60px;display: inline-block ;margin: 20px">第一步</span>--> |
|
|
|
|
<!-- <el-radio-group v-model="timingForm.isJudge">--> |
|
|
|
|
<!-- <el-radio :label="1">展开</el-radio>--> |
|
|
|
|
<!-- <el-radio :label="2">关闭</el-radio>--> |
|
|
|
|
<!-- </el-radio-group>--> |
|
|
|
|
<el-collapse v-model="timingForm.num" style="margin-left: 20px" accordion> |
|
|
|
|
<el-collapse-item title="第一步" :name="1"> |
|
|
|
|
<span style="width: 50px; margin-left: 20px ">步骤描述:</span> |
|
|
|
|
<el-input placeholder="请输入步骤描述" style="width: 900px"/> |
|
|
|
|
<span style="width: 120px;display: inline-block ;margin: 20px">是否有限制条件</span> |
|
|
|
|
<el-radio-group v-model="timingForm.isJudge"> |
|
|
|
|
<el-radio :label="1">是</el-radio> |
|
|
|
@ -104,6 +115,103 @@ |
|
|
|
|
</span> |
|
|
|
|
</el-checkbox> |
|
|
|
|
</el-checkbox-group> |
|
|
|
|
|
|
|
|
|
</el-collapse-item> |
|
|
|
|
<el-collapse-item title="第二步" :name="2"> |
|
|
|
|
<span style="width: 50px; margin-left: 20px ">步骤描述:</span> |
|
|
|
|
<el-input placeholder="请输入步骤描述" style="width: 900px"/> |
|
|
|
|
<span style="width: 120px;display: inline-block ;margin: 20px">是否有限制条件</span> |
|
|
|
|
<el-radio-group v-model="timingForm.isJudge"> |
|
|
|
|
<el-radio :label="1">是</el-radio> |
|
|
|
|
<el-radio :label="2">否</el-radio> |
|
|
|
|
</el-radio-group> |
|
|
|
|
<el-collapse v-model="timingForm.isJudge" style="width: 1000px"> |
|
|
|
|
<el-collapse-item title="限制条件" :name="1"> |
|
|
|
|
<span>限制设备:</span> |
|
|
|
|
<el-select v-model="timingForm.judgeDevice" placeholder="请选择" style="width: 240px"> |
|
|
|
|
<el-option :label='item.deviceName' :value='item.deviceId' :key="item.deviceId" v-for="item in data.allsblb"/> |
|
|
|
|
</el-select> |
|
|
|
|
<span style="width: 70px;display: inline-block ;margin: 20px">限制属性:</span> |
|
|
|
|
<el-radio-group v-model="timingForm.judgeElement"> |
|
|
|
|
<el-radio label="thermometer_value">温度</el-radio> |
|
|
|
|
<el-radio label="thermometer_value_in">进水温度</el-radio> |
|
|
|
|
<el-radio label="thermometer_value_out">出水温度</el-radio> |
|
|
|
|
</el-radio-group> |
|
|
|
|
<span style="width: 70px;display: inline-block ;margin-left: 50px">温度数值:</span> |
|
|
|
|
<el-input type="number" v-model="timingForm.judgeData" placeholder="请输入" style="width: 80px ; height: 25px" /> |
|
|
|
|
</el-collapse-item> |
|
|
|
|
</el-collapse> |
|
|
|
|
<el-checkbox :indeterminate="data.isIndeterminate" v-model="data.checkAll" @change="handleCheckAllChange">全选</el-checkbox> |
|
|
|
|
<el-checkbox-group v-model="data.checkedSblb" @change="handleCheckedCitiesChange" style="white-space: normal;display: inline-block"> |
|
|
|
|
<el-checkbox v-for="item in data.sblb" :label="item.deviceId" :key="item.deviceId" style="margin-bottom: 10px;width: 560px;"> |
|
|
|
|
<span style="width: 160px;display: inline-block">{{item.deviceName}}</span> |
|
|
|
|
<span v-for="control in item.controlKey" style="margin-left: 20px"> |
|
|
|
|
<span style="width: 80px;display: inline-block">{{control.label}}</span> |
|
|
|
|
<template v-if="control.label === '控制启停'"> |
|
|
|
|
<el-radio-group v-model="control.value"> |
|
|
|
|
<el-radio label="1">开启</el-radio> |
|
|
|
|
<el-radio label="2">关闭</el-radio> |
|
|
|
|
</el-radio-group> |
|
|
|
|
</template> |
|
|
|
|
<template v-else> |
|
|
|
|
<el-input type="number" v-model="control.value" style="width: 120px ;margin: 10px;height: 25px"/> |
|
|
|
|
</template> |
|
|
|
|
</span> |
|
|
|
|
</el-checkbox> |
|
|
|
|
</el-checkbox-group> |
|
|
|
|
|
|
|
|
|
</el-collapse-item> |
|
|
|
|
<el-collapse-item title="第三步" :name="3"> |
|
|
|
|
<span style="width: 50px; margin-left: 20px ">步骤描述:</span> |
|
|
|
|
<el-input placeholder="请输入步骤描述" style="width: 900px"/> |
|
|
|
|
<span style="width: 120px;display: inline-block ;margin: 20px">是否有限制条件</span> |
|
|
|
|
<el-radio-group v-model="timingForm.isJudge"> |
|
|
|
|
<el-radio :label="1">是</el-radio> |
|
|
|
|
<el-radio :label="2">否</el-radio> |
|
|
|
|
</el-radio-group> |
|
|
|
|
<el-collapse v-model="timingForm.isJudge" style="width: 1000px"> |
|
|
|
|
<el-collapse-item title="限制条件" :name="1"> |
|
|
|
|
<span>限制设备:</span> |
|
|
|
|
<el-select v-model="timingForm.judgeDevice" placeholder="请选择" style="width: 240px"> |
|
|
|
|
<el-option :label='item.deviceName' :value='item.deviceId' :key="item.deviceId" v-for="item in data.allsblb"/> |
|
|
|
|
</el-select> |
|
|
|
|
<span style="width: 70px;display: inline-block ;margin: 20px">限制属性:</span> |
|
|
|
|
<el-radio-group v-model="timingForm.judgeElement"> |
|
|
|
|
<el-radio label="thermometer_value">温度</el-radio> |
|
|
|
|
<el-radio label="thermometer_value_in">进水温度</el-radio> |
|
|
|
|
<el-radio label="thermometer_value_out">出水温度</el-radio> |
|
|
|
|
</el-radio-group> |
|
|
|
|
<span style="width: 70px;display: inline-block ;margin-left: 50px">温度数值:</span> |
|
|
|
|
<el-input type="number" v-model="timingForm.judgeData" placeholder="请输入" style="width: 80px ; height: 25px" /> |
|
|
|
|
</el-collapse-item> |
|
|
|
|
</el-collapse> |
|
|
|
|
<el-checkbox :indeterminate="data.isIndeterminate" v-model="data.checkAll" @change="handleCheckAllChange">全选</el-checkbox> |
|
|
|
|
<el-checkbox-group v-model="data.checkedSblb" @change="handleCheckedCitiesChange" style="white-space: normal;display: inline-block"> |
|
|
|
|
<el-checkbox v-for="item in data.sblb" :label="item.deviceId" :key="item.deviceId" style="margin-bottom: 10px;width: 560px;"> |
|
|
|
|
<span style="width: 160px;display: inline-block">{{item.deviceName}}</span> |
|
|
|
|
<span v-for="control in item.controlKey" style="margin-left: 20px"> |
|
|
|
|
<span style="width: 80px;display: inline-block">{{control.label}}</span> |
|
|
|
|
<template v-if="control.label === '控制启停'"> |
|
|
|
|
<el-radio-group v-model="control.value"> |
|
|
|
|
<el-radio label="1">开启</el-radio> |
|
|
|
|
<el-radio label="2">关闭</el-radio> |
|
|
|
|
</el-radio-group> |
|
|
|
|
</template> |
|
|
|
|
<template v-else> |
|
|
|
|
<el-input type="number" v-model="control.value" style="width: 120px ;margin: 10px;height: 25px"/> |
|
|
|
|
</template> |
|
|
|
|
</span> |
|
|
|
|
</el-checkbox> |
|
|
|
|
</el-checkbox-group> |
|
|
|
|
|
|
|
|
|
</el-collapse-item> |
|
|
|
|
</el-collapse> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!-- <el-col :span="12">--> |
|
|
|
|
<!-- <el-form-item label="策略列表:" >--> |
|
|
|
|
<!-- <el-select v-model="timingForm.sceneCode" placeholder="策略列表">--> |
|
|
|
@ -284,6 +392,7 @@ onMounted(()=>{ |
|
|
|
|
}) |
|
|
|
|
/** 筛选处理 */ |
|
|
|
|
const data = reactive({ |
|
|
|
|
num:1, |
|
|
|
|
activeNames:0, |
|
|
|
|
checkAll: false, |
|
|
|
|
checkedSblb: [], |
|
|
|
@ -405,6 +514,7 @@ const open1 = ref(false); |
|
|
|
|
const title1= ref(); |
|
|
|
|
const activeName = ref('1') |
|
|
|
|
const timingForm = reactive({ |
|
|
|
|
num:1, |
|
|
|
|
sceneName:'', |
|
|
|
|
sceneRemark:'', |
|
|
|
|
deviceVos:[], |
|
|
|
|