cbd_report.js 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467
  1. // 时间插件初始化
  2. layui.use('laydate', function () {
  3. var laydate = layui.laydate;
  4. //执行一个laydate实例
  5. laydate.render({
  6. elem: '#timSelectBox' //指定元素
  7. , range: true
  8. , done: function (value, date) {
  9. var dateArray = value.split(' - ')
  10. $('#begin').val(dateArray[0])
  11. $('#end').val(dateArray[1])
  12. }
  13. });
  14. });
  15. function Fill_null_Table(table_id, data) {
  16. var table = document.getElementById(table_id).children[1];
  17. var row = table.insertRow(table.rows.length);
  18. var c1 = row.insertCell(0);
  19. c1.setAttribute('colspan', '16');
  20. c1.setAttribute('class', 'nullData');
  21. c1.innerHTML = "暂无数据";
  22. }
  23. function Fill_Table(table_id, dat) {
  24. var table = document.getElementById(table_id).children[1];
  25. for (var i = 0; i < dat.length; i++) {
  26. var row = table.insertRow(table.rows.length);
  27. if (dat[i].length == 0) { continue; }
  28. //JSON字符串转换JSON对象
  29. var stat = eval('(' + dat[i].cbd_data + ')');
  30. var c1 = row.insertCell(0);
  31. c1.innerHTML = '<div class="deviceId">' + dat[i].equip_id;
  32. var c2 = row.insertCell(1);
  33. if (dat[i].equip_name == "") c2.innerHTML = "无"
  34. else c2.innerHTML = dat[i].equip_name;
  35. var c3 = row.insertCell(2);
  36. if (stat.ws == 1) {
  37. c3.innerHTML = "工作";
  38. }else if (stat.ws == 0) {
  39. c3.innerHTML = "待机";
  40. }else{
  41. c3.innerHTML = "--";
  42. }
  43. var c4 = row.insertCell(3);
  44. c4.innerHTML = (stat.at / 10).toFixed(1);
  45. var c5 = row.insertCell(4);
  46. c5.innerHTML = (stat.ah / 10).toFixed(1);
  47. var c6 = row.insertCell(5);
  48. c6.innerHTML = stat.hrt;
  49. var c7 = row.insertCell(6);
  50. if (dat[i].etype == null) c7.innerHTML = '--';
  51. else if (dat[i].etype != null) c7.innerHTML = dat[i].etype
  52. var c8 = row.insertCell(7);
  53. if (stat.rps == 0) c8.innerHTML = '<img src="static/img/noRCtrl.png" alt="">';
  54. else c8.innerHTML = '<img src="static/img/rCtrl.png" alt="">';
  55. var c9 = row.insertCell(8);
  56. if (stat.tps == 0) c9.innerHTML = '<img src="static/img/noHighTemp.png" alt="">';
  57. else c9.innerHTML = '<img src="static/img/highTemp.png" alt="">';
  58. var c10 = row.insertCell(9); //1白天 0夜晚
  59. if (stat.lps == 1) c10.innerHTML = '<img src="static/img/daytime.png" alt="">';
  60. else c10.innerHTML = '<img src="static/img/night.png" alt="">';
  61. var c11 = row.insertCell(10);
  62. if(stat.lamp != undefined){
  63. if(stat.ws == 1){
  64. if(stat.lamp == 1){
  65. c11.innerHTML = '<img src="static/img/greenLamp.png" height="30px" alt="">';
  66. c11.setAttribute('title', '亮')
  67. }else if(stat.lamp == 0){
  68. c11.innerHTML = '灭';
  69. c11.setAttribute('title', '灭')
  70. }
  71. }else{
  72. c11.innerHTML = '灭';
  73. c11.setAttribute('title', '灭')
  74. }
  75. }else{
  76. c11.innerHTML = "--";
  77. }
  78. var c12 = row.insertCell(11);
  79. if (dat[i].scene == 1) {
  80. c12.innerHTML = '<div title="小麦、玉米"><img src="../static/img/cbdScene1.png" /></div>';
  81. } else if (dat[i].scene == 2) {
  82. c12.innerHTML = '<div title="水稻"><img src="../static/img/cbdScene2.png" /></div>';
  83. } else if (dat[i].scene == 3) {
  84. c12.innerHTML = '<div title="林业"><img src="../static/img/cbdScene3.png" /></div>';
  85. } else if (dat[i].scene == 4) {
  86. c12.innerHTML = '<div title="大豆"><img src="../static/img/cbdScene4.png" /></div>'
  87. } else {
  88. c12.innerHTML = '<div title="暂无">--</div>';
  89. }
  90. var c13 = row.insertCell(12);
  91. c13.innerHTML = dat[i].upl_time;
  92. var c14 = row.insertCell(13);
  93. c14.innerHTML = "<button onclick='reloadPage($(this))' class='btn btn-sm btn-success'>查询</button>";
  94. var c15 = row.insertCell(14);
  95. if(dat[i].have_photo == 1){
  96. c15.innerHTML = '<button class="btn btn-sm btn-primary" onclick="openDetialPage(\'cbd/img?imei='+dat[i].equip_id+'&disc='+dat[i].disc+'\')">查看图片</button>';
  97. }else{
  98. c15.innerHTML = '<button class="btn btn-sm " onclick="openDetialPage(\'cbd/img?imei='+dat[i].equip_id+'&disc='+dat[i].disc+'\')">查看图片</button>';
  99. }
  100. var c16 = row.insertCell(15);
  101. c16.innerHTML = '<button onclick="openDetialPage(\'cbd_report_detail?id='+dat[i].equip_id+'\')" class="btn btn-sm btn-primary" >详情</button>';
  102. // c16.innerHTML = "<button onclick='details("+dat[i].equip_id+")' class='btn btn-sm btn-primary'>详情</button>";
  103. var c17 = row.insertCell(16);
  104. if(dat[i].disc == 0){
  105. c17.innerHTML ='<button class="btn btn-sm btn-primary" onclick="openDetialPage(\'manual_pest_data?e_id='+dat[i].equip_id+'\')">害虫统计</button>'
  106. }else{
  107. c17.innerHTML = '<button class="btn btn-sm btn-primary" onclick="openDetialPage(\'pest_statis?id='+dat[i].equip_id+'\')">害虫统计</button>';
  108. }
  109. // if(dat[i].disc == 0){
  110. // c17.innerHTML ='<button class="btn btn-sm btn-primary" onclick="pestsStats1('+dat[i].equip_id+')">害虫统计</button>'
  111. // }else{
  112. // c17.innerHTML = '<button class="btn btn-sm btn-primary" onclick="pestsStats2('+dat[i].equip_id+')">害虫统计</button>';
  113. // }
  114. }
  115. }
  116. //刷新:下发查询:
  117. function reloadPage(obj) {
  118. var parent = obj.parents('tr');
  119. var deviceId = parent.find('.deviceId').html().trim();
  120. $.ajax({
  121. type: "post",
  122. url: 'cbd_mqtt',
  123. data: {
  124. "req": "read",//读取
  125. "topicid": deviceId,
  126. "kind": "data"//读取下位机数据
  127. },
  128. dataType: "json",
  129. beforeSend: function () {
  130. $('#loadingParent').show();
  131. },
  132. complete: function () {
  133. setTimeout(function () {
  134. $('#loadingParent').hide();
  135. }, 3000)
  136. },
  137. success: function (data) {
  138. if (data == "0") {
  139. layer.msg("发送成功!")
  140. setTimeout(function () {
  141. var ename = $('#ename').val();
  142. var eId = $('#eId').val();
  143. var page = $('.layui-laypage-curr em').eq(1).html();
  144. var data = {
  145. req: "filter",
  146. ename: ename,
  147. f_id: eId,
  148. page: page,
  149. };
  150. $.post("cbd_report", data, function (data) {
  151. $("#datatable tr:not(:first)").html("");
  152. var msg = $.parseJSON(data);
  153. if (msg.dat.length > 0) {
  154. Fill_Table('datatable', msg.dat);
  155. $('#page').parent().show();
  156. } else {
  157. Fill_null_Table('datatable', msg.dat);
  158. $('#page').parent().hide();
  159. }
  160. });
  161. // window.location.href = window.location.href;
  162. }, 3000)
  163. } else {
  164. layer.msg("发送失败!")
  165. }
  166. }
  167. })
  168. }
  169. function details(id) {
  170. window.location.href = "cbd_report_detail?id=" + id;
  171. }
  172. function pestsStats1(id){
  173. window.location.href = "manual_pest_data?e_id=" + id;
  174. }
  175. function pestsStats2(id){
  176. window.location.href = "pest_statis?id=" + id;
  177. }
  178. function viewimg(obj) {
  179. var parent = obj.parents('tr');
  180. var deviceId = parent.find('.deviceId').html().trim();
  181. imei = deviceId.toString();
  182. window.location.href = "cbd/img?imei=" + imei;
  183. }
  184. // 管理员筛选
  185. function dverSelect(){
  186. var ename = $('#ename').val();
  187. var eId = $('#eId').val();
  188. var photoTime = $('#photoTime').val() || "";
  189. var baseplateType = $('#baseplateType').val() || "";
  190. var etype = $('#lightType').val()
  191. $("#datatable tr:not(:first)").html("");
  192. $.ajax({
  193. url: 'cbd_report',
  194. type: 'post',
  195. data: {
  196. req: "filter",
  197. photoday: photoTime,
  198. baseplateType: baseplateType,
  199. ename: ename,
  200. page:1,
  201. f_id:eId,
  202. etype: etype
  203. },
  204. beforeSend: function () {
  205. $('#loadingParent').show();
  206. },
  207. complete: function () {
  208. $('#loadingParent').hide();
  209. },
  210. success: function (data) {
  211. var msg = $.parseJSON(data);
  212. if (msg.dat.length > 0) {
  213. Fill_Table('datatable', msg.dat);
  214. $('#page').parent().show();
  215. } else {
  216. Fill_null_Table('datatable', msg);
  217. $('#page').parent().hide();
  218. }
  219. var datas = {
  220. req: "filter",
  221. photoday: photoTime,
  222. baseplateType: baseplateType,
  223. ename: ename,
  224. page:1,
  225. f_id:eId,
  226. etye: etype
  227. };
  228. initSearchPage(msg.nums, 'cbd_report',datas);
  229. if ($('.content').height() > 750) {
  230. $('#iframe-main', parent.document).css('height', $('.content').height() + 20)
  231. } else {
  232. $('#iframe-main', parent.document).css('height', '750px')
  233. }
  234. }
  235. })
  236. }
  237. //测报灯类型筛选
  238. function cbdType () {
  239. var ename = $('#ename').val();
  240. var eId = $('#eId').val();
  241. var photoTime = $('#photoTime').val() || "";
  242. var baseplateType = $('#baseplateType').val() || "";
  243. $("#datatable tr:not(:first)").html("");
  244. var etype = $('#lightType').val()
  245. $.ajax({
  246. url: 'cbd_report',
  247. type: 'post',
  248. data: {
  249. req: "filter",
  250. photoday: photoTime,
  251. baseplateType: baseplateType,
  252. ename: ename,
  253. page: 1,
  254. f_id:eId,
  255. etype: etype,
  256. },
  257. beforeSend: function () {
  258. $('#loadingParent').show();
  259. },
  260. complete: function () {
  261. $('#loadingParent').hide();
  262. },
  263. success: function (data) {
  264. var msg = $.parseJSON(data);
  265. if (msg.dat.length > 0) {
  266. Fill_Table('datatable', msg.dat);
  267. $('#page').parent().show();
  268. } else {
  269. Fill_null_Table('datatable', msg);
  270. $('#page').parent().hide();
  271. }
  272. var datas = {
  273. req: "filter",
  274. photoday: photoTime,
  275. baseplateType: baseplateType,
  276. ename: ename,
  277. page:1,
  278. f_id:eId,
  279. etype: etype,
  280. };
  281. initSearchPage(msg.nums, 'cbd_report',datas);
  282. if ($('.content').height() > 750) {
  283. $('#iframe-main', parent.document).css('height', $('.content').height() + 20)
  284. } else {
  285. $('#iframe-main', parent.document).css('height', '750px')
  286. }
  287. }
  288. })
  289. }
  290. // 分页初始化
  291. layui.use('laypage', function () {
  292. var laypage = layui.laypage;
  293. laypage.render({
  294. elem: 'page' //注意,这里的 test1 是 ID,不用加 # 号
  295. , count: $('#totalPage').val()
  296. ,curr:1 //让起始页等于我传过来的page1,也就是点击的页码
  297. ,theme: '#428BCA'
  298. , layout: ['prev', 'page', 'next', 'skip']
  299. , jump: function (obj) {
  300. $.ajax({
  301. type: "get",
  302. url: "cbd_report?req="+"reqdat"+'&page='+obj.curr,
  303. dataType: "json",
  304. beforeSend: function () {
  305. $('#loadingParent').show();
  306. },
  307. complete: function () {
  308. $('#loadingParent').hide();
  309. },
  310. success: function (data) {
  311. $("#datatable tr:not(:first)").html("");
  312. // js循环读取json数据
  313. if (data.length > 0) {
  314. Fill_Table('datatable', data);
  315. $('#page').parent().show();
  316. } else {
  317. Fill_null_Table('datatable');
  318. $('#page').parent().hide();
  319. }
  320. $('#iframe-main', parent.document).css('height', $('.content').height())
  321. }
  322. })
  323. }
  324. });
  325. });
  326. //筛选
  327. function sub_filter() {
  328. var ename = $('#ename').val();
  329. var eId = $('#eId').val();
  330. var photoTime = $('#photoTime').val() || '';
  331. var baseplateType = $('#baseplateType').val() || '';
  332. $('#lightType').val('全部')
  333. var etype = $('#lightType').val()
  334. $("#datatable tr:not(:first)").html("");
  335. $.ajax({
  336. url: 'cbd_report',
  337. type: 'post',
  338. data: {
  339. req: "filter",
  340. ename: ename,
  341. page:1,
  342. f_id:eId,
  343. photoday: photoTime,
  344. baseplateType: baseplateType,
  345. },
  346. beforeSend: function () {
  347. $('#loadingParent').show();
  348. },
  349. complete: function () {
  350. $('#loadingParent').hide();
  351. },
  352. success: function (data) {
  353. var msg = $.parseJSON(data);
  354. if (msg.dat.length > 0) {
  355. Fill_Table('datatable', msg.dat);
  356. $('#page').parent().show();
  357. } else {
  358. Fill_null_Table('datatable', msg);
  359. $('#page').parent().hide();
  360. }
  361. var datas = {
  362. req: "filter",
  363. ename: ename,
  364. f_id:eId,
  365. photoday: photoTime,
  366. baseplateType: baseplateType,
  367. page: 1,
  368. etype: etype
  369. };
  370. initSearchPage(msg.nums, 'cbd_report',datas);
  371. if ($('.content').height() > 750) {
  372. $('#iframe-main', parent.document).css('height', $('.content').height() + 20)
  373. } else {
  374. $('#iframe-main', parent.document).css('height', '750px')
  375. }
  376. }
  377. })
  378. }
  379. //搜索分页
  380. function initSearchPage(page, url, datas) {
  381. console.log(datas)
  382. layui.use('laypage', function () {
  383. var laypage = layui.laypage;
  384. laypage.render({
  385. elem: 'page' //注意,这里的 test1 是 ID,不用加 # 号
  386. , count: page
  387. ,curr:1 //让起始页等于我传过来的pageCbd,也就是点击的页码
  388. ,theme: '#428BCA'
  389. , layout: ['prev', 'page', 'next', 'skip']
  390. , jump: function (obj, first) {
  391. datas.page = obj.curr;
  392. if (!first) {
  393. $.ajax({
  394. url: url,
  395. type: 'post',
  396. data: datas,
  397. beforeSend: function () {
  398. $('#loadingParent').show();
  399. },
  400. complete: function () {
  401. $('#loadingParent').hide();
  402. },
  403. success: function (data) {
  404. $("#datatable tr:not(:first)").html("");
  405. var msg = $.parseJSON(data);
  406. if (msg.dat.length > 0) {
  407. Fill_Table('datatable', msg.dat)
  408. } else {
  409. Fill_null_Table('datatable', msg.dat)
  410. }
  411. if ($('.content').height() > 750) {
  412. $('#iframe-main', parent.document).css('height', $('.content').height() + 20)
  413. } else {
  414. $('#iframe-main', parent.document).css('height', '750px')
  415. }
  416. }
  417. })
  418. }
  419. }
  420. });
  421. });
  422. }
  423. // 窗口改变iframe高度改变
  424. $(window).resize(function () {
  425. if ($('.content').height() > 750) {
  426. $('#iframe-main', parent.document).css('height', $('.content').height() + 20)
  427. } else {
  428. $('#iframe-main', parent.document).css('height', '750px')
  429. }
  430. });