config.js 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669
  1. const RND = Math.random()
  2. /**
  3. * 接口地址
  4. */
  5. const BASE_URL = '/yapi' //开发接口代理
  6. /**
  7. * 界面配置
  8. */
  9. const HOME_DATA = {
  10. startDate: '2024-11-27',
  11. curStation: '托克托',
  12. }
  13. /**
  14. * 场站配置
  15. */
  16. const STATION_LIST = [
  17. {
  18. name: '托克托',
  19. configUrl: '/json/glyConfig.json',
  20. cameraUrl: '/json/glyCamera.json',
  21. },
  22. ]
  23. //以下内容为新版本所需要的配置,未来持续迭代
  24. /**
  25. * 页面内标题 已生效
  26. */
  27. const SYSTEM_TITLE = '托克托压气站综合安防平台'//托克托
  28. /**
  29. * 设置浏览器标题 已生效
  30. */
  31. document.title = SYSTEM_TITLE
  32. /**
  33. * 模块启用状态 部分生效
  34. */
  35. const MODULE_ENABLED = {
  36. /**
  37. * 定位系统
  38. */
  39. positioning: {
  40. /**
  41. * 定位启用状态
  42. */
  43. enabled: false,
  44. /**
  45. * 人员报警启用状态
  46. */
  47. personAlarm: false,
  48. /**
  49. * 围栏报警启用状态
  50. */
  51. railAlarm: true,
  52. /**
  53. * 区域报警启用状态
  54. */
  55. areaAlarm: true,
  56. /**
  57. * 聚集报警
  58. */
  59. gatherAlarm: false,
  60. },
  61. }
  62. /**
  63. * 地图配置 Cesium.UrlTemplateImageryProvider实例 已生效
  64. * * key1:9a5079c684abb9ab2cae02119587ca18  原有
  65. * key2:c7074dacd421b3e1ba311392c4b6923f  后台管理
  66. * key3:f3ddf0996b8f5b1c876094cdcb35faab  自己的
  67. */
  68. const MAP_CONFIG = {
  69. // url: 'http://t{s}.tianditu.gov.cn/img_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&FORMAT=tiles&tk=c7074dacd421b3e1ba311392c4b6923f',
  70. // url: 'http://127.0.0.1:9950/YG/tkt/{z}/{x}/{y}.png',
  71. url: 'static/tkt/{z}/{x}/{y}.png',
  72. maximumLevel: 18,
  73. subdomains: ['0', '1', '2', '3', '4', '5', '6', '7'],
  74. }
  75. /**
  76. * 模型配置 目前仅为3dtiles的设置,未来遇到其他类型再重构
  77. */
  78. const MODEL_CONFIG = {
  79. /**
  80. * 是否启用模型
  81. */
  82. enabled: true,
  83. /**
  84. * 是否启用分层模型,enabled=true为前提
  85. */
  86. floorEnabled: true,
  87. location: {
  88. longitude: 0, //经度
  89. latitude: 0, //纬度
  90. },
  91. scale: 1,
  92. map: {},
  93. }
  94. /**
  95. * 视频播放地址 已生效
  96. */
  97. const VIDEO_PLAYER_CONFIG = 'http://[ip]:5000/NVRPlayer/Play?id='
  98. /**
  99. * MQTT配置 已启用
  100. */
  101. const MQTT_CONFIG = {
  102. /**
  103. * ws主机地址 ws://ip:port/endpoint
  104. */
  105. host: '/MQTTOverWebSocket', //"ws://127.0.0.1:18908/MQTTOverWebSocket",
  106. /**
  107. * client名称前缀
  108. */
  109. clientIdPrefix: 'mapclient',
  110. /**
  111. * 用户名
  112. */
  113. username: 'client',
  114. /**
  115. * 密码
  116. */
  117. password: '19c9547ad2029be96774fce5f1b9f099',
  118. /**
  119. * 订阅主题 单字符串or字符串数组
  120. */
  121. topic: [
  122. // 'Positioning/#',
  123. 'Alarm/List',
  124. 'Message/New',
  125. 'Perimeter/#',
  126. 'LaserPtz/#',
  127. 'Risk/New',
  128. 'dashboard/risk/drawrisktime',
  129. 'Visualization/DataComm/NewAlarm',
  130. ],
  131. }
  132. //后台管理根路径
  133. const ISMSAdminWeb = {
  134. path: "http://172.168.0.62:8080/#/",
  135. // path: `http://192.168.195.136:8080/#/`,
  136. // path: `http://${window.location.hostname}:8080/#/`,
  137. }
  138. //房顶配置
  139. //房顶配置
  140. const MODEL_ROOF_LIST = [{ model: 'JHFSZ', part: ['门卫室-顶', '办公区屋顶'] }]
  141. const MODEL_ROOF_LIST2 = [
  142. {
  143. name: '办公楼二层',
  144. model: '济北综合站',
  145. part: ['主建楼顶'],
  146. insideModel: [
  147. '屏幕墙1',
  148. '屏幕墙2',
  149. '屏风02',
  150. '屏风01',
  151. '墙面01',
  152. '控制台',
  153. '控制柜01',
  154. 'UPS',
  155. '控制柜2',
  156. '可燃气体泄漏报警器2',
  157. '控制柜02',
  158. '室内灭火器F2-01',
  159. '室内灭火器F2-02',
  160. '室内灭火器F2-03',
  161. '室内灭火器F2-04',
  162. ],
  163. perspective: {
  164. destination: {
  165. x: -2327723.6131185642,
  166. y: 4537783.489307582,
  167. z: 3817482.431748076,
  168. },
  169. orientation: {
  170. pitch: -0.9984824373999865,
  171. heading: 1.1162388807802497,
  172. roll: 6.283185145946305,
  173. },
  174. },
  175. },
  176. {
  177. name: '办公楼一层',
  178. model: '济北综合站',
  179. part: [
  180. '主建楼顶',
  181. '主楼2层',
  182. '主楼2层地面',
  183. '屏幕墙1',
  184. '屏幕墙2',
  185. '屏风02',
  186. '屏风01',
  187. '墙面01',
  188. '控制台',
  189. '控制柜01',
  190. 'UPS',
  191. '控制柜2',
  192. '可燃气体泄漏报警器2',
  193. '控制柜02',
  194. '室内灭火器F2-01',
  195. '室内灭火器F2-02',
  196. '室内灭火器F2-03',
  197. '室内灭火器F2-04',
  198. ],
  199. judgePart: ['主楼2层', '主楼2层地面'],
  200. insideModel: [
  201. '电动球阀控制柜',
  202. '恒电位仪柜',
  203. '配电柜',
  204. '工业电视柜',
  205. '燃气加臭控制柜',
  206. '网络柜',
  207. '文件柜',
  208. '主楼1层地面',
  209. '主楼1层',
  210. '微型消防箱01',
  211. '微型消防箱02',
  212. '消防应急物资',
  213. '设备电箱',
  214. '提示板001',
  215. '提示板002',
  216. '室内灭火器F1-01',
  217. '室内灭火器F1-02',
  218. '室内灭火器F1-03',
  219. '室内灭火器F1-04',
  220. ],
  221. perspective: {
  222. destination: {
  223. x: -2327723.6131185642,
  224. y: 4537783.489307582,
  225. z: 3817482.431748076,
  226. },
  227. orientation: {
  228. pitch: -0.9984824373999865,
  229. heading: 1.1162388807802497,
  230. roll: 6.283185145946305,
  231. },
  232. },
  233. },
  234. {
  235. name: '锅炉房',
  236. model: '济北综合站',
  237. part: ['锅炉房屋顶'],
  238. insideModel: [
  239. '锅炉房-设备03',
  240. '锅炉房-设备08',
  241. '锅炉房-设备17',
  242. '锅炉房-设备02',
  243. '锅炉房',
  244. '锅炉房屋顶',
  245. '锅炉房灭火器',
  246. '锅炉房-管道03',
  247. '锅炉房-管道04',
  248. '锅炉房-设备24',
  249. '锅炉房-管道02',
  250. '锅炉房-管道01',
  251. '锅炉房-管道05',
  252. '锅炉房-设备01',
  253. '锅炉房-设备25',
  254. '锅炉房-设备26',
  255. '锅炉房-设备11',
  256. '锅炉房-设备04',
  257. '锅炉房-设备16',
  258. '锅炉房-设备12',
  259. '锅炉房-设备14',
  260. '锅炉房-设备13',
  261. '锅炉房-设备10',
  262. '锅炉房-设备27',
  263. '锅炉房-设备06',
  264. '锅炉房-设备19',
  265. '锅炉房-设备20',
  266. '锅炉房-设备09',
  267. '锅炉房-设备18',
  268. '锅炉房-设备15',
  269. '锅炉房-设备21',
  270. '锅炉房-设备07',
  271. '锅炉房-设备22',
  272. '锅炉房-设备23',
  273. '锅炉房-设备05',
  274. ],
  275. perspective: {
  276. destination: {
  277. x: -2327732.5099475486,
  278. y: 4537763.562118137,
  279. z: 3817457.9111556276,
  280. },
  281. orientation: {
  282. pitch: -1.1831669555873963,
  283. heading: 0.5905378634399421,
  284. roll: 0.000001351263233750899,
  285. },
  286. },
  287. },
  288. {
  289. name: '水源泵房',
  290. model: '济北综合站',
  291. part: ['水源泵房', '水源泵房屋顶'],
  292. hiddenBaseImage: true,
  293. insideModel: [
  294. '水源泵房-设备32',
  295. '水源泵房-设备23',
  296. '水源泵房-设备05',
  297. '水源泵房-设备03',
  298. '水源泵房-设备11',
  299. '水源泵房-设备12',
  300. '水源泵房-设备36',
  301. '水源泵房-设备27',
  302. '水源泵房-设备04',
  303. '水源泵房-设备06',
  304. '水源泵房-设备14',
  305. '水源泵房-设备13',
  306. '水源泵房-设备10',
  307. '水源泵房-设备31',
  308. '水源泵房-设备08',
  309. '水源泵房-设备29',
  310. '水源泵房-设备09',
  311. '水源泵房-设备07',
  312. '水源泵房-设备42',
  313. '水源泵房-管道',
  314. '水源泵房灭火器',
  315. '水源泵房-设备01',
  316. '水源泵房下地面',
  317. '水源泵房-设备02',
  318. '水源泵房-设备18',
  319. '水源泵房-设备20',
  320. '水源泵房-设备17',
  321. '水源泵房-设备19',
  322. '水源泵房-设备37',
  323. '水源泵房-设备38',
  324. '水源泵房-设备34',
  325. '水源泵房-设备25',
  326. '水源泵房-设备21',
  327. '水源泵房-设备16',
  328. '水源泵房-设备22',
  329. '水源泵房-设备15',
  330. '水源泵房-设备33',
  331. '水源泵房-设备24',
  332. '水源泵房-设备35',
  333. '水源泵房-设备26',
  334. '水源泵房-设备30',
  335. '水源泵房-设备28',
  336. '水源泵房-设备43',
  337. '水源泵房-设备41',
  338. '水源泵房-设备40',
  339. '水源泵房-设备39',
  340. ],
  341. perspective: {
  342. destination: {
  343. x: -2327690.382139521,
  344. y: 4537738.290871575,
  345. z: 3817505.2988075344,
  346. },
  347. orientation: {
  348. pitch: -0.9538980489654696,
  349. heading: 3.567193990984463,
  350. roll: 6.283184750030382,
  351. },
  352. },
  353. },
  354. {
  355. name: '箱变',
  356. model: '济北综合站',
  357. part: ['箱变'],
  358. insideModel: ['配电箱柜组', '灭火器001', '灭火器002'],
  359. perspective: {
  360. destination: {
  361. x: -2327700.7983310865,
  362. y: 4537740.687203836,
  363. z: 3817490.048991262,
  364. },
  365. orientation: {
  366. pitch: -0.555329858028367,
  367. heading: 6.27814800108144,
  368. roll: 1.5945679532336499e-7,
  369. },
  370. },
  371. },
  372. {
  373. name: '柴油发电房',
  374. model: '济北综合站',
  375. part: ['柴油发电房', '柴油发电机操作规程', '危险化学品安全周至卡', '柴油职业危害告知牌'],
  376. insideModel: ['柴油发电机'],
  377. perspective: {
  378. destination: {
  379. x: -2327706.7316303723,
  380. y: 4537738.270258039,
  381. z: 3817489.454492963,
  382. },
  383. orientation: {
  384. pitch: -0.582277053325126,
  385. heading: 6.260514133391248,
  386. roll: 4.218192959370981e-7,
  387. },
  388. },
  389. },
  390. ]
  391. const UNDER_PIPELINE = {
  392. hiddenList: [
  393. '揭工艺区地面1',
  394. '揭地面1',
  395. '揭工艺区地面2',
  396. '揭地面2',
  397. '揭草地',
  398. '揭出站双阀区',
  399. '工艺区01',
  400. '工艺区02',
  401. '围墙',
  402. '外围围墙',
  403. '可控型加臭机',
  404. '工艺区贴砖台06',
  405. ],
  406. pipelines: [
  407. {
  408. name: '地下管道-入站1',
  409. tags: [],
  410. color: '',
  411. points: [
  412. 117.1558884654605, 37.00053689773706, -2.01, 117.15592013724724, 37.00053684750127, -2.01, 117.15592087743856,
  413. 37.00053690747516, -1.89, 117.15592087743856, 37.00053690747516, 0.56, 117.15592195101559, 37.00053686291131,
  414. 0.7, 117.15594477210436, 37.0005367884524, 0.7, 117.15594568994398, 37.00053689649499, 0.56, 117.15594568994398,
  415. 37.00053689649499, -2.01, 117.15617353814059, 37.000536849977536, -2.01, 117.15617482140199, 37.00053785886714,
  416. -2.01, 117.15617486264294, 37.00061023747043, -2.01, 117.15617486264294, 37.00061023747043, 0.85,
  417. 117.15617470534518, 37.00062817346, 0.85,
  418. ],
  419. },
  420. {
  421. name: '地下管道-入站2',
  422. tags: [],
  423. color: '',
  424. points: [
  425. 117.15588844762797, 37.00054770351777, -2.01, 117.15592018542893, 37.000547747669444, -2.01, 117.15592109814965,
  426. 37.0005477484362, -1.89, 117.15592075018931, 37.00054773225912, 0.56, 117.15592200732209, 37.00054768158184,
  427. 0.7, 117.15594431420939, 37.000547779021105, 0.7, 117.15594555663316, 37.00054787562466, 0.56,
  428. 117.15594555663316, 37.00054787562466, -2.01, 117.15608136871472, 37.00054781247141, -2.01, 117.15608147776291,
  429. 37.000612644913744, -2.01, 117.15608147776291, 37.000612644913744, 0.85, 117.15608165380127, 37.00061479377705,
  430. 0.91,
  431. ],
  432. },
  433. {
  434. name: '工艺区管道02-下-左',
  435. tags: [],
  436. color: '',
  437. points: [
  438. 117.15608159310072, 37.00061693838703, 0.91, 117.15608211288371, 37.000626075950564, 0.91, 117.15606627752426,
  439. 37.00062624618931, 0.91, 117.15606602714327, 37.00070569400565, 0.91,
  440. ],
  441. },
  442. {
  443. name: '工艺区管道02-下-右',
  444. tags: [],
  445. color: '',
  446. points: [117.15608159310072, 37.00061693838703, 0.91, 117.1560816395163, 37.00070569765638, 0.91],
  447. },
  448. {
  449. name: '工艺区管道03-左',
  450. tags: [],
  451. color: '',
  452. points: [117.15610212545893, 37.00075483212911, 0.89, 117.15610198124256, 37.0007106752246, 0.89],
  453. },
  454. {
  455. name: '工艺区管道03-右',
  456. tags: [],
  457. color: '',
  458. points: [
  459. 117.15611329627278, 37.00075484442566, 0.89, 117.15611285174879, 37.00071899388258, 0.89, 117.1561019192058,
  460. 37.00071897392638, 0.89, 117.15610198124256, 37.0007106752246, 0.89,
  461. ],
  462. },
  463. {
  464. name: '工艺区管道04-左',
  465. tags: [],
  466. color: '',
  467. points: [117.15613345776718, 37.00075492228591, 0.89, 117.15613337129263, 37.00070434658455, 0.89],
  468. },
  469. {
  470. name: '工艺区管道04-右',
  471. tags: [],
  472. color: '',
  473. points: [
  474. 117.1561446203325, 37.00075493465728, 0.89, 117.15614432464992, 37.00071164383694, 0.89, 117.15613334351812,
  475. 37.000711541108, 0.89, 117.15613337129263, 37.00070434658455, 0.89,
  476. ],
  477. },
  478. {
  479. name: '工艺区管道05-左',
  480. tags: [],
  481. color: '',
  482. points: [
  483. 117.1561746970257, 37.000627994119434, 0.89, 117.1561747996243, 37.00063438490229, 0.89, 117.15616271948913,
  484. 37.000634677286044, 0.89, 117.15616237191766, 37.000754869008624, 0.89,
  485. ],
  486. },
  487. {
  488. name: '工艺区管道05-右-左',
  489. tags: [],
  490. color: '',
  491. points: [
  492. 117.1561746970257, 37.000627994119434, 0.89, 117.15617487551941, 37.00067147000967, 0.89, 117.15617485244624,
  493. 37.000672342344444, 1.48, 117.1561748782843, 37.00068436744248, 1.48, 117.15617524727374, 37.000684991814666,
  494. 0.89, 117.15617491130706, 37.00075492428077, 0.89,
  495. ],
  496. },
  497. {
  498. name: '工艺区管道05-右-右',
  499. tags: [],
  500. color: '',
  501. points: [
  502. 117.1561746970257, 37.000627994119434, 0.89, 117.15617474808313, 37.00065961166106, 0.89, 117.15618116159716,
  503. 37.00065957785025, 0.89, 117.15618130800128, 37.0006970541465, 0.89, 117.15617492244108, 37.00069723684851,
  504. 0.89, 117.15617491130706, 37.00075492428077, 0.89,
  505. ],
  506. },
  507. {
  508. name: '地下管道-出站1',
  509. tags: [],
  510. color: '',
  511. points: [
  512. 117.15613337129263, 37.00070434658455, 0.89, 117.15613353610726, 37.00069733612314, 0.89, 117.15613353610726,
  513. 37.00069733612314, -1.38, 117.15613333756814, 37.000537131350114, -1.38, 117.15635818903677, 37.00053686938121,
  514. -1.38, 117.15635818903677, 37.00053686938121, 0.7, 117.15638286970857, 37.00053687903658, 0.7,
  515. 117.15638286970857, 37.00053687903658, -0.98, 117.15651761152432, 37.000536864259104, -0.98,
  516. ],
  517. },
  518. {
  519. name: '地下管道-出站2',
  520. tags: [],
  521. color: '',
  522. points: [
  523. 117.1561018838438, 37.000714669797624, 0.89, 117.15610186917172, 37.000704466169545, 0.89, 117.15610186917172,
  524. 37.000704466169545, -1.16, 117.15610187873084, 37.00054786974231, -1.16, 117.15635818971452, 37.00054771917987,
  525. -1.16, 117.15635818971452, 37.00054771917987, 0.7, 117.15638258544303, 37.00054773239913, 0.7,
  526. 117.15638258544303, 37.00054773239913, -0.98, 117.15651760881931, 37.00054767154145, -0.98,
  527. ],
  528. },
  529. ],
  530. }
  531. const CURRENT_STATION = {
  532. name: '济阳门站',
  533. code: 'JYMZ',
  534. center: [117.16449326547945, 36.98251852781648, 0],
  535. perspective: {
  536. destination: {
  537. x: -2328921.7606462426,
  538. y: 4538563.992673427,
  539. z: 3815788.2687797816,
  540. },
  541. orientation: {
  542. pitch: -0.29113542476570187,
  543. heading: 0.605754941690825,
  544. roll: 0.0000010315360015056285,
  545. },
  546. },
  547. }
  548. const LAYER_CONFIG = {
  549. name: '济南管道',
  550. code: 'JNGD',
  551. type: 'pipeline',
  552. visible: true,
  553. layerList: [
  554. {
  555. id: 'areaLayer',
  556. code: 'areaLayer',
  557. name: '区域图层',
  558. children: [],
  559. },
  560. {
  561. id: 'lineLayer',
  562. code: 'lineLayer',
  563. name: '管道图层',
  564. children: [],
  565. },
  566. {
  567. id: 'personLayer',
  568. code: 'personLayer',
  569. name: '人员图层',
  570. children: [],
  571. },
  572. ],
  573. }
  574. const GY_STATIONS = [
  575. {
  576. id: '784104499768729600',
  577. name: '托克托',
  578. code: 'TKT',
  579. buildId: '784102618438836224',
  580. positioningBuildId: '100001',
  581. direction: 'right',
  582. position: [106.6263209022603, 26.650585399041464, 1.4657059185197159],
  583. layers: ['周界', '泄漏', '摄像头'],
  584. },
  585. {
  586. id: '784131093203787776',
  587. name: '托克托压气站',
  588. code: 'TKT',
  589. buildId: '784102618438836224',
  590. positioningBuildId: '100001',
  591. direction: 'right',
  592. position: [106.6263209022603, 26.650585399041464, 1.4657059185197159],
  593. layers: ['周界', '泄漏', '摄像头'],
  594. },
  595. ]
  596. const GY_ZYQS = [
  597. {
  598. id: '784131018197049344',
  599. name: '托克托作业区',
  600. code: 'TKTZYQ',
  601. buildId: '654044537953460225',
  602. },
  603. ]
  604. /**
  605. * 首页展示激光云台视频窗口配置
  606. * 已启用
  607. * 后续改成接口获取
  608. */
  609. const GY_JGYT_CONFIG = [
  610. {
  611. id: '1',
  612. name: '托克托作业区',
  613. children: [
  614. {
  615. id: '101',
  616. name: '托克托压气站',
  617. children: [
  618. {
  619. id: '786542179467141120',
  620. name: '激光检测1',
  621. ndTag: 'DY_Leak_PTZ_Concn',
  622. },
  623. {
  624. id: '786542180738015232',
  625. name: '激光检测2',
  626. ndTag: 'DY_Leak_PTZ_Concn',
  627. },
  628. ],
  629. },]
  630. }]
  631. /**
  632. * mqtt地址
  633. * 判断是否被iframe嵌套
  634. * 判断是否https
  635. */
  636. const VUE_APP_BASE_WS = () => {
  637. // 暂时没有https需求,强制写死
  638. // return "ws://" + window.location.host + BASE_URL;
  639. if (window.self !== window.top) {
  640. // 在iframe中,使用iframe的地址
  641. const str = window.self.location.protocol === 'https:' ? 'wss://' : 'ws://'
  642. return str + window.self.location.host + BASE_URL
  643. } else {
  644. // 不在iframe中,使用当前地址
  645. const str = window.location.protocol === 'https:' ? 'wss://' : 'ws://'
  646. return str + window.location.host + BASE_URL
  647. }
  648. }