closeWall.copy.vue 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348
  1. <template>
  2. <div class="closeWall">
  3. <!-- <div class="top-area">
  4. <internalFireTop1 :internalFireTopData="internalFireTopData" :temperatureData="temperatureData">
  5. </internalFireTop1>
  6. </div>
  7. <div class="content">
  8. <internalFireBot1 :internalFireBotData="internalFireBotData"></internalFireBot1>
  9. </div> -->
  10. </div>
  11. </template>
  12. <script lang="ts" setup>
  13. // import { ref, reactive, watch, defineProps, inject, h } from 'vue';
  14. // import echartLine1 from './echartLine1.vue';
  15. // import warnZb from './warnZb.vue';
  16. // import PredictionCurve from './predictionCurve.vue';
  17. // import internalFireBot1 from './internal-fire-bot1.vue';
  18. // import { getMaxY, getMinY } from '../common.data'
  19. // // import { deviceControlApi } from '/@/api/vent/index';
  20. // import internalFireTop1 from './internal-fire-top1.vue'
  21. // let props = defineProps({
  22. // listData: Object,
  23. // });
  24. // const globalConfig = inject('globalConfig');
  25. // const shownChart = ref('default');
  26. // let maxY = ref<any>(0);
  27. // let minY = ref<any>(0)
  28. // // let selectSj = ref<any[]>([]);
  29. // let internalFireTopData = ref<any[]>([])
  30. // let temperatureData = ref(0)
  31. // let internalFireBotData = ref<any[]>([])
  32. // // let selectList = reactive<any[]>([]);
  33. // let widthV = ref('75%');
  34. // let heightV = ref('80%');
  35. // let coordDw = ref<any[]>([31, 62, 110]);
  36. // let widthCanvas = ref(562);
  37. // let heightCanvas = ref(316);
  38. // //设备连接状态
  39. // let netStatus = ref(0);
  40. // //当前激活密闭参数类型
  41. // let type = ref('O₂');
  42. // let echartDataSg1 = reactive({
  43. // xData: [],
  44. // yData: [],
  45. // lengedData: 'O₂',
  46. // lengedDataName: '(%)',
  47. // });
  48. // let echartDataSgList = reactive<any[]>([]);
  49. // function getmax() {
  50. // getMaxY(echartDataSg1.yData)
  51. // getMinY(echartDataSg1.yData)
  52. // // maxY.value = echartDataSg1.yData.reduce((acr, cur) => {
  53. // // return acr > cur ? acr : cur;
  54. // // });
  55. // // maxY.value =
  56. // // maxY.value.toString().indexOf('.') == -1 ? maxY.value.toString() : maxY.value.toString().substring(0, maxY.value.toString().indexOf('.'));
  57. // // if (maxY.value.length < 2 && Number(maxY.value) < 1) {
  58. // // maxY.value = 1;
  59. // // } else if (maxY.value.length < 2 && Number(maxY.value) >= 1) {
  60. // // maxY.value = 10;
  61. // // } else if (maxY.value.length < 3) {
  62. // // maxY.value = (Number(maxY.value[0]) + 1) * 10;
  63. // // } else if (maxY.value.length < 4) {
  64. // // maxY.value = (Number(maxY.value[0]) + 1) * 100;
  65. // // } else if (maxY.value.length < 5) {
  66. // // maxY.value = (Number(maxY.value[0]) + 1) * 1000;
  67. // // } else if (maxY.value.length < 6) {
  68. // // maxY.value = (Number(maxY.value[0]) + 1) * 10000;
  69. // // }
  70. // }
  71. // //密闭参数选项切换
  72. // function btnClick(item, ind) {
  73. // // debugger;
  74. // activeIndex.value = ind;
  75. // type.value = item.label;
  76. // echartDataSg1.xData.length = 0;
  77. // echartDataSg1.yData.length = 0;
  78. // echartDataSg1.lengedData = type.value;
  79. // echartDataSg1.lengedDataName = item.dw;
  80. // const data = selectSj.value.filter((v) => v.strinstallpos == selectData.value)[0];
  81. // switch (type.value) {
  82. // case 'O₂':
  83. // echartDataSgList.forEach((el) => {
  84. // echartDataSg1.xData.push(el.time);
  85. // echartDataSg1.yData.push(el.o2val);
  86. // });
  87. // curveConfig.value = {
  88. // id: 'o2',
  89. // label: 'O₂',
  90. // time: echartDataSg1.xData,
  91. // data: [
  92. // // 氧气预测曲线
  93. // data.avgParam?.avg_o2_value || 0,
  94. // data.avgParam?.max_o2_value || 0,
  95. // data.avgParam?.min_o2_value || 0,
  96. // // data.readData?.o2val,
  97. // ],
  98. // monitorData: echartDataSg1.yData,
  99. // };
  100. // getmax();
  101. // break;
  102. // case 'C₂H₄':
  103. // echartDataSgList.forEach((el) => {
  104. // echartDataSg1.xData.push(el.time);
  105. // echartDataSg1.yData.push(el.ch2val);
  106. // });
  107. // curveConfig.value = {
  108. // id: 'ch2',
  109. // label: 'C₂H₄',
  110. // time: echartDataSg1.xData,
  111. // data: [
  112. // // 预测曲线
  113. // data.avgParam?.avg_c2h4_value || 0,
  114. // data.avgParam?.max_c2h4_value || 0,
  115. // data.avgParam?.min_c2h4_value || 0,
  116. // // data.readData?.ch2val,
  117. // ],
  118. // monitorData: echartDataSg1.yData,
  119. // };
  120. // getmax();
  121. // break;
  122. // case 'CO':
  123. // echartDataSgList.forEach((el) => {
  124. // echartDataSg1.xData.push(el.time);
  125. // echartDataSg1.yData.push(el.coval);
  126. // });
  127. // curveConfig.value = {
  128. // id: 'co',
  129. // label: 'CO',
  130. // time: echartDataSg1.xData,
  131. // data: [
  132. // // 预测曲线
  133. // data.avgParam?.avg_co_value || 0,
  134. // data.avgParam?.max_co_value || 0,
  135. // data.avgParam?.min_co_value || 0,
  136. // // data.readData?.coval,
  137. // ],
  138. // monitorData: echartDataSg1.yData,
  139. // };
  140. // getmax();
  141. // break;
  142. // case 'CH₄':
  143. // echartDataSgList.forEach((el) => {
  144. // echartDataSg1.xData.push(el.time);
  145. // echartDataSg1.yData.push(el.gasval);
  146. // });
  147. // curveConfig.value = {
  148. // id: 'ch',
  149. // label: 'CH₄',
  150. // time: echartDataSg1.xData,
  151. // data: [
  152. // // 预测曲线
  153. // data.avgParam?.avg_ch4_value || 0,
  154. // data.avgParam?.max_ch4_value || 0,
  155. // data.avgParam?.min_ch4_value || 0,
  156. // // data.readData?.chval,
  157. // ],
  158. // monitorData: echartDataSg1.yData,
  159. // };
  160. // getmax();
  161. // break;
  162. // case 'CO₂':
  163. // echartDataSgList.forEach((el) => {
  164. // echartDataSg1.xData.push(el.time);
  165. // echartDataSg1.yData.push(el.co2val);
  166. // });
  167. // curveConfig.value = {
  168. // id: 'co2',
  169. // label: 'CO₂',
  170. // time: echartDataSg1.xData,
  171. // data: [
  172. // // 预测曲线
  173. // data.avgParam?.avg_co2_value || 0,
  174. // data.avgParam?.max_co2_value || 0,
  175. // data.avgParam?.min_co2_value || 0,
  176. // // data.readData?.co2val,
  177. // ],
  178. // monitorData: echartDataSg1.yData,
  179. // };
  180. // getmax();
  181. // break;
  182. // case 'C₂H₂':
  183. // echartDataSgList.forEach((el) => {
  184. // echartDataSg1.xData.push(el.time);
  185. // echartDataSg1.yData.push(el.chval);
  186. // });
  187. // curveConfig.value = {
  188. // id: 'gas',
  189. // label: 'C₂H₂',
  190. // time: echartDataSg1.xData,
  191. // data: [
  192. // // 预测曲线
  193. // data.avgParam?.avg_c2h2_value || 0,
  194. // data.avgParam?.max_c2h2_value || 0,
  195. // data.avgParam?.min_c2h2_value || 0,
  196. // // data.readData?.gasval,
  197. // ],
  198. // monitorData: echartDataSg1.yData,
  199. // };
  200. // getmax();
  201. // break;
  202. // }
  203. // }
  204. // /** 预测曲线的配置,数据分别为平均、最大、最小、当前值 */
  205. // const curveConfig = ref<any>({ id: '0', label: '', time: new Date(), data: [0, 0, 0, 0] });
  206. // watch(
  207. // () => props.listData,
  208. // (val: any) => {
  209. // echartDataSg1.xData.length = 0;
  210. // echartDataSg1.yData.length = 0;
  211. // echartDataSgList.length = 0;
  212. // // selectList.length = 0;
  213. // if (JSON.stringify(val) === '{}') return;
  214. // internalFireTopData.value = val.bundletube
  215. // temperatureData.value = val.temperature[0] ? val.temperature[0].readData.temperature : '--'
  216. // internalFireBotData.value=val.bundletube
  217. // if (val.bundletube.length != 0) {
  218. // // selectSj.value = val.bundletube;
  219. // netStatus.value = dataVal['netStatus'];
  220. // echartDataSgList = dataVal.history;
  221. // btnClick(
  222. // {
  223. // label: type.value,
  224. // dw: echartDataSg1.lengedDataName,
  225. // },
  226. // activeIndex.value
  227. // );
  228. // // dataVal.history.forEach((v) => {
  229. // // echartDataSg1.xData.push(v.time);
  230. // // if (echartDataSg1.lengedData == 'O₂') {
  231. // // echartDataSg1.yData.push(v.o2val);
  232. // // } else if (echartDataSg1.lengedData == 'C₂H₄') {
  233. // // echartDataSg1.yData.push(v.ch2val);
  234. // // } else if (echartDataSg1.lengedData == 'CO') {
  235. // // echartDataSg1.yData.push(v.coval);
  236. // // } else if (echartDataSg1.lengedData == 'CH₄') {
  237. // // echartDataSg1.yData.push(v.chval);
  238. // // } else if (echartDataSg1.lengedData == 'CO₂') {
  239. // // echartDataSg1.yData.push(v.co2val);
  240. // // } else if (echartDataSg1.lengedData == 'C₂H₂') {
  241. // // echartDataSg1.yData.push(v.gasval);
  242. // // }
  243. // // echartDataSgList.push(v);
  244. // // });
  245. // getmax();
  246. // } else {
  247. // mbList[0].nd = '--';
  248. // mbList[1].nd = '--';
  249. // mbList[2].nd = '--';
  250. // mbList[3].nd = '--';
  251. // mbList[4].nd = '--';
  252. // mbList[5].nd = '--';
  253. // mbList.forEach((el) => {
  254. // el.time1 = '--';
  255. // el.address = '--';
  256. // });
  257. // }
  258. // },
  259. // { immediate: true, deep: true }
  260. // );
  261. </script>
  262. <style lang="less" scoped>
  263. @import '/@/design/theme.less';
  264. @{theme-deepblue} {
  265. .closeWall {
  266. --image-bj1: url('/@/assets/images/themify/deepblue/fire/bj1.png');
  267. --image-pj: url('/@/assets/images/themify/deepblue/fire/pj.svg');
  268. --image-1: url('/@/assets/images/themify/deepblue/fire/1.png');
  269. --image-contetn: url('/@/assets/images/themify/deepblue/fire/contetn.png');
  270. --image-2: url('/@/assets/images/themify/deepblue/fire/2.png');
  271. }
  272. }
  273. .closeWall {
  274. --image-bj1: url('/@/assets/images/fire/bj1.png');
  275. --image-pj: url('/@/assets/images/fire/pj.svg');
  276. --image-1: url('/@/assets/images/fire/1.png');
  277. --image-contetn: url('/@/assets/images/fire/contetn.png');
  278. --image-2: url('/@/assets/images/fire/2.png');
  279. --border-image-2: linear-gradient(to bottom, transparent, #024688, transparent);
  280. width: 100%;
  281. height: 100%;
  282. padding: 20px;
  283. box-sizing: border-box;
  284. .top-area {
  285. width: 100%;
  286. height: 17%;
  287. margin-bottom: 20px;
  288. background: var(--image-bj1) no-repeat center;
  289. background-size: 100% 100%;
  290. }
  291. .content {
  292. width: 100%;
  293. height: calc(83% - 20px);
  294. padding: 10px;
  295. background: var(--image-bj1) no-repeat center;
  296. background-size: 100% 100%;
  297. box-sizing: border-box;
  298. }
  299. }
  300. :deep(.zxm-select:not(.zxm-select-customize-input) .zxm-select-selector) {
  301. border: 1px solid #3ad8ff77 !important;
  302. background-color: #ffffff00 !important;
  303. }
  304. :deep(.zxm-select-selection-item) {
  305. color: #fff !important;
  306. }
  307. :deep(.zxm-select-arrow) {
  308. color: #fff;
  309. }
  310. </style>