alarmcodeanalysis.js 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. layui.use(['layer', 'laydate', 'form', 'table'], function () {
  2. var layer = layui.layer;
  3. var laydate = layui.laydate;
  4. var form = layui.form;
  5. var table = layui.table;
  6. initLaydate();
  7. initMacModel();
  8. initProcess();
  9. loadGrid();
  10. loadChart();
  11. $('#searchBtn').click(function () {
  12. loadGrid();
  13. loadChart();
  14. });
  15. $('#refreshBtn').click(function () {
  16. initLaydate();
  17. loadGrid();
  18. loadChart();
  19. });
  20. function loadChart() {
  21. // 基于准备好的dom,初始化echarts实例
  22. var myChart = echarts.init(document.getElementById('charts'));
  23. var obj = {
  24. startTime: $('#starttime').val(),
  25. endTime: $('#endtime').val(),
  26. macModel: $('select[name=macmodel]').val(),
  27. pCode: $('select[name=pcode]').val()
  28. };
  29. callAjax('/UnityWebApi/Analysis/GetAlarmAnalysisByCode', 'get', obj, function (data) {
  30. if (data) {
  31. console.log('++++++++++++');
  32. console.log(data);
  33. // 指定图表的配置项和数据
  34. var option = {
  35. title: {
  36. text: data.text
  37. },
  38. tooltip: {},
  39. legend: {
  40. data: data.legend
  41. },
  42. xAxis: {
  43. data: data.xdata
  44. },
  45. yAxis: {},
  46. series: [{
  47. name: '报警次数',
  48. type: 'bar',
  49. data: data.ydata,
  50. label: {
  51. normal: {
  52. show: true,
  53. position: 'top',
  54. textStyle: {
  55. color: 'black'
  56. }
  57. }
  58. },
  59. }]
  60. };
  61. myChart.setOption(option);
  62. laydate.render({
  63. elem: '#starttime',
  64. value: obj.startTime
  65. });
  66. laydate.render({
  67. elem: '#endtime',
  68. value: obj.endTime
  69. });
  70. }
  71. });
  72. }
  73. function initLaydate() {
  74. laydate.render({
  75. elem: '#starttime',
  76. value: addDate(new Date(), -7)
  77. });
  78. laydate.render({
  79. elem: '#endtime',
  80. value: new Date().getFormatDate()
  81. });
  82. }
  83. function initMacModel() {
  84. callAjax('/UnityWebApi/Analysis/GetMacModels', 'get', {}, function (res) {
  85. if (res) {
  86. for (var i = 0; i < res.length; i++) {
  87. var option = $('<option>');
  88. option.val(res[i].fCode);
  89. option.text(res[i].fCode);
  90. $('select[name=macmodel]').append(option);
  91. }
  92. form.render();
  93. }
  94. });
  95. }
  96. function initProcess() {
  97. callAjax('/UnityWebApi/Analysis/GetProcesses', 'get', {}, function (res) {
  98. if (res) {
  99. for (var i = 0; i < res.length; i++) {
  100. var option = $('<option>');
  101. option.val(res[i].fCode);
  102. option.text(res[i].fCode);
  103. $('select[name=pcode]').append(option);
  104. }
  105. form.render();
  106. }
  107. });
  108. }
  109. function loadGrid() {
  110. var obj = {
  111. startTime: $('#starttime').val(),
  112. endTime: $('#endtime').val(),
  113. macModel: $('select[name=macmodel]').val(),
  114. pCode: $('select[name=pcode]').val()
  115. };
  116. var eTbl = table.render({
  117. elem: '#tbl',
  118. url: '/UnityWebApi/Analysis/GetAlarmCodeGrid', //数据接口
  119. where: obj,
  120. height: 400,
  121. page: false, //开启分页
  122. toolbar:'#toolbarDemo',
  123. cols: [[ //表头
  124. { type: 'numbers' },
  125. { field: 'name', title: '报警代码', width: '48%', sort: true },
  126. { field: 'count', title: '报警次数', width: '48%', sort: true }
  127. ]]
  128. });
  129. }
  130. });