ybq_report.js 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305
  1. var user = document.getElementById("datatable");
  2. function Fill_null_Table(table_id, data) {
  3. var table = document.getElementById(table_id).children[1];
  4. var row = table.insertRow(table.rows.length);
  5. var c1 = row.insertCell(0);
  6. c1.setAttribute('colspan', '18');
  7. c1.setAttribute('class', 'nullData');
  8. c1.innerHTML = "暂无数据";
  9. }
  10. function Fill_Table(table_id, data) {
  11. //js循环读取json数据
  12. var table = document.getElementById(table_id).children[1];
  13. for (var i = 0; i < data.length; i++) {
  14. var row = table.insertRow(table.rows.length);
  15. if (data[i].length == 0) { continue; }
  16. //JSON字符串转换JSON对象
  17. var stat = eval('(' + data[i].ybq_data + ')');
  18. var c1 = row.insertCell(0);
  19. c1.innerHTML = '<div class="deviceId">' + data[i].equip_id + '</div>';
  20. var c2 = row.insertCell(1);
  21. if (data[i].equip_name == "") c2.innerHTML = "无";
  22. else c2.innerHTML = data[i].equip_name;
  23. var c3 = row.insertCell(2);
  24. if (data[i].ds == 0) c3.innerHTML = "关";
  25. else c3.innerHTML = "开";
  26. var c4 = row.insertCell(3);
  27. if (stat.ws == 0) c4.innerHTML = "待机";
  28. else if (stat.ws == 1) c4.innerHTML = "工作";
  29. else if (stat.ws == 2) c4.innerHTML = "充电";
  30. var c5 = row.insertCell(4);
  31. if (stat.tbs == 0) c5.innerHTML = "正常";
  32. else c5.innerHTML = "保护";
  33. var c6 = row.insertCell(5);
  34. if (stat.rps == 0) c6.innerHTML = "正常";
  35. else c6.innerHTML = "保护";
  36. var c7 = row.insertCell(6);
  37. if (stat.tps == 0) c7.innerHTML = "正常";
  38. else c7.innerHTML = "保护";
  39. var c8 = row.insertCell(7);
  40. if (stat.dps == 0) c8.innerHTML = "正常";
  41. else c8.innerHTML = "保护";
  42. var c9 = row.insertCell(8);
  43. if (stat.tt == 0) c9.innerHTML = "常亮";
  44. else c9.innerHTML = stat.tt;
  45. var c10 = row.insertCell(9);
  46. c10.innerHTML = stat.ct;
  47. var c11 = row.insertCell(10);
  48. c11.innerHTML = stat.at;
  49. var c12 = row.insertCell(11);
  50. c12.innerHTML = stat.ah;
  51. var c13 = row.insertCell(12);
  52. c13.innerHTML = (stat.cv / 1000).toFixed(2);
  53. var c14 = row.insertCell(13);
  54. c14.innerHTML = (stat.bv / 1000).toFixed(2);
  55. // var c15 = row.insertCell(14);
  56. // if (stat.lng > 999) {
  57. // var lng = Math.floor(stat.lng / 100) + ((stat.lng % 100) / 60);
  58. // } else {
  59. // var lng = Number(stat.lng);
  60. // }
  61. // c15.innerHTML = lng.toFixed(4);
  62. // var c16 = row.insertCell(15);
  63. // if (stat.lng > 999) {
  64. // var lat = Math.floor(stat.lat / 100) + ((stat.lat % 100) / 60);
  65. // } else {
  66. // var lat = Number(stat.lat);
  67. // }
  68. // c16.innerHTML = lat.toFixed(4);
  69. var c15 = row.insertCell(14);
  70. c15.innerHTML = data[i].upl_time;
  71. // var c16 = row.insertCell(15);
  72. // c16.innerHTML = "<button onclick='lookImg($(this))' class='btn btn-sm btn-primary'>查看图片</button>";
  73. var c16 = row.insertCell(15);
  74. // c16.innerHTML = "<button onclick='reloadPage($(this))' class='btn btn-sm btn-success'>查询</button> <button onclick='details($(this))' class='btn btn-sm btn-primary'>详情</button>";
  75. c16.innerHTML = '<button onclick="reloadPage('+data[i].equip_id+')" class="btn btn-sm btn-success">查询</button> <button class="btn btn-sm btn-primary" onclick="openDetialPage(\'ybq_report_detail?id='+data[i].equip_id+'\')">详情</button>';
  76. }
  77. }
  78. //刷新
  79. function reloadPage(id) {
  80. // var parent = obj.parents('tr');
  81. // var deviceId = parent.find('.deviceId').html().trim();
  82. // id = deviceId.toString();
  83. var topicid = [];
  84. topicid.push(id);
  85. $.ajax({
  86. type: "post",
  87. url: 'ybq_mqtt',
  88. beforeSend: function () {
  89. $('#loadingParent').show();
  90. },
  91. complete: function () {
  92. setTimeout(function () {
  93. $('#loadingParent').hide();
  94. },3000)
  95. },
  96. data: {
  97. "sw": "read",//读取
  98. "topicid": JSON.stringify(topicid),
  99. "kind": "data"//读取下位机数据
  100. },
  101. dataType: "json",
  102. success: function (data) {
  103. if (data == "0") {
  104. layer.msg("发送成功!");
  105. var eswitch = $('#eswitch').val();
  106. var ename = $('#ename').val();
  107. var eId = $('#eId').val();
  108. var page = $('.layui-laypage-curr em').eq(1).html();
  109. var data = {
  110. req: "filter",
  111. ename: ename,
  112. eswitch: eswitch,
  113. f_id:eId,
  114. page: page,
  115. }
  116. setTimeout(function () {
  117. $.post("ybq_report",data,function(data){
  118. $("#datatable tr:not(:first)").html("");
  119. var msg = $.parseJSON(data);
  120. if (msg.dat.length > 0) {
  121. Fill_Table('datatable', msg.dat);
  122. $('#page').parent().show();
  123. } else {
  124. Fill_null_Table('datatable', msg.dat);
  125. $('#page').parent().hide();
  126. }
  127. $('#checkAll').prop('checked',false)
  128. });
  129. }, 3000)
  130. }
  131. else {
  132. layer.msg("发送失败!")
  133. }
  134. }
  135. })
  136. }
  137. function lookImg(obj) {
  138. var parent = obj.parents('tr');
  139. var deviceId = parent.find('.deviceId').html().trim();
  140. id = deviceId.toString();
  141. window.location.href = "ybq/ybq_imageview?imei=" + id;
  142. }
  143. function details(obj) {
  144. var parent = obj.parents('tr');
  145. var deviceId = parent.find('.deviceId').html().trim();
  146. id = deviceId.toString();
  147. window.location.href = "ybq_report_detail?id=" + id;
  148. }
  149. // 分页初始化
  150. layui.use('laypage', function () {
  151. // var equip_id = document.getElementById("equip_id").value
  152. var laypage = layui.laypage;
  153. laypage.render({
  154. elem: 'page' //注意,这里的 test1 是 ID,不用加 # 号
  155. , count: $('#totalPage').val()
  156. , theme: '#428BCA'
  157. , layout: ['prev', 'page', 'next', 'skip']
  158. , jump: function (obj, first) {
  159. $.ajax({
  160. type: "get",
  161. url: "ybq_report?req=" + "reqdat" + '&page=' + obj.curr,
  162. dataType: "json",
  163. beforeSend: function () {
  164. $('#loadingParent').show();
  165. },
  166. complete: function () {
  167. $('#loadingParent').hide();
  168. },
  169. success: function (data) {
  170. if (data.length > 0) {
  171. Fill_Table('datatable', data);
  172. $('#page').parent().show();
  173. } else {
  174. Fill_null_Table('datatable', data);
  175. $('#page').parent().hide();
  176. }
  177. $('#iframe-main', parent.document).css('height', $('.content').height())
  178. }
  179. });
  180. if (!first) {
  181. $("#datatable tr:not(:first)").remove();
  182. }
  183. }
  184. });
  185. });
  186. //筛选
  187. function sub_filter() {
  188. var ename = $('#ename').val();
  189. var eId = $('#eId').val();
  190. $("#datatable tr:not(:first)").html("");
  191. $.ajax({
  192. url: 'ybq_report',
  193. type: 'post',
  194. data: {
  195. req: "filter",
  196. ename: ename,
  197. page: 1,
  198. f_id: eId
  199. },
  200. beforeSend: function () {
  201. $('#loadingParent').show();
  202. },
  203. complete: function () {
  204. $('#loadingParent').hide();
  205. },
  206. success: function (data) {
  207. var msg = $.parseJSON(data);
  208. if (msg.dat.length > 0) {
  209. Fill_Table('datatable', msg.dat);
  210. $('#page').parent().show();
  211. } else {
  212. Fill_null_Table('datatable', msg.dat);
  213. $('#page').parent().hide();
  214. }
  215. var datas = {
  216. req: "filter",
  217. ename: ename,
  218. f_id: eId
  219. };
  220. initSearchPage(msg.nums, 'ybq_report', datas);
  221. if ($('.content').height() > 750) {
  222. $('#iframe-main', parent.document).css('height', $('.content').height() + 20)
  223. } else {
  224. $('#iframe-main', parent.document).css('height', '750px')
  225. }
  226. }
  227. })
  228. }
  229. //搜索分页
  230. function initSearchPage(page, url, datas) {
  231. layui.use('laypage', function () {
  232. var laypage = layui.laypage;
  233. laypage.render({
  234. elem: 'page' //注意,这里的 test1 是 ID,不用加 # 号
  235. // , count: 30
  236. , count: page
  237. , theme: '#428BCA'
  238. , layout: ['prev', 'page', 'next', 'skip']
  239. , jump: function (obj, first) {
  240. datas.page = obj.curr;
  241. if (!first) {
  242. $.ajax({
  243. url: url,
  244. type: 'post',
  245. data: datas,
  246. beforeSend: function () {
  247. $('#loadingParent').show();
  248. },
  249. complete: function () {
  250. $('#loadingParent').hide();
  251. },
  252. success: function (data) {
  253. $("#datatable tr:not(:first)").html("");
  254. var msg = $.parseJSON(data);
  255. if (msg.dat.length > 0) {
  256. Fill_Table('datatable', msg.dat)
  257. } else {
  258. Fill_null_Table('datatable', msg.dat)
  259. }
  260. if ($('.content').height() > 750) {
  261. $('#iframe-main', parent.document).css('height', $('.content').height() + 20)
  262. } else {
  263. $('#iframe-main', parent.document).css('height', '750px')
  264. }
  265. }
  266. })
  267. }
  268. }
  269. });
  270. });
  271. }
  272. // 窗口改变iframe高度改变
  273. $(window).resize(function () {
  274. if ($('.content').height() > 750) {
  275. $('#iframe-main', parent.document).css('height', $('.content').height() + 20)
  276. } else {
  277. $('#iframe-main', parent.document).css('height', '750px')
  278. }
  279. });