lazhang-data.js 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238
  1. var passNumber = [];
  2. var failNumber = [];
  3. var failrate = [];
  4. var stackeverynum = [];
  5. var failnum = 0;
  6. var num = 0;
  7. var hispass = [];
  8. var hisfail = [];
  9. var hisstack = [];
  10. var hisrate = [];
  11. var goodpass = [];
  12. var goodid = [];
  13. var goodfailrate = [];
  14. var goodpass1 = [];
  15. var goodid1 = [];
  16. var goodfailrate1 = [];
  17. var badpass = [];
  18. var badid = [];
  19. var badfailrate = [];
  20. var badpass1 = [];
  21. var badid1 = [];
  22. var badfailrate1 = [];
  23. var n = 0;
  24. var sectorID = [];
  25. var namedata = [];
  26. var lazhang = {};
  27. var scheduleId = utils_get_param("scheduleId");
  28. var flowId = utils_get_param("flowId");
  29. function first_success(obj, sta) {
  30. let output = first_parse(this, obj);
  31. let i, j, k, z;
  32. failnum = 0;
  33. let x = 0;
  34. let worksum = [];
  35. z = 0;
  36. if (output.list == undefined || output.list.length == 0) {
  37. send_alert("没有数据");
  38. }
  39. output.list.forEach(function(val,it,arr){
  40. var isExist = false;
  41. userIDs.forEach(function(vals){
  42. if(vals == val.userId){
  43. isExist = true;
  44. }
  45. });
  46. if(!isExist) userIDs.push(val.userId);
  47. });
  48. if (output.list.length > 0) {
  49. sectorID[0] = getSectorId(output.list[0].spotId);
  50. for (i = 1; i < output.list.length; i++) {
  51. var thisUid = getSectorId(output.list[i].spotId);
  52. x = 0;
  53. for (j = 0; j < sectorID.length; j++) {
  54. if (sectorID[j] === thisUid) {
  55. x = 1;
  56. break;
  57. }
  58. }
  59. if (x === 0) {
  60. sectorID.push(thisUid);
  61. }
  62. }
  63. j = 0;
  64. for (k = 0; k < sectorID.length; k++) {
  65. var uid = sectorID[k];
  66. z = 0;
  67. passNumber[k] = 0;
  68. failNumber[k] = 0;
  69. stackeverynum[k] = 0;
  70. for (i = 0; i < output.list.length; i++) {
  71. if (uid === getSectorId(output.list[i].spotId)) {
  72. passNumber[k] = output.list[i].passNum + passNumber[j];
  73. failNumber[k] = output.list[i].failNum + failNumber[j];
  74. stackeverynum[k] = output.list[i].due + stackeverynum[j];
  75. z++;
  76. }
  77. }
  78. if (failNumber[k] + passNumber[k] == 0) {
  79. failrate[k] = 0;
  80. }
  81. else {
  82. failrate[k] = failNumber[k] / (failNumber[k] + passNumber[k]) * 100;
  83. }
  84. /*stackeverynum[k]=stackeverynum[k]/z;*/
  85. ///
  86. }
  87. }
  88. for (i = 1; i <= 3; i++) {
  89. load_flows_history_data(i);
  90. }
  91. showChart();
  92. lazhang.timer = setInterval(request_data_realtime, 1000);
  93. }
  94. function request_data_realtime() {
  95. get_data("fcWorkScheduleLoad/list?scheduleId=" + scheduleId, realtime_success);
  96. //load_flows_history_realtime_data();
  97. load_table_red_rank();
  98. load_table_red_rank1();
  99. load_table_black_rank();
  100. load_table_black_rank1();
  101. }
  102. function load_flows_history_data(nnm) {
  103. // 请注意type必须在结尾
  104. get_data("fcBiFlowDaily/list?scheduleId="+scheduleId+ "&flowId=" + flowId+"&type=" + nnm , history_success);
  105. }
  106. function load_flows_history_realtime_data() {
  107. // 请注意type必须在结尾
  108. get_data("fcBiFlowDaily/list?flowId=" + flowId +"&type=1", history_success);
  109. }
  110. function get_stop_scheudle1() {
  111. var out = confirm("真的要下班吗?");
  112. if(out == true){
  113. get_stop_scheudle();
  114. }
  115. else{
  116. }
  117. }
  118. function get_stop_scheudle() {
  119. get_data("fcWorkSchedule/stopSchedule?scheduleId=" + scheduleId, stopSuccess);
  120. }
  121. function stopSuccess(obj, sta) {
  122. send_alert("下班操作成功! <a href='denglu.html'> 点击这里返回控制主页 </a>");
  123. }
  124. function add_success(obj, sta) {
  125. var history1 = first_parse(this, obj);
  126. var i, j;
  127. console.log(" history1 : ");
  128. console.log(history1);
  129. hispass[t] = 0;
  130. hisfail[t] = 0;
  131. hisstack[t] = 0;
  132. hisrate[t] = 0;
  133. var lengthnum = history1.length - 1;
  134. for (i = lengthnum; i < history1.length; i++) {
  135. hispass[t] = history1[i].passNum + hispass[t];
  136. hisfail[t] = history1[i].failNum + hisfail[t];
  137. hisstack[t] = history1[i].avgDue + hisstack[t];
  138. }
  139. if (hispass[t] + hisfail[t] == 0) {
  140. hisrate[t] = 0;
  141. }
  142. t++;
  143. }
  144. function realtime_success(obj, sta) {
  145. var output = first_parse(this, obj);
  146. //在这里排序 spo\
  147. console.log(" output : ");
  148. console.log(output);
  149. var i, j, k, z;
  150. failnum = 0;
  151. var x = 0;
  152. var worksum = [];
  153. var hhp = 0, hhf = 0, hhs = 0;
  154. if (output.list.length > 0) {
  155. sectorID[0] = getSectorId(output.list[0].spotId);
  156. passNumber[0] = 0;
  157. failNumber[0] = 0;
  158. stackeverynum[0] = 0;
  159. z = 0;
  160. for (i = 1; i < output.list.length; i++) {
  161. var thisUid = getSectorId(output.list[i].spotId);
  162. x = 0;
  163. for (j = 0; j < sectorID.length; j++) {
  164. if (sectorID[j] === thisUid) {
  165. x = 1;
  166. break;
  167. }
  168. }
  169. if (x === 0) {
  170. sectorID.push(thisUid);
  171. }
  172. }
  173. j = 0;
  174. for (k = 0; k < sectorID.length; k++) {
  175. var uid = sectorID[k];
  176. z = 0;
  177. passNumber[k] = 0;
  178. failNumber[k] = 0;
  179. stackeverynum[k] = 0;
  180. for (i = 0; i < output.list.length; i++) {
  181. if (uid === getSectorId(output.list[i].spotId)) {
  182. passNumber[k] = output.list[i].passNum + passNumber[k];
  183. failNumber[k] = output.list[i].failNum + failNumber[k];
  184. stackeverynum[k] = output.list[i].due + stackeverynum[k];
  185. z++;
  186. }
  187. }
  188. failrate[k] = get_factor(passNumber[k], failNumber[k]);
  189. }
  190. output.list.forEach(function (val, fid, arr) {
  191. hhp += val.passNum;
  192. hhf += val.failNum;
  193. hhs += val.due;
  194. })
  195. }
  196. schedulepass = hhp;
  197. schedulefail = hhf;
  198. if (output.list.length > 0) {
  199. schedulestack = hhs / output.list.length;
  200. } else {
  201. schedulestack = 0;
  202. }
  203. update_all_history();
  204. updateChart();
  205. }