home.vue 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343
  1. <template>
  2. <div style="background-color:#000928;width:100%;height:100%">
  3. <div class="header"></div>
  4. <div class="left_content">
  5. <div style="width:93%;height:100%;padding-left:5%">
  6. <div :class="{active:showTable == 8 && menuShow == 0}" @click="showTable = 8;menuShow= 0" class="icon_class">
  7. <div class="icon_content">
  8. <img class="icon_image" src="../assets/picture/home.png"/>
  9. </div>
  10. <div>
  11. <div class="icon_title">首页</div>
  12. </div>
  13. </div>
  14. <div :class="{active:showTable == 6 && menuShow == 0}" class="icon_class" @click="showTable = 6;menuShow= 0">
  15. <div class="icon_content">
  16. <img class="icon_image" src="../assets/picture/scb.png"/>
  17. </div>
  18. <div>
  19. <div class="icon_title">硫含量超标船舶管理</div>
  20. </div>
  21. </div>
  22. <div :class="{active:showTable == 1 && menuShow == 0}" class="icon_class" @click="showTable = 1;menuShow= 0">
  23. <div class="icon_content">
  24. <img class="icon_image" src="../assets/picture/exhaust.png"/>
  25. </div>
  26. <div>
  27. <div class="icon_title">船舶尾气黑烟抓拍</div>
  28. </div>
  29. </div>
  30. <div :class="{active:showTable == 4 && menuShow == 0}" class="icon_class" @click="showTable = 4;menuShow= 0">
  31. <div class="icon_content">
  32. <img class="icon_image" src="../assets/picture/statistics.png"/>
  33. </div>
  34. <div>
  35. <div class="icon_title">统计分析</div>
  36. </div>
  37. </div>
  38. <div class="userDiv" :class="{active:menuShow == 2}" @click="menuShow = 2">
  39. <el-popover
  40. placement="right"
  41. style="opacity: 0"
  42. trigger="click"
  43. >
  44. <div class="userContent">
  45. <div index="1" :class="{menu:showTable == 11}" target="showHere" class="menu_title" @click="showTable =11">
  46. <i class="el-icon-s-custom"></i>
  47. <span> 嗅探设备</span>
  48. </div>
  49. <div index="2" :class="{menu:showTable == 10}" class="menu_title" @click="showTable =10">
  50. <i class="el-icon-user"></i>
  51. <span> 光谱设备</span>
  52. </div>
  53. <div index="3" :class="{menu:showTable == 9}" class="menu_title" @click="showTable =9">
  54. <i class="el-icon-document"></i>
  55. <span> 黑烟设备</span>
  56. </div>
  57. </div>
  58. <div class="icon_class" slot="reference">
  59. <div class="icon_content">
  60. <img class="icon_image" src="../assets/picture/equipment.png"/>
  61. </div>
  62. <div>
  63. <div class="icon_title">设备管理</div>
  64. </div>
  65. </div>
  66. </el-popover>
  67. </div>
  68. <div class="userDiv" :class="{active:menuShow == 1}" @click="menuShow = 1">
  69. <el-popover
  70. placement="right"
  71. style="opacity: 0"
  72. trigger="click"
  73. >
  74. <div class="userContent">
  75. <div index="1" :class="{menu:showTable == 2}" class="menu_title" @click="showTable =2">
  76. <i class="el-icon-s-custom"></i>
  77. <span> 用户管理</span>
  78. </div>
  79. <!-- <div index="2" :class="{menu:showTable == 7}" class="menu_title" @click="showTable =7">-->
  80. <!-- <i class="el-icon-user"></i>-->
  81. <!-- <span> 角色管理</span>-->
  82. <!-- </div>-->
  83. <div index="3" :class="{menu:showTable == 3}" class="menu_title" @click="showTable =3">
  84. <i class="el-icon-document"></i>
  85. <span> 机构管理</span>
  86. </div>
  87. <div index="4" :class="{menu:showTable == 5}" class="menu_title" @click="showTable =5">
  88. <i class="el-icon-setting"></i>
  89. <span> 登录日志</span>
  90. </div>
  91. </div>
  92. <div class="icon_class" slot="reference">
  93. <div class="icon_content">
  94. <img class="icon_image" src="../assets/picture/user.png"/>
  95. </div>
  96. <div>
  97. <div class="icon_title">用户管理</div>
  98. </div>
  99. </div>
  100. </el-popover>
  101. </div>
  102. </div>
  103. </div>
  104. <div style="position: absolute;right: 0;color: #3FC9FD;top: 28rem;font-size: 9rem;">
  105. <div style="display: inline-block;margin-right:6rem"><a target="view_window" :href="gosubsys('http://198.17.188.56:82','admin','111111',1)"><img style="width:20px;vertical-align: middle;margin-right:2px" src="../assets/images/txsb_selected@2x.png"/>光谱</a></div>
  106. <div
  107. style="display: inline-block;margin-right:6rem"><a target="view_window" :href="gosubsys('http://198.17.188.2:83/index.html','js_admin','js@123456',1)"><img style="width:20px;vertical-align: middle;margin-right:2px" src="../assets/images/gpsb@2x.png"/>嗅探</a></div>
  108. <div style="display: inline-block;margin-right:20rem"><a target="view_window" :href="gosubsys('http://198.17.23.29:8090','admin','word',1)"><img style="width:20px;vertical-align: middle;margin-right:2px" src="../assets/images/heiyan@2x.png"/>黑烟</a></div>
  109. </div>
  110. <div class="center_content">
  111. <xtTable v-show="showTable == 1"></xtTable>
  112. <userTable v-if="showTable==2"></userTable>
  113. <deptTable v-if="showTable==3"></deptTable>
  114. <statisticalTable v-if="showTable==4"></statisticalTable>
  115. <logininforTable v-if="showTable==5"></logininforTable>
  116. <liuTable v-if="showTable==6"></liuTable>
  117. <roleTable v-if="showTable==7"></roleTable>
  118. <homeTable v-if="showTable==8"></homeTable>
  119. <!-- 9黑烟;10光谱http://101.133.159.237:8087/device.html?opt=1;11嗅探 -->
  120. <iframe style="height:350rem;width:100%" v-show="showTable==9" marginwidth="0" marginheight="0" vspace="0"
  121. hspace="0" allowtransparency="true" scrolling="no" allowfullscreen="true" frameborder="0" name="showHere"
  122. src="http://198.17.23.29:8091/?opt=1"
  123. ></iframe>
  124. <iframe style="height:350rem;width:100%" v-show="showTable==10" marginwidth="0" marginheight="0" vspace="0"
  125. hspace="0" allowtransparency="true" scrolling="no" allowfullscreen="true" frameborder="0" name="showHere"
  126. src="http://198.17.25.32:9001/device.html?opt=1"
  127. ></iframe>
  128. <iframe style="height:350rem;width:100%" v-show="showTable==11" marginwidth="0" marginheight="0" vspace="0"
  129. hspace="0" allowtransparency="true" scrolling="no" allowfullscreen="true" frameborder="0" name="showHere"
  130. src="http://198.17.188.2:81/?opt=1"
  131. ></iframe>
  132. </div>
  133. <!-- <div v-show="showUserMenu" class="userContent">
  134. <div index="1" class="menu_title" @click="showTable =2">
  135. <i class="el-icon-s-custom"></i>
  136. <span>用户管理</span>
  137. </div>
  138. <div index="2" class="menu_title" @click="showTable =2">
  139. <i class="el-icon-user"></i>
  140. <span>角色管理</span>
  141. </div>
  142. <div index="3" class="menu_title" @click="showTable =3">
  143. <i class="el-icon-document"></i>
  144. <span>机构管理</span>
  145. </div>
  146. <div index="4" class="menu_title" @click="showTable =5">
  147. <i class="el-icon-setting"></i>
  148. <span>登录日志</span>
  149. </div>
  150. </div> -->
  151. </div>
  152. </template>
  153. <script>
  154. import xtTable from './components/table/xtTable.vue'
  155. import userTable from './components/table/userTable.vue'
  156. import deptTable from './components/table/deptTable.vue'
  157. import roleTable from './components/table/roleTable.vue'
  158. import statisticalTable from './components/table/statisticalTable.vue'
  159. import logininforTable from './monitor/logininfor/index.vue'
  160. import liuTable from './components/table/liuTable.vue'
  161. import homeTable from './components/table/homeTable.vue'
  162. import {Encrypt} from "../utils/ruoyi.js";
  163. export default {
  164. name: 'index',
  165. components: {
  166. xtTable,
  167. userTable,
  168. deptTable,
  169. roleTable,
  170. statisticalTable,
  171. logininforTable,
  172. liuTable,
  173. homeTable //在此处注册
  174. },
  175. data() {
  176. return {
  177. // 版本号
  178. version: '3.6.0',
  179. showUserMenu: false,
  180. showTable: 8,
  181. menuShow: 0
  182. }
  183. },
  184. mounted: function () {
  185. const CryptoJS = require("crypto-js"); //引用AES源码js
  186. var jsons = {
  187. "username": "",
  188. "password": "",
  189. "timestamp": Date.parse(new Date()) / 1000,
  190. "optauth": 1
  191. }
  192. console.log(jsons);
  193. console.log("code=" + encodeURIComponent(CryptoJS.enc.Base64.stringify(CryptoJS.enc.Hex.parse(Encrypt(JSON.stringify(jsons))))));
  194. },
  195. methods: {
  196. gosubsys(url, username = "", password = "", opt = 1) {
  197. const CryptoJS = require("crypto-js"); //引用AES源码js
  198. var jsons = {
  199. "username": username,
  200. "password": password,
  201. "timestamp": Date.parse(new Date()) / 1000,
  202. "optauth": opt
  203. }
  204. // console.log(jsons);
  205. // console.log("code="+encodeURI(CryptoJS.enc.Base64.stringify(CryptoJS.enc.Hex.parse(Encrypt(JSON.stringify(jsons))))));
  206. return url + "?" + "code=" + encodeURIComponent(CryptoJS.enc.Base64.stringify(CryptoJS.enc.Hex.parse(Encrypt(JSON.stringify(jsons)))));
  207. },
  208. goTarget(href) {
  209. window.open(href, '_blank')
  210. },
  211. userClick() {
  212. this.showUserMenu = true
  213. },
  214. clickMenu(event) {
  215. console.log(1111)
  216. console.log(event)
  217. }
  218. }
  219. }
  220. </script>
  221. <style lang="scss">
  222. .header {
  223. height: 45rem;
  224. width: 100%;
  225. background: url("../assets/picture/title.png") no-repeat;
  226. background-size: cover;
  227. }
  228. .left_content {
  229. height: 350rem;
  230. width: 87rem;
  231. // src\assets\picture\bg_menu_1.png
  232. background: url("../assets/picture/bg_menu_1.png") no-repeat;
  233. background-size: 100% 100%;
  234. margin-left: 10rem;
  235. padding-top: 2rem;
  236. float: left
  237. }
  238. .icon_content {
  239. text-align: center;
  240. }
  241. .icon_image {
  242. height: 27rem;
  243. width: 27rem;
  244. }
  245. .icon_title {
  246. padding-top: 3rem;
  247. font-size: 7rem;
  248. color: white;
  249. text-align: center
  250. }
  251. .center_content {
  252. background-color: white;
  253. width: 670rem;
  254. height: 350rem;
  255. float: right;
  256. margin-right: 20rem
  257. }
  258. .icon_class {
  259. width: 100%;
  260. height: 55rem;
  261. padding-top: 10rem;
  262. }
  263. .userContent {
  264. // position: absolute;
  265. // z-index:1002;
  266. // top: 315rem;
  267. // left: 95rem;
  268. width: 45rem;
  269. // height: 50rem;
  270. // background-color:rgba(0,0,139,1);
  271. padding-top: 3rem;
  272. padding-bottom: 3rem;
  273. }
  274. .menu_title {
  275. color: #fff;
  276. font-size: 6.4rem;
  277. margin-top: 2rem;
  278. padding-left: 5rem;
  279. line-height: 12rem;
  280. }
  281. .menu_title:hover {
  282. cursor: pointer;
  283. }
  284. .active {
  285. background-color: #041446;
  286. }
  287. .menu {
  288. color: #00ffff
  289. }
  290. .el-popover {
  291. background-color: blue;
  292. background: url("../assets/picture/bg_zcd.png") no-repeat;
  293. background-size: 100% 100%;
  294. border: 0px;
  295. min-width: 0;
  296. }
  297. // .popper__arrow::after{
  298. // /*el-popover上边三角表层的颜色---也就是视觉上的角*/
  299. // display: none
  300. // }
  301. // .popper__arrow{
  302. // /*el-popover上边三角表层的颜色---也就是视觉上的角*/
  303. // display: none
  304. // }
  305. .el-popper .popper__arrow, .el-popper .popper__arrow::after {
  306. display: none
  307. }
  308. // .has-gutter{
  309. // // background: linear-gradient(blue, pink);
  310. // background-color: #00ffff
  311. // }
  312. </style>