index.html 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287
  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  6. <link rel="shortcut icon" href="/img/logo.png" />
  7. <link rel="bookmark" href="/img/logo.png" />
  8. <link rel="stylesheet" href="../DashBoard.css?v3" />
  9. <script src="/Plugins/jquery-3.4.1/jquery-3.4.1.min.js"></script>
  10. <script src="/Plugins/xrequest/xrequest.min.js"></script>
  11. <script src="/Plugins/xcountto/xcountTo.min.js"></script>
  12. <title>东科软件</title>
  13. </head>
  14. <body>
  15. <div class="m4_box_1920_1080">
  16. <div class="m4_box_title" onclick="showHelp()" style="cursor:pointer">
  17. <div class="m4_box_title_arrow"></div><div class="m4_box_title_arrow2"></div> <div>月交接数</div><span class="m4_box_title_loading" id="报表加载"></span>
  18. </div>
  19. <div class="m4_box_body">
  20. <div style="width:1740px;height:400px;display:flex;flex-direction:row;">
  21. <div style="width: 50%;height:400px;padding-right:20px;">
  22. <!--成品交接产品型号-->
  23. <table cellspacing="0" cellpadding="0" border="0" style="width:100%;">
  24. <tr class="tr_title_warning">
  25. <td colspan="5" style="color:white;">本月生产前10型号(大件)</td>
  26. </tr>
  27. <tr class="tr_title_warning">
  28. <td id="g01"></td>
  29. <td id="g02"></td>
  30. <td id="g03"></td>
  31. <td id="g04"></td>
  32. <td id="g05"></td>
  33. </tr>
  34. <tr class="tr_bg_light_warning" style="height:100px;">
  35. <td id="goods01" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  36. <td id="goods02" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  37. <td id="goods03" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  38. <td id="goods04" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  39. <td id="goods05" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  40. </tr>
  41. </table>
  42. <table cellspacing="0" cellpadding="0" border="0" style="width:100%;padding-top:20px;">
  43. <tr class="tr_title_warning">
  44. <td id="g06"></td>
  45. <td id="g07"></td>
  46. <td id="g08"></td>
  47. <td id="g09"></td>
  48. <td id="g10"></td>
  49. </tr>
  50. <tr class="tr_bg_light_warning" style="height:100px;">
  51. <td id="goods06" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  52. <td id="goods07" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  53. <td id="goods08" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  54. <td id="goods09" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  55. <td id="goods10" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  56. </tr>
  57. </table>
  58. </div>
  59. <div style="width: 50%;height:400px;padding-left:0px;">
  60. <!--成品交接产品型号-->
  61. <table cellspacing="0" cellpadding="0" border="0" style="width:100%;">
  62. <tr class="tr_title_warning">
  63. <td colspan="5" style="color:white;">本月生产前10型号(小件)</td>
  64. </tr>
  65. <tr class="tr_title_warning">
  66. <td id="g11"></td>
  67. <td id="g12"></td>
  68. <td id="g13"></td>
  69. <td id="g14"></td>
  70. <td id="g15"></td>
  71. </tr>
  72. <tr class="tr_bg_light_warning" style="height:100px;">
  73. <td id="goods11" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  74. <td id="goods12" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  75. <td id="goods13" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  76. <td id="goods14" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  77. <td id="goods15" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  78. </tr>
  79. </table>
  80. <table cellspacing="0" cellpadding="0" border="0" style="width:100%;padding-top:20px;">
  81. <tr class="tr_title_warning">
  82. <td id="g16"></td>
  83. <td id="g17"></td>
  84. <td id="g18"></td>
  85. <td id="g19"></td>
  86. <td id="g20"></td>
  87. </tr>
  88. <tr class="tr_bg_light_warning" style="height:100px;">
  89. <td id="goods16" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  90. <td id="goods17" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  91. <td id="goods18" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  92. <td id="goods19" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  93. <td id="goods20" data-speed="2000" style="font-size: 40px; width: 20%"></td>
  94. </tr>
  95. </table>
  96. </div>
  97. </div>
  98. <div style="width:1740px;height:360px;display:flex;flex-direction:row;padding-top:30px">
  99. <div style="width: 100%;height:360px;">
  100. <!--成品交接数据柱图-->
  101. <canvas id="canvasProduct" style="-moz-user-select: none;-webkit-user-select: none;-ms-user-select: none; height:360px;width:100%"></canvas>
  102. </div>
  103. </div>
  104. </div>
  105. </div>
  106. <script>
  107. //缺陷统计刷新时间
  108. var refreshTime1 = 240000;
  109. var currentTime1 = 0;
  110. var doGetData;
  111. var doGetTime;
  112. var frameHeight;
  113. var tableHeight;
  114. var offsetHeight = 20;
  115. $(document).ready(function () {
  116. initData();
  117. doGetData = setInterval(function () { timeUpdate(); }, 1000);
  118. });
  119. //帮助说明
  120. function showHelp() {
  121. var message = "统计说明:" + "\n";
  122. message += "生产前8型号大件: 大件产成品交接TOP8" + "\n";
  123. message += "生产前8型号小件: 小件产成品交接TOP8" + "\n";
  124. message += "产成品交接数据计划: web端看板配置-看板工序产量计划 计划数/30" + "\n";
  125. message += "产成品交接数据实际: 大件产成品交接每日合计" + "\n";
  126. alert(message);
  127. }
  128. function timeUpdate() {
  129. if (currentTime1 <= 0) {
  130. //clearData();
  131. setTimeout(loadData(), 15000);
  132. //loadData();
  133. currentTime1 = refreshTime1;
  134. }
  135. else {
  136. if (currentTime1 > 0) {
  137. $('#报表加载').html('刷新:' + currentTime1 / 1000 + ' 秒');
  138. currentTime1 = currentTime1 - 1000;
  139. }
  140. }
  141. }
  142. function clearData() {
  143. //清除数据
  144. //工序产量===================================
  145. window.Product.data.datasets[0].data = [];
  146. window.Product.data.datasets[1].data = [];
  147. window.Product.update();
  148. }
  149. function loadData() {
  150. //===================================================
  151. $.get("rpt.ashx?m=BIG", function (data) {
  152. var jsondata = JSON.parse(data);
  153. if (jsondata["success"] == true) {
  154. for (var i = 1; i < jsondata["total"] + 1; i++) {
  155. $("#g" + i.toString().padStart(2, '0')).text(jsondata["rows"][i - 1]["GOODSCODE"]);
  156. $("#goods" + i.toString().padStart(2, '0')).text(jsondata["rows"][i - 1]["NUM"]);
  157. }
  158. }
  159. });
  160. $.get("rpt.ashx?m=SMALL", function (data) {
  161. var jsondata = JSON.parse(data);
  162. if (jsondata["success"] == true) {
  163. for (var i = 1; i < jsondata["total"] + 1; i++) {
  164. $("#g" + (10 + i).toString()).text(jsondata["rows"][i - 1]["GOODSCODE"]);
  165. $("#goods" + (10 + i).toString()).text(jsondata["rows"][i - 1]["NUM"]);
  166. }
  167. }
  168. });
  169. $.get("rpt.ashx?m=TOTAL", function (data) {
  170. var jsondata = JSON.parse(data);
  171. let a = [];
  172. let c = [];
  173. if (jsondata["success"] == true) {
  174. var num = parseInt(jsondata["rows"].length);
  175. for (var i = 0; i < num; i++) {
  176. a.push(parseFloat(jsondata["rows"][i]["RATE"]));
  177. c.push(jsondata["rows"][i]["TIME"]);
  178. }
  179. window.Product.data.datasets[0].data = a;
  180. window.Product.data.labels = c;
  181. window.Product.update();
  182. }
  183. });
  184. }
  185. function initData() {
  186. window.chartColors = {
  187. red: 'rgb(255, 99, 132)',
  188. orange: 'rgb(255, 159, 64)',
  189. yellow: 'rgb(255, 250, 86)',
  190. green: 'rgb(75, 192, 192)',
  191. blue: 'rgb(54, 162, 250)',
  192. purple: 'rgb(153, 102, 255)',
  193. grey: 'rgb(231,233,237)'
  194. };
  195. var color = Chart.helpers.color;
  196. window.randomScalingFactor = function (num) {
  197. return Math.round(Math.random() * num);
  198. }
  199. Chart.defaults.global.defaultFontColor = 'white';
  200. Chart.defaults.global.defaultFontSize = 24;
  201. Chart.defaults.global.legend.display = false;
  202. //月交接数据=======================================
  203. window.configProduct = {
  204. data: {
  205. labels: [0, 0, 0, 0, 0, 0],
  206. datasets: [{
  207. label: "达成率",
  208. fill: false,
  209. backgroundColor: color(window.chartColors.blue).alpha(0.6).rgbString(),
  210. borderColor: window.chartColors.blue,
  211. borderWidth: 2,
  212. pointRadius: 12,
  213. data: [0, 0, 0, 0, 0, 0]
  214. }
  215. ]
  216. },
  217. type: 'line',
  218. options: {
  219. responsive: true,
  220. title: {
  221. display: true,
  222. text: '达成率'
  223. },
  224. tooltips: {
  225. mode: 'index',
  226. intersect: false,
  227. },
  228. hover: {
  229. mode: 'nearest',
  230. intersect: true
  231. },
  232. scales: {
  233. xAxes: [{
  234. display: true,
  235. scaleLabel: {
  236. display: false,
  237. labelString: ''
  238. }
  239. }],
  240. yAxes: [{
  241. display: true,
  242. scaleLabel: {
  243. display: false,
  244. labelString: 'Value'
  245. },
  246. ticks: {
  247. min: 0,
  248. //stepSize: 50,
  249. //max: 300
  250. }
  251. }]
  252. }
  253. }
  254. };
  255. var ctxProduct = document.getElementById("canvasProduct").getContext("2d");
  256. window.Product = new Chart(ctxProduct, configProduct);
  257. //===================================================
  258. }
  259. </script>
  260. <script src="/Plugins/chartjs-2.8.0/chart-2.8.min.js"></script>
  261. <script src="/Plugins/chartjs-2.8.0/chartjs-plugin-datalabels.js"></script>
  262. <script src="/Plugins/chartjs-2.8.0/utils.js"></script>
  263. <script src="/Plugins/circleChart/circleChart.min.js"></script>
  264. </body>
  265. </html>