diff --git a/src/assets/video/操作箱阀门功能介绍.mp4 b/src/assets/video/操作箱阀门功能介绍.mp4 new file mode 100644 index 0000000..7242349 Binary files /dev/null and b/src/assets/video/操作箱阀门功能介绍.mp4 differ diff --git a/src/assets/video/罐体结构.mp4 b/src/assets/video/罐体结构.mp4 new file mode 100644 index 0000000..ca9ad43 Binary files /dev/null and b/src/assets/video/罐体结构.mp4 differ diff --git a/src/components/view/right/viewRight.component.html b/src/components/view/right/viewRight.component.html index 1766db2..30a7bde 100644 --- a/src/components/view/right/viewRight.component.html +++ b/src/components/view/right/viewRight.component.html @@ -18,14 +18,18 @@

{{ item.title }}

-
+
难度:
-
+
火点: {{ item.point }}个
+
+ 点位: + {{ item.idx }} +
diff --git a/src/mock/index.ts b/src/mock/index.ts index 9b9f1cb..5eab911 100644 --- a/src/mock/index.ts +++ b/src/mock/index.ts @@ -9,128 +9,187 @@ import line from "./line"; import four from "./four"; import four2 from "./four2"; import dangrous from "./dangrous"; - -export class MockData{ - public static getPeopleList(){ +const currentVideo = require("@/assets/video/操作箱阀门功能介绍.mp4"); +const currentVideo1 = require("@/assets/video/罐体结构.mp4"); +export class MockData { + public static getPeopleList() { const data = [] as any; - for(let i=0;i<50;i++){ + for (let i = 0; i < 50; i++) { data.push({ - id:Mock.mock("@id"), - name:Mock.mock("@cname"), - job:"安全顾问", - position:turf.randomPosition([ + id: Mock.mock("@id"), + name: Mock.mock("@cname"), + job: "安全顾问", + position: turf.randomPosition([ 11660757, 3692398.75, 11661124, 3692643.5 ]), - time:moment().subtract(Math.floor(Math.random()*30),"minutes").format("YYYY-MM-DD HH:mm:ss"), - tel:Mock.mock("@integer(13200000000, 13299999999)") + time: moment().subtract(Math.floor(Math.random() * 30), "minutes").format("YYYY-MM-DD HH:mm:ss"), + tel: Mock.mock("@integer(13200000000, 13299999999)") }) } return Mock.mock({ - code:0, - message:"成功", + code: 0, + message: "成功", data, }) } - public static getCameraList(){ + + public static getCameraList() { const data = [] as any; - const positions=[[ - 13312915.200000001, - 4098598.08, - 0.51 - ],[ - 13313086.72, - 4098442.24, - 0.51001953125 - ],[ - 13312961.280000001, - 4098238.72, - 0.5099609375 - ],[ - 13312853.76, - 4098298.88, - 0.5099609375 - ],[ - 13312756.48, - 4098408.96, - 0.51 - ],[ - 13312967.68, - 4098156.48, - 0.6099609375 - ],[ - 13313036.8, - 4098762.24, - 0.51 - ],[ - 13312883.200000001, - 4098757.7600000002, - 0.4 - ],[ - 13313327.36, - 4098413.12, - 0.51 - ],[ - 13312756.48, - 4098400.96, - 0.51 - ]] - const typeList = ["热成像摄像机","红外球形摄像机","高空瞭望摄像机"] + const positions = [ + [ + 11661040.64, + 3692463.04, + 1 + ], [ + 11661039.36, + 3692464.3200000003, + 1 + ], [ + 11661038.08, + 3692462.72, + 2 + ], [ + 11661032.96, + 3692460.48, + 1 + ], [ + 11661032.96, + 3692459.52, + 2 + ], [ + 11661035.52, + 3692461.12, + -0.5 + ], [ + 11661034.24, + 3692461.12, + -0.5 + ], + [ + 11661032.96, + 3692460.48, + 0 + ], + [ + 11661038.08, + 3692463.04, + 2 + ]] + const dataList = [ + { + title: '罐车无泄露罐体无霜冻', + model:'txt', + info: '①如完好,应重点进行排氮操作(表指针1%以下属于安全范围内)。由于事故后,氮的分层会加速,应实时观察并不间断排除,减少罐内分层涡旋沸腾压力,车体完好按转移危险源处置条件不成熟按倒罐转输或放空排险处置;\n' + + '②抢先处置期间要保证罐体不失真空,禁止向罐体、管线、安全阀部位射水。' + }, { + title: '罐车无泄露罐体有霜冻', + model:'txt', + info: '① 实时加大排氮操作频次,减少罐内分层沸腾压力,尽快做倒罐转输或转移危险源准备;\n' + + '② 前沿处置人员应做好紧急避险准备;\n' + + '③ 外壳保险器、管线、阀门如出现局部液化天然气泄露,可在扩散气体云团下风向5-15米部署水幕水枪、水力自摆炮稀释驱散;\n' + + '④ 罐体结霜处置规程中不论出现任何状况,严禁向罐体结霜面打水;2、严禁直流水直接冲击扩散云团。' + }, + { + title: '罐车垂直倾翻未泄漏', + model:'txt', + info: '① 需在专业技术人员的指导下进行排压处置,泄压消除储罐压力风险(内罐或外罐);\n' + + '② 如果出现槽罐垂直倾翻,可采取进料线反向管路排压,将罐体压力经进(出)料管路引流泄压或倒罐;\n' + + '③ 紧急情况下,可采取液相出口连接消防水带引至下风向就地直接排放,消除危险源;\n' + + '④ 如以降低罐车压力为目的,应以罐车气相出口排放为主,如以加快排放速度为目的,应以罐车液相出口排放为主;\n' + + '⑤ 作业前需提前部署好排流点两层以上水雾稀释保护圈,防止扩大危险和回火引爆。' + }, { + title: '罐车安全阀泄露', + model:'txt', + info: '① 如罐车撞击、倾翻、罐体完好,仅出现安全阀泄露,可复位安全阀消除泄露;\n' + + '② 如安全阀出现液相冻结,可采取直流水融化解冻或木槌轻敲复位消除泄露;\n' + + '③ 处置作业时应注意避开安全阀一爆破片双联保险装置,防止爆破片瞬间爆破液压造成物体打击伤害。' + }, { + title: '罐车管线阀门泄露', + model:'txt', + info: '① 如罐车撞击、倾翻,罐体完好,出现管线泄露。应实时进行罐体排氮操作,减少罐内天然气分层、涡旋、沸腾压力,及时采取木楔封堵、缠绕滴水封冻等方法临时堵漏,尽可能采取倒罐转输等进一步消除危险源的措施;\n' + + '② 若无法实现倒罐转输或起吊作业,可采取在罐车气(液)相出口延长管路下风向就地直排或安全控烧的方法消除危险源;\n' + + '③ 堵漏方法选择要正确,稀释保护要到位。' + }, { + title: '罐车泄露灾情异常', + model:'txt', + info: '① 若封堵措施无法实现,应进一步加大安全警戒区域和火源控制区距离,在泄露点下风向冷蒸气雾与爆炸性混合物区之间(泄露云团下风向10--20米处)部署移动水泡、水幕发生器、扇形递进喷雾水稀释控制扩散范围;\n' + + '② 提高防护等级,必要时采取紧急疏散措施扩大警戒范围。' + },{ + title: '槽车火灾处置', + model:'txt', + info: '① 在上风向部署自摆式移动水炮冷却保护罐体,严防内外罐超压破裂,引起储罐解体发生化学爆炸;\n' + + '② 处置过程中应严格遵守气体火灾扑救原则,关阀、封堵等切断气源措施未完全到位前,一般不宜直接扑灭燃烧火焰,可采取控制燃烧战术。稳妥处置。处置后期应逐步降低冷却强度,保持罐内LNG持续蒸发,直至燃尽,防止回火闪燃。' + },{ + title: '操作箱阀门功能介绍', + model:'video', + info: currentVideo + + },{ + title: '罐体结构', + model:'video', + info: currentVideo1 + }, + ] //turf.randomPosition([119.588709 ,34.514257,119.596724,34.520382]), - for(let i=0;i<10;i++){ + for (let i = 0; i < dataList.length; i++) { data.push({ - id:Mock.mock("@id"), - position:positions[i], - remark:typeList[i%3], - type:i%4, + id: Mock.mock("@id"), + position: positions[i], + remark: dataList[i].title, + model: dataList[i].model, + info: dataList[i].info, + hasPop: true, + type: i, }) } return Mock.mock({ - code:0, - message:"成功", + code: 0, + message: "成功", data, }) } - public static getCompanyList(){ + + public static getCompanyList() { const data = [] as any; - const typeList = ["江苏汉邦唐","北京汉邦唐"]; + const typeList = ["江苏汉邦唐", "北京汉邦唐"]; const areaList = [[[ 13312797.44, 4098625.6, 0.400078125 - ],[ + ], [ 13312634.88, 4098467.8400000003, 0.400078125 - ],[ + ], [ 13312825.6, 4098269.12, 0.4 - ],[ + ], [ 13312852.48, 4098290.56, 0.6099218750000001 - ],[ + ], [ 13313027.84, 4098100.8000000003, 0.4000390625 - ],[ + ], [ 13313169.92, 4098240, 0.4000390625 - ]],[[ + ]], [[ 13312771.84, 4098628.48, 5.8119531250000005 - ],[ + ], [ 13312986.88, 4098841.6, 0.399921875 - ],[ + ], [ 13313376, 4098431.36, 0.399921875 - ],[ + ], [ 13313145.6, 4098222.4, 0.400078125 @@ -141,611 +200,618 @@ export class MockData{ 13312874.24, 4098367.68, 20 - ],[ + ], [ 13313114.88, 4098505.92, 20 ]] - for(let i=0;i<2;i++){ + for (let i = 0; i < 2; i++) { data.push({ - id:Mock.mock("@id"), - position:positionList[i%2], - area:areaList[i%2], - name:typeList[i%2], - peopleCount:100, - master:Mock.mock("@cname"), - city:Mock.mock("@city(true)"), - address:Mock.mock("@county(true)") + id: Mock.mock("@id"), + position: positionList[i % 2], + area: areaList[i % 2], + name: typeList[i % 2], + peopleCount: 100, + master: Mock.mock("@cname"), + city: Mock.mock("@city(true)"), + address: Mock.mock("@county(true)") }) } return Mock.mock({ - code:0, - message:"成功", + code: 0, + message: "成功", data, }) } - public static getFourList(){ + + public static getFourList() { const data = [] as any; const areaList = four; - for(let i=0;i{ - Object.assign(item,{ - time : moment().subtract(i,"days").format("YYYY-MM-DD HH:mm:ss"), - position:turf.randomPosition([ - 13312995.84, - 4098177.2800000003, - 13313096.96, - 4098754.88, - ]), - head:Mock.mock("@cname"), - phone:Mock.mock("@integer(13200000000, 13299999999)"), - enterprise:'联化科', - risk:'管廊管道破裂', - reportingDate:moment().subtract(i,"days").format("YYYY-MM-DD HH:mm:ss"), - inspector:Mock.mock("@cname"), - hiddenDangerDetails:'南区6号管廊巡检过程中存在少量裂缝,目前未发现泄露', - rectificationMeasure:'整改措施:需要尽快进行管道评估,\n' + - '并根据评估结果,实施修复工作', - period:moment().subtract(i,"days").format("YYYY年M月DD日"), - remark:'管廊修复工作必须提前发布园\n' + - '区公告,并发函通知相关使用企业', - status:1, - }) - return item - }); - return Mock.mock({ - code:200, - message:"成功", - data, - })*/ + /* const data = hiddenDangerList.map((item,i)=>{ + Object.assign(item,{ + time : moment().subtract(i,"days").format("YYYY-MM-DD HH:mm:ss"), + position:turf.randomPosition([ + 13312995.84, + 4098177.2800000003, + 13313096.96, + 4098754.88, + ]), + head:Mock.mock("@cname"), + phone:Mock.mock("@integer(13200000000, 13299999999)"), + enterprise:'联化科', + risk:'管廊管道破裂', + reportingDate:moment().subtract(i,"days").format("YYYY-MM-DD HH:mm:ss"), + inspector:Mock.mock("@cname"), + hiddenDangerDetails:'南区6号管廊巡检过程中存在少量裂缝,目前未发现泄露', + rectificationMeasure:'整改措施:需要尽快进行管道评估,\n' + + '并根据评估结果,实施修复工作', + period:moment().subtract(i,"days").format("YYYY年M月DD日"), + remark:'管廊修复工作必须提前发布园\n' + + '区公告,并发函通知相关使用企业', + status:1, + }) + return item + }); + return Mock.mock({ + code:200, + message:"成功", + data, + })*/ } - public static getWaringList(){ - /* { - type:"normal", - id:new Date().getTime()+"", - typeName:"泄露", - position:[13312990.72, 4098613.12, 0.51], - reporter:"张三", - content:"北京汉邦唐化工厂区发生泄露" + public static getWaringList() { + /* { + type:"normal", + id:new Date().getTime()+"", + typeName:"泄露", + position:[13312990.72, 4098613.12, 0.51], + reporter:"张三", + content:"北京汉邦唐化工厂区发生泄露" - }*/ + }*/ const data = [ { title: '风险点异常', info: '煤化工艺3号点温度异常', time: '2023年1月20日 14:33:33', level: '2', - type:"normal", - typeName:"风险告警", - reporter:"张三", - tel:"13337542569", - content:"煤化工艺3号点温度异常" + type: "normal", + typeName: "风险告警", + reporter: "张三", + tel: "13337542569", + content: "煤化工艺3号点温度异常" } , { title: '环境告警', info: '土壤污染指数超标', time: '2023年1月20日 14:33:33', level: '1', - type:"normal", - typeName:"环境告警", - reporter:"李四", - tel:"13985412541", - content:"土壤污染指数超标" + type: "normal", + typeName: "环境告警", + reporter: "李四", + tel: "13985412541", + content: "土壤污染指数超标" }, { title: '隐患整改超期', info: '南区6号管廊存在少许裂缝', time: '2023年1月20日 14:33:33', level: '3', - type:"normal", - typeName:"隐患整改超期", - reporter:"张三", - tel:"13337542569", - content:"南区6号管廊存在少许裂缝" + type: "normal", + typeName: "隐患整改超期", + reporter: "张三", + tel: "13337542569", + content: "南区6号管廊存在少许裂缝" }, { title: '大气环境蓝色预警', info: '大气5号监测点蓝色预警', time: '2023年1月20日 14:33:33', level: '2', - type:"normal", - typeName:"大气环境蓝色预警", - reporter:"张三", - tel:"13337542569", - content:"大气5号监测点蓝色预警" + type: "normal", + typeName: "大气环境蓝色预警", + reporter: "张三", + tel: "13337542569", + content: "大气5号监测点蓝色预警" }, { title: '风险告警', info: '富土康厂区4号设备监测数值异常', time: '2023年1月20日 14:33:33', level: '3', - type:"normal", - typeName:"风险告警", - reporter:"张三", - tel:"13337542569", - content:"富土康厂区4号设备监测数值异常" + type: "normal", + typeName: "风险告警", + reporter: "张三", + tel: "13337542569", + content: "富土康厂区4号设备监测数值异常" }, { title: '车辆告警', info: '电子围栏-车辆非法进入', time: '2023年1月20日 14:33:33', level: '2', - type:"normal", - typeName:"车辆告警", - reporter:"李四", - tel:"13985412541", - content:"电子围栏-车辆非法进入" + type: "normal", + typeName: "车辆告警", + reporter: "李四", + tel: "13985412541", + content: "电子围栏-车辆非法进入" }, - ].map((item:any)=>{ + ].map((item: any) => { item.id = Mock.mock("@id"); - if (item.type === 'normal'){ - item.position=turf.randomPosition([ + if (item.type === 'normal') { + item.position = turf.randomPosition([ 13312995.84, 4098177.2800000003, 13313096.96, 4098754.88, ]); - }else if(item.type === 'fire'){ - item.position= [13312990.72, 4098613.12, 0.51] + } else if (item.type === 'fire') { + item.position = [13312990.72, 4098613.12, 0.51] } item.reporter = Mock.mock("@cname") item.tel = Mock.mock("@integer(13200000000, 13299999999)") - item.time = moment().subtract(0,"days").format("YYYY-MM-DD HH:mm:ss") + item.time = moment().subtract(0, "days").format("YYYY-MM-DD HH:mm:ss") return item }); - const i = Math.floor(Math.random()*5)+1 + const i = Math.floor(Math.random() * 5) + 1 return Mock.mock({ - code:200, - message:"成功", - data:[data[i]], + code: 200, + message: "成功", + data: [data[i]], }) } - public static deviceList(){ + + public static deviceList() { const nameList = [ "2号区3号库采样点", "1号区13号库采样点", @@ -758,18 +824,19 @@ export class MockData{ "6号区9号库采样点", "7号区1号库采样点", ] - const values = [90,80,70,60,55,50,46,40,30,20]; + const values = [90, 80, 70, 60, 55, 50, 46, 40, 30, 20]; const data = { nameList, values }; return Mock.mock({ - code:200, - message:"成功", + code: 200, + message: "成功", data, }) } - public static xkz(){ + + public static xkz() { const data = [ { @@ -814,12 +881,13 @@ export class MockData{ year3: 2575, }]; return Mock.mock({ - code:200, - message:"成功", + code: 200, + message: "成功", data, }) } - public static dangerSourceDetail(){ + + public static dangerSourceDetail() { const data = { "id": "954e5e6f-91c5-46d1-a085-ad0e6cdae10c", @@ -842,13 +910,13 @@ export class MockData{ "hazardousChemicalsName": "氯气" }; return Mock.mock({ - code:200, - message:"成功", + code: 200, + message: "成功", data, }) } - public static getEventList(){ + public static getEventList() { /* { type:"normal", id:new Date().getTime()+"", @@ -864,84 +932,84 @@ export class MockData{ info: '物体高空坠落', time: '2023年1月20日 14:33:33', level: '2', - type:"normal", - typeName:"安全事故", - reporter:"张三", - tel:"13337542569", - content:"物体高空坠落" + type: "normal", + typeName: "安全事故", + reporter: "张三", + tel: "13337542569", + content: "物体高空坠落" } , { title: '罐体破裂', info: '北京汉邦唐化工厂区发生泄露', time: '2023年1月20日 14:33:33', level: '1', - type:"normal", - typeName:"泄露", - reporter:"李四", - tel:"13985412541", - content:"北京汉邦唐化工厂区发生泄露" + type: "normal", + typeName: "泄露", + reporter: "李四", + tel: "13985412541", + content: "北京汉邦唐化工厂区发生泄露" }, { title: '坍塌事故', info: '建筑坍塌及时处理', time: '2023年1月20日 14:33:33', level: '1', - type:"normal", - typeName:"坍塌事故", - reporter:"张三", - tel:"13337542569", - content:"建筑坍塌及时处理" + type: "normal", + typeName: "坍塌事故", + reporter: "张三", + tel: "13337542569", + content: "建筑坍塌及时处理" }, { title: '气液泄露', info: 'NO气体泄露', time: '2023年1月20日 14:33:33', level: '2', - type:"normal", - typeName:"气液泄露", - reporter:"张三", - tel:"13337542569", - content:"NO气体泄露" + type: "normal", + typeName: "气液泄露", + reporter: "张三", + tel: "13337542569", + content: "NO气体泄露" }, { title: '罐体破裂', info: '富土康厂区罐体破裂', time: '2023年1月20日 14:33:33', level: '2', - type:"normal", - typeName:"罐体破裂", - reporter:"张三", - tel:"13337542569", - content:"富土康厂区罐体破裂" + type: "normal", + typeName: "罐体破裂", + reporter: "张三", + tel: "13337542569", + content: "富土康厂区罐体破裂" }, { title: '罐体破裂', info: '北京汉邦唐化工厂区发生泄露', time: '2023年1月20日 14:33:33', level: '1', - type:"normal", - typeName:"泄露", - reporter:"李四", - tel:"13985412541", - content:"北京汉邦唐化工厂区发生泄露" + type: "normal", + typeName: "泄露", + reporter: "李四", + tel: "13985412541", + content: "北京汉邦唐化工厂区发生泄露" }, - ].map((item:any)=>{ + ].map((item: any) => { item.id = Mock.mock("@id"); - if (item.type === 'normal'){ - item.position=turf.randomPosition([ + if (item.type === 'normal') { + item.position = turf.randomPosition([ 11660757, 3692398.75, 11661124, 3692643.5 ]); - }else if(item.type === 'fire'){ - item.position= [13312990.72, 4098613.12, 0.51] + } else if (item.type === 'fire') { + item.position = [13312990.72, 4098613.12, 0.51] } item.reporter = Mock.mock("@cname") item.tel = Mock.mock("@integer(13200000000, 13299999999)") - item.time = moment().subtract(0,"days").format("YYYY-MM-DD HH:mm:ss") + item.time = moment().subtract(0, "days").format("YYYY-MM-DD HH:mm:ss") return item }); - const i = Math.floor(Math.random()*5)+1 + const i = Math.floor(Math.random() * 5) + 1 return Mock.mock({ - code:200, - message:"成功", - data:[data[i]], + code: 200, + message: "成功", + data: [data[i]], }) } } diff --git a/src/mock/layer.ts b/src/mock/layer.ts index 13966f5..231100a 100644 --- a/src/mock/layer.ts +++ b/src/mock/layer.ts @@ -65,4 +65,27 @@ export default [ { scale:[0,0,0], selected:false, pages:["home","view"] +},{ + name:"视频监控", + ids:[] as string[], + type:"moveMarker", + urls:[ + "@path:1.png", + "@path:2.png", + "@path:3.png", + "@path:4.png", + "@path:5.png", + "@path:6.png", + "@path:7.png", + "@path:8.png", + "@path:9.png", + ], + init:async ()=>{ + return await service.getCameraList() + }, + scale:[0,0,0], + value:"video" , + selected:false, + hasPop:true, + pages:["view"] }] diff --git a/src/mock/treeData.ts b/src/mock/treeData.ts index c2b9e05..85863af 100644 --- a/src/mock/treeData.ts +++ b/src/mock/treeData.ts @@ -1855,6 +1855,222 @@ export const treeData = [ img: require('@/assets/img/view/氮气泄露.png'), content: '氮气泄露。', mainPoint: "氮气泄露。" + },{ + id: Mock.mock("@id"), + idx:1, + title: '罐车无泄露罐体无霜冻', + look:[ + 11661038.66375, + 3692474.989844, + 10.775087, + 0, + -34.737137, + 63.712109, + 2 + ], + position: [ + 11661043.200000001, + 3692464.3200000003, + 1 + ], + needFocus:true, + distance:3, + type:'video', + img: require('@/assets/img/view/槽罐车侧壁泄露.png'), + content: '罐车无泄露罐体无霜冻。', + mainPoint: "罐车无泄露罐体无霜冻。" + },{ + id: Mock.mock("@id"), + idx:2, + title: '罐车无泄露罐体有霜冻', + look:[ + 11661036.226719, + 3692473.52625, + 10.775087, + 0, + -34.737137, + 63.712109, + 2 + ], + position: [ + 11661043.200000001, + 3692464.3200000003, + 3.2007153320312502 + ], + needFocus:true, + distance:3, + type:'video', + img: require('@/assets/img/view/槽罐车侧壁泄露.png'), + content: '罐车无泄露罐体有霜冻。', + mainPoint: "罐车无泄露罐体有霜冻。" + },{ + id: Mock.mock("@id"), + idx:3, + title: '罐车垂直倾翻未泄漏', + look:[ + 11661037.976563, + 3692466.9175, + 8.837294, + 0, + -47.400764, + 63.71207, + 2 + ], + position: [ + 11661043.200000001, + 3692464.3200000003, + 3.2007153320312502 + ], + needFocus:true, + distance:3, + type:'video', + img: require('@/assets/img/view/槽罐车侧壁泄露.png'), + content: '罐车垂直倾翻未泄漏。', + mainPoint: "罐车垂直倾翻未泄漏。" + },{ + id: Mock.mock("@id"), + idx:4, + title: '罐车安全阀泄露', + look:[ + 11661030.209375, + 3692459.952187, + 5.805962, + 0, + -27.080067, + -20.37447, + 2 + ], + position: [ + 11661043.200000001, + 3692464.3200000003, + 3.2007153320312502 + ], + needFocus:true, + distance:3, + type:'video', + img: require('@/assets/img/view/槽罐车侧壁泄露.png'), + content: '罐车垂直倾翻未泄漏。', + mainPoint: "罐车垂直倾翻未泄漏。" + },{ + id: Mock.mock("@id"), + title: '罐车管线阀门泄露', + look:[ + 11661030.209375, + 3692459.952187, + 5.805962, + 0, + -27.080067, + -20.37447, + 2 + ], + position: [ + 11661043.200000001, + 3692464.3200000003, + 3.2007153320312502 + ], + needFocus:true, + distance:3, + idx:5, + type:'video', + img: require('@/assets/img/view/槽罐车侧壁泄露.png'), + content: '罐车垂直倾翻未泄漏。', + mainPoint: "罐车垂直倾翻未泄漏。" + },{ + id: Mock.mock("@id"), + title: '罐车泄露灾情异常', + look:[ + 11661029.610625, + 3692467.293906, + 12.065425, + 0, + -39.69001, + 33.82233, + 2 + ], + position: [ + 11661043.200000001, + 3692464.3200000003, + 3.2007153320312502 + ], + needFocus:true, + distance:3, + idx:6, + type:'video', + img: require('@/assets/img/view/槽罐车侧壁泄露.png'), + content: '罐车垂直倾翻未泄漏。', + mainPoint: "罐车垂直倾翻未泄漏。" + },{ + id: Mock.mock("@id"), + title: '槽车火灾处置', + look:[ + 11661029, + 3692466.315, + 11.264197, + 0, + -37.605675, + 23.234461, + 2 + ], + position: [ + 11661043.200000001, + 3692464.3200000003, + 3.2007153320312502 + ], + needFocus:true, + distance:3, + idx:7, + type:'video', + img: require('@/assets/img/view/槽罐车侧壁泄露.png'), + content: '罐车垂直倾翻未泄漏。', + mainPoint: "罐车垂直倾翻未泄漏。" + },{ + id: Mock.mock("@id"), + title: '操作箱阀门功能介绍', + look:[ + 11661026.115625, + 3692465.86625, + 9.601785, + 0, + -21.406857, + 20.658468, + 2 + ], + position: [ + 11661043.200000001, + 3692464.3200000003, + 3.2007153320312502 + ], + needFocus:true, + distance:3, + idx:8, + type:'video', + img: require('@/assets/img/view/槽罐车侧壁泄露.png'), + content: '罐车垂直倾翻未泄漏。', + mainPoint: "罐车垂直倾翻未泄漏。" + },{ + id: Mock.mock("@id"), + title: '罐体结构', + look:[ + 11661036.347656, + 3692468.925391, + 7.925199, + 0, + -28.857199, + 69.452904, + 2 + ], + position: [ + 11661043.200000001, + 3692464.3200000003, + 3.2007153320312502 + ], + needFocus:true, + distance:3, + type:'video', + idx:9, + img: require('@/assets/img/view/槽罐车侧壁泄露.png'), + content: '罐车垂直倾翻未泄漏。', + mainPoint: "罐车垂直倾翻未泄漏。" }, ] diff --git a/src/views/base.component.ts b/src/views/base.component.ts index 8d59b9d..ad3e41a 100644 --- a/src/views/base.component.ts +++ b/src/views/base.component.ts @@ -149,7 +149,6 @@ export default class BaseComponent extends Vue { public async addMarker(layer,trackCustom?){ if(!layer.ids.length){ - const options = layer.data.map((item,index)=>{ const option = {} as any if(item.hasPop){ @@ -162,7 +161,7 @@ export default class BaseComponent extends Vue { coordinateType:layer.coordinateType?layer.coordinateType:0, displayMode:2, imagePath:layer.url || layer.urls[item.type], - imageSize:[48,48], + imageSize:item.model?[30,30]:[48,48], popupSize:[480,388], popupOffset:[50,0], autoHidePopupWindow:false, @@ -171,7 +170,7 @@ export default class BaseComponent extends Vue { useTextAnimation: false, lineOffset:item.hasPop?[0,0]:[24,0], autoHeight:true, - }) + }) }) this.player.api.marker.add(options,(data)=>{ if(data.resultMessage==="OK"){ diff --git a/src/views/overview.component.ts b/src/views/overview.component.ts index 5caaf79..a30eb74 100644 --- a/src/views/overview.component.ts +++ b/src/views/overview.component.ts @@ -53,7 +53,6 @@ export default class OverViewComponent extends BaseComponent { waringRightShow = false //显示展示隐藏按钮 showPlay = false - // 是否隐藏除地图外所有板块 public hideAllPanel = false; public viewRightData = {}; @@ -108,6 +107,9 @@ export default class OverViewComponent extends BaseComponent { if(data.GroupID==="car"){ this.emitCarPop(currentData) } + if(data.GroupID==="video"){ + this.openVideo(currentData) + } } } @@ -285,6 +287,7 @@ export default class OverViewComponent extends BaseComponent { } //右侧详情点击事件 showDetail(item){ + debugger if(this.currentEvent){ if(this.currentEvent.id === item.id){ return @@ -294,45 +297,51 @@ export default class OverViewComponent extends BaseComponent { this.currentEvent = null; } } - if(!this.viewLayer[item.id]){ - const data = [] as any; - if(item.point>1){ - for(let i = 0;iitem.value === "video")as any).data.find(items=>items.remark === item.title) + this.openVideo(currentData) + }else{ + if(!this.viewLayer[item.id]){ + const data = [] as any; + if(item.point>1){ + for(let i = 0;i{ + // this.player.api.marker.focus(item.id,20,2) + if(item.model === 'video'){ + setTimeout(()=>{ + layer.open({ + type:1, + shade:0, + title:item.remark, + content:`
+ +
` + }) + },2000) + }else{ + setTimeout(()=>{ + layer.open({ + type:1, + shade:0, + title:item.remark, + content:`
${item.info}
` + + }) + },2000) + } + + },1000) + } deactivated(){ // }