From 4a800a8fc83c6bd1f86a8e847b079a51a7532c09 Mon Sep 17 00:00:00 2001 From: zhangzengfei <zhangzengfei@smartai.com> Date: 星期三, 20 七月 2022 15:05:58 +0800 Subject: [PATCH] 修复国标配置的bug --- src/pages/cameraAccess/components/scene/Editor.vue | 1190 ++++++++++++++++++++++++++++++----------------------------- 1 files changed, 602 insertions(+), 588 deletions(-) diff --git a/src/pages/cameraAccess/components/scene/Editor.vue b/src/pages/cameraAccess/components/scene/Editor.vue index 2e8e7f5..f7f8e98 100644 --- a/src/pages/cameraAccess/components/scene/Editor.vue +++ b/src/pages/cameraAccess/components/scene/Editor.vue @@ -1,10 +1,10 @@ <template> <div class="edit-rules-box"> <p style="padding: 0"> - <b style="font-size: 14px; line-height: 28px;">绛栫暐閰嶇疆</b> + <b style="font-size: 14px; line-height: 28px">绛栫暐閰嶇疆</b> </p> <div class="sub-rules-box"> - <div style=" text-align: left;"> + <div style="text-align: left"> <!-- <div style="margin-left:10px;margin-top: 4px;" v-show="index > 0"> <el-select v-model="rule.rule_with_pre" placeholder="骞跺垪鍏崇郴" size="mini"> <el-option @@ -32,16 +32,26 @@ placeholder="閫夊叧绯�" @change="selConnection(sdkItem)" > - <el-option :value="item.value" :title="item.name" :label="item.name" v-for="item in sdkConnects" :key="item.id"></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 == '=>' || 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> + style="margin-left: 30px" + >淇濆瓨杩囩▼鏁版嵁</el-checkbox + > </div> <div class="top-line"> <div class="left"> @@ -83,7 +93,11 @@ </div> </div> <div class="right"> - <span class="del" v-show="!hideDel" @click="delConfigItem(index)"> + <span + class="del" + v-show="!hideDel" + @click="delConfigItem(index)" + > <i class="iconfont iconshanchu"></i> </span> <span class="collapse" @click="collapseLine(index)"> @@ -107,8 +121,16 @@ size="mini" :disabled="true" ></el-input>--> - <el-select v-model="arg.name" size="mini" :disabled="true"> - <el-option :label="arg.name" :title="arg.name" :value="arg"></el-option> + <el-select + v-model="arg.name" + size="mini" + :disabled="true" + > + <el-option + :label="arg.name" + :title="arg.name" + :value="arg" + ></el-option> </el-select> </div> <div class="operator-name"> @@ -119,7 +141,7 @@ size="mini" ></el-input>--> <el-select - :disabled="arg.operators.length==1" + :disabled="arg.operators.length == 1" v-model="arg.operator" size="mini" @change="selOperator(sdkItem)" @@ -150,7 +172,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 @@ -164,7 +186,7 @@ :title="one.name" ></el-option> </el-select> - + <el-input v-if="arg.type == 'value'" v-model="arg.sdk_arg_value" @@ -182,11 +204,14 @@ class="optional" v-if=" sdkItem.initAddOptional && - index == sdkItem.defaultArg.length - 1 + index == sdkItem.defaultArg.length - 1 " > <span class="btn" @click="addOptionalArg(sdkItem)"> - <i class="iconfont iconhebingxingzhuang" style="font-size:16px"></i> + <i + class="iconfont iconhebingxingzhuang" + style="font-size: 16px" + ></i> </span> </div> </div> @@ -227,7 +252,7 @@ ></el-input>--> <el-select - :disabled="optArgItem.operators.length==1" + :disabled="optArgItem.operators.length == 1" v-model="optArgItem.operator" size="mini" @change="selOperator(optArgItem)" @@ -261,16 +286,29 @@ v-if="optArgItem.type == 'value'" v-model="optArgItem.sdk_arg_value" size="mini" - @blur="$event => validateArgVal(optArgItem, $event)" + @blur="($event) => validateArgVal(optArgItem, $event)" ></el-input> <span>{{ optArgItem.unit }}</span> </div> <div class="optional"> - <span class="btn" @click="addOptionalArg(sdkItem)" v-show="sdkItem.isAddable"> - <i class="iconfont iconhebingxingzhuang" style="font-size:16px"></i> + <span + class="btn" + @click="addOptionalArg(sdkItem)" + v-show="sdkItem.isAddable" + > + <i + class="iconfont iconhebingxingzhuang" + style="font-size: 16px" + ></i> </span> - <span class="btn" @click="delOptionalArg(sdkItem, optArgItem)"> - <i class="iconfont iconshanchu11" style="font-size:16px"></i> + <span + class="btn" + @click="delOptionalArg(sdkItem, optArgItem)" + > + <i + class="iconfont iconshanchu11" + style="font-size: 16px" + ></i> </span> </div> </div> @@ -289,37 +327,37 @@ import { deleteCameraRules, updateRuleDefence, - updateAlarmLevel -} from '@/api/camera' + updateAlarmLevel, +} from "@/api/camera"; export default { - name: 'SceneRuleEditor', + name: "SceneRuleEditor", props: { Cameras: { type: Array, default: () => { - return [] - } + return []; + }, }, isTemplate: { type: Boolean, - default: false + default: false, }, isLinkRule: { type: Boolean, - default: false + default: false, }, includeSdks: { - type: Array + type: Array, }, ruleList: { type: String, - default: '' + default: "", }, onSubmitRule: { type: Function, - default: () => false - } + default: () => false, + }, }, // computed: { // allPolygonData() { @@ -353,24 +391,24 @@ watch: { Cameras: { handler(n, o) { - let polygon = [] - let cameras = [...n] + let polygon = []; + let cameras = [...n]; for (let i = 0; i < cameras.length; i++) { - let polyOpt = cameras[i].polygonData.map(p => { + let polyOpt = cameras[i].polygonData.map((p) => { return { defence_state: p.defence_state, polygonId: p.id, name: this.isLinkRule - ? cameras[i].cameraName + ':' + p.name + ? cameras[i].cameraName + ":" + p.name : p.name, - cameraId: cameras[i].cameraId - } - }) - polygon = polygon.concat(polyOpt) + cameraId: cameras[i].cameraId, + }; + }); + polygon = polygon.concat(polyOpt); - this.allPolygonData = polygon + this.allPolygonData = polygon; //娣诲姞鍦烘櫙鍒濆鍖栧尯鍩熼�夐」涓�'鍏ㄩ儴鍖哄煙' // if (polygon.length > 0 && this.ruleList == '') { // this.polygonObj = polygon[0] @@ -382,48 +420,44 @@ // } } }, - deep: true + deep: true, }, sdkGroup: { handler(newV, oldV) { if (newV) { - - newV.forEach(sdk => { + newV.forEach((sdk) => { let rangeOne = sdk.defaultArg.find( - arg => arg.operators[0].operator == 'range' - ) + (arg) => arg.operators[0].operator == "range" + ); if (rangeOne) { - debugger if (rangeOne.min.trim() && rangeOne.max.trim()) { - rangeOne.sdk_arg_value = rangeOne.min + '|' + rangeOne.max + rangeOne.sdk_arg_value = rangeOne.min + "|" + rangeOne.max; } else { rangeOne.sdk_arg_value = false; } - } - }) - let res = newV.find(item => { - return JSON.stringify(item.sdkObj) == '{}' - }) + }); + let res = newV.find((item) => { + return JSON.stringify(item.sdkObj) == "{}"; + }); if (!res) { - this.isAdd = true - this.hideDel = false + this.isAdd = true; + this.hideDel = false; } else { - this.isAdd = false + this.isAdd = false; if (this.sdkGroup.length == 1) { - this.hideDel = true + this.hideDel = true; } else { - this.hideDel = false + this.hideDel = false; } } } }, - deep: true - } - + deep: true, + }, }, mounted() { - this.TaskMange.findAllSdk({ installed: true }) + this.TaskMange.findAllSdk({ installed: true }); //this.editHandle(this.ruleList) }, @@ -431,12 +465,12 @@ return { hideDel: true, allPolygonData: [], - group_id: '', + group_id: "", baseSdkItem: { sdkObj: {}, polygonObj: {}, is_save_anyhow: true, - rule_with_pre: '', + rule_with_pre: "", isSpread: true, argDef: [], initAddOptional: false, @@ -444,7 +478,7 @@ optionalArg: [], optArg: [], optNames: [], - isAddable: true + isAddable: true, }, sdkGroup: [ { @@ -458,33 +492,33 @@ optionalArg: [], optArg: [], optNames: [], - isAddable: true - } + isAddable: true, + }, ], polygonObj: {}, isSpread: true, isAdd: false, - tipColor: 'yellow', + tipColor: "yellow", tasksTable: {}, groupRules: [], sdksOption: [], baseRule: { - camera_id: '', - id: '', - operator: '', - operator_type: '', - polygon_id: '', - rule_with_pre: '', - sdk_id: '', - sdk_arg_alias: '', - sdk_arg_value: '', - sdk_arg_defaultValue: '', - select_time_rule: '', - sdk_arg_type: '', + camera_id: "", + id: "", + operator: "", + operator_type: "", + polygon_id: "", + rule_with_pre: "", + sdk_id: "", + sdk_arg_alias: "", + sdk_arg_value: "", + sdk_arg_defaultValue: "", + select_time_rule: "", + sdk_arg_type: "", // task_id: "", polygonObj: {}, - taskObj: '', + taskObj: "", sdkObj: {}, argObj: {}, @@ -493,44 +527,40 @@ sdksOptions: [], argsOptions: [], - argType: '', + argType: "", computeOptions: [], valueOptions: [], - sdkDesc: '', - argDesc: '', - operatorDesc: '', - typeDesc: '', - valueDesc: '', + sdkDesc: "", + argDesc: "", + operatorDesc: "", + typeDesc: "", + valueDesc: "", - unit: '', - value: '', - valid: true - } - } + unit: "", + value: "", + valid: true, + }, + }; }, methods: { - getSdkConnection(){ - console.log(this.VideoManageData.Dictionary) - this.sdkConnects = this.VideoManageData.Dictionary['RULECOMPUTEBETWEEN'].map(r => { - + getSdkConnection() { + this.sdkConnects = this.VideoManageData.Dictionary[ + "RULECOMPUTEBETWEEN" + ].map((r) => { return { name: r.name, - value: r.value - } + value: r.value, + }; }); }, - selConnection(sdkItem) { - - - }, + selConnection(sdkItem) {}, addSdkItem() { let itemTemp = JSON.parse(JSON.stringify(this.baseSdkItem)); //鍒濆鍖栧尯鍩� - itemTemp.polygonObj = JSON.parse(JSON.stringify(this.allPolygonData[0])) - this.selectPolygonOption(itemTemp) - this.sdkGroup.push(itemTemp) - + itemTemp.polygonObj = JSON.parse(JSON.stringify(this.allPolygonData[0])); + this.selectPolygonOption(itemTemp); + this.sdkGroup.push(itemTemp); }, delConfigItem(index) { // if(index != 0){ @@ -542,13 +572,18 @@ //鍒犻櫎閫昏緫锛氬綋鍙湁涓�涓畻娉曟椂锛屽垹闄や細鍥炲埌鍒濆鐘舵�侊紱鏈夊涓畻娉曟椂锛屽垹闄ゆ棦绉婚櫎鏁翠釜绠楁硶椤� if (this.sdkGroup.length == 1) { - let itemTemp = JSON.parse(JSON.stringify(this.baseSdkItem)) - itemTemp.polygonObj = JSON.parse(JSON.stringify(this.allPolygonData[0])); - this.selectPolygonOption(itemTemp) - this.sdkGroup.splice(index, 1, itemTemp) + let itemTemp = JSON.parse(JSON.stringify(this.baseSdkItem)); + itemTemp.polygonObj = JSON.parse( + JSON.stringify(this.allPolygonData[0]) + ); + this.selectPolygonOption(itemTemp); + this.sdkGroup.splice(index, 1, itemTemp); } else { - if (this.sdkGroup[index + 1] && this.sdkGroup[index + 1].rule_with_pre) { - this.sdkGroup[index + 1].rule_with_pre = ''; + if ( + this.sdkGroup[index + 1] && + this.sdkGroup[index + 1].rule_with_pre + ) { + this.sdkGroup[index + 1].rule_with_pre = ""; } this.sdkGroup.splice(index, 1); @@ -559,28 +594,28 @@ // return sdk.sdk_id == sdkId; // }); - this.sdkGroup[index].isSpread = !this.sdkGroup[index].isSpread + this.sdkGroup[index].isSpread = !this.sdkGroup[index].isSpread; }, addOptionalArg(sdkItem) { - sdkItem.initAddOptional = false - sdkItem.optArg.forEach(arg => { - sdkItem.optNames.forEach(name => { + sdkItem.initAddOptional = false; + sdkItem.optArg.forEach((arg) => { + sdkItem.optNames.forEach((name) => { if (arg.sort == name.sort) { - name.isSelected = true + name.isSelected = true; } - }) - }) //鎵惧埌鍙�塻dkItem.optNames鐨勭涓�涓搴旂殑sdkItem.optionalArg聽push鍒皊dkItem.optArg - let oneNotSelected = sdkItem.optNames.find(name => !name.isSelected) + }); + }); //鎵惧埌鍙�塻dkItem.optNames鐨勭涓�涓搴旂殑sdkItem.optionalArg聽push鍒皊dkItem.optArg + let oneNotSelected = sdkItem.optNames.find((name) => !name.isSelected); if (oneNotSelected) { oneNotSelected.isSelected = true; } - let argTemp = sdkItem.optionalArg.find(arg => { - return arg.sort == oneNotSelected.sort - }) + let argTemp = sdkItem.optionalArg.find((arg) => { + return arg.sort == oneNotSelected.sort; + }); - let copyArgTemp = JSON.parse(JSON.stringify(argTemp)) - if (copyArgTemp.type == 'option') { + let copyArgTemp = JSON.parse(JSON.stringify(argTemp)); + if (copyArgTemp.type == "option") { // let alias = copyArgTemp.alias; // console.log( this.VideoManageData.Dictionary[alias]) // copyArgTemp.valueOptions = this.VideoManageData.Dictionary[alias].map(r => { @@ -590,15 +625,15 @@ // } // }) - this.setOptArgValueOptions(copyArgTemp) + this.setOptArgValueOptions(copyArgTemp); } //榛樿閫変腑绗竴涓猳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) + this.$set(copyArgTemp, "sdk_arg_value", copyArgTemp.default_value); } sdkItem.optArg.push(copyArgTemp); if (sdkItem.optArg.length < sdkItem.optionalArg.length) { @@ -608,13 +643,15 @@ } }, delOptionalArg(sdkItem, optArgItem) { - let index = sdkItem.optArg.findIndex(arg => arg.sort == optArgItem.sort) - sdkItem.optArg.splice(index, 1) - sdkItem.optNames.forEach(name => { + let index = sdkItem.optArg.findIndex( + (arg) => arg.sort == optArgItem.sort + ); + sdkItem.optArg.splice(index, 1); + sdkItem.optNames.forEach((name) => { if (name.sort == optArgItem.sort) { - name.isSelected = false + name.isSelected = false; } - }) + }); sdkItem.initAddOptional = sdkItem.optArg.length == 0 ? true : false; if (sdkItem.optArg.length < sdkItem.optionalArg.length) { sdkItem.isAddable = true; @@ -623,278 +660,274 @@ } }, selOptionalArg(sdkItem, optArgItem) { - - let newSort = 0 - sdkItem.optNames.forEach(name => { + let newSort = 0; + sdkItem.optNames.forEach((name) => { if (name.name == optArgItem.name) { //鏂板垏鎹㈢殑鍙傛暟鍚� - name.isSelected = true - newSort = name.sort + name.isSelected = true; + newSort = name.sort; } else if (name.sort == optArgItem.sort) { //鍒囨崲鍓嶇殑鍙傛暟鍚� - name.isSelected = false + name.isSelected = false; } - }) + }); //鏍规嵁鏂扮殑鍙傛暟sort鎵惧埌鍏跺搴旈厤缃璞� - let argObj = sdkItem.optionalArg.find(arg => arg.sort == newSort) - if (argObj.type == 'option') { + let argObj = sdkItem.optionalArg.find((arg) => arg.sort == newSort); + if (argObj.type == "option") { this.setOptArgValueOptions(argObj); } //榛樿閫変腑绗竴涓猳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) => { if (arg.sort == optArgItem.sort) { - this.$set(sdkItem.optArg, index, JSON.parse(JSON.stringify(argObj))) - } - }) - - console.log(argObj.valueOptions) - }, - setOptArgValueOptions(optArg) { - - let alias = optArg.alias; - console.log(this.VideoManageData.Dictionary[alias]) - optArg.valueOptions = this.VideoManageData.Dictionary[alias].map(r => { - return { - name: r.name, - value: r.value + this.$set(sdkItem.optArg, index, JSON.parse(JSON.stringify(argObj))); } }); }, + setOptArgValueOptions(optArg) { + let alias = optArg.alias; + optArg.valueOptions = this.VideoManageData.Dictionary[alias].map((r) => { + return { + name: r.name, + value: r.value, + }; + }); + }, validateArgVal(sdkArgItem, e) { - - if (typeof (sdkArgItem.sdk_arg_value) == 'string' && sdkArgItem.sdk_arg_value == '') { + if ( + typeof sdkArgItem.sdk_arg_value == "string" && + sdkArgItem.sdk_arg_value == "" + ) { this.$notify({ - type: 'warning', - message: '鍙傛暟璁惧畾鍊间笉鑳戒负绌�!' - }) - sdkArgItem.valid = false + type: "warning", + message: "鍙傛暟璁惧畾鍊间笉鑳戒负绌�!", + }); + sdkArgItem.valid = false; - return false + return false; } //杈撳叆闈炴暟瀛� //鑼冨洿鏄惁鍚堟硶 if (sdkArgItem.range) { - let leftHand = sdkArgItem.range.substr(0, 1) - let rightHand = sdkArgItem.range.substr(sdkArgItem.range.length - 1, 1) - let reg = /.*(\d+),(\d+).*/ - let res = sdkArgItem.range.match(reg) + let leftHand = sdkArgItem.range.substr(0, 1); + let rightHand = sdkArgItem.range.substr(sdkArgItem.range.length - 1, 1); + let reg = /.*(\d+),(\d+).*/; + let res = sdkArgItem.range.match(reg); let min = Number(res[1]), - max = Number(res[2]) - + max = Number(res[2]); //鍒ゆ柇闈炲尯闂寸被 - if (sdkArgItem.sdk_arg_value && sdkArgItem.operator != 'range') { - if (leftHand == '(' && rightHand == ')') { + if (sdkArgItem.sdk_arg_value && sdkArgItem.operator != "range") { + if (leftHand == "(" && rightHand == ")") { if ( Number(sdkArgItem.sdk_arg_value) <= min || Number(sdkArgItem.sdk_arg_value) >= max ) { - sdkArgItem.valid = false + sdkArgItem.valid = false; this.$notify({ - type: 'warning', - message: `鍙傛暟璁惧畾鍊奸』澶т簬${min},灏忎簬${max}` - }) - return false + type: "warning", + message: `鍙傛暟璁惧畾鍊奸』澶т簬${min},灏忎簬${max}`, + }); + return false; } - } else if (leftHand == '[' && rightHand == ')') { + } else if (leftHand == "[" && rightHand == ")") { if ( Number(sdkArgItem.sdk_arg_value) < min || Number(sdkArgItem.sdk_arg_value) >= max ) { - sdkArgItem.valid = false + sdkArgItem.valid = false; this.$notify({ - type: 'warning', - message: `鍙傛暟璁惧畾鍊奸』澶т簬绛変簬${min},灏忎簬${max}` - }) - return false + type: "warning", + message: `鍙傛暟璁惧畾鍊奸』澶т簬绛変簬${min},灏忎簬${max}`, + }); + return false; } - } else if (leftHand == '(' && rightHand == ']') { + } else if (leftHand == "(" && rightHand == "]") { if ( Number(sdkArgItem.sdk_arg_value) <= min || Number(sdkArgItem.sdk_arg_value) > max ) { - sdkArgItem.valid = false + sdkArgItem.valid = false; this.$notify({ - type: 'warning', - message: `鍙傛暟璁惧畾鍊奸』澶т簬${min},灏忎簬绛変簬${max}` - }) - return false + type: "warning", + message: `鍙傛暟璁惧畾鍊奸』澶т簬${min},灏忎簬绛変簬${max}`, + }); + return false; } - } else if (leftHand == '[' && rightHand == ']') { + } else if (leftHand == "[" && rightHand == "]") { if ( Number(sdkArgItem.sdk_arg_value) < min || Number(sdkArgItem.sdk_arg_value) > max ) { - sdkArgItem.valid = false - this.showErrorColor(e) + sdkArgItem.valid = false; + this.showErrorColor(e); this.$notify({ - type: 'warning', - message: `鍙傛暟璁惧畾鍊奸』澶т簬绛変簬${min},灏忎簬绛変簬${max}` - }) - return false + type: "warning", + message: `鍙傛暟璁惧畾鍊奸』澶т簬绛変簬${min},灏忎簬绛変簬${max}`, + }); + return false; } } } else if (sdkArgItem.min || sdkArgItem.max) { //鍒ゆ柇鍖洪棿绫� - if (leftHand == '(' && rightHand == ')') { + if (leftHand == "(" && rightHand == ")") { if ( Number(sdkArgItem.min) <= min || Number(sdkArgItem.min) >= max ) { - sdkArgItem.valid = false + sdkArgItem.valid = false; this.$notify({ - type: 'warning', - message: `鍙傛暟鍖洪棿璁惧畾鍊奸』澶т簬${min},灏忎簬${max}` + type: "warning", + message: `鍙傛暟鍖洪棿璁惧畾鍊奸』澶т簬${min},灏忎簬${max}`, }); - return false + return false; } - } else if (leftHand == '[' && rightHand == ')') { + } else if (leftHand == "[" && rightHand == ")") { if (Number(sdkArgItem.min) < min || Number(sdkArgItem.max) >= max) { - sdkArgItem.valid = false + sdkArgItem.valid = false; this.$notify({ - type: 'warning', - message: `鍙傛暟鍖洪棿璁惧畾鍊奸』澶т簬绛変簬${min},灏忎簬${max}` - }) - return false + type: "warning", + message: `鍙傛暟鍖洪棿璁惧畾鍊奸』澶т簬绛変簬${min},灏忎簬${max}`, + }); + return false; } - } else if (leftHand == '(' && rightHand == ']') { + } else if (leftHand == "(" && rightHand == "]") { if (Number(sdkArgItem.min) <= min || Number(sdkArgItem.max) > max) { - sdkArgItem.valid = false + sdkArgItem.valid = false; this.$notify({ - type: 'warning', - message: `鍙傛暟鍖洪棿璁惧畾鍊奸』澶т簬${min},灏忎簬绛変簬${max}` - }) - return false + type: "warning", + message: `鍙傛暟鍖洪棿璁惧畾鍊奸』澶т簬${min},灏忎簬绛変簬${max}`, + }); + return false; } - } else if (leftHand == '[' && rightHand == ']') { - if (Number(sdkArgItem.min) < min || Number(sdkArgItem.max) > max || Number(sdkArgItem.min) > max || Number(sdkArgItem.max) < min) { - sdkArgItem.valid = false - this.showErrorColor(e) + } else if (leftHand == "[" && rightHand == "]") { + if ( + Number(sdkArgItem.min) < min || + Number(sdkArgItem.max) > max || + Number(sdkArgItem.min) > max || + Number(sdkArgItem.max) < min + ) { + sdkArgItem.valid = false; + this.showErrorColor(e); this.$notify({ - type: 'warning', - message: `鍙傛暟鍖洪棿璁惧畾鍊奸』澶т簬绛変簬${min},灏忎簬绛変簬${max}` - }) - return false + type: "warning", + message: `鍙傛暟鍖洪棿璁惧畾鍊奸』澶т簬绛変簬${min},灏忎簬绛変簬${max}`, + }); + return false; } } } } - e.currentTarget.style.borderColor = '' - return true + e.currentTarget.style.borderColor = ""; + return true; }, showErrorColor(e) { this.$nextTick(() => { - e.currentTarget.style.borderColor = 'red' - }) + e.currentTarget.style.borderColor = "red"; + }); }, setSdksOptions(rule) { - rule.sdksOptions = this.includeSdks + rule.sdksOptions = this.includeSdks; }, setOperator(rule) { - rule.operator = rule.operatorObj.value - rule.operatorDesc = rule.operatorObj.name + rule.operator = rule.operatorObj.value; + rule.operatorDesc = rule.operatorObj.name; }, setValue(rule) { - rule.valid = true + rule.valid = true; - if (rule.operator_type === 'option') { - rule.sdk_arg_value = rule.valueObj.value ? rule.valueObj.value : '' - rule.typeDesc = '琚�夐」' - rule.valueDesc = rule.valueObj.name ? rule.valueObj.name : '' + if (rule.operator_type === "option") { + rule.sdk_arg_value = rule.valueObj.value ? rule.valueObj.value : ""; + rule.typeDesc = "琚�夐」"; + rule.valueDesc = rule.valueObj.name ? rule.valueObj.name : ""; } else { - rule.typeDesc = '鍊�' - rule.valueDesc = rule.sdk_arg_value + rule.typeDesc = "鍊�"; + rule.valueDesc = rule.sdk_arg_value; } - this.valideArgValue(rule) + this.valideArgValue(rule); }, selectPolygonOption(rule) { - rule.polygon_id = rule.polygonObj.polygonId ? rule.polygonObj.polygonId - : rule.polygon_id + : rule.polygon_id; rule.camera_id = rule.polygonObj.cameraId ? rule.polygonObj.cameraId - : rule.camera_id - rule.group_id = this.group_id + : rule.camera_id; + rule.group_id = this.group_id; }, //閫夋嫨绠楁硶 resetArgs涓簍rue鏄坊鍔犱负false鏄垵濮嬪寲缂栬緫 selectSDKOption(sdkItem, resetArgs) { - //sdkItem.sdk_id = sdkItem.sdkObj.id; if (resetArgs) { - sdkItem.argDef = JSON.parse(sdkItem.sdkObj.argDef) - console.log(sdkItem.argDef) + sdkItem.argDef = JSON.parse(sdkItem.sdkObj.argDef); //鍙栧嚭榛樿鍙傛暟 sdkItem.defaultArg = sdkItem.argDef.filter( - arg => !arg.config.isOptional - ) + (arg) => !arg.config.isOptional + ); //璧嬮粯璁perator/鍊� - sdkItem.defaultArg.forEach(arg => { + sdkItem.defaultArg.forEach((arg) => { if (arg.operators.length == 1) { - this.$set(arg, 'operator', arg.operators[0].operator) + this.$set(arg, "operator", arg.operators[0].operator); - if (arg.operators[0].operator == 'range') { + if (arg.operators[0].operator == "range") { //鍖洪棿鍊肩殑澶勭悊 - //this.$set(arg, 'sdk_arg_value', arg.min+','+arg.max) //this.$set(arg, 'sdk_arg_value', arg.range.substring(1,arg.range.length-1)); } } - - if(arg.type == 'option'){ - this.setOptArgValueOptions(arg) + + 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) + this.$set(arg, "sdk_arg_value", arg.default_value); } - }) - sdkItem.defaultArg + }); + sdkItem.defaultArg; //鍙栧嚭鍙�夊弬鏁� sdkItem.optionalArg = sdkItem.argDef.filter( - arg => arg.config.isOptional - ) - sdkItem.optNames = sdkItem.optionalArg.map(arg => ({ + (arg) => arg.config.isOptional + ); + sdkItem.optNames = sdkItem.optionalArg.map((arg) => ({ name: arg.name, sort: arg.sort, - isSelected: false - })) - - sdkItem.initAddOptional = sdkItem.optionalArg.length > 0 ? true : false - sdkItem.optArg = [] + isSelected: false, + })); + + sdkItem.initAddOptional = sdkItem.optionalArg.length > 0 ? true : false; + sdkItem.optArg = []; } //娣诲姞鍦烘櫙鏃�,濡傛灉鍦烘櫙鍚嶇О涓虹┖,灏卞皢閫夋嫨鐨勭涓�涓畻娉曞悕鍚屾鍒板満鏅悕绉� if (this.sdkGroup[0] && resetArgs) { - - this.$emit('sdkNameChange', this.sdkGroup[0].sdkObj.sdk_name) + this.$emit("sdkNameChange", this.sdkGroup[0].sdkObj.sdk_name); } // 閫夐」鍒囨崲鏃堕渶瑕佸埛鏂癮rg鑿滃崟椤� - this.selectArgTypeOption(sdkItem, resetArgs) + this.selectArgTypeOption(sdkItem, resetArgs); }, selectArgTypeOption(rule, resetAlias) { - if (rule.sdk_arg_type == '') { - return + if (rule.sdk_arg_type == "") { + return; } if (resetAlias) { - rule.sdk_arg_alias = '' + rule.sdk_arg_alias = ""; } - rule.argsOptions = rule.sdkObj.args + rule.argsOptions = rule.sdkObj.args; // 鏍规嵁arg绫诲瀷鏄剧ず鍙傛暟, 褰撳墠鍏ㄩ儴褰掍负 target // if (rule.sdkObj.args) { @@ -905,94 +938,92 @@ // rule.argsOptions = []; // } - rule.argObj = {} + rule.argObj = {}; }, //閫夋嫨绠楁硶閰嶇疆 - selOperator(rule) { - - }, + selOperator(rule) {}, selectArgsOption(rule, resetArgValue) { // rule.operator_type = ""; // console.log(rule, '閫夋嫨绠楁硶鍙傛暟') - rule.sdk_arg_alias = rule.argObj.alias - rule.argDesc = rule.argObj.name - rule.sdk_arg_defaultValue = rule.argObj.default_value - rule.unit = rule.argObj.unit ? rule.argObj.unit : '' + rule.sdk_arg_alias = rule.argObj.alias; + rule.argDesc = rule.argObj.name; + rule.sdk_arg_defaultValue = rule.argObj.default_value; + rule.unit = rule.argObj.unit ? rule.argObj.unit : ""; //rule.default_value = rule.argObj.default_value ? Number(rule.argObj.default_value) : 0; //console.log("缃俊搴︾殑榛樿鍊间负",rule.sdk_arg_defaultValue) // 淇濆瓨鍊肩被鍨� - rule.argType = rule.argObj.type - if (rule.argType === 'option') { - rule.operator_type = 'option' + rule.argType = rule.argObj.type; + if (rule.argType === "option") { + rule.operator_type = "option"; // 璁剧疆榛樿鏉′欢鍊� - this.VideoManageData.Dictionary.RULECOMPUTE.forEach(opt => { - if (opt.value == '==') { - rule.operatorObj = opt + this.VideoManageData.Dictionary.RULECOMPUTE.forEach((opt) => { + if (opt.value == "==") { + rule.operatorObj = opt; } - }) + }); - this.setOperator(rule) + this.setOperator(rule); - this.selectValueOption(rule) + this.selectValueOption(rule); } else { // 璁剧疆榛樿鏉′欢鍊� - rule.operator_type = 'value' + rule.operator_type = "value"; if (resetArgValue) { - rule.sdk_arg_value = '' + rule.sdk_arg_value = ""; - this.VideoManageData.Dictionary.RULECOMPUTE.forEach(opt => { - if (opt.value == '>=') { - rule.operatorObj = opt + this.VideoManageData.Dictionary.RULECOMPUTE.forEach((opt) => { + if (opt.value == ">=") { + rule.operatorObj = opt; } - }) + }); } else { // 缂栬緫瑙勫垯鍖归厤 - this.VideoManageData.Dictionary.RULECOMPUTE.forEach(opt => { + this.VideoManageData.Dictionary.RULECOMPUTE.forEach((opt) => { if (opt.value == rule.operator) { - rule.operatorObj = opt + rule.operatorObj = opt; } - }) + }); } - this.setOperator(rule) + this.setOperator(rule); } }, selectValueOption(rule) { - if (rule.sdk_arg_alias === 'time_rule') { - rule.valueOptions = this.VideoManageData.TimeRules.map(r => { + if (rule.sdk_arg_alias === "time_rule") { + rule.valueOptions = this.VideoManageData.TimeRules.map((r) => { return { name: r.name, - value: r.id - } - }) - } else if (rule.sdk_arg_alias === 'compareBase') { - rule.valueOptions = this.VideoManageData.TagList.map(r => { + value: r.id, + }; + }); + } else if (rule.sdk_arg_alias === "compareBase") { + rule.valueOptions = this.VideoManageData.TagList.map((r) => { return { name: r.tableName, - value: r.id - } - }) + value: r.id, + }; + }); } else { - let ops = this.VideoManageData.Dictionary[rule.sdk_arg_alias] + let ops = this.VideoManageData.Dictionary[rule.sdk_arg_alias]; if (ops && ops instanceof Array) { - rule.valueOptions = ops.map(r => { + rule.valueOptions = ops.map((r) => { return { name: r.name, - value: r.value - } - }) + value: r.value, + }; + }); } } }, valideArgValue(rule) { - if (rule.sdk_arg_value == '') { + if (rule.sdk_arg_value == "") { this.$notify({ - type: 'warning', - message: '鍙傛暟璁惧畾鍊间笉鑳戒负绌�!' - }) - rule.valid = false - return false + type: "warning", + message: "鍙傛暟璁惧畾鍊间笉鑳戒负绌�!", + }); + rule.valid = false; + return false; } if (rule.argObj && rule.argObj.range) { @@ -1001,84 +1032,84 @@ if ( parseInt(rule.sdk_arg_value) < parseInt(rule.sdk_arg_defaultValue) ) { - rule.valid = false + rule.valid = false; this.$notify({ - type: 'warning', + type: "warning", message: - '鍙傛暟璁惧畾鍊间笉鑳藉皬浜庣畻娉曞弬鏁伴粯璁ゅ�� ' + rule.sdk_arg_defaultValue - }) - rule.valueDesc = rule.sdk_arg_value = rule.argObj.default_value - rule.valid = false - return false + "鍙傛暟璁惧畾鍊间笉鑳藉皬浜庣畻娉曞弬鏁伴粯璁ゅ�� " + rule.sdk_arg_defaultValue, + }); + rule.valueDesc = rule.sdk_arg_value = rule.argObj.default_value; + rule.valid = false; + return false; } } // let re = /(?<=,).*?(?=]|\))/ - let re = /.*,(\d+)/ - let max = rule.argObj.range.match(re)[1] + let re = /.*,(\d+)/; + let max = rule.argObj.range.match(re)[1]; // console.log(max,'鑾峰彇鑼冨洿鏈�澶у��') if (Number(rule.sdk_arg_value) > Number(max)) { - rule.valid = false + rule.valid = false; this.$notify({ - type: 'warning', - message: '鍙傛暟璁惧畾鍊间笉鑳藉ぇ浜�' + max - }) - return false + type: "warning", + message: "鍙傛暟璁惧畾鍊间笉鑳藉ぇ浜�" + max, + }); + return false; } } - return true + return true; }, parataxis(rule_with_pre) { - let relation = '' - this.VideoManageData.Dictionary.RULECOMPUTEBETWEEN.forEach(pre => { + let relation = ""; + this.VideoManageData.Dictionary.RULECOMPUTEBETWEEN.forEach((pre) => { if (pre.value === rule_with_pre) { - relation = pre.name + relation = pre.name; } - }) + }); - return relation + return relation; }, generatDescription() { - let desc = '' + let desc = ""; this.groupRules.forEach((r, index) => { // console.log(r,index,'鎷兼帴') if (index === 0) { - desc += r.sdkDesc + r.argDesc + r.operatorDesc + r.valueDesc + r.unit + desc += r.sdkDesc + r.argDesc + r.operatorDesc + r.valueDesc + r.unit; } else { desc += - ' ' + + " " + this.parataxis(r.rule_with_pre) + - ' ' + + " " + r.sdkDesc + r.argDesc + r.operatorDesc + r.valueDesc + - r.unit + r.unit; } - }) + }); // console.log(desc,'鎷兼帴') - return desc + return desc; }, createRule() { if (!this.isTemplate && this.Cameras.length > 0) { // 鏈�変腑鎽勫儚鏈烘垨鑰呮湭閫変腑鎽勫儚鏈轰换鍔★紝涓嶆墽琛屽垱寤� - if (!this.Cameras[0].cameraId) return false + if (!this.Cameras[0].cameraId) return false; } - this.group_id = '' + this.group_id = ""; //this.addRule(0); }, //娓呯┖閰嶇疆骞跺垵濮嬪寲 cleanRule() { - this.group_id = '' - this.sdkGroup.splice(0, this.sdkGroup.length) + this.group_id = ""; + this.sdkGroup.splice(0, this.sdkGroup.length); this.addSdkItem(); }, addRule(index) { - let newRule = JSON.parse(JSON.stringify(this.baseRule)) - newRule.sdksOptions = this.includeSdks + let newRule = JSON.parse(JSON.stringify(this.baseRule)); + newRule.sdksOptions = this.includeSdks; if (!this.isLinkRule) { // 璁剧疆榛樿鍏ㄩ儴鍖哄煙 // if (!this.isTemplate) { @@ -1096,7 +1127,7 @@ // this.groupRules.push(newRule); // 鎻掑叆鍒版寚瀹氫綅缃� - this.groupRules.splice(index + 1, 0, newRule) + this.groupRules.splice(index + 1, 0, newRule); }, editHandle(ruleTxt) { this.getSdkConnection(); @@ -1104,57 +1135,39 @@ // return // } let ruleInfo = JSON.parse(ruleTxt); - - this.editRule(ruleInfo) - // 濡傛灉鏄仈鍔ㄤ换鍔�, 鏌ヨ鑱斿姩鎽勫儚鏈哄垪琛�, 灏嗘爲閫変腑鐨勫垪琛ㄦ洿鏀逛负璇ユ潯瑙勫垯鎵�闇�瑕佺殑鎽勫儚鏈�, 骞跺浠藉綋鍓嶇殑閫変腑鐘舵��, 瑙勫垯淇濆瓨鍚庢仮澶� - // if (this.isLinkRule) { - // this.VideoRuleData.treeSelectedNodesBackupOnEditLinkRule = [...this.TreeDataPool.selectedNodes] - // this.VideoRuleData.editLinkRuleRow = { ...ruleInfo } - - // this.TreeDataPool.selectedNodes = ruleInfo.group_rules.map(r => { - // return r.camera_id - // }) - // this.$nextTick(() => { - // setTimeout(() => { - // this.editRule(ruleInfo) - // }, 1000) - // }) - // } else { - // this.editRule(ruleInfo) - // } + console.log(ruleInfo); + this.editRule(ruleInfo); }, editRule(ruleGroup) { - - this.sdkGroup = [] - this.group_id = '' + this.sdkGroup = []; + this.group_id = ""; - ruleGroup.forEach(rule => { - - let tempObj = {} + ruleGroup.forEach((rule) => { + let tempObj = {}; - if (rule.group_id && rule.group_id != '') { - this.group_id = rule.group_id + if (rule.group_id && rule.group_id != "") { + this.group_id = rule.group_id; } // 濉厖鍖哄煙閫夐」鍒楄〃 - this.allPolygonData.forEach(p => { + this.allPolygonData.forEach((p) => { if (p.polygonId === rule.polygon_id) { - rule.polygonObj = p + rule.polygonObj = p; } - }) + }); if (!rule.polygonObj) { rule.polygonObj = { cameraId: rule.camera_id, defence_state: 1, - name: '鏈煡鍖哄煙', - polygonId: rule.polygon_id - } + name: "鏈煡鍖哄煙", + polygonId: rule.polygon_id, + }; } - console.log(rule) + console.log(rule); // 璁剧疆鍖哄煙 - this.selectPolygonOption(rule) + this.selectPolygonOption(rule); //绠楁硶瀵硅薄,绠楁硶鍙傛暟閰嶇疆鏁扮粍,(鐢ㄤ簬鏁版嵁澶勭悊鐨�)榛樿鍙傛暟鏁扮粍, 鍙�夊弬鏁版暟缁�, 宸查厤缃殑鍙�夊弬鏁版暟缁�, (鐢ㄤ簬鍘婚噸鍒ゆ柇)瀛樻斁鍙�夊弬鏁板悕鐨勬暟缁� let sdkObj = {}, @@ -1162,75 +1175,72 @@ defaultArg = [], optionalArg = [], optArg = [], - optNames = [] + optNames = []; - sdkObj = this.TaskMange.list1.find(sdk => sdk.id == rule.sdk_id) + sdkObj = this.TaskMange.list1.find((sdk) => sdk.id == rule.sdk_id); - argDef = JSON.parse(sdkObj.argDef) - - defaultArg = argDef.filter(arg => !arg.config.isOptional) - optionalArg = argDef.filter(arg => arg.config.isOptional) + argDef = JSON.parse(sdkObj.argDef); - rule.sdk_set.forEach(arg => { - let optItem = optionalArg.find(oarg => { + defaultArg = argDef.filter((arg) => !arg.config.isOptional); + optionalArg = argDef.filter((arg) => arg.config.isOptional); + + rule.sdk_set.forEach((arg) => { + let optItem = optionalArg.find((oarg) => { if (oarg.sort == arg.sort) { - return oarg + return oarg; } - }) + }); if (optItem) { //if (optItem.operators.length > 1) { - optItem.operator = arg.operator - //this.selOperator(optItem) + optItem.operator = arg.operator; + //this.selOperator(optItem) //} //璧嬪�� - optItem.sdk_arg_value = arg.sdk_arg_value + optItem.sdk_arg_value = arg.sdk_arg_value; //if(arg.sdk_arg_value.indexOf(',')>0){ //鍒ゆ柇鏄惁鏄閫夊�肩被鍨嬬殑鍙傛暟 - let isMultiOne = optionalArg.find(oarg => oarg.sort == optItem.sort && optItem.config.isMulti) + let isMultiOne = optionalArg.find( + (oarg) => oarg.sort == optItem.sort && optItem.config.isMulti + ); if (isMultiOne) { - optItem.sdk_arg_value = arg.sdk_arg_value.split(','); + optItem.sdk_arg_value = arg.sdk_arg_value.split(","); } - if (optItem.type == 'option') { - this.setOptArgValueOptions(optItem) + if (optItem.type == "option") { + this.setOptArgValueOptions(optItem); } - if(optItem.alias=="bForceSend"){ - + if (optItem.alias == "bForceSend") { } //鍦╬ush涔嬪墠,闇�瑕佸垽鏂槸鍚﹂厤缃簡杩欎釜鍙�夐」 鍦╯dk_set閰嶇疆鏁扮粍閲�, - - optArg.push(optItem) - + + optArg.push(optItem); } else { - defaultArg.forEach(d => { + defaultArg.forEach((d) => { if (d.sort == arg.sort) { - - if (arg.sdk_arg_value.indexOf('|') > 0) { - debugger + if (arg.sdk_arg_value.indexOf("|") > 0) { //鍖洪棿鍊� - 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'){ - + 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") { //澶氶�夌被鍨嬬殑鍊� - d.sdk_arg_value = arg.sdk_arg_value.split(','); - this.setOptArgValueOptions(d) - } else{ - d.sdk_arg_value = arg.sdk_arg_value + 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; } - }) + }); } - }) - optNames = optionalArg.map(arg => ({ + }); + optNames = optionalArg.map((arg) => ({ name: arg.name, sort: arg.sort, - isSelected: false - })) + isSelected: false, + })); tempObj = { sdkObj, @@ -1246,8 +1256,8 @@ optNames, isAddable: true, camera_id: rule.camera_id, - polygon_id: rule.polygon_id - } + polygon_id: rule.polygon_id, + }; //鍥炴樉鏄惁鏄剧ず娣诲姞鍙�夊弬鏁� tempObj.initAddOptional = tempObj.optArg.length == 0 && tempObj.optionalArg.length > 0 @@ -1260,45 +1270,44 @@ tempObj.isAddable = false; } //this.selectSDKOption(tempObj, false) - - this.sdkGroup.push(tempObj) + + this.sdkGroup.push(tempObj); //璁剧疆绠楁硶 - }) + }); //this.$nextTick(() => {}) }, delRule(rule) { - this.$confirm('鎻愮ず锛氬垹闄ゅ悗锛岃鏉¤鍒欏皢澶辨晥锛屾槸鍚﹀垹闄わ紵', { + this.$confirm("鎻愮ず锛氬垹闄ゅ悗锛岃鏉¤鍒欏皢澶辨晥锛屾槸鍚﹀垹闄わ紵", { center: true, - cancelButtonClass: 'comfirm-class-cancle', - confirmButtonClass: 'comfirm-class-sure' + cancelButtonClass: "comfirm-class-cancle", + confirmButtonClass: "comfirm-class-sure", }) .then(() => { - deleteCameraRules({ groupId: rule.group_id }).then(res => { + deleteCameraRules({ groupId: rule.group_id }).then((res) => { if (res && res.success) { this.$notify({ - type: 'success', - message: '鍒犻櫎鎴愬姛' - }) - this.$emit('delete-rule') + type: "success", + message: "鍒犻櫎鎴愬姛", + }); + this.$emit("delete-rule"); } else { this.$notify({ - type: 'error', - message: '鍒犻櫎澶辫触锛�' - }) + type: "error", + message: "鍒犻櫎澶辫触锛�", + }); } - }) + }); }) - .catch(() => { }) + .catch(() => {}); }, submitRule() { - - let groupRule = { rules: [] } + let groupRule = { rules: [] }; - let group_text = '' - let validateFlag = false + let group_text = ""; + let validateFlag = false; if (this.isTemplate) { - groupRule.rules = this.groupRules.map(r => { + groupRule.rules = this.groupRules.map((r) => { return { sdk_id: r.sdk_id, sdk_arg_alias: r.sdk_arg_alias, @@ -1306,293 +1315,298 @@ operator_type: r.operator_type, sdk_arg_value: r.sdk_arg_value, sort: 1, - rule_with_pre: r.rule_with_pre - } - }) + rule_with_pre: r.rule_with_pre, + }; + }); } else { + console.log(this.sdkGroup); //鏍¢獙蹇呭~椤� let undefinished = this.sdkGroup.some((sdk, index) => { - //娌℃湁閰嶇疆绠楁硶 if (Object.keys(sdk.sdkObj).length == 0) { - return sdk + return sdk; } + //澶嶅埗绠楁硶鏃舵娴嬪尯鍩熶笉鑳戒负绌� + if (!sdk.polygon_id) { + return sdk; + } + //澶氫簬涓ら」绠楁硶鏃�,绠楁硶鍏崇郴涓嶈兘涓虹┖ - if (sdk.rule_with_pre === '' && index != 0) { - return sdk + if (sdk.rule_with_pre === "" && index != 0) { + return sdk; } - + //澶勭悊鏈睍绀虹殑鍙傛暟鐨勫�� - sdk.defaultArg.forEach(arg => { - if(!arg.config.isShow){ - arg.sdk_arg_value = arg.default_value + sdk.defaultArg.forEach((arg) => { + 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 ) { + let defaultArgFlag = sdk.defaultArg.find((arg) => { + if (arg.sdk_arg_value instanceof Array) { if (arg.sdk_arg_value.length == 0) { - return arg + return arg; } - }else if(!arg.sdk_arg_value){ - return arg + } else if (!arg.sdk_arg_value) { + return arg; } }); if (defaultArgFlag) { - return sdk + return sdk; } //鏌ユ壘鍙�夊弬鏁板�兼槸鍚﹂兘璁剧疆(澶氶�夊�间负鏁扮粍绫诲瀷) - let optionalArgFlag = sdk.optArg.find(arg => { + let optionalArgFlag = sdk.optArg.find((arg) => { if (arg.sdk_arg_value instanceof Array) { if (arg.sdk_arg_value.length == 0) { - return arg + return arg; } } else { //鍖洪棿绫诲弬鏁板�兼渶灏�,鏈�澶у�兼槸鍚﹂兘璁剧疆 - if (arg.operator == 'range') { - + if (arg.operator == "range") { if (!arg.min.trim() && arg.max.trim()) { - return arg + return arg; } } if (!arg.sdk_arg_value) { - return arg + return arg; } } }); if (optionalArgFlag) { - return sdk + return sdk; } }); if (undefinished) { this.$notify({ - type: 'error', - message: '绠楁硶鍙傛暟鏈畬鍠�,璇峰畬鍠勫悗鍐嶄繚瀛�' + type: "error", + message: "绠楁硶鍙傛暟鏈畬鍠�,璇峰畬鍠勫悗鍐嶄繚瀛�", }); - return false + return false; } //鏍¢獙鍖洪棿宸︿晶鍊兼槸鍚﹀皬浜庡彸渚у�� let illegalRange = this.sdkGroup.some((sdk, index) => { - let rangeArg = sdk.defaultArg.find(arg => arg.operator == 'range'); + let rangeArg = sdk.defaultArg.find((arg) => arg.operator == "range"); if (rangeArg) { if (Number(rangeArg.max) <= Number(rangeArg.min)) { - return sdk + return sdk; } } }); if (illegalRange) { this.$notify({ - type: 'error', - message: '鍖洪棿宸︿晶涓嶈兘澶т簬鎴栫瓑浜庡尯闂村彸渚х殑鍊�' + type: "error", + message: "鍖洪棿宸︿晶涓嶈兘澶т簬鎴栫瓑浜庡尯闂村彸渚х殑鍊�", }); - return false + return false; } //鏍¢獙鑻ョ畻娉曞叧绯讳负瑙﹀彂,鍒欑畻娉曞悕涓嶈兘閲� let sameSdk = this.sdkGroup.some((sdk, index) => { - - if (sdk.index != 0 && (sdk.rule_with_pre == '=>'||sdk.rule_with_pre == '!=>')) { - + if ( + sdk.index != 0 && + (sdk.rule_with_pre == "=>" || sdk.rule_with_pre == "!=>") + ) { if (sdk.sdkObj.id == this.sdkGroup[index - 1].sdkObj.id) { - return sdk + return sdk; } } }); if (sameSdk) { this.$notify({ - type: 'error', - message: '绠楁硶鍏崇郴涓鸿Е鍙戞椂,绠楁硶鍚嶄笉鑳介噸澶�' + type: "error", + message: "绠楁硶鍏崇郴涓鸿Е鍙戞椂,绠楁硶鍚嶄笉鑳介噸澶�", }); - return false + return false; } if (!validateFlag && !sameSdk) { - validateFlag = true + validateFlag = true; } - this.sdkGroup.forEach(sdk => { + this.sdkGroup.forEach((sdk) => { let tempObj = { sdk_id: sdk.sdkObj.id, camera_id: sdk.camera_id, - group_id: '', + group_id: "", is_save_anyhow: sdk.is_save_anyhow, polygon_id: sdk.polygon_id, rule_with_pre: sdk.rule_with_pre, - sdk_set: [] - } + sdk_set: [], + }; - let defaultArgs = sdk.defaultArg.map(arg => ({ + let defaultArgs = sdk.defaultArg.map((arg) => ({ operator: arg.operator, operator_type: arg.type, sdk_arg_alias: arg.alias, sdk_arg_value: arg.sdk_arg_value, - sort: arg.sort - })) + sort: arg.sort, + })); - let defaultArgDesc = '( ' - sdk.defaultArg.forEach(arg => { + let defaultArgDesc = "( "; + sdk.defaultArg.forEach((arg) => { //涓嶆樉绀洪殣钘忕殑鍙傛暟閰嶇疆 - if(!arg.config.isShow){ - return + if (!arg.config.isShow) { + return; } - let val = ''; + let val = ""; //澶勭悊涓嬫媺閫夊�肩被鍨� - if (arg.type == 'option') { + 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 + ' '; - }) + 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 + (opt) => opt.value == arg.sdk_arg_value ); val = res.name; } - } - if (arg.operator == 'range') { - let valRange = ''; - - valRange = arg.sdk_arg_value.replace(',', '-'); - defaultArgDesc += `${arg.name}${arg.operators[0].name}${valRange}${arg.unit || ''}, ` + if (arg.operator == "range") { + let valRange = ""; + + 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.unit || ''}, ` + arg.type == "option" ? val : arg.sdk_arg_value + }${arg.unit || ""}, `; } - }); - ; - 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); //澶勭悊鍙�夐」鍙傛暟 - let optArgs = sdk.optArg.map(arg => ({ + let optArgs = sdk.optArg.map((arg) => ({ operator: arg.operator, operator_type: arg.type, sdk_arg_alias: arg.alias, sdk_arg_value: arg.sdk_arg_value, - sort: arg.sort + sort: arg.sort, })); //灏嗗閫夐」鐨勫�兼嫾鎴愬瓧绗︿覆 - optArgs.forEach(one => { + optArgs.forEach((one) => { if (one.sdk_arg_value instanceof Array) { one.sdk_arg_value = one.sdk_arg_value.join(); } }); - let optArgDesc = ' ' - sdk.optArg.forEach(arg => { - let val = ''; - let valRange = ''; + let optArgDesc = " "; + sdk.optArg.forEach((arg) => { + let val = ""; + let valRange = ""; //澶勭悊涓嬫媺閫夊�肩被鍨� - if (arg.type == 'option') { + 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 + ' '; - }) + 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 + (opt) => opt.value == arg.sdk_arg_value ); val = res.name; } - } - let operatorSelected = arg.operators.find(opr => opr.operator == arg.operator) + 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 || ''}, ` + arg.type == "option" ? val : arg.sdk_arg_value + }${arg.unit || ""}, `; }); //灏嗗閫夐」鐨勫�兼嫾鎴愬瓧绗︿覆 - defaultArgs.forEach(one => { + 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) + optArgDesc = + optArgDesc.substring(0, optArgDesc.length - 2) + + optArgDesc.substring(optArgDesc.length - 1, optArgDesc.length); + optArgDesc += ")"; + tempObj.sdk_set = defaultArgs.concat(optArgs); - groupRule.rules.push(tempObj) + groupRule.rules.push(tempObj); - let rule_with_pre = '' + let rule_with_pre = ""; if (sdk.rule_with_pre) { switch (sdk.rule_with_pre) { - case '&&': - rule_with_pre = ' and ' - break - case '||': - rule_with_pre = ' or ' - break - case '=>': - rule_with_pre = ' -> ' - break - case '!=>': - rule_with_pre = ' !-> ' - break + case "&&": + rule_with_pre = " and "; + break; + case "||": + rule_with_pre = " or "; + break; + case "=>": + rule_with_pre = " -> "; + break; + case "!=>": + rule_with_pre = " !-> "; + break; default: - rule_with_pre = '' + rule_with_pre = ""; } } - ; - group_text += `${rule_with_pre ? "<br/>" + rule_with_pre + "<br/>" : ""} <span style="background-color:RGB(183,183,183);">${ + group_text += `${ + rule_with_pre ? "<br/>" + rule_with_pre + "<br/>" : "" + } <span style="background-color:RGB(183,183,183);">${ sdk.sdkObj.sdk_name - }</span> ${ - sdk.polygonObj.name - } ${defaultArgDesc}${optArgDesc}`; + }</span> ${sdk.polygonObj.name} ${defaultArgDesc}${optArgDesc}`; if ( - group_text.charAt(group_text.length - 3) == ',' && - group_text.charAt(group_text.length - 2) == ' ' && - group_text.charAt(group_text.length - 1) == ')' + group_text.charAt(group_text.length - 3) == "," && + group_text.charAt(group_text.length - 2) == " " && + group_text.charAt(group_text.length - 1) == ")" ) { group_text = group_text.substring(0, group_text.length - 3) + - group_text.substring(group_text.length - 2, group_text.length) + group_text.substring(group_text.length - 2, group_text.length); } - - }) - console.log(group_text) + }); } - groupRule.text = group_text - groupRule.id = this.group_id - return groupRule + groupRule.text = group_text; + groupRule.id = this.group_id; + return groupRule; if (this.isLinkRule) { // 鍒ゆ柇瑙勫垯涓嚦灏戝寘鍚袱鎽勫儚鏈� let cameraIds = Array.from( new Set( - this.sdkGroup.map(r => { - return r.camera_id + this.sdkGroup.map((r) => { + return r.camera_id; }) ) - ) + ); if (cameraIds.length < 2) { this.$notify({ - type: 'error', + type: "error", //message: '闇�瑕�2涓笉鍚屾憚鍍忔満鎵嶈兘缁勬垚鑱斿姩瑙勫垯' - message: '闇�瑕佽嚦灏�2涓笉鍚屾憚鍍忔満鎵嶈兘缁勬垚鑱斿姩鍦烘櫙' - }) - return + message: "闇�瑕佽嚦灏�2涓笉鍚屾憚鍍忔満鎵嶈兘缁勬垚鑱斿姩鍦烘櫙", + }); + return; } // 鑱斿姩瑙勫垯缂栬緫鍚庯紝鎭㈠涔嬪墠閫変腑鐨勬憚鍍忔満 @@ -1602,11 +1616,11 @@ // } } //if(validateFlag){ - this.onSubmitRule(payload) + this.onSubmitRule(payload); //} - } - } -} + }, + }, +}; </script> <style lang="scss"> -- Gitblit v1.8.0