equipManage_qxz_detail.html 9.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354
  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title></title>
  6. <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
  7. <link href="https://cdn.bootcss.com/font-awesome/4.7.0/css/font-awesome.css" rel="stylesheet">
  8. <link href="../css/mui.min.css" rel="stylesheet" />
  9. <link rel="stylesheet" href="../css/iconfont.css" />
  10. <link href="../css/common.css" rel="stylesheet" />
  11. <link rel="stylesheet" href="../css/mescroll.min.css">
  12. <link rel="stylesheet" type="text/css" href="../css/mui.picker.min.css" />
  13. <style type="text/css">
  14. /*.mui-content {
  15. background: #fff;
  16. }*/
  17. body,
  18. .mui-content,
  19. #dataList {
  20. background: #0088e5;
  21. }
  22. /*设备信息*/
  23. .equipScope {
  24. margin: 4% 6% 0 6%;
  25. background: rgba(255, 255, 255, 0.4);
  26. padding: 5px;
  27. border-radius: 7px;
  28. position: relative;
  29. }
  30. .equipmsg {
  31. /*position:relative;*/
  32. }
  33. .qxzImg {
  34. /*background-image: url('../images/qxz.jpg');*/
  35. /*background-image: url(http://120.27.222.26/qxz_photo/default.png);*/
  36. height: 200px;
  37. background-size: cover;
  38. border-radius: 7px;
  39. }
  40. .qxzDescribe {
  41. position: absolute;
  42. right: 10px;
  43. bottom: 5px;
  44. }
  45. .qxzDescribe>div {
  46. font-size: 12px;
  47. background: rgba(57, 160, 230, 0.7);
  48. line-height: 22px;
  49. color: #fff;
  50. padding-left: 8px;
  51. padding-right: 8px;
  52. margin-bottom: 5px;
  53. border-radius: 10px;
  54. }
  55. /*实时状态*/
  56. .sensor {
  57. position: relative;
  58. float: left;
  59. width: 41%;
  60. /*height: 180px;*/
  61. height: 90px;
  62. background: rgba(255, 255, 255, 0.3);
  63. border-radius: 10px;
  64. margin-left: 6%;
  65. margin-top: 20px;
  66. }
  67. .sensorIcon {
  68. background: rgba(255, 255, 255, 0.35);
  69. border-radius: 50%;
  70. position: absolute;
  71. /*width: 2.5em;
  72. height: 2.5em;*/
  73. width: 3.5em;
  74. height: 3.5em;
  75. top: 15px;
  76. left: 25px;
  77. line-height: 3.8em;
  78. text-align: center;
  79. vertical-align: middle;
  80. }
  81. .sensorIcon>img {
  82. width: 74%;
  83. margin: 7px 0 0 0;
  84. }
  85. .sensorAisle {
  86. position: absolute;
  87. top: 45px;
  88. left: 14px;
  89. color: rgba(255, 255, 255, 0.76);
  90. font-size: 12px;
  91. letter-spacing: 1px;
  92. }
  93. .sensorResult {
  94. color: #ffffff;
  95. font-size: 16px;
  96. /*line-height: 200px;*/
  97. line-height: 60px;
  98. text-align: center;
  99. /*margin: 0 0 0 30px;*/
  100. margin: 0 0 0 45%;
  101. }
  102. .sensorUnit {
  103. /*position: absolute;
  104. bottom: 20px;
  105. right: 70px;*/
  106. color: rgba(255, 255, 255, 0.76);
  107. font-size: 12px;
  108. letter-spacing: 1px;
  109. text-align: center;
  110. width: 41%;
  111. margin: -15px 0 0 80px;
  112. }
  113. /*24小时数据*/
  114. .seeMore {
  115. text-align: center;
  116. }
  117. .seeMore>button {
  118. background: rgba(255, 255, 255, 0.4);
  119. border: none;
  120. border-radius: 30px;
  121. color: #fff;
  122. padding: 10px 40px;
  123. margin: 15px 0;
  124. }
  125. .seeMore>button:active {
  126. background: #005b99;
  127. }
  128. </style>
  129. </head>
  130. <body>
  131. <header class="mui-bar mui-bar-nav">
  132. <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
  133. <h1 class="mui-title" id="title">环境监测</h1>
  134. <a id="setAstrict" class="mui-icon mui-icon-gear mui-pull-right" onclick="setAstrictFun()"></a>
  135. </header>
  136. <div class="mui-content">
  137. <div class="equipmsg">
  138. <div class="equipScope">
  139. <div class="qxzImg" id="qxzImg"></div>
  140. <div class="qxzDescribe">
  141. <div id="equipName">项目名称:设备16061203</div>
  142. <div id="equipId">设备ID:16061203</div>
  143. <div id="updataTime">更新时间:2019-04-10 15:51:24</div>
  144. </div>
  145. </div>
  146. </div>
  147. <div id="dataList">
  148. <!--最新数据-->
  149. <div class="clearfix" id="newResultDat">
  150. <!--<div class="sensor">
  151. <div class="sensorIcon">
  152. <img src="../images/dev/icon_101.png"/>
  153. </div>
  154. <div class="sensorAisle">
  155. 通道1
  156. </div>
  157. <div class="sensorResult">
  158. </div>
  159. <div class="sensorUnit">温度</div>
  160. </div>-->
  161. </div>
  162. </div>
  163. <div class="seeMore">
  164. <button type="button" onclick="setTimingFun()" class="">定时控制</button>
  165. <button type="button" onclick="manualCtrl()" class="">手动控制</button>
  166. </div>
  167. <div class="seeMore">
  168. <button type="button" onclick="lookMore()" class="">查看24小时数据</button>
  169. </div>
  170. </div>
  171. <script src="../js/jquery-2.1.0.js"></script>
  172. <script src="../js/mui.min.js"></script>
  173. <script src="../js/mescroll.min.js" charset="utf-8"></script>
  174. <script src="../js/mui.picker.min.js" type="text/javascript" charset="utf-8"></script>
  175. <script src="../js/common.js"></script>
  176. <script type="text/javascript">
  177. var equipId, equipName, qxz_switch, switch_name, timing_list, auto_list, conf, qxzDat;
  178. mui.init();
  179. mui.plusReady(function() {
  180. var self = plus.webview.currentWebview();
  181. equipId = self.equipId;
  182. equipName = self.equipName
  183. $('#equipId').html('设备ID:' + equipId);
  184. $('#equipName').html('项目名称:' + equipName);
  185. $.ajax({
  186. type: 'post',
  187. url: 'http://120.27.222.26/qxz_status',
  188. timeout: 10000, //超时时间设置,单位毫秒
  189. data: {
  190. 'e_id': equipId,
  191. },
  192. beforeSend: function() {
  193. plus.nativeUI.showWaiting("加载中...");
  194. },
  195. complete: function() {
  196. plus.nativeUI.closeWaiting();
  197. },
  198. dataType: 'json',
  199. success: function(data) {
  200. console.log(JSON.stringify(data))
  201. if(data.qxz_switch.length > 2) {
  202. qxz_switch = eval('(' + data.qxz_switch + ')');
  203. } else {
  204. qxz_switch = {}
  205. }
  206. if(data.switch_name.length > 2) {
  207. switch_name = eval('(' + data.switch_name + ')');
  208. } else {
  209. switch_name = {}
  210. }
  211. if(data.timing_list.length > 2) {
  212. timing_list = eval('(' + data.timing_list + ')');
  213. } else {
  214. timing_list = {}
  215. }
  216. if(data.auto_list.length > 2) {
  217. auto_list = eval('(' + data.auto_list + ')');
  218. } else {
  219. auto_list = {}
  220. }
  221. conf = data.conf;
  222. qxzDat = data.dat;
  223. $('#updataTime').html('数据更新时间:' + data.base.upl_time);
  224. var path = 'http://120.27.222.26/' + data.base.qxz_picture;
  225. $('#qxzImg').css('background-image', 'url(' + path + ')');
  226. var dat = data.dat;
  227. var datlen = Object.keys(dat).length;
  228. var html = '';
  229. for(var i = 1; i <= datlen; i++) {
  230. var key = 'e' + i;
  231. if(dat[key]) {
  232. if(dat[key].split('#')[0] == -99.99) {
  233. var val = 'N/A';
  234. } else {
  235. var val = dat[key].split('#')[0];
  236. }
  237. var eNum = dat[key].split('#')[1];
  238. var unitTxt = data.conf[key].split('#')[0];
  239. var unit = data.conf[key].split('#')[1];
  240. html += '<div class="sensor"><div class="sensorIcon"><img src="../images/dev/icon_' + eNum + '.png"/>' +
  241. '</div>' +
  242. '<div class="sensorResult">' + val + unit + '</div><div class="sensorUnit">' + unitTxt + '</div></div>'
  243. // html += '<div class="sensor">' +
  244. // '<div class="sensorResult">' + val + unit + '</div><div class="sensorUnit">' + unitTxt + '</div></div>'
  245. }
  246. if(i == datlen) {
  247. if(!html) {
  248. html = '<div class="sensor" style="width: 88%;"><div class="sensorResult">暂无数据</div></div>';
  249. }
  250. $('#newResultDat').html(html);
  251. }
  252. }
  253. },
  254. error: function() {
  255. mui.toast('请求失败')
  256. }
  257. });
  258. })
  259. //查看24小时数据
  260. function lookMore() {
  261. mui.openWindow({
  262. url: 'equipManage_qxz_data24.html',
  263. id: 'equipManage_qxz_data24',
  264. extras: {
  265. 'equipId': equipId,
  266. 'equipName': equipName,
  267. },
  268. })
  269. }
  270. //手动控制
  271. function manualCtrl() {
  272. if(qxz_switch.length) {
  273. mui.openWindow({
  274. url: 'equipManage_qxz_manualCtrl.html',
  275. id: 'equipManage_qxz_manualCtrl',
  276. extras: {
  277. 'equipId': equipId,
  278. 'equipName': equipName,
  279. 'qxz_switch': qxz_switch,
  280. 'switch_name': JSON.stringify(switch_name)
  281. },
  282. })
  283. } else {
  284. mui.toast('暂无开关设置功能')
  285. }
  286. }
  287. //阈值设置
  288. function setAstrictFun() {
  289. if(auto_list.length) {
  290. mui.openWindow({
  291. url: 'equipManage_qxz_setAstrict.html',
  292. id: 'equipManage_qxz_setAstrict',
  293. extras: {
  294. 'equipId': equipId,
  295. 'equipName': equipName,
  296. 'qxz_switch': qxz_switch,
  297. 'switch_name': switch_name,
  298. 'auto_list': auto_list,
  299. 'conf': conf,
  300. 'qxzDat': qxzDat
  301. },
  302. })
  303. } else {
  304. mui.toast('暂无阈值设置功能')
  305. }
  306. }
  307. //定时控制
  308. function setTimingFun() {
  309. if(timing_list.length) {
  310. mui.openWindow({
  311. url: 'equipManage_qxz_setTiming.html',
  312. id: 'equipManage_qxz_setTiming',
  313. extras: {
  314. 'equipId': equipId,
  315. 'equipName': equipName,
  316. 'qxz_switch': qxz_switch,
  317. 'switch_name': switch_name,
  318. 'timing_list': timing_list,
  319. 'conf': conf,
  320. 'qxzDat': qxzDat
  321. },
  322. })
  323. } else {
  324. mui.toast('暂无定时设置功能')
  325. }
  326. }
  327. </script>
  328. </body>
  329. </html>