iframe4.vue 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230
  1. <template>
  2. <div class="iframe4">
  3. <!-- <iframe src="http://10.75.17.10/doc/page/preview.asp" frameborder="0" class="iframe-2"></iframe> -->
  4. <div class="iframe-1">
  5. <div class="iframe4-title" @click="jumpUrl('/save/personnel')">
  6. 人员健康
  7. </div>
  8. <personnel></personnel>
  9. </div>
  10. <div class="iframe-2">
  11. <div class="iframe4-title">视频监视</div>
  12. <div
  13. class="videoDiv"
  14. v-for="(pItem, pIndex) in videoArray"
  15. :key="pIndex"
  16. width="95%"
  17. height="48vh"
  18. @click="openVideoDialog(pItem)"
  19. >
  20. <div class="mask"></div>
  21. <!-- <iframe :src="pItem.url + pItem.token" /> -->
  22. <hlsVideo :code="pItem.code" :class="pItem.class" />
  23. </div>
  24. </div>
  25. <div class="iframe-3">
  26. <div
  27. class="iframe4-title"
  28. @click="openUrl('http://192.168.1.52/webiui/#/online')"
  29. >
  30. 智能安全帽
  31. </div>
  32. <iframe
  33. src="http://192.168.1.52/webiui/#/online"
  34. frameborder="0"
  35. ></iframe>
  36. </div>
  37. <div class="iframe-4">
  38. <div class="iframe4-title">数字孪生</div>
  39. <div class="iframe-4-body"></div>
  40. </div>
  41. <el-dialog
  42. top="50px"
  43. v-model="showVideoDialog"
  44. width="80vw"
  45. :destroy-on-close="true"
  46. :custom-class="videoDialogClass"
  47. >
  48. <!-- <iframe
  49. class="videoBoxiframe"
  50. width="100%"
  51. height="600px"
  52. :src="dialogVideoUrl"
  53. /> -->
  54. <hlsVideo
  55. class="videoBoxiframe"
  56. width="95%"
  57. height="800px"
  58. :code="dialogVideoUrl"
  59. />
  60. </el-dialog>
  61. </div>
  62. </template>
  63. <script>
  64. import personnel from "./personnel.vue";
  65. import PanelSand from "@com/coms/panel/panel-sand.vue";
  66. import hlsVideo from "../SandTable/component/hls.vue";
  67. export default {
  68. setup() {},
  69. components: { personnel, PanelSand, hlsVideo },
  70. data() {
  71. return {
  72. showVideoDialog: false,
  73. dialogVideoUrl: "",
  74. // videoArray: [
  75. // {
  76. // url: "http://10.155.32.4:9984/ws.html",
  77. // token: "?token=SBQ_FDC_SC&autoplay=true",
  78. // switch: true,
  79. // },
  80. // {
  81. // url: "http://10.155.32.4:9984/ws.html",
  82. // token: "?token=NSS_FDC_SC&autoplay=true",
  83. // switch: true,
  84. // },
  85. // {
  86. // url: "http://10.155.32.4:9984/ws.html",
  87. // token: "?token=QS_FDC_SC&autoplay=true",
  88. // switch: true,
  89. // },
  90. // {
  91. // url: "http://10.155.32.4:9984/ws.html",
  92. // token: "?token=MHS_FDC_SC&autoplay=true",
  93. // switch: true,
  94. // },
  95. // {
  96. // url: "http://10.155.32.4:9984/ws.html",
  97. // token: "?token=XS_FDC_SC&autoplay=true",
  98. // switch: true,
  99. // },
  100. // {
  101. // url: "http://10.155.32.4:9984/ws.html",
  102. // token: "?token=PL_GDC_SC&autoplay=true",
  103. // switch: true,
  104. // },
  105. // ],
  106. videoArray: [
  107. { code: "SBQ_FDC_SC", class: "", switch: true },
  108. { code: "NSS_FDC_SC", class: "", switch: true },
  109. { code: "QS_FDC_SC", class: "", switch: true },
  110. { code: "MHS_FDC_SC", class: "", switch: true },
  111. { code: "XS_FDC_SC", class: "", switch: true },
  112. { code: "PL_GDC_SC", class: "", switch: true },
  113. ],
  114. };
  115. },
  116. methods: {
  117. openVideoDialog(item) {
  118. // if (item.url && item.token) {
  119. // this.dialogVideoUrl = item.url + item.token;
  120. // this.showVideoDialog = true;
  121. // }
  122. if (item.code) {
  123. this.dialogVideoUrl = item.code;
  124. this.showVideoDialog = true;
  125. }
  126. },
  127. jumpUrl(url) {
  128. this.$router.push(url);
  129. },
  130. openUrl(url) {
  131. window.open(url);
  132. },
  133. },
  134. created() {},
  135. };
  136. </script>
  137. <style lang="less">
  138. .iframe4 {
  139. background: url(../../assets/background-iframe4.png) no-repeat;
  140. background-size: 100% 100%;
  141. background-position-y: -5.1vh;
  142. display: flex;
  143. flex-wrap: wrap;
  144. height: 98vh;
  145. .iframe-1,
  146. .iframe-2,
  147. .iframe-3,
  148. .iframe-4 {
  149. width: 36.8vw;
  150. height: 37.31vh;
  151. }
  152. .iframe4-title {
  153. position: absolute;
  154. text-align: center;
  155. width: 36.8vw;
  156. margin-top: -3.3vh;
  157. text-align: center;
  158. font-size: 14pt;
  159. color: #b3bdc0;
  160. cursor: pointer;
  161. }
  162. .iframe-1 {
  163. margin-left: 6.5vw;
  164. margin-top: 5.3vh;
  165. .personnel {
  166. height: calc(36.6vh);
  167. .personnel-box-item {
  168. width: 11.5vw;
  169. }
  170. }
  171. }
  172. .iframe-2 {
  173. flex: 0 0 36.69vw;
  174. margin-left: 11.9vw;
  175. margin-top: 5.5vh;
  176. position: relative;
  177. .videoDiv {
  178. display: flex;
  179. height: 18.2vh;
  180. width: 12.2vw;
  181. float: left;
  182. position: relative;
  183. iframe {
  184. height: 18.2vh;
  185. width: 12.2vw;
  186. // float: left;
  187. }
  188. .mask {
  189. cursor: pointer;
  190. flex: 0 0 100%;
  191. position: absolute;
  192. left: 0;
  193. top: 0;
  194. width: 100%;
  195. height: 100%;
  196. z-index: 5;
  197. }
  198. }
  199. }
  200. .iframe-3,
  201. .iframe-4 {
  202. margin-top: -2.2vh;
  203. height: calc(36.5vh);
  204. width: 36.77vw;
  205. }
  206. .iframe-3 {
  207. margin-left: 6.5vw;
  208. // background-color: seashell;
  209. iframe {
  210. height: 100%;
  211. width: 100%;
  212. }
  213. }
  214. .el-dialog {
  215. background: rgba(18, 29, 28, 0.95);
  216. }
  217. .iframe-4 {
  218. margin-left: 11.9vw;
  219. .iframe-4-body {
  220. background-image: url("../../assets/3Dszls.png");
  221. // background-color: aqua;
  222. background-size: cover;
  223. height: 100%;
  224. width: 100%;
  225. }
  226. }
  227. }
  228. </style>