| | |
| | | v-for="(data, index) in swipercanvasData" |
| | | :key="index" |
| | | > |
| | | <b |
| | | <!-- <b |
| | | class="video-title" |
| | | style="font-size: 14px; margin-top: -10px" |
| | | >{{ data.name }}</b |
| | | > |
| | | > --> |
| | | <polygon-canvas |
| | | ref="canvas" |
| | | v-loading="loading" |
| | |
| | | :rule="item" |
| | | :id="'rule_' + index" |
| | | :ruleType="'separate'" |
| | | :cameraId="Camera.cameraId" |
| | | @edit="editRules(item, index, 'separate')" |
| | | @addSdk="addSdk('separate', index)" |
| | | @backToOrigin="backToOrigin('separate', index)" |
| | | @editSdk="editSdk($event, 'separate', index)" |
| | | @deletRule="deletRule('separate', index)" |
| | | ></RuleItem> |
| | | </template> |
| | | |
| | |
| | | @edit="editRules(item, index, 'linkage')" |
| | | @addSdk="addSdk('linkage', index)" |
| | | @backToOrigin="backToOrigin('linkage', index)" |
| | | @editSdk="editSdk($event, 'linkage', index, item.Cameras)" |
| | | @editSdk="editSdk($event, 'linkage', index)" |
| | | @deletRule="deletRule('linkage', index)" |
| | | :id="'linkage_' + index" |
| | | ></RuleItem> |
| | | </div> |
| | |
| | | @getEditSdk="getEditSdk" |
| | | :editSdk="editSdkObj.sdk" |
| | | :linkEditCamera=" |
| | | ruleType === 'linkage' && editSdkObj ? editSdkObj.cameras : null |
| | | ruleType === 'linkage' && editSdkObj ? editSdkObj.camera_polygons : null |
| | | " |
| | | :Cameras="ruleType === 'linkage' ? Carmeras : [Camera]" |
| | | ></SdkSettingBox> |
| | |
| | | SeparateRules: [], //独立场景 |
| | | linkageRule: [], //联动场景 |
| | | cameraId: "", |
| | | showSysInfo: false, |
| | | showSysInfo: true, |
| | | showCanvas: true, |
| | | canvasWidth: 568, |
| | | canvasHeight: 320, |
| | |
| | | this.plumbIns = jsPlumb.getInstance(); |
| | | }, |
| | | mounted() { |
| | | this.PollData.statistics(); |
| | | this.TaskMange.findAllSdk({ installed: true }); |
| | | // this.PollData.statistics(); |
| | | this.TaskMange.findAllSdk(); |
| | | }, |
| | | destroyed() { |
| | | document.querySelector("html").style["min-width"] = "1280px"; |
| | |
| | | |
| | | this.Camera = newCamera; |
| | | this.SeparateRules = this.Camera.rules; |
| | | |
| | | this.$nextTick(() => { |
| | | this.connectLine(); |
| | | }); |
| | |
| | | getLinkSceneRule({ cameraIds: [id] }) |
| | | .then((rsp) => { |
| | | if (rsp && rsp.success) { |
| | | rules = rsp.data; |
| | | rules = rsp.data.rules; |
| | | // 统一规则编辑的数据结构 |
| | | for (let i = 0; i < rules.length; i++) { |
| | | rules[i].group_rules = rules[i].rules; |
| | |
| | | |
| | | this.linkageRule = rules; |
| | | |
| | | console.log(this.linkageRule); |
| | | |
| | | this.$set(this.Camera, "rules", this.Camera.rules.concat(rules)); |
| | | |
| | | this.$nextTick(() => { |
| | | this.connectLine2(); |
| | | }); |
| | | |
| | | this.linkageRule.forEach((rule) => { |
| | | rule.Cameras = []; |
| | | rule.cameraIds.forEach((id) => { |
| | | let newCamera = new VideoRuleData(id); |
| | | rule.Cameras.push(newCamera); |
| | | }); |
| | | }); |
| | | } |
| | | }) |
| | |
| | | }); |
| | | if (rsp && rsp.success) { |
| | | let rules = rsp.data.rules ? rsp.data.rules : []; |
| | | rules.forEach((item) => { |
| | | item.cameraIds = rsp.data.cameraInfo.id; |
| | | }); |
| | | if (rules[index]) { |
| | | this.SeparateRules[index] = rules[index]; |
| | | } else { |
| | |
| | | this.$forceUpdate(); |
| | | this.connectLine(); |
| | | } else { |
| | | getLinkSceneRule({ cameraIds: [this.Camera.cameraId] }) |
| | | .then((rsp) => { |
| | | getLinkSceneRule({ cameraIds: [this.Camera.cameraId] }).then((rsp) => { |
| | | if (rsp && rsp.success) { |
| | | let rules = rsp.data; |
| | | console.log(rules); |
| | | let rules = rsp.data.rules ? rsp.data.rules : []; |
| | | if (rules[index]) { |
| | | console.log(1111); |
| | | this.linkageRule[index] = rules[index]; |
| | | this.linkageRule.group_rules = this.linkageRule.rules; |
| | | } else { |
| | | console.log(2222); |
| | | this.linkageRule.splice(index, 1); |
| | | } |
| | | this.$forceUpdate(); |
| | | this.connectLine2(); |
| | | } |
| | | console.log("失败"); |
| | | }) |
| | | .catch((err) => { |
| | | console.log(err); |
| | | }); |
| | | } |
| | | }, |
| | | |
| | | // 编辑算法 |
| | | editSdk(sdkIndex, type, ruleIndex, Cameras) { |
| | | editSdk(sdkIndex, type, ruleIndex) { |
| | | this.addData = {}; |
| | | this.ruleType = type; |
| | | if (type === "separate") { |
| | |
| | | ruleIndex, |
| | | sdkIndex, |
| | | type, |
| | | cameras: Cameras, |
| | | camera_polygons: this.linkageRule[ruleIndex].camera_polygons, |
| | | sdk: this.linkageRule[ruleIndex].rules[sdkIndex], |
| | | }; |
| | | } |
| | | |
| | | this.showSdkBox = false; |
| | | this.showSdkSettingBox = true; |
| | | }, |
| | | |
| | | deletRule(type, index) { |
| | | if (type === "separate") { |
| | | this.SeparateRules.splice(index, 1); |
| | | } else { |
| | | this.linkageRule.splice(index, 1); |
| | | } |
| | | }, |
| | | |
| | | getEditSdk(newRule) { |
| | |
| | | } |
| | | |
| | | .swiper-box-container2 { |
| | | margin: 0; |
| | | margin-top: -13px; |
| | | width: 568px; |
| | | } |
| | | |
| | |
| | | .swiper-next-border ::v-deep { |
| | | position: absolute; |
| | | bottom: 146px; |
| | | right: 10px; |
| | | right: 58px; |
| | | cursor: pointer; |
| | | z-index: 1; |
| | | |