login.js 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. $(function () {
  2. var isSSo = location.search.length > 0;//是否单点登录
  3. if (isSSo) {
  4. $('.container').hide();
  5. login();
  6. }
  7. var hasClick = false; //是否已经点击过登录按钮
  8. // 兼容ie的placeholder
  9. $('input, textarea').placeholder();
  10. // 登录点击
  11. $('#login').on('click', login);
  12. // 登录方法
  13. function login() {
  14. if (hasClick) return;
  15. hasClick = true;
  16. var name = $('#name').val()
  17. var pwd = $('#pwd').val()
  18. var data = {
  19. username: name,
  20. password: pwd
  21. }
  22. // 单点登录 start
  23. var ssoStr = '';
  24. var ssoJson;
  25. if (isSSo) {
  26. ssoStr = location.search.replace('?', '').split('&')[0].split('=')[1];
  27. ssoStr = Base64.decode(decodeURIComponent(ssoStr));
  28. ssoJson = JSON.parse(ssoStr);
  29. }
  30. var postData = isSSo ? { username: ssoJson.a, password: ssoJson.r, t: false } : data;
  31. // 单点登录 end
  32. $.ajax({
  33. type: "POST",
  34. contentType: "application/json;charset=UTF-8",
  35. url: baseUrl + "auth/reqlogin",
  36. data: JSON.stringify(postData),
  37. success: function (res) {
  38. if (res.state == 200) {
  39. if (isSSo) {
  40. sessionStorage.setItem('isSSo', '1');//单点登录
  41. } else {
  42. sessionStorage.setItem('isSSo', '0');//正常登录
  43. }
  44. sessionStorage.setItem('loginUser', JSON.stringify(res.data.requester));
  45. //判断版本类别
  46. $.ajax({
  47. type: "POST",
  48. contentType: "application/json;charset=UTF-8",
  49. url: baseUrl + "sysinfo/data/fetchDataList/systemConfiguration",
  50. data: JSON.stringify({ "idx": 0, "sum": 1000 }),
  51. success: function (result) {
  52. if (result.status == 200) {
  53. var list = result.list;
  54. var repairMain = list.find((v) => v.keyconfig == "repairMain"); //报修主体
  55. var incidentWithConsumable = list.find(
  56. (v) => v.keyconfig == "incidentWithConsumable"
  57. ); //是否绑定耗材
  58. var wxIncidentWithCmdb = list.find(
  59. (v) => v.keyconfig == "wxIncidentWithCmdb"
  60. ); //是否绑定资产
  61. var reqHasCategory = list.find(
  62. (v) => v.keyconfig == "reqHasCategory"
  63. ); //获取是否自动建单
  64. sessionStorage.setItem(
  65. "repair_main",
  66. JSON.stringify(repairMain)
  67. );
  68. sessionStorage.setItem(
  69. "incidentWithConsumable",
  70. incidentWithConsumable.valueconfig
  71. );
  72. sessionStorage.setItem(
  73. "wxIncidentWithCmdb",
  74. wxIncidentWithCmdb.valueconfig
  75. );
  76. sessionStorage.setItem("reqHasCategory", JSON.stringify(reqHasCategory));
  77. window.location.href = 'index.html';
  78. }
  79. hasClick = false;
  80. },
  81. //请求失败,包含具体的错误信息
  82. error: function (e) {
  83. console.log(e.status);
  84. console.log(e.responseText);
  85. }
  86. });
  87. } else {
  88. alert('用户名或密码错误,请重试!');
  89. hasClick = false;
  90. }
  91. },
  92. //请求失败,包含具体的错误信息
  93. error: function (e) {
  94. console.log(e.status);
  95. console.log(e.responseText);
  96. }
  97. });
  98. }
  99. // enter登录
  100. $(document).bind('keypress', function (e) {
  101. var keyCode;
  102. if (window.event) {
  103. keyCode = e.keyCode
  104. } else if (e.which) {
  105. keycode = e.which;
  106. }
  107. if (e.keyCode != 13) {
  108. return;
  109. }
  110. $("#login").trigger("click");
  111. return false;
  112. });
  113. })