index.vue 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738
  1. <!-- eslint-disable vue/multi-word-component-names -->
  2. <template>
  3. <div class="spray-wrapper">
  4. <BasicMonitoring
  5. main-title="智能注氮管控系统"
  6. :main-config="{
  7. operations: [],
  8. configs: configs,
  9. }"
  10. monitor-type="nitrogenMonitor"
  11. :monitor-history-config="{}"
  12. :handler-history-config="{}"
  13. :alarm-history-config="{}"
  14. strtype="sys_nitrogen"
  15. >
  16. <template #default="{ monitorActive }">
  17. <div v-show="monitorActive" id="nitrogen2D" class="w-full h-full flex justify-center items-center overflow-hidden">
  18. <!-- <a-spin :spinning="loading" /> -->
  19. <!-- <div id="sprayCSS3D" v-show="!loading" style="width: 100%; height: 100%; position: absolute; overflow: hidden; pointer-events: none"> </div> -->
  20. <!-- <div class="nitrogen2D"></div> -->
  21. <ModelTip :statusData="readData" />
  22. </div>
  23. </template>
  24. </BasicMonitoring>
  25. </div>
  26. </template>
  27. <script setup lang="ts">
  28. import { onMounted, ref } from 'vue';
  29. import BasicMonitoring from '/@/components/vent/BasicMonitoring.vue';
  30. import { useInitConfigs, useInitPage } from '../../home/configurable/hooks/useInit';
  31. // import { nitrogenConfigs } from './nitrogen.data';
  32. import ModelTip from './model-tip.vue';
  33. import { list } from './nitorgen.api';
  34. // const loading = ref(false);
  35. const { configs, fetchConfigs } = useInitConfigs();
  36. const { updateEnhancedConfigs } = useInitPage('智能注氮管控系统');
  37. const readData = ref({});
  38. function refresh() {
  39. // fetchConfigs(isDataRealTime.value ? 'vent_realtime' : 'vent').then(() => {
  40. fetchConfigs('nitrogen').then(() => {
  41. // configs.value = nitrogenConfigs;
  42. updateEnhancedConfigs(configs.value);
  43. getDataSource();
  44. // list({ devicetype: 'nitrogen', pagetype: 'normal' }).then((res) => {
  45. // const res1 = {
  46. // cmd: 'monitordata',
  47. // msgTxt: [
  48. // {
  49. // datalist: [
  50. // {
  51. // msgType: null,
  52. // deviceID: '2014560252506329090',
  53. // strname: '制氮机',
  54. // strinstallpos: '制氮机',
  55. // fsectarea: 'null',
  56. // planedVa: null,
  57. // regulation: null,
  58. // stationname: '制氮机1#PLC',
  59. // stationtype: 'plc',
  60. // deviceType: 'nitrogen_auto',
  61. // typeName: '制氮机',
  62. // netStatus: 1,
  63. // warnFlag: 0,
  64. // warnLevel: 0,
  65. // warnLevel_str: '正常',
  66. // syswarnLevel: null,
  67. // syswarnLevel_str: null,
  68. // syswarnLevel_des: null,
  69. // warnTime: null,
  70. // readTime: '2026-02-09 10:27:25',
  71. // warnDes: '',
  72. // frontGateOpenCtrl: null,
  73. // rearGateOpenCtrl: null,
  74. // readData: {
  75. // Fan2ZdjJT: '0',
  76. // Fan1LgqJcqGz: '0',
  77. // Fan2jqwd: '27.98',
  78. // Fan2GdWdGGz: '0',
  79. // Fan1GdWdGGz: '0',
  80. // Fan2dqyl: '1.04',
  81. // Fan2tjf: '0.00',
  82. // Fan1SwjQx: '1',
  83. // Fan1JrqJcqGz: '0',
  84. // Fan2yqtyl: '1.14',
  85. // Fan2hjwd: '17.30',
  86. // Fan1JxgUab: '10.37',
  87. // Fan1LnfsJcqGz: '0',
  88. // Fan2KyjStatus_str: '运行',
  89. // Fan2JqWdGGz: '0',
  90. // Fan1JqWdGGz: '0',
  91. // Fan1Lgjpqyl: '0.71',
  92. // Fan1jrqTemp: '47.70',
  93. // Fan1CxgCos: '0.00',
  94. // Fan1gdyl: '0.69',
  95. // Fan1CxgUca: '10.34',
  96. // Fan2KyjStatus: '1',
  97. // Fan2JCxgp: '420.75',
  98. // Fan1XxCw: '0',
  99. // Fan1Yxzt: '0',
  100. // Fan1CxgUbc: '10.34',
  101. // Fan2CxgUab: '10.08',
  102. // Fan2Cxgp: '417.47',
  103. // Fan1GdYlGGz: '0',
  104. // Fan1yxsj: '0.00',
  105. // Fan2yqtTemp: '78.90',
  106. // Fan2kyjTemp: '1.12',
  107. // Fan1xnyq: '-0.04',
  108. // Fan2JxgLc: '27.97',
  109. // Fan2JxgLb: '27.96',
  110. // Fan1pqwd: '23.43',
  111. // Fan1JCxgF: '0.81',
  112. // Fan2dqwd: '38.06',
  113. // Fan1JCxgQ: '125.71',
  114. // Fan1jqyl: '0.72',
  115. // Fan2CxgUb: '5.80',
  116. // Fan2Yxzt_str: '运行',
  117. // Fan2JCxgQ: '124.16',
  118. // Fan2CxgUc: '5.81',
  119. // Fan2dqnd: '97.48',
  120. // Fan2JrqWdGGz: '0',
  121. // Fan1CxgUab: '10.34',
  122. // Fan2CxgF: '0.00',
  123. // Fan2JrqJcqGz: '0',
  124. // Fan2CxgQ: '217.04',
  125. // Fan2JxgLa: '28.29',
  126. // Fan1KyjStatus_str: '停止',
  127. // Fan1lxyc: '0.01',
  128. // Fan1Lntemp: '10.70',
  129. // Fan1zyyl: '0.00',
  130. // Fan2kyjdl: '0.00',
  131. // Fan1ll: '1226.02',
  132. // Fan2JCxgF: '0.86',
  133. // Fan2Lntemp: '40.80',
  134. // Fan1JCxgp: '351.93',
  135. // Fan1gdwd: '46.09',
  136. // Fan2CxgUa: '5.82',
  137. // Fan2JxgUb: '5.80',
  138. // Fan1ljll: '35308516.00',
  139. // Fan2JtZgz: '0',
  140. // Fan2JxgUa: '5.80',
  141. // Fan2CxgLa: '28.36',
  142. // Fan2CxgLb: '24.36',
  143. // Fan2CxgLc: '28.24',
  144. // Fan1ZdjJT: '0',
  145. // Fan2JxgUc: '5.81',
  146. // Fan1ckyl: '0.72',
  147. // Fan2GdYlGGz: '0',
  148. // Fan1BrJcqGz: '0',
  149. // sign: '0',
  150. // Fan1hjwd: '11.03',
  151. // Fan1Cxgp: '0.00',
  152. // Fan1JrqWdGGz: '0',
  153. // Fan2OHigh: '0',
  154. // Fan2JxgUbc: '10.04',
  155. // Fan1ZfTepm: '16.70',
  156. // Fan1JxgUb: '5.98',
  157. // Fan1JxgUc: '5.97',
  158. // Fan1JxgUa: '5.99',
  159. // Fan1JtZgz: '0',
  160. // Fan1jqwd: '25.60',
  161. // Fan1dqyl: '0.65',
  162. // Fan1Yxzt_str: '停止',
  163. // Fan2JxgCos: '0.00',
  164. // Fan2ll: '1279.52',
  165. // Fan1KyjStatus: '0',
  166. // Fan2yxsj: '0.00',
  167. // Fan2JxgUca: '10.06',
  168. // Fan2Yxzt: '1',
  169. // Fan2BrJcqGz: '0',
  170. // Fan1CxgUc: '5.96',
  171. // Fan1CxgUb: '5.96',
  172. // Fan1CxgUa: '5.98',
  173. // Fan2gdyl: '1.08',
  174. // Fan1LgjGyBh: '0',
  175. // Fan2XxCw: '0',
  176. // Fan1OHigh: '0',
  177. // Fan1kyjTemp: '0.72',
  178. // Fan2lxyc: '0.01',
  179. // Fan2LgqJcqGz: '0',
  180. // Fan1dqnd: '0.00',
  181. // Fan1LgjZhGz: '0',
  182. // Fan1kyjdl: '0.00',
  183. // Fan1JxgCos: '0.00',
  184. // Fan2zyyl: '0.66',
  185. // Fan2LgjZhGz: '0',
  186. // Fan2CxgCos: '0.89',
  187. // Fan2jqyl: '1.12',
  188. // Fan1CxgLc: '0.00',
  189. // Fan1CxgLb: '0.00',
  190. // Fan2xnyq: '119.36',
  191. // Fan1CxgLa: '0.00',
  192. // Fan2pqwd: '20.23',
  193. // Fan2CxgUbc: '10.05',
  194. // Fan2LgjDyBh: '0',
  195. // Fan1dqwd: '35.07',
  196. // Fan1LgjDyBh: '0',
  197. // Fan1JxgUca: '10.35',
  198. // Fan1yqtyl: '0.00',
  199. // Fan2jrqTemp: '51.50',
  200. // Fan2Lgjpqyl: '1.11',
  201. // Fan1CxgF: '0.00',
  202. // Fan1SwjQx_str: '打开',
  203. // Fan2ckyl: '1.12',
  204. // Fan2ljll: '13907482.00',
  205. // tTime: '2026-02-09 10:27:23',
  206. // Fan1CxgQ: '0.00',
  207. // Fan1JxgLc: '24.02',
  208. // Fan2ZfTepm: '6.10',
  209. // Fan1JxgLa: '24.09',
  210. // Fan1JxgLb: '24.16',
  211. // Fan2LnfsJcqGz: '0',
  212. // Fan2JxgUab: '10.04',
  213. // Fan1tjf: '-0.05',
  214. // Fan2LgjGyBh: '0',
  215. // Fan2CxgUca: '10.07',
  216. // isRun: '-2',
  217. // Fan1yqtTemp: '11.20',
  218. // Fan1JxgUbc: '10.36',
  219. // Fan2gdwd: '46.22',
  220. // },
  221. // readDataDes: null,
  222. // limits: null,
  223. // summaryHour: [],
  224. // summaryDay: [],
  225. // history: [],
  226. // dayhistory: [],
  227. // totalInfo: null,
  228. // sign: null,
  229. // cameras: [],
  230. // links: [],
  231. // avgParam: {},
  232. // other1: null,
  233. // other2: null,
  234. // other3: null,
  235. // remarkInfo: null,
  236. // linkInfo: null,
  237. // addrIndex: null,
  238. // warnLogNotOkCount: 0,
  239. // otherInfo: null,
  240. // orderNum: 0,
  241. // testFlag: 0,
  242. // strRemark: null,
  243. // isAutosync: null,
  244. // isUnderground: '0',
  245. // groupNumber: '',
  246. // },
  247. // ],
  248. // avginfo: {
  249. // warnFlag: {
  250. // value: 0,
  251. // },
  252. // },
  253. // typeName: '制氮机',
  254. // type: 'nitrogen_auto',
  255. // },
  256. // {
  257. // subtype: 'sys_nitrogen',
  258. // datalist: [
  259. // {
  260. // msgType: null,
  261. // deviceID: '2014623636824182785',
  262. // strname: '制氮系统',
  263. // strinstallpos: '制氮系统',
  264. // fsectarea: 'null',
  265. // planedVa: null,
  266. // regulation: null,
  267. // stationname: null,
  268. // stationtype: null,
  269. // deviceType: 'sys_nitrogen',
  270. // typeName: '注氮',
  271. // netStatus: 1,
  272. // warnFlag: 0,
  273. // warnLevel: 0,
  274. // warnLevel_str: '正常',
  275. // syswarnLevel: null,
  276. // syswarnLevel_str: null,
  277. // syswarnLevel_des: null,
  278. // warnTime: null,
  279. // readTime: '2026-02-09 10:27:25',
  280. // warnDes: null,
  281. // frontGateOpenCtrl: null,
  282. // rearGateOpenCtrl: null,
  283. // readData: {
  284. // sign: '0',
  285. // tTime: '2026-02-09 10:27:20',
  286. // isRun: '-2',
  287. // },
  288. // readDataDes: null,
  289. // limits: null,
  290. // summaryHour: [],
  291. // summaryDay: [],
  292. // history: [],
  293. // dayhistory: [],
  294. // totalInfo: {
  295. // unitNum: 0,
  296. // },
  297. // sign: null,
  298. // cameras: [],
  299. // links: [],
  300. // avgParam: {},
  301. // other1: null,
  302. // other2: null,
  303. // other3: null,
  304. // remarkInfo: null,
  305. // linkInfo: null,
  306. // addrIndex: null,
  307. // warnLogNotOkCount: 0,
  308. // otherInfo: null,
  309. // orderNum: null,
  310. // testFlag: null,
  311. // strRemark: null,
  312. // isAutosync: null,
  313. // coalThickness: '',
  314. // coalSeamThick: '',
  315. // faceRetM3: '',
  316. // totalDrillingType: '',
  317. // coalProduction: '',
  318. // drillinFootage: '',
  319. // strikelength: '',
  320. // totalRetM3: '',
  321. // useM3Perent: '',
  322. // ventRationality: '',
  323. // cuteyeLength: '',
  324. // totalGasVolume: '',
  325. // gasLevel: '',
  326. // supportNum: '',
  327. // totalComplteQuantity: '',
  328. // stepIn1: '',
  329. // stepIn2: '',
  330. // totalOutM3: '',
  331. // coalReserves: '',
  332. // faceIntM3: '',
  333. // cumulativeScalar: '',
  334. // totalIntM3: '',
  335. // totalAverageRate: '',
  336. // equalarea: '',
  337. // coalSpoCha: '',
  338. // thickness: '',
  339. // unitNum: '',
  340. // meterCount1: '',
  341. // meterCount2: '',
  342. // goafName: '',
  343. // meterCount3: '',
  344. // meterCount4: '',
  345. // meterCount5: '',
  346. // faceLen: '',
  347. // linkEmptyFlag: '',
  348. // totalDate: '',
  349. // stepOut1: '',
  350. // mainCoalseam: '',
  351. // drillingType: '',
  352. // coalSeam: '',
  353. // stepOut2: '',
  354. // pressureRationality1: '',
  355. // pressureRationality2: '',
  356. // userM3: '',
  357. // gasReserves: '',
  358. // linkEmpty: '',
  359. // beginDrainageDate: '',
  360. // goafManage: '',
  361. // dischargeGasEmission: '',
  362. // useM3: '',
  363. // ventCapacity: '',
  364. // stepMid2: '',
  365. // stepMid1: '',
  366. // zoneRationality1: '',
  367. // manageCoalMethod: '',
  368. // zoneRationality2: '',
  369. // miningArea: '',
  370. // minFirePeriod: '',
  371. // cumulativeFlow: '',
  372. // scalarRecognition: '',
  373. // coalSeamAngle: '',
  374. // coalseam: '',
  375. // totalPlanM3: '',
  376. // facePlanM3: '',
  377. // coalSeamThickness: '',
  378. // workingFaceLengeh: '',
  379. // workingFaceHeight: '',
  380. // originalGasContent: '',
  381. // workingFaceQieyanLength: '',
  382. // workingFaceZouxiangLength: '',
  383. // panel: '',
  384. // leakage: '',
  385. // flength: '',
  386. // },
  387. // ],
  388. // typeName: '综合监测系统',
  389. // type: 'sys',
  390. // },
  391. // ],
  392. // };
  393. // });
  394. });
  395. }
  396. async function getDataSource() {
  397. const res = await list({ devicetype: 'nitrogen', pagetype: 'normal' });
  398. let dataSource: any = [];
  399. dataSource = res.msgTxt[0] && res.msgTxt[0].datalist ? res.msgTxt[0].datalist[0] : {};
  400. if (dataSource) {
  401. readData.value = Object.assign(dataSource, dataSource.readData);
  402. }
  403. }
  404. function initInterval() {
  405. setInterval(() => {
  406. refresh();
  407. }, 60000);
  408. }
  409. onMounted(() => {
  410. refresh();
  411. initInterval();
  412. });
  413. </script>
  414. <style lang="less" scoped>
  415. .spray-wrapper {
  416. width: 100%;
  417. height: 100%;
  418. }
  419. #spray3D {
  420. pointer-events: all;
  421. }
  422. .spray-wrapper :deep(.list-item_L .list-item__icon_L) {
  423. background-image: url('/@/assets/images/home-container/configurable/minehome/list-icon-file.png');
  424. }
  425. .spray-wrapper :deep(.list-item_N:nth-child(1)) {
  426. background-image: url('/@/assets/images/home-container/configurable/minehome/list-bg-n5.png');
  427. }
  428. .spray-wrapper :deep(.list-item_N:nth-child(2)) {
  429. background-image: url('/@/assets/images/home-container/configurable/minehome/list-bg-n6.png');
  430. }
  431. </style>