jiminglei 2 years ago
parent 7db0098357
commit 80c7f25d75
  1. 214
      psdc-ui/src/views/system/cl/index.vue

@ -22,15 +22,14 @@
</el-row> </el-row>
<div class="dev_control_table"> <div class="dev_control_table">
<el-table :data="data.timingList" height="500px"> <el-table :data="data.timingList" height="500px">
<el-table-column label="序号" align="center" prop="sceneId" width="50"/> <el-table-column label="序号" align="center" width="50" type="index"/>
<el-table-column label="策略名称" align="center" prop="sceneName" width="200"/> <el-table-column label="策略名称" align="center" prop="sceneName" width="200"/>
<el-table-column label="设备名称" align="center" prop="deviceName"/> <el-table-column label="策略描述" align="center" prop="sceneRemark"/>
<el-table-column label="监测位置" align="center" prop="sceneContext"/> <el-table-column label="创建时间" align="center" prop="createTime"/>
<el-table-column label="温度" align="center" prop="sceneValue"/> <!-- <el-table-column label="温度" align="center" prop="sceneValue"/>-->
<el-table-column label="操作" align="center" prop="handle"> <el-table-column label="操作" align="center" prop="handle">
<template v-slot="scope"> <template v-slot="scope">
<el-button type="primary" size="small" icon="Edit" v-hasPermi="['system:cl:edit']" @click="handleXg(scope.row.sceneId,scope.row.sceneName, <el-button type="primary" size="small" icon="Edit" v-hasPermi="['system:cl:edit']" @click="handleXg(scope.row)">修改</el-button>
scope.row.deviceId,scope.row.sceneValue,scope.row.sceneContext)">修改</el-button>
<el-button type="danger" size="small" :icon="Delete" @click="handleDel(scope.row.sceneId)">删除</el-button> <el-button type="danger" size="small" :icon="Delete" @click="handleDel(scope.row.sceneId)">删除</el-button>
</template> </template>
</el-table-column> </el-table-column>
@ -61,13 +60,18 @@
<el-input v-model="timingForm.sceneName" placeholder="请输入策略名称" /> <el-input v-model="timingForm.sceneName" placeholder="请输入策略名称" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24">
<el-form-item label="策略描述:" prop="sceneRemark" >
<el-input v-model="timingForm.sceneRemark" placeholder="请输入策略描述" />
</el-form-item>
</el-col>
<el-checkbox :indeterminate="data.isIndeterminate" v-model="data.checkAll" @change="handleCheckAllChange">全选</el-checkbox> <el-checkbox :indeterminate="data.isIndeterminate" v-model="data.checkAll" @change="handleCheckAllChange">全选</el-checkbox>
<div style="margin: 15px 0;"></div> <div style="margin: 15px 0;"></div>
<el-checkbox-group v-model="data.checkedSblb" @change="handleCheckedCitiesChange"> <el-checkbox-group v-model="data.checkedSblb" @change="handleCheckedCitiesChange">
<el-checkbox v-for="item in data.sblb" :label="item.deviceId" :key="item.deviceId" style="margin-bottom: 10px">{{item.deviceName}} <el-checkbox v-for="item in data.sblb" :label="item.deviceId" :key="item.deviceId" style="margin-bottom: 10px">{{item.deviceName}}
<el-input placeholder="进水温度" style="width: 120px ;margin: 10px"/> <el-input v-model="item.intemp" placeholder="进水温度" style="width: 120px ;margin: 10px"/>
<el-input placeholder="出水温度" style="width: 120px ;margin: 10px"/> <el-input v-model="item.outtemp" placeholder="出水温度" style="width: 120px ;margin: 10px"/>
<el-input placeholder="温度" style="width: 120px ;margin: 10px"/> <el-input v-model="item.temp" placeholder="温度" style="width: 120px ;margin: 10px"/>
</el-checkbox> </el-checkbox>
</el-checkbox-group> </el-checkbox-group>
<!-- <el-col :span="12">--> <!-- <el-col :span="12">-->
@ -120,13 +124,27 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="设备列表:" > <el-form-item label="策略描述:" prop="sceneRemark" >
<el-select v-model="timingForm1.deviceId" placeholder="设备列表"> <el-input v-model="timingForm1.sceneRemark" placeholder="请输入策略描述" />
<el-option v-for="item in data.sblb" :key="item.deviceId" :label="item.deviceName" :value="item.deviceId">
</el-option>
</el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-checkbox :indeterminate="data.isIndeterminate1" v-model="data.checkAll1" @change="handleCheckAllChange1">全选</el-checkbox>
<div style="margin: 15px 0;"></div>
<el-checkbox-group v-model="data.checkedSblb1" @change="handleCheckedCitiesChange1">
<el-checkbox v-for="item in data.sblb" :label="item.deviceId" :key="item.deviceId" style="margin-bottom: 10px">{{item.deviceName}}
<el-input v-model="item.intemp" placeholder="进水温度" style="width: 120px ;margin: 10px"/>
<el-input v-model="item.outtemp" placeholder="出水温度" style="width: 120px ;margin: 10px"/>
<el-input v-model="item.temp" placeholder="温度" style="width: 120px ;margin: 10px"/>
</el-checkbox>
</el-checkbox-group>
<!-- <el-col :span="24">-->
<!-- <el-form-item label="设备列表:" >-->
<!-- <el-select v-model="timingForm1.deviceId" placeholder="设备列表">-->
<!-- <el-option v-for="item in data.sblb" :key="item.deviceId" :label="item.deviceName" :value="item.deviceId">-->
<!-- </el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<!-- <el-col :span="12">--> <!-- <el-col :span="12">-->
<!-- <el-form-item label="进水温度:" prop="intemp" >--> <!-- <el-form-item label="进水温度:" prop="intemp" >-->
<!-- <el-input v-model="timingForm1.intemp" placeholder="进水温度" />--> <!-- <el-input v-model="timingForm1.intemp" placeholder="进水温度" />-->
@ -137,11 +155,11 @@
<!-- <el-input v-model="timingForm1.outtemp" placeholder="出水温度" />--> <!-- <el-input v-model="timingForm1.outtemp" placeholder="出水温度" />-->
<!-- </el-form-item>--> <!-- </el-form-item>-->
<!-- </el-col>--> <!-- </el-col>-->
<el-col :span="13"> <!-- <el-col :span="13">-->
<el-form-item label="温度值:" prop="temp"> <!-- <el-form-item label="温度值:" prop="temp">-->
<el-input v-model="timingForm1.temp" placeholder="温度" maxlength="11" /> <!-- <el-input v-model="timingForm1.temp" placeholder="温度" maxlength="11" />-->
</el-form-item> <!-- </el-form-item>-->
</el-col> <!-- </el-col>-->
</el-row> </el-row>
</el-form> </el-form>
<template #footer> <template #footer>
@ -197,15 +215,22 @@ onMounted(()=>{
const data = reactive({ const data = reactive({
checkAll: false, checkAll: false,
checkedSblb: [], checkedSblb: [],
checkAll1: false,
checkedSblb1: [],
sblb: [], sblb: [],
AllName:[], AllName:[],
isIndeterminate: false, isIndeterminate: false,
isIndeterminate1: false,
total:'', total:'',
timingList:[], timingList:[],
queryParams: '', queryParams: '',
sceneCode:0, sceneCode:0,
dateRange:[], dateRange:[],
postData:[],
}); });
// const wat = watch(()=> data.sblb,(val) =>{
// console.log(val)
// })
// //
function changeSl(){ function changeSl(){
console.log(data.sceneCode) console.log(data.sceneCode)
@ -251,7 +276,17 @@ function handleCheckedCitiesChange(value) {
let checkedCount = value.length; let checkedCount = value.length;
data.checkAll = checkedCount === data.sblb.length; data.checkAll = checkedCount === data.sblb.length;
data.isIndeterminate = checkedCount > 0 && checkedCount < data.sblb.length; data.isIndeterminate = checkedCount > 0 && checkedCount < data.sblb.length;
console.log(data.checkedSblb) }
function handleCheckAllChange1(val) {
data.checkedSblb1 = val ? data.AllName : [];
data.isIndeterminate1 = false;
console.log(data.checkedSblb1)
}
function handleCheckedCitiesChange1(value) {
let checkedCount = value.length;
data.checkAll1 = checkedCount === data.sblb.length;
data.isIndeterminate1 = checkedCount > 0 && checkedCount < data.sblb.length;
} }
/** 数据表格处理 */ /** 数据表格处理 */
@ -298,19 +333,17 @@ const title1= ref();
const activeName = ref('1') const activeName = ref('1')
const timingForm = reactive({ const timingForm = reactive({
sceneName:'', sceneName:'',
sceneCode:'', sceneRemark:'',
deviceId:'', deviceVos:[]
temp:'',
intemp:'',
outtemp:''
}) })
const timingForm1 = reactive({ const timingForm1 = reactive({
sceneName:'', sceneName:'',
sceneCode:'', sceneRemark:'',
deviceId:'', deviceVos:[]
temp:'', // deviceId:'',
intemp:'', // temp:'',
outtemp:'' // intemp:'',
// outtemp:''
}) })
// const watchTime = watch(()=> timingForm.executeTime, (val) => { // const watchTime = watch(()=> timingForm.executeTime, (val) => {
@ -329,8 +362,29 @@ function handleAdd() {
title.value = "新增策略"; title.value = "新增策略";
}; };
function submitForm() { function submitForm() {
open.value = false; let tempCheckedSblb = [];
data.checkedSblb.forEach(item => {
let tempItem = {
deviceId: item,
intemp: '',
outtemp: '',
temp: ''
};
// item data.sblb
let deviceInfo = data.sblb.find(sblbItem => sblbItem.deviceId === item);
if (deviceInfo) {
tempItem.intemp = deviceInfo.intemp;
tempItem.outtemp = deviceInfo.outtemp;
tempItem.temp = deviceInfo.temp;
}
tempCheckedSblb.push(tempItem);
timingForm.deviceVos=tempCheckedSblb
});
console.log(timingForm) console.log(timingForm)
open.value = false;
postNew(timingForm).then((res)=>{ postNew(timingForm).then((res)=>{
console.log(res) console.log(res)
ElMessage({type:"success",message:'新增成功!'}) ElMessage({type:"success",message:'新增成功!'})
@ -339,51 +393,83 @@ function submitForm() {
console.log(res) console.log(res)
data.queryParams=res.data data.queryParams=res.data
}) })
timingForm.sceneCode='',
timingForm.sceneName='', timingForm.sceneName='',
timingForm.deviceId='', timingForm.sceneRemark='',
timingForm.temp='', timingForm.deviceVos=[]
timingForm.intemp='',
timingForm.outtemp=''
}) })
}; };
function cancel() { function cancel() {
open.value = false; open.value = false;
timingForm.sceneCode='', data.checkedSblb=[];
timingForm.sceneName='', timingForm.sceneName='',
timingForm.deviceId='', timingForm.sceneRemark='',
timingForm.temp='', timingForm.deviceVos=[]
timingForm.intemp='',
timingForm.outtemp=''
}; };
function handleXg(sceneId,sceneName,deviceId,sceneValue,sceneContext) { function handleXg(dat) {
open1.value = true; open1.value = true;
title1.value = "修改策略"; title1.value = "修改策略";
console.log(sceneId) console.log(dat)
timingForm1.sceneId=sceneId var arr = []
timingForm1.sceneName=sceneName for(let i in dat.deviceVos){
timingForm1.deviceId=deviceId arr.push(dat.deviceVos[i].deviceId)
timingForm1.temp=sceneValue }
// if(sceneContext==''){ data.checkedSblb1=arr
// timingForm1.outtemp=sceneValue for (let i = 0;i < data.sblb.length ;i++ ){
// }else if (sceneContext==''){ var deviceId = data.sblb[i].deviceId
// timingForm1.intemp=sceneValue for (let j = 0;j < dat.deviceVos.length ;j++ ) {
// }else{ if ( deviceId === dat.deviceVos[j].deviceId){
// timingForm1.temp=sceneValue console.log("data.sblb[i].intemp " + data.sblb[i].intemp);
// } console.log("b.intemp " + dat.deviceVos[j].intemp);
data.sblb[i].intemp = dat.deviceVos[j].intemp;
data.sblb[i].outtemp = dat.deviceVos[j].outtemp;
data.sblb[i].temp = dat.deviceVos[j].temp;
}
}
}
console.log("---------------------------------")
console.log(data.sblb)
timingForm1.sceneName=dat.sceneName
timingForm1.sceneRemark=dat.sceneRemark
}; };
function submitForm1() { function submitForm1() {
open1.value = false; let tempCheckedSblb = [];
console.log(timingForm1) data.checkedSblb1.forEach(item => {
postXg({ let tempItem = {
'sceneId':timingForm1.sceneId, deviceId: item,
'sceneValue':timingForm1.temp deviceName: '',
}).then((res)=>{ intemp: '',
console.log(res) outtemp: '',
ElMessage({type:"success",message:'修改成功!'}) temp: ''
handleQuery() };
}) // item data.sblb
let deviceInfo = data.sblb.find(sblbItem => sblbItem.deviceId === item);
if (deviceInfo) {
tempItem.deviceName = deviceInfo.deviceName;
tempItem.intemp = deviceInfo.intemp;
tempItem.outtemp = deviceInfo.outtemp;
tempItem.temp = deviceInfo.temp;
}
tempCheckedSblb.push(tempItem);
data.postData=tempCheckedSblb
});
console.log(tempCheckedSblb)
// open1.value = false;
// console.log(timingForm1)
// postXg({
// 'sceneId':timingForm1.sceneId,
// 'sceneValue':timingForm1.temp
// }).then((res)=>{
// console.log(res)
// ElMessage({type:"success",message:''})
// handleQuery()
// })
}; };
function cancel1() { function cancel1() {
open1.value = false; open1.value = false;

Loading…
Cancel
Save