login.js 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. $(function () {
  2. //因项目众多,前端为了加以区分,所以用域名加以判断,后期有更好的方式可以自行修改
  3. // 中南财大
  4. var isZncd = document.domain === "itsm.zuel.edu.cn";
  5. // 华科
  6. var isHk =
  7. document.domain === "192.168.3.110" ||
  8. document.domain === "192.168.3.69" ||
  9. document.domain === "172.16.7.91" ||
  10. document.domain === "192.168.3.105" ||
  11. document.domain === "localhost";
  12. if (isZncd) {
  13. sessionStorage.setItem("version_qd", "isZncd");
  14. }
  15. if (isHk) {
  16. sessionStorage.setItem("version_qd", "isHk");
  17. }
  18. $("#head").append(
  19. template("favicon_temp", { isVersion: sessionStorage.getItem("version_qd") })
  20. );
  21. // $("#logo").html(
  22. // template("logo_temp", { isVersion: sessionStorage.getItem("version_qd") })
  23. // );
  24. var isSSo = true; //是否单点登录
  25. if (isSSo) {
  26. $(".container").hide();
  27. login();
  28. }
  29. var hasClick = false; //是否已经点击过登录按钮
  30. // 兼容ie的placeholder
  31. $("input, textarea").placeholder();
  32. // 登录点击
  33. $("#login").on("click", login);
  34. // 登录方法
  35. function login() {
  36. if (hasClick) return;
  37. hasClick = true;
  38. var name = $("#name").val();
  39. var pwd = $("#pwd").val();
  40. var data = {
  41. username: name,
  42. password: pwd,
  43. };
  44. // 单点登录 start
  45. // var ssoStr = "";
  46. // var ssoJson;
  47. // if (isSSo) {
  48. // ssoStr = location.search.replace("?", "").split("&")[0].split("=")[1];
  49. // ssoStr = Base64.decode(decodeURIComponent(ssoStr));
  50. // ssoJson = JSON.parse(ssoStr);
  51. // }
  52. // var postData = isSSo
  53. // ? { username: ssoJson.a, password: ssoJson.r, t: false }
  54. // : data;
  55. // 单点登录 end
  56. $.ajax({
  57. type: "POST",
  58. contentType: "application/json;charset=UTF-8",
  59. url: baseUrl + "auth/sslLogin",
  60. data: JSON.stringify({type: 'req'}),
  61. success: function (res) {
  62. if (res.state == 200) {
  63. if (isSSo) {
  64. sessionStorage.setItem("isSSo", "1"); //单点登录
  65. } else {
  66. sessionStorage.setItem("isSSo", "0"); //正常登录
  67. }
  68. sessionStorage.setItem(
  69. "loginUser",
  70. JSON.stringify(res.data.requester)
  71. );
  72. //判断版本类别
  73. // ----------------------start--------------------
  74. //报修主体
  75. var promise1 = $.ajax({
  76. type: "POST",
  77. contentType: "application/json;charset=UTF-8",
  78. url: baseUrl + "sysinfo/data/fetchDataList/systemConfiguration",
  79. data: JSON.stringify({ idx: 0, sum: 1, systemConfiguration: {keyconfig: 'repairMain'} }),
  80. });
  81. //是否绑定资产
  82. var promise2 = $.ajax({
  83. type: "POST",
  84. contentType: "application/json;charset=UTF-8",
  85. url: baseUrl + "sysinfo/data/fetchDataList/systemConfiguration",
  86. data: JSON.stringify({ idx: 0, sum: 1, systemConfiguration: {keyconfig: 'wxIncidentWithCmdb'} }),
  87. });
  88. //获取是否自动建单
  89. var promise3 = $.ajax({
  90. type: "POST",
  91. contentType: "application/json;charset=UTF-8",
  92. url: baseUrl + "sysinfo/data/fetchDataList/systemConfiguration",
  93. data: JSON.stringify({ idx: 0, sum: 1, systemConfiguration: {keyconfig: 'reqHasCategory'} }),
  94. });
  95. //是否增加房间号选择
  96. var promise4 = $.ajax({
  97. type: "POST",
  98. contentType: "application/json;charset=UTF-8",
  99. url: baseUrl + "sysinfo/data/fetchDataList/systemConfiguration",
  100. data: JSON.stringify({ idx: 0, sum: 1, systemConfiguration: {keyconfig: 'ifRoom'} }),
  101. });
  102. Promise.all([promise1, promise2, promise3, promise4]).then(function([data1, data2, data3, data4]){
  103. console.log(data1, data2, data3, data4);
  104. if(data1.status == 200 && data2.status == 200 && data3.status == 200 && data4.status == 200){
  105. var list1 = data1.list || [];
  106. var list2 = data2.list || [];
  107. var list3 = data3.list || [];
  108. var list4 = data4.list || [];
  109. if(list1.length && list2.length && list3.length && list4.length){
  110. sessionStorage.setItem("repair_main", JSON.stringify(list1[0]));
  111. sessionStorage.setItem("wxIncidentWithCmdb", list2[0].valueconfig);
  112. sessionStorage.setItem("reqHasCategory", JSON.stringify(list3[0]));
  113. sessionStorage.setItem("ifRoom", list4[0].valueconfig);
  114. hasClick = false;
  115. window.location.href = "index.html";
  116. }else{
  117. hasClick = false;
  118. alert("系统配置错误!");
  119. }
  120. }else{
  121. hasClick = false;
  122. alert("系统配置错误!");
  123. }
  124. }).catch(function(){
  125. hasClick = false;
  126. alert("系统配置错误!");
  127. });
  128. // ----------------------end--------------------
  129. } else if(res.state == 501) {
  130. window.location.href = "index.html";
  131. hasClick = false;
  132. } else {
  133. alert("用户名或密码错误,请重试!");
  134. hasClick = false;
  135. }
  136. },
  137. //请求失败,包含具体的错误信息
  138. error: function (e) {
  139. console.log(e.status);
  140. console.log(e.responseText);
  141. },
  142. });
  143. }
  144. // enter登录
  145. $(document).bind("keypress", function (e) {
  146. var keyCode;
  147. if (window.event) {
  148. keyCode = e.keyCode;
  149. } else if (e.which) {
  150. keycode = e.which;
  151. }
  152. if (e.keyCode != 13) {
  153. return;
  154. }
  155. $("#login").trigger("click");
  156. return false;
  157. });
  158. });