From c7095a2bce8dbba2ae1e67e27806b33442d2c27a Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@iotlink.com>
Date: 星期一, 28 九月 2020 19:45:29 +0800
Subject: [PATCH] 完善事件推送应用
---
src/pages/cameraAccess/components/scene/Editor.vue | 151 ++++++++++++++++++++++++++++++++++----------------
1 files changed, 103 insertions(+), 48 deletions(-)
diff --git a/src/pages/cameraAccess/components/scene/Editor.vue b/src/pages/cameraAccess/components/scene/Editor.vue
index 7ddb8a9..4f540a6 100644
--- a/src/pages/cameraAccess/components/scene/Editor.vue
+++ b/src/pages/cameraAccess/components/scene/Editor.vue
@@ -23,7 +23,7 @@
:class="{ init: index == 0 }"
v-cloak
v-for="(sdkItem, index) in sdkGroup"
- :key="sdkItem.id"
+ :key="index"
>
<div class="connection" v-if="index !== 0">
<el-select
@@ -99,7 +99,7 @@
<div class="argums derive-line" v-show="sdkItem.isSpread">
<div v-for="(arg, index) in sdkItem.defaultArg" :key="arg.sort">
- <div class="argums-item" v-if="arg.config.isShow">
+ <div class="argums-item" v-show="arg.config.isShow">
<div class="arg-name">
<!-- <el-input
v-model="arg.name"
@@ -148,9 +148,22 @@
<span>{{ arg.unit }}</span>
</div>
<div v-else>
- <el-select v-if="arg.type == 'option'" v-model="arg.sdk_arg_value">
- <el-option>璇烽�夋嫨</el-option>
+ <el-select
+ v-if="arg.type == 'option'"
+ v-model="arg.sdk_arg_value"
+ :multiple="arg.config.isMulti"
+ collapse-tags
+ size="mini"
+ >
+ <el-option
+ v-for="one in arg.valueOptions"
+ :key="one.value"
+ :value="one.value"
+ :label="one.name"
+ :title="one.name"
+ ></el-option>
</el-select>
+
<el-input
v-if="arg.type == 'value'"
v-model="arg.sdk_arg_value"
@@ -213,6 +226,7 @@
></el-input>-->
<el-select
+ :disabled="optArgItem.operators.length==1"
v-model="optArgItem.operator"
size="mini"
@change="selOperator(optArgItem)"
@@ -338,7 +352,6 @@
watch: {
Cameras: {
handler(n, o) {
- debugger
let polygon = []
let cameras = [...n]
@@ -358,7 +371,6 @@
this.allPolygonData = polygon
//娣诲姞鍦烘櫙鍒濆鍖栧尯鍩熼�夐」涓�'鍏ㄩ儴鍖哄煙'
- debugger
// if (polygon.length > 0 && this.ruleList == '') {
// this.polygonObj = polygon[0]
// this.sdkGroup[0].polygonObj = JSON.parse(
@@ -382,14 +394,7 @@
if (rangeOne) {
debugger
if (rangeOne.min.trim() && rangeOne.max.trim()) {
- // if (Number(rangeOne.min) >= Number(rangeOne.max)) {
- // this.$notify({
- // type: 'error',
- // message: '鍖洪棿宸︿晶涓嶈兘澶т簬鎴栫瓑浜庡尯闂村彸渚х殑鍊�'
- // })
- // rangeOne.valid = false
- // }
- rangeOne.sdk_arg_value = rangeOne.min + ',' + rangeOne.max
+ rangeOne.sdk_arg_value = rangeOne.min + '|' + rangeOne.max
} else {
rangeOne.sdk_arg_value = false;
}
@@ -560,7 +565,6 @@
this.sdkGroup[index].isSpread = !this.sdkGroup[index].isSpread
},
addOptionalArg(sdkItem) {
- debugger
sdkItem.initAddOptional = false
sdkItem.optArg.forEach(arg => {
sdkItem.optNames.forEach(name => {
@@ -591,7 +595,11 @@
this.setOptArgValueOptions(copyArgTemp)
}
-
+ //榛樿閫変腑绗竴涓猳perator
+ //if (copyArgTemp.operators.length == 1) {
+ this.$set(copyArgTemp, 'operator', copyArgTemp.operators[0].operator)
+ //}
+
if (copyArgTemp.default_value) {
this.$set(copyArgTemp, 'sdk_arg_value', copyArgTemp.default_value)
}
@@ -635,7 +643,10 @@
if (argObj.type == 'option') {
this.setOptArgValueOptions(argObj);
}
- debugger
+ //榛樿閫変腑绗竴涓猳perator
+ //if (argObj.operators.length == 1) {
+ this.$set(argObj, 'operator', argObj.operators[0].operator)
+ //}
//鏇挎崲鏂扮殑鍙傛暟閰嶇疆瀵硅薄
sdkItem.optArg.forEach((arg, index) => {
if (arg.sort == optArgItem.sort) {
@@ -646,6 +657,7 @@
console.log(argObj.valueOptions)
},
setOptArgValueOptions(optArg) {
+ debugger
let alias = optArg.alias;
console.log(this.VideoManageData.Dictionary[alias])
optArg.valueOptions = this.VideoManageData.Dictionary[alias].map(r => {
@@ -842,7 +854,10 @@
//this.$set(arg, 'sdk_arg_value', arg.range.substring(1,arg.range.length-1));
}
}
-
+ debugger
+ if(arg.type == 'option'){
+ this.setOptArgValueOptions(arg)
+ }
if (arg.default_value) {
//arg.sdk_arg_value = arg.default_value
this.$set(arg, 'sdk_arg_value', arg.default_value)
@@ -1092,9 +1107,7 @@
// return
// }
let ruleInfo = JSON.parse(ruleTxt);
- debugger;
- //let ruleInfo = JSON.parse(ruleTxt)
this.editRule(ruleInfo)
// 濡傛灉鏄仈鍔ㄤ换鍔�, 鏌ヨ鑱斿姩鎽勫儚鏈哄垪琛�, 灏嗘爲閫変腑鐨勫垪琛ㄦ洿鏀逛负璇ユ潯瑙勫垯鎵�闇�瑕佺殑鎽勫儚鏈�, 骞跺浠藉綋鍓嶇殑閫変腑鐘舵��, 瑙勫垯淇濆瓨鍚庢仮澶�
// if (this.isLinkRule) {
@@ -1118,21 +1131,6 @@
this.sdkGroup = []
this.group_id = ''
- // this.sdkGroup = ruleGroup;
- // sdkGroup: [
- // {
- // sdkObj: {},
- // polygonObj: {},
- // is_save_anyhow: true,
- // isSpread: true,
- // argDef: [],
- // initAddOptional: false,
- // defaultArg: [],
- // optionalArg: [],
- // optArg: [],
- // optNames: []
- // }
- // ],
ruleGroup.forEach(rule => {
debugger
let tempObj = {}
@@ -1172,6 +1170,7 @@
sdkObj = this.TaskMange.list1.find(sdk => sdk.id == rule.sdk_id)
argDef = JSON.parse(sdkObj.argDef)
+ debugger
defaultArg = argDef.filter(arg => !arg.config.isOptional)
optionalArg = argDef.filter(arg => arg.config.isOptional)
@@ -1182,10 +1181,10 @@
}
})
if (optItem) {
- if (optItem.operators.length > 1) {
+ //if (optItem.operators.length > 1) {
optItem.operator = arg.operator
//this.selOperator(optItem)
- }
+ //}
//璧嬪��
optItem.sdk_arg_value = arg.sdk_arg_value
@@ -1199,16 +1198,30 @@
if (optItem.type == 'option') {
this.setOptArgValueOptions(optItem)
}
+ if(optItem.alias=="bForceSend"){
+
+ }
+ //鍦╬ush涔嬪墠,闇�瑕佸垽鏂槸鍚﹂厤缃簡杩欎釜鍙�夐」 鍦╯dk_set閰嶇疆鏁扮粍閲�,
+ debugger
optArg.push(optItem)
+
} else {
defaultArg.forEach(d => {
if (d.sort == arg.sort) {
- if (arg.sdk_arg_value.indexOf(',') > 0) {
+
+ if (arg.sdk_arg_value.indexOf('|') > 0) {
+ debugger
//鍖洪棿鍊�
d.min = arg.sdk_arg_value.split(',')[0];
d.max = arg.sdk_arg_value.split(',')[1];
d.operator = 'range'
- } else {
+ //} else if(arg.sdk_arg_value.indexOf(',') > 0){
+ } else if(arg.operator_type == 'option'){
+ debugger
+ //澶氶�夌被鍨嬬殑鍊�
+ d.sdk_arg_value = arg.sdk_arg_value.split(',');
+ this.setOptArgValueOptions(d)
+ } else{
d.sdk_arg_value = arg.sdk_arg_value
}
d.operator = arg.operator;
@@ -1243,7 +1256,6 @@
tempObj.optArg.length == 0 && tempObj.optionalArg.length > 0
? true
: false;
- debugger
//鍥炴樉鏄惁鏄剧ず鍙�夊弬鏁版坊鍔犳寜閽�
if (tempObj.optArg.length < tempObj.optionalArg.length) {
tempObj.isAddable = true;
@@ -1312,8 +1324,24 @@
if (sdk.rule_with_pre === '' && index != 0) {
return sdk
}
+ debugger
+ //澶勭悊鏈睍绀虹殑鍙傛暟鐨勫��
+ sdk.defaultArg.forEach(arg => {
+ if(!arg.config.isShow){
+ arg.sdk_arg_value = arg.default_value
+ }
+ })
//琛ㄥ崟鎻愪氦鍓嶆牎楠�:鎵�鏈夌畻娉曠殑鍙傛暟鍊间笉鑳戒负绌�,(鏈塺ange鐨�,瑕佸湪range鑼冨洿鍐�)澶辩劍鏃舵牎楠�
- let defaultArgFlag = sdk.defaultArg.find(arg => !arg.sdk_arg_value)
+ let defaultArgFlag = sdk.defaultArg.find(arg => {
+
+ if (arg.sdk_arg_value instanceof Array ) {
+ if (arg.sdk_arg_value.length == 0) {
+ return arg
+ }
+ }else if(!arg.sdk_arg_value){
+ return arg
+ }
+ });
if (defaultArgFlag) {
return sdk
}
@@ -1409,6 +1437,29 @@
let defaultArgDesc = '( '
sdk.defaultArg.forEach(arg => {
+ //涓嶆樉绀洪殣钘忕殑鍙傛暟閰嶇疆
+ if(!arg.config.isShow){
+ return
+ }
+ let val = '';
+ //澶勭悊涓嬫媺閫夊�肩被鍨�
+ if (arg.type == 'option') {
+ if (arg.sdk_arg_value instanceof Array) {
+ //澶氶�夊��
+ let multiNames = '';
+ arg.sdk_arg_value.forEach(val => {
+ let opV = arg.valueOptions.find(opt => opt.value == val);
+ multiNames += opV.name + ' ';
+ })
+ val = multiNames;
+ } else {
+ let res = arg.valueOptions.find(
+ opt => opt.value == arg.sdk_arg_value
+ );
+ val = res.name;
+ }
+
+ }
if (arg.operator == 'range') {
let valRange = '';
debugger
@@ -1416,13 +1467,14 @@
defaultArgDesc += `${arg.name}${arg.operators[0].name}${valRange}${arg.unit || ''}, `
} else {
defaultArgDesc += `${arg.name}${arg.operators[0].name}${
- arg.sdk_arg_value
+ arg.type=='option' ? val : arg.sdk_arg_value
}${arg.unit || ''}, `
}
});
debugger;
- defaultArgDesc = defaultArgDesc.substring(0, defaultArgDesc.length - 2)
+ defaultArgDesc = defaultArgDesc.substring(0, defaultArgDesc.length - 2);
+
//defaultArgDesc = defaultArgDesc.substring(0,defaultArgDesc.length-3)+defaultArgDesc.substring(defaultArgDesc.length-1,defaultArgDesc.length);
//defaultArgDesc = defaultArgDesc.substring(0,defaultArgDesc.length-1);
@@ -1446,7 +1498,6 @@
let val = '';
let valRange = '';
-
//澶勭悊涓嬫媺閫夊�肩被鍨�
if (arg.type == 'option') {
if (arg.sdk_arg_value instanceof Array) {
@@ -1465,16 +1516,20 @@
val = res.name;
}
- //optArgDesc += `,${arg.name}${arg.operators[0].operator}${val}${arg.unit || ''}, `
- } else {
- //optArgDesc += `,${arg.name}${arg.operators[0].operator}${ arg.sdk_arg_value }${arg.unit || ''}, `
+
}
let operatorSelected = arg.operators.find(opr => opr.operator == arg.operator)
optArgDesc += `,${arg.name}${operatorSelected.name}${
arg.type == 'option' ? val : arg.sdk_arg_value
}${arg.unit || ''}, `
- })
+ });
+ //灏嗗閫夐」鐨勫�兼嫾鎴愬瓧绗︿覆
+ defaultArgs.forEach(one => {
+ if (one.sdk_arg_value instanceof Array) {
+ one.sdk_arg_value = one.sdk_arg_value.join();
+ }
+ });
optArgDesc = optArgDesc.substring(0, optArgDesc.length - 2) + optArgDesc.substring(optArgDesc.length - 1, optArgDesc.length);
optArgDesc += ')'
tempObj.sdk_set = defaultArgs.concat(optArgs)
--
Gitblit v1.8.0