From ccee429d379e0108b7445f72ade8d97c110a6fb3 Mon Sep 17 00:00:00 2001 From: ZZJ <zzjdsg2300@163.com> Date: 星期二, 09 十一月 2021 18:01:59 +0800 Subject: [PATCH] 问题修复 --- src/pages/cameraAccess/components/scene/Editor.vue | 200 +++++++++++++++++++++----------------------------- 1 files changed, 84 insertions(+), 116 deletions(-) diff --git a/src/pages/cameraAccess/components/scene/Editor.vue b/src/pages/cameraAccess/components/scene/Editor.vue index bc9295c..ae96008 100644 --- a/src/pages/cameraAccess/components/scene/Editor.vue +++ b/src/pages/cameraAccess/components/scene/Editor.vue @@ -32,12 +32,19 @@ placeholder="閫夊叧绯�" @change="selConnection(sdkItem)" > - <el-option value="&&" title="and/涓�" label="and/涓�"></el-option> + <el-option + :value="item.value" + :title="item.name" + :label="item.name" + v-for="item in sdkConnects" + :key="item.id" + ></el-option> + <!-- <el-option value="&&" title="and/涓�" label="and/涓�"></el-option> <el-option value="||" title="or/鎴�" label="or/鎴�"></el-option> - <el-option value="=>" title="鈥�>/瑙﹀彂" label="鈥�>/瑙﹀彂"></el-option> + <el-option value="=>" title="鈥�>/瑙﹀彂" label="鈥�>/瑙﹀彂"></el-option>--> </el-select> <el-checkbox - v-show="sdkItem.rule_with_pre == '=>'" + v-show="sdkItem.rule_with_pre == '=>' || sdkItem.rule_with_pre == '!=>'" v-model="sdkItem.is_save_anyhow" style="margin-left:30px" >淇濆瓨杩囩▼鏁版嵁</el-checkbox> @@ -149,7 +156,7 @@ </div> <div v-else> <el-select - v-if="arg.type == 'option'" + v-if="arg.type == 'option'" v-model="arg.sdk_arg_value" :multiple="arg.config.isMulti" collapse-tags @@ -163,7 +170,7 @@ :title="one.name" ></el-option> </el-select> - + <el-input v-if="arg.type == 'value'" v-model="arg.sdk_arg_value" @@ -352,7 +359,6 @@ watch: { Cameras: { handler(n, o) { - debugger let polygon = [] let cameras = [...n] @@ -372,7 +378,6 @@ this.allPolygonData = polygon //娣诲姞鍦烘櫙鍒濆鍖栧尯鍩熼�夐」涓�'鍏ㄩ儴鍖哄煙' - debugger // if (polygon.length > 0 && this.ruleList == '') { // this.polygonObj = polygon[0] // this.sdkGroup[0].polygonObj = JSON.parse( @@ -388,13 +393,12 @@ sdkGroup: { handler(newV, oldV) { if (newV) { - debugger + newV.forEach(sdk => { let rangeOne = sdk.defaultArg.find( arg => arg.operators[0].operator == 'range' ) if (rangeOne) { - debugger if (rangeOne.min.trim() && rangeOne.max.trim()) { rangeOne.sdk_arg_value = rangeOne.min + '|' + rangeOne.max } else { @@ -421,30 +425,16 @@ }, deep: true } - // ruleList: { - // handler(newVal, oldVal) { - // debugger - // this.editHandle(newVal) - // } - // } }, mounted() { this.TaskMange.findAllSdk({ installed: true }) - //this.TaskMange.list1 = sdkJson.data; //this.editHandle(this.ruleList) }, data() { return { - // rule: { - // sdk_id:'', - // sdkObj: {}, - // polygonObj: {}, - // argDef: [] - // }, hideDel: true, - //isAddable: true, allPolygonData: [], group_id: '', baseSdkItem: { @@ -525,8 +515,17 @@ } }, methods: { + getSdkConnection() { + this.sdkConnects = this.VideoManageData.Dictionary['RULECOMPUTEBETWEEN'].map(r => { + + return { + name: r.name, + value: r.value + } + }); + }, selConnection(sdkItem) { - debugger + }, addSdkItem() { @@ -535,9 +534,9 @@ itemTemp.polygonObj = JSON.parse(JSON.stringify(this.allPolygonData[0])) this.selectPolygonOption(itemTemp) this.sdkGroup.push(itemTemp) + }, delConfigItem(index) { - debugger // if(index != 0){ // this.sdkGroup.splice(index,1); // }else{ @@ -599,9 +598,9 @@ } //榛樿閫変腑绗竴涓猳perator //if (copyArgTemp.operators.length == 1) { - this.$set(copyArgTemp, 'operator', copyArgTemp.operators[0].operator) + this.$set(copyArgTemp, 'operator', copyArgTemp.operators[0].operator) //} - + if (copyArgTemp.default_value) { this.$set(copyArgTemp, 'sdk_arg_value', copyArgTemp.default_value) } @@ -628,7 +627,7 @@ } }, selOptionalArg(sdkItem, optArgItem) { - debugger + let newSort = 0 sdkItem.optNames.forEach(name => { if (name.name == optArgItem.name) { @@ -647,7 +646,7 @@ } //榛樿閫変腑绗竴涓猳perator //if (argObj.operators.length == 1) { - this.$set(argObj, 'operator', argObj.operators[0].operator) + this.$set(argObj, 'operator', argObj.operators[0].operator) //} //鏇挎崲鏂扮殑鍙傛暟閰嶇疆瀵硅薄 sdkItem.optArg.forEach((arg, index) => { @@ -656,12 +655,10 @@ } }) - 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 => { return { name: r.name, @@ -670,7 +667,7 @@ }); }, validateArgVal(sdkArgItem, e) { - debugger + if (typeof (sdkArgItem.sdk_arg_value) == 'string' && sdkArgItem.sdk_arg_value == '') { this.$notify({ type: 'warning', @@ -690,7 +687,7 @@ let res = sdkArgItem.range.match(reg) let min = Number(res[1]), max = Number(res[2]) - debugger + //鍒ゆ柇闈炲尯闂寸被 if (sdkArgItem.sdk_arg_value && sdkArgItem.operator != 'range') { @@ -824,7 +821,7 @@ this.valideArgValue(rule) }, selectPolygonOption(rule) { - debugger + rule.polygon_id = rule.polygonObj.polygonId ? rule.polygonObj.polygonId : rule.polygon_id @@ -835,11 +832,10 @@ }, //閫夋嫨绠楁硶 resetArgs涓簍rue鏄坊鍔犱负false鏄垵濮嬪寲缂栬緫 selectSDKOption(sdkItem, resetArgs) { - debugger + //sdkItem.sdk_id = sdkItem.sdkObj.id; if (resetArgs) { sdkItem.argDef = JSON.parse(sdkItem.sdkObj.argDef) - console.log(sdkItem.argDef) //鍙栧嚭榛樿鍙傛暟 sdkItem.defaultArg = sdkItem.argDef.filter( arg => !arg.config.isOptional @@ -851,13 +847,13 @@ if (arg.operators[0].operator == 'range') { //鍖洪棿鍊肩殑澶勭悊 - debugger + //this.$set(arg, 'sdk_arg_value', arg.min+','+arg.max) //this.$set(arg, 'sdk_arg_value', arg.range.substring(1,arg.range.length-1)); } } - debugger - if(arg.type == 'option'){ + + if (arg.type == 'option') { this.setOptArgValueOptions(arg) } if (arg.default_value) { @@ -875,14 +871,14 @@ sort: arg.sort, isSelected: false })) - debugger + sdkItem.initAddOptional = sdkItem.optionalArg.length > 0 ? true : false sdkItem.optArg = [] } //娣诲姞鍦烘櫙鏃�,濡傛灉鍦烘櫙鍚嶇О涓虹┖,灏卞皢閫夋嫨鐨勭涓�涓畻娉曞悕鍚屾鍒板満鏅悕绉� if (this.sdkGroup[0] && resetArgs) { - debugger + this.$emit('sdkNameChange', this.sdkGroup[0].sdkObj.sdk_name) } @@ -914,7 +910,7 @@ }, //閫夋嫨绠楁硶閰嶇疆 selOperator(rule) { - debugger + }, selectArgsOption(rule, resetArgValue) { // rule.operator_type = ""; @@ -1104,7 +1100,7 @@ this.groupRules.splice(index + 1, 0, newRule) }, editHandle(ruleTxt) { - debugger + this.getSdkConnection(); // if (ruleTxt.length < 1) { // return // } @@ -1129,27 +1125,12 @@ // } }, editRule(ruleGroup) { - debugger + 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 = {} if (rule.group_id && rule.group_id != '') { @@ -1187,29 +1168,10 @@ 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) - //杩囨护鎺塺ule.sdk_set閲屾病鏈夊嚭鐜扮殑鍙�夐厤缃」 - let isConfiged = false; - let configedAlias = []; - optionalArg.forEach(optArg=>{ - rule.sdk_set.forEach(sdkSet => { - if(sdkSet.sdk_arg_alias == optArg.alias){ - isConfiged = true; - configedAlias.push(optArg) - } - }) - }); - if(!isConfiged){ - optionalArg = []; - } - if(isConfiged){ - optionalArg = configedAlias - } - rule.sdk_set.forEach(sdkSet => { - rule.sdk_set - }) + rule.sdk_set.forEach(arg => { let optItem = optionalArg.find(oarg => { if (oarg.sort == arg.sort) { @@ -1218,8 +1180,8 @@ }) if (optItem) { //if (optItem.operators.length > 1) { - optItem.operator = arg.operator - //this.selOperator(optItem) + optItem.operator = arg.operator + //this.selOperator(optItem) //} //璧嬪�� @@ -1234,30 +1196,29 @@ if (optItem.type == 'option') { this.setOptArgValueOptions(optItem) } - if(optItem.alias=="bForceSend"){ + 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) { - debugger //鍖洪棿鍊� - d.min = arg.sdk_arg_value.split(',')[0]; - d.max = arg.sdk_arg_value.split(',')[1]; + d.min = arg.sdk_arg_value.split('|')[0]; + d.max = arg.sdk_arg_value.split('|')[1]; d.operator = 'range' - //} else if(arg.sdk_arg_value.indexOf(',') > 0){ - } else if(arg.operator_type == 'option'){ - debugger + //} else if(arg.sdk_arg_value.indexOf(',') > 0){ + } else if (arg.operator_type == 'option') { + //澶氶�夌被鍨嬬殑鍊� d.sdk_arg_value = arg.sdk_arg_value.split(','); this.setOptArgValueOptions(d) - } else{ + } else { d.sdk_arg_value = arg.sdk_arg_value } d.operator = arg.operator; @@ -1299,7 +1260,7 @@ tempObj.isAddable = false; } //this.selectSDKOption(tempObj, false) - debugger + this.sdkGroup.push(tempObj) //璁剧疆绠楁硶 }) @@ -1330,7 +1291,7 @@ .catch(() => { }) }, submitRule() { - debugger + let groupRule = { rules: [] } let group_text = '' @@ -1351,30 +1312,35 @@ } else { //鏍¢獙蹇呭~椤� let undefinished = this.sdkGroup.some((sdk, index) => { - debugger + //娌℃湁閰嶇疆绠楁硶 if (Object.keys(sdk.sdkObj).length == 0) { return sdk } + //澶嶅埗绠楁硶鏃舵娴嬪尯鍩熶笉鑳戒负绌� + if (!sdk.polygon_id) { + return sdk + } + //澶氫簬涓ら」绠楁硶鏃�,绠楁硶鍏崇郴涓嶈兘涓虹┖ if (sdk.rule_with_pre === '' && index != 0) { return sdk } - debugger + //澶勭悊鏈睍绀虹殑鍙傛暟鐨勫�� sdk.defaultArg.forEach(arg => { - if(!arg.config.isShow){ + if (!arg.config.isShow) { arg.sdk_arg_value = arg.default_value } }) //琛ㄥ崟鎻愪氦鍓嶆牎楠�:鎵�鏈夌畻娉曠殑鍙傛暟鍊间笉鑳戒负绌�,(鏈塺ange鐨�,瑕佸湪range鑼冨洿鍐�)澶辩劍鏃舵牎楠� let defaultArgFlag = sdk.defaultArg.find(arg => { - - if (arg.sdk_arg_value instanceof Array ) { + + if (arg.sdk_arg_value instanceof Array) { if (arg.sdk_arg_value.length == 0) { return arg } - }else if(!arg.sdk_arg_value){ + } else if (!arg.sdk_arg_value) { return arg } }); @@ -1390,7 +1356,7 @@ } else { //鍖洪棿绫诲弬鏁板�兼渶灏�,鏈�澶у�兼槸鍚﹂兘璁剧疆 if (arg.operator == 'range') { - debugger + if (!arg.min.trim() && arg.max.trim()) { return arg } @@ -1431,9 +1397,9 @@ } //鏍¢獙鑻ョ畻娉曞叧绯讳负瑙﹀彂,鍒欑畻娉曞悕涓嶈兘閲� let sameSdk = this.sdkGroup.some((sdk, index) => { - debugger - if (sdk.index != 0 && sdk.rule_with_pre == '=>') { - debugger + + if (sdk.index != 0 && (sdk.rule_with_pre == '=>' || sdk.rule_with_pre == '!=>')) { + if (sdk.sdkObj.id == this.sdkGroup[index - 1].sdkObj.id) { return sdk } @@ -1474,7 +1440,7 @@ let defaultArgDesc = '( ' sdk.defaultArg.forEach(arg => { //涓嶆樉绀洪殣钘忕殑鍙傛暟閰嶇疆 - if(!arg.config.isShow){ + if (!arg.config.isShow) { return } let val = ''; @@ -1498,19 +1464,19 @@ } if (arg.operator == 'range') { let valRange = ''; - debugger + valRange = arg.sdk_arg_value.replace(',', '-'); defaultArgDesc += `${arg.name}${arg.operators[0].name}${valRange}${arg.unit || ''}, ` } else { defaultArgDesc += `${arg.name}${arg.operators[0].name}${ - arg.type=='option' ? val : 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-3)+defaultArgDesc.substring(defaultArgDesc.length-1,defaultArgDesc.length); //defaultArgDesc = defaultArgDesc.substring(0,defaultArgDesc.length-1); @@ -1552,7 +1518,7 @@ val = res.name; } - + } let operatorSelected = arg.operators.find(opr => opr.operator == arg.operator) @@ -1584,11 +1550,14 @@ case '=>': rule_with_pre = ' -> ' break + case '!=>': + rule_with_pre = ' !-> ' + break default: rule_with_pre = '' } } - debugger; + ; group_text += `${rule_with_pre ? "<br/>" + rule_with_pre + "<br/>" : ""} <span style="background-color:RGB(183,183,183);">${ sdk.sdkObj.sdk_name }</span> ${ @@ -1604,9 +1573,8 @@ group_text.substring(0, group_text.length - 3) + group_text.substring(group_text.length - 2, group_text.length) } - debugger + }) - console.log(group_text) } groupRule.text = group_text -- Gitblit v1.8.0