MonitorBar.vue 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. <template>
  2. <a-row class="midback-info" :gutter="5">
  3. <div v-for="item in computedConfig" :key="item.class" style="width: 17%; margin-left: 1%; margin-right: 2%; float: left">
  4. <div class="middata" :class="item.class">
  5. <div class="midnumberval">{{ item.value }}</div>
  6. <div class="infotext1">{{ item.label }}</div>
  7. </div>
  8. </div>
  9. <!-- <div style="width: 17%; margin-left: 1%; margin-right: 2%; float: left">
  10. <div class="middata middata2">
  11. <div class="midnumberval">{{ '123' }}</div>
  12. <div class="infotext1">总进风量(m³/min)</div>
  13. </div>
  14. </div>
  15. <div style="width: 17%; margin-left: 1%; margin-right: 2%; float: left">
  16. <div class="middata middata3">
  17. <div class="midnumberval">{{ '123' }}</div>
  18. <div class="infotext1">计划风量(m³/min)</div>
  19. </div>
  20. </div>
  21. <div style="width: 17%; margin-left: 1%; margin-right: 2%; float: left">
  22. <div class="middata middata4">
  23. <div class="midnumberval">{{ '123' }}</div>
  24. <div class="infotext1">通风巷道长度(万m)</div>
  25. </div>
  26. </div>
  27. <div style="width: 17%; margin-left: 1%; margin-right: 2%; float: left">
  28. <div class="middata middata6">
  29. <div class="midnumberval">{{ '123' }}%</div>
  30. <div class="infotext1">有效风量率</div>
  31. </div>
  32. </div> -->
  33. </a-row>
  34. </template>
  35. <script lang="ts" setup>
  36. import { computed } from 'vue';
  37. import { getFormattedText } from '../hooks/helper';
  38. const props = defineProps<{
  39. isDataRealTime: boolean;
  40. data: any;
  41. }>();
  42. const config = computed(() => {
  43. if (props.isDataRealTime) {
  44. return [
  45. {
  46. label: '总回风量(m³/min)',
  47. value: '${midinfo[0].sysdata.zonghuifeng}',
  48. },
  49. {
  50. label: '总进风量(m³/min)',
  51. value: '${midinfo[0].sysdata.zongjinfeng}',
  52. },
  53. {
  54. label: '计划风量(m³/min)',
  55. value: '${midinfo[0].sysdata.xufengliang}',
  56. },
  57. {
  58. label: '通风巷道长度(m)',
  59. // value: '223196',
  60. value: '${midinfo[0].sysinfo.totallength}',
  61. },
  62. {
  63. label: '有效风量率(%)',
  64. value: '${midinfo[0].sysinfo.useM3Perent}',
  65. },
  66. ];
  67. } else {
  68. return [
  69. {
  70. label: '总回风量(m³/min)',
  71. value: '${midinfo[0].sysinfo.info.totalRetM3}',
  72. },
  73. {
  74. label: '总进风量(m³/min)',
  75. value: '${midinfo[0].sysinfo.info.totalIntM3}',
  76. },
  77. {
  78. label: '计划风量(m³/min)',
  79. value: '${midinfo[0].sysinfo.info.totalPlanM3}',
  80. },
  81. {
  82. label: '通风巷道长度(万m)',
  83. value: '${midinfo[0].sysinfo.info.flength}',
  84. },
  85. {
  86. label: '有效风量率(%)',
  87. value: '${midinfo[0].sysinfo.info.useM3Perent}',
  88. },
  89. ];
  90. }
  91. });
  92. const computedConfig = computed(() => {
  93. const data = props.data;
  94. return config.value.map((e, i) => {
  95. return {
  96. label: getFormattedText(data, e.label),
  97. value: getFormattedText(data, e.value),
  98. class: `middata${i}`,
  99. };
  100. });
  101. });
  102. </script>
  103. <style lang="less" scoped>
  104. .middata {
  105. // margin-top: 7px;
  106. padding: 5px 0px 5px 50px;
  107. width: calc(100% - 10px);
  108. height: 65px;
  109. margin-top: 4px;
  110. margin-left: 10px;
  111. margin-bottom: 5px;
  112. background-size: 100% 100%;
  113. }
  114. .middata0 {
  115. background: url('/@/assets/images/home-container/configurable/middata1.png');
  116. }
  117. .middata1 {
  118. background: url('/@/assets/images/home-container/configurable/middata2.png');
  119. }
  120. .middata2 {
  121. background: url('/@/assets/images/home-container/configurable/middata3.png');
  122. }
  123. .middata3 {
  124. background: url('/@/assets/images/home-container/configurable/middata6.png');
  125. }
  126. .middata4 {
  127. background: url('/@/assets/images/home-container/configurable/middata5.png');
  128. }
  129. .middata5 {
  130. background: url('/@/assets/images/home-container/configurable/middata4.png');
  131. }
  132. .midnumberval {
  133. z-index: 4;
  134. padding-top: -10px;
  135. // position: absolute;
  136. // top: -6px;
  137. text-align: center;
  138. font-weight: 600;
  139. color: #f6ca0e;
  140. font-size: 18px;
  141. font-family: 'Microsoft YaHei', Arial;
  142. // font-family: 'UnidreamLED';
  143. }
  144. </style>