HEU_SCORE

used to calculate average scores for HEU students

当前为 2021-04-05 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name HEU_SCORE
  3. // @namespace Xiuchen
  4. // @version 0.1
  5. // @description used to calculate average scores for HEU students
  6. // @author Xiuchen
  7. // @match https://edusys.wvpn.hrbeu.edu.cn/jsxsd/kscj/cjcx_list
  8. // @match http://edusys.hrbeu.edu.cn/jsxsd/kscj/cjcx_list
  9. // @grant none
  10. // @require https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js
  11. // ==/UserScript==
  12.  
  13. (function() {
  14. 'use strict';
  15. //alert("正在计算均分");
  16. var list = document.getElementById("dataList");
  17. var avg = 0, cnt = 0;
  18. if(list.rows.length > 1 && list.rows[1].cells[0].innerHTML != "未查询到数据"){
  19. var sum_score = 0, sum_cre = 0;
  20. for(var i = 1; i < list.rows.length; i++){
  21. var tmp = list.rows[i];
  22. var sc;
  23. if(tmp.cells[4].getElementsByTagName("a")[0] == undefined) sc = tmp.cells[4].innerHTML;
  24. else sc = tmp.cells[4].getElementsByTagName("a")[0].innerHTML;
  25. var cre = parseFloat(tmp.cells[5].innerHTML);
  26. if(sc == "---"){
  27. cnt++;
  28. continue;
  29. }
  30. else if(sc == "优秀") sc = 95;
  31. else if(sc == "良好") sc = 85;
  32. else if(sc == "中等") sc = 75;
  33. else if(sc == "及格") sc = 75;
  34. sum_score += sc * cre;
  35. sum_cre += cre;
  36. }
  37. avg = sum_score / sum_cre;
  38. avg = avg.toFixed(2);
  39. }
  40. $("body").append(" <div id='avg_score' style='left: 10px;bottom: 10px;background: #e5f2ff;overflow: hidden;z-index: 9999;position: fixed;padding:5px;text-align:center;width: 200px;height: 200px;border-bottom-left-radius: 4px;border-bottom-right-radius: 4px;border-top-left-radius: 4px;border-top-right-radius: 4px;'> </div>");
  41. var by = document.getElementById("avg_score");
  42. //添加label ,存放指标名称
  43.  
  44. //姓名学号
  45. var lab_name = document.createElement("p");
  46. lab_name.innerText = "姓名:" + document.getElementById("Top1_divLoginName").innerHTML;
  47. lab_name.style.fontSize = "150%";
  48. by.appendChild(lab_name);
  49.  
  50. //成绩
  51. var lab_score = document.createElement("p");
  52. lab_score.innerText = "平均分:" + avg.toString();
  53. lab_score.style.fontSize = "200%";
  54. by.appendChild(lab_score);
  55.  
  56. //挂科门数
  57. var lab_fail = document.createElement("p");
  58. lab_fail.innerHTML = "您有 " + "<strong style='font-size:22px; color:red'>" +cnt.toString() + "</strong>" + " 门挂科,挂科成绩未计入均分";
  59. lab_fail.style.fontSize = "15px";
  60. by.appendChild(lab_fail);
  61. // Your code here...
  62. })();