common.js 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228
  1. function load_table_red_rank() {
  2. get_data("fcBiWorkerDaily/get?type=0&limit=3", on_red_rank_success);
  3. }
  4. function load_table_black_rank() {
  5. get_data("fcBiWorkerDaily/get?type=4&limit=3", on_black_rank_success);
  6. }
  7. function history_success(obj, sta) {
  8. var history = first_parse(this, obj);
  9. var i, j, t;
  10. console.log(" history : ");
  11. console.log(history);
  12. if (this.url.indexOf("type=1") >= 0) {
  13. t = 1;
  14. } else if (this.url.indexOf("type=2") >= 0) {
  15. t = 2;
  16. } else if (this.url.indexOf("type=3") >= 0) {
  17. t = 3;
  18. } else {
  19. t = 0;
  20. }
  21. if (t == 2 || t == 3) {
  22. hispass[t] = 0;
  23. hisfail[t] = 0;
  24. hisstack[t] = 0;
  25. hisrate[t] = 0;
  26. for (i = 0; i < history.length; i++) {
  27. hispass[t] = history[i].passNum + hispass[t];
  28. hisfail[t] = history[i].failNum + hisfail[t];
  29. hisstack[t] = history[i].avgDue + hisstack[t];
  30. }
  31. if (history.length != 1) {
  32. if (hispass[t] + hisfail[t] == 0) {
  33. hisrate[t] = 0;
  34. } else {
  35. hisrate[t] = Math.floor(hisfail[t] * 10000 / (hispass[t] + hisfail[t])) / 100;
  36. }
  37. }
  38. } else if (t == 1) {
  39. hispass[1] = history[0].passNum;
  40. hisfail[1] = history[0].failNum;
  41. hisstack[1] = history[0].avgDue;
  42. if (hispass[1] + hisfail[1] == 0) {
  43. hisrate[1] = 0;
  44. } else {
  45. hisrate[1] = Math.floor(hisfail[1] * 10000 / (hispass[1] + hisfail[1])) / 100;
  46. }
  47. }
  48. hispass[0] = history[history.length - 1].passNum;
  49. hisfail[0] = history[history.length - 1].failNum;
  50. hisstack[0] = history[history.length - 1].avgDue;
  51. if (hispass[0] + hisfail[0] == 0) {
  52. hisrate[0] = 0;
  53. } else {
  54. hisrate[0] = Math.floor(hisfail[0] * 10000 / (hispass[0] + hisfail[0])) / 100;
  55. }
  56. }
  57. function isUserOfThisFlow(uid) {
  58. var isExist = false;
  59. userIDs.forEach(function (vals) {
  60. if (vals == uid) {
  61. isExist = true;
  62. }
  63. });
  64. return isExist;
  65. }
  66. function on_red_rank_success(obj, sta) {
  67. var redchart = first_parse(this, obj);
  68. var i, j;
  69. i = j = 0;
  70. console.log(" redchart : ");
  71. console.log(redchart);
  72. for (i = 0; i < redchart.list.length; i++) {
  73. goodid[i] = getUserName(redchart.list[i].workerId);
  74. goodpass[i] = redchart.list[i].passNum;
  75. if(redchart.list[i].passNum + redchart.list[i].failNum > 0) {
  76. goodfailrate[i] = Math.floor(redchart.list[i].failNum * 10000 / (redchart.list[i].passNum + redchart.list[i].failNum)) / 100;
  77. }else{
  78. goodfailrate[i] = 0;
  79. }
  80. if(isUserOfThisFlow(redchart.list[i].workerId)){
  81. goodColor[i] = 'red';
  82. }else{
  83. goodColor[i] = '';
  84. }
  85. }
  86. }
  87. function on_black_rank_success(obj, sta) {
  88. var blackchart = first_parse(this, obj);
  89. var i, j;
  90. i = j = 0;
  91. console.log(" black chart : ");
  92. console.log(blackchart);
  93. for (i = 0; i < blackchart.list.length; i++) {
  94. badid[i] = getUserName(blackchart.list[i].workerId);
  95. badpass[i] = blackchart.list[i].passNum;
  96. //badfailrate[i] = blackchart.list[i].failRate / 100;
  97. if(blackchart.list[i].passNum + blackchart.list[i].failNum > 0) {
  98. badfailrate[i] = Math.floor(blackchart.list[i].failNum * 10000 / (blackchart.list[i].passNum + blackchart.list[i].failNum)) / 100;
  99. }else{
  100. badfailrate[i] = 0;
  101. }
  102. if(isUserOfThisFlow(blackchart.list[i].workerId)){
  103. badColor[i] = 'green';
  104. }else{
  105. badColor[i] = '';
  106. }
  107. }
  108. }
  109. function getSpotHtml(htmlbody, i) {
  110. if(typeof hispass[i] === "undefined"){
  111. htmlbody += "<tr>";
  112. htmlbody += `<tr>
  113. <td> - </td>
  114. <td> - </td>
  115. <td> - </td>
  116. <td> - </td>
  117. <td> - </td>
  118. </tr>`;
  119. htmlbody += "</tr>";
  120. return htmlbody;
  121. }
  122. htmlbody += "<tr>";
  123. htmlbody += `<tr>
  124. <td>${timeday[i]}</td>
  125. <td>${hispass[i]}</td>
  126. <td>${hisfail[i]}</td>
  127. <td>${hisstack[i]}</td>
  128. <td>${hisrate[i] + '%'}</td>
  129. </tr>`;
  130. htmlbody += "</tr>";
  131. return htmlbody;
  132. }
  133. function getSpotHtml1(htmlbody, i) {
  134. if(typeof goodid[i] === "undefined"){
  135. htmlbody += "<tr>";
  136. htmlbody += `<tr>
  137. <td> - </td>
  138. <td> - </td>
  139. <td> - </td>
  140. </tr>`;
  141. htmlbody += "</tr>";
  142. return htmlbody;
  143. }
  144. htmlbody += "<tr>";
  145. htmlbody += `<tr style="background-color: ${goodColor[i]}">
  146. <td>${goodid[i]}</td>
  147. <td>${goodpass[i]}</td>
  148. <td>${goodfailrate[i] + '%'}</td>
  149. </tr>`;
  150. htmlbody += "</tr>";
  151. return htmlbody;
  152. }
  153. function getSpotHtml2(htmlbody, i) {
  154. if(typeof badid[i] === "undefined"){
  155. htmlbody += "<tr>";
  156. htmlbody += `<tr style="background-color: ${badColor[i]}">
  157. <td> - </td>
  158. <td> - </td>
  159. <td> - </td>
  160. </tr>`;
  161. htmlbody += "</tr>";
  162. return htmlbody;
  163. }
  164. htmlbody += "<tr>";
  165. htmlbody += `<tr>
  166. <td>${badid[i]}</td>
  167. <td>${badpass[i]}</td>
  168. <td>${badfailrate[i] + '%'}</td>
  169. </tr>`;
  170. htmlbody += "</tr>";
  171. return htmlbody;
  172. }
  173. function showEachSpot() {
  174. var htmlbody = "", one_person = "";
  175. var i = 0;
  176. var triGap = 4;
  177. htmlbody = "";
  178. for (i = 0; i < triGap; i++) {
  179. htmlbody = getSpotHtml(htmlbody, i);
  180. }
  181. $("#rank-one").html(htmlbody);
  182. //console.log(htmlbody);
  183. }
  184. function showEachSpot1() {
  185. var htmlbody = "", one_person = "";
  186. var i = 0;
  187. var triGap = 3;
  188. htmlbody = "";
  189. for (i = 0; i < triGap; i++) {
  190. htmlbody = getSpotHtml1(htmlbody, i);
  191. }
  192. $("#rank-two").html(htmlbody);
  193. //console.log(htmlbody);
  194. }
  195. function showEachSpot2() {
  196. var htmlbody = "", one_person = "";
  197. var i = 0;
  198. var triGap = 3;
  199. htmlbody = "";
  200. for (i = 0; i < triGap; i++) {
  201. htmlbody = getSpotHtml2(htmlbody, i);
  202. }
  203. $("#rank-three").html(htmlbody);
  204. //console.log(htmlbody);
  205. }