main.htm 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232
  1. <!DOCTYPE html>
  2. <html lang="zh">
  3. <head>
  4. <meta charset="utf-8">
  5. <title>大屏综合管理软件</title>
  6. <meta name="description" content="登录">
  7. <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
  8. <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests" />
  9. <link href="views/htclient/css/common.css" rel="stylesheet">
  10. <script type="text/javascript" src="views/htclient/js/echarts.min.js"></script>
  11. <script type="text/javascript" src="views/htclient/js/jquery-2.2.4.min.js"></script>
  12. <script type="text/javascript" src="views/htclient/js/scroll.js"></script>
  13. <script type="text/javascript" src="js/huimv/huimv.js?type=3"></script>
  14. <script src="views/htclient/jquery-slimscroll/jquery.slimscroll.min.js"></script>
  15. <script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.15&key=dbbe116c55bcd51654d80c4ded02ee7c"></script>
  16. <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/clappr@latest/dist/clappr.min.js"></script>
  17. <script type="text/javascript" src="views/htclient/js/layer/layer.js"></script>
  18. <script type="text/javascript" src="views/htclient/js/sly1.js"></script>
  19. <style>
  20. #audioAlarm{
  21. display:none;
  22. height:0;
  23. }
  24. .layui-layer{
  25. -webkit-animation-timing-function:ease-in-out;
  26. -webkit-animation-name:breathe;
  27. -webkit-animation-duration:2000ms;
  28. -webkit-animation-iteration-count:infinite;
  29. -webkit-animation-direction:alternate;
  30. border:1px solid transparent;
  31. }
  32. .layui-layer-title{
  33. border-bottom: 0;
  34. text-align:center;
  35. position:relative;
  36. padding:0 20px 0 20px;
  37. font-size:16px
  38. }
  39. .layui-layer-title:after {
  40. content: '';
  41. position: absolute;
  42. bottom: 0px;
  43. left: 5%;
  44. height: 2px;
  45. width: 90%;
  46. background: linear-gradient(to right, rgba(11,82,224,0), #0b52e0, rgba(11,82,224,0));
  47. }
  48. .layui-layer-content{
  49. padding:20px;
  50. }
  51. #warningAlert{
  52. position:fixed;
  53. left:0;
  54. top:0;
  55. height:100%;
  56. width:100%;
  57. display:none
  58. -webkit-animation-timing-function:ease-in-out;
  59. -webkit-animation-name:breathe-inside;
  60. -webkit-animation-duration:2000ms;
  61. -webkit-animation-iteration-count:infinite;
  62. -webkit-animation-direction:alternate;
  63. }
  64. @-webkit-keyframes breathe {
  65. 0% {
  66. border:1px solid rgba(241,7,7,0.5);
  67. box-shadow:0px -10px 20px 0px rgba(241,7,7,0.3), -10px 0px 20px 0px rgba(241,7,7,0.3), 10px 0px 20px 0px rgba(241,7,7,0.3), 0px 10px 20px 0px rgba(241,7,7,0.3);
  68. }
  69. 50% {
  70. border:1px solid rgba(241,7,7,1);
  71. box-shadow:0px -10px 20px 0px rgba(241,7,7,0.6), -10px 0px 20px 0px rgba(241,7,7,0.6), 10px 0px 20px 0px rgba(241,7,7,0.6), 0px 10px 20px 0px rgba(241,7,7,0.6);
  72. }
  73. 100% {
  74. border:1px solid rgba(241,7,7,0.5);
  75. box-shadow:0px -10px 20px 0px rgba(241,7,7,0.3), -10px 0px 20px 0px rgba(241,7,7,0.3), 10px 0px 20px 0px rgba(241,7,7,0.3), 0px 10px 20px 0px rgba(241,7,7,0.3);
  76. }
  77. }
  78. @-webkit-keyframes breathe-inside {
  79. 0% {
  80. border:1px solid rgba(241,7,7,0.5);
  81. box-shadow:0px -10px 30px 0px rgba(241,7,7,0.3) inset, -10px 0px 30px 0px rgba(241,7,7,0.3) inset, 10px 0px 30px 0px rgba(241,7,7,0.3) inset, 0px 10px 30px 0px rgba(241,7,7,0.3) inset;
  82. }
  83. 50% {
  84. border:1px solid rgba(241,7,7,1);
  85. box-shadow:0px -10px 30px 0px rgba(241,7,7,0.6) inset, -10px 0px 30px 0px rgba(241,7,7,0.6) inset, 10px 0px 30px 0px rgba(241,7,7,0.6) inset, 0px 10px 30px 0px rgba(241,7,7,0.6) inset;
  86. }
  87. 100% {
  88. border:1px solid rgba(241,7,7,0.5);
  89. box-shadow:0px -10px 30px 0px rgba(241,7,7,0.3) inset, -10px 0px 30px 0px rgba(241,7,7,0.3) inset, 10px 0px 30px 0px rgba(241,7,7,0.3) inset, 0px 10px 30px 0px rgba(241,7,7,0.3) inset;
  90. }
  91. }
  92. </style>
  93. </head>
  94. <body style="overflow:hidden;" id='outBody'>
  95. <div id="head"></div>
  96. <div class="grid-wrapper">
  97. <div id="left"></div>
  98. <div id="right"></div>
  99. </div>
  100. <div id='warningAlert'></div>
  101. <div class='player'></div>
  102. <audio id="audioAlarm"><source src="views/htclient/source/alarm.mp3" type="audio/mpeg"></audio>
  103. <script>
  104. var sly;
  105. $('.player').on('click',function(){
  106. document.getElementById("audioAlarm").volume =1;
  107. document.getElementById('audioAlarm').play();//播放报警声音
  108. })
  109. $(function(){
  110. $('#warningAlert').hide();
  111. huimv.loadPage("head", "headIndex.htm");
  112. huimv.loadPage("right", "rightIndex.htm");
  113. //huimv.loadPage("right", "mcIndex.htm");
  114. huimv.loadPage("left", "leftIndex.htm");
  115. var win = window.screen.width;
  116. var scale = win/1920;
  117. //$('body').css({'transform':'scale('+scale+')','-moz-transform':'scale('+scale+')','-webkit-transform':'scale('+scale+')','-o-transform':'scale('+scale+')'});
  118. $('body').css({'transform':'scale(0.5, 1)','-moz-transform':'scale(0.5, 1)','-webkit-transform':'scale(0.5, 1)','-o-transform':'scale(0.5, 1)'});
  119. $('body').attr('scale',2);//这个属性用作栋舍单元滚动插件判断滚动距离用
  120. window.setInterval(function(){
  121. layer.closeAll();
  122. $('#warningAlert').hide();
  123. if ($("#diagonal").attr("id") != undefined) {
  124. var canvers = document.getElementById("diagonal");//为了区域现形做一个画布
  125. var context = canvers.getContext("2d");
  126. context.globalAlpha = 0.5;
  127. context.clearRect(0, 0, 732, 377);
  128. }
  129. //后台请求是否有报警
  130. jQuery.ajax({
  131. url : 'getHkbjGzxx.htm',
  132. dataType : 'json',
  133. type : 'post',
  134. cache : false,
  135. data : {
  136. "mcid" : $("#mcid").val()
  137. },
  138. success : function(data) {
  139. if (data.returnCode > 0) {
  140. $('#warningAlert').show();
  141. $('.player').click();//播放报警声音
  142. for (var i in data.result) {
  143. warAlert(data.result[i], i);
  144. }
  145. }
  146. }
  147. });
  148. }, 1000 * 60 * 5)
  149. });
  150. /**
  151. *报警弹出
  152. **/
  153. function warAlert(obj, i) {
  154. if ($("#buildmap").attr("id") != undefined) {
  155. if (obj.zsqy != "" && obj.zsqy != "0" && obj.zsqy != undefined) {
  156. qyClick($("#zsqy" + obj.zsqy));
  157. }
  158. }
  159. var gzlx = obj.gzlx;
  160. var gznr = "<p style='line-height:30px;'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" + obj.zsmc + "发生" + "<font style='color:red;' size='5px'>" + obj.gzxx;
  161. if (gzlx == "2") {
  162. gznr += "</font>, 故障设备:<font style='color:red;' size='5px'>" + obj.sblx;
  163. }
  164. gznr += "</font>";
  165. if (obj.sbxh != "" && obj.sbxh != "0") {
  166. gznr += ",设备序号:" + obj.sbxh;
  167. }
  168. gznr += ";故障发生时间:<font style='color:red;' size='5px'>" + obj.fssjStr + "</font></p>";
  169. var len = parseInt(i);
  170. var y = (parseInt((len + 1) / 4) + 1) * 200;
  171. var x = ($(window).width() - 390) / 2 + 450 * (len % 4)
  172. layer.open({
  173. type : 1,
  174. title : obj.mcmc,
  175. area : '450px',
  176. shade : 0,
  177. offset : [ //为了演示,随机坐标
  178. y, x
  179. ],
  180. content : gznr,
  181. btn : [ '全部关闭' ], //只是为了演示
  182. btn1 : function() {
  183. layer.closeAll();
  184. $('#warningAlert').hide();
  185. },
  186. closeBtn : 2,
  187. zIndex : layer.zIndex, //重点1
  188. success : function(layero) {
  189. layer.setTop(layero); //重点2
  190. },
  191. cancel : function(index, layero) {
  192. var len1 = $(".layui-layer").length;
  193. if (len1 == 1) {
  194. $('#warningAlert').hide();
  195. }
  196. layer.close(index)
  197. }
  198. });
  199. }
  200. </script>
  201. <!--滚动条-->
  202. <script type="text/javascript" src="views/htclient/js/index.js"></script>
  203. <script>
  204. function formatDate(long) {
  205. var now = new Date(long);
  206. var hour=now.getHours();
  207. var minute=now.getMinutes();
  208. if(minute < 10) {
  209. minute = "0" +minute;
  210. }
  211. return hour+":"+minute;
  212. }
  213. </script>
  214. </body>
  215. </html>