init.js 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. /**
  2. * 功能:页面初始化
  3. * 作用:初始化用户的登录信息,同时避免用户不从登录页面登录的问题
  4. * @author 徐杨
  5. * @date 2015-8-22
  6. */
  7. $(function(){
  8. initation();
  9. });
  10. /**
  11. * 初始化窗口
  12. */
  13. function initation() {
  14. try {
  15. //加载首页标识,false:首页
  16. var isIndexFlag = false;
  17. //定义iframe加载的url,默认首页页面
  18. var idxurl = "/nwyj/page/main_index_iframe.html";
  19. /*** 增加了首页跳转新页面情况(用_blank方式打开新窗口) 康国前 2016年6月27号修改
  20. * 当window.name == '' && window.opener!=undefined 时是首页跳转的页面 ***/
  21. if(window.name==undefined||window.name == ''){//新跳转窗口
  22. if(window.opener&&!window.opener.closed){//首页跳转过来的页面
  23. //通过window.opener调用父窗口函数$.paramsToNextWindow()获取参数
  24. //参数形式{"name": 原来页面传过来的用户信息,"idxWorkUrl": iframe需要加载的url}
  25. var idxparams = window.opener.$.paramsToNextWindow();
  26. //重置页面name为用户信息
  27. window.name = idxparams.name;
  28. //重置iframe加载的URL
  29. idxurl = idxparams.idxWorkUrl;
  30. //重置window.opener为null
  31. window.opener = null;
  32. isIndexFlag = true;
  33. }else{
  34. window.location ='../';
  35. }
  36. }
  37. //初始话用户信息
  38. com.sinosoft.lz.system.user.LoginInfo.init(window.name);
  39. //验证用户是否存在
  40. $.ajax({
  41. url : $.pathname() + '/ws/sys/LoginService/isLive/'
  42. + com.sinosoft.lz.system.user.LoginInfo.getLogin_name()
  43. + '/'
  44. + com.sinosoft.lz.system.user.LoginInfo.getSessionID(),
  45. type : 'get',
  46. dataType : 'text',
  47. success : function(data) {
  48. if (data == '0') {
  49. //if(window.opener&&!window.opener.closed){//首页跳转过来的页面
  50. //window.opener.$.reSetTopWindow();
  51. var sessionID = top.com.sinosoft.lz.system.user.LoginInfo.getSessionID();
  52. //如果登陸失效,设置Cookie让所有页面都失效
  53. $.setCookie(sessionID+"openerror","error");
  54. //alert(sessionID+"openerror:setCookie");
  55. //alert(window.name);
  56. //}
  57. window.location = '../';
  58. } else {
  59. //登录成功,清楚用户失效Cookie
  60. $.removeCookie(com.sinosoft.lz.system.user.LoginInfo.getSessionID()+"openerror");
  61. //console.log(com.sinosoft.lz.system.user.LoginInfo.getSessionID()+"openerror:removeCookie");
  62. //$.clearAllCookies();
  63. var username = com.sinosoft.lz.system.user.LoginInfo.getLogin_name();
  64. var userid = com.sinosoft.lz.system.user.LoginInfo.getUser_id();
  65. var roleids = com.sinosoft.lz.system.user.LoginInfo.getRoleids();
  66. //var cropnames = com.sinosoft.lz.system.user.LoginInfo.getCorp_names();
  67. var real_name = com.sinosoft.lz.system.user.LoginInfo.getReal_name();
  68. var corp_name = com.sinosoft.lz.system.user.LoginInfo.getCorp_names();
  69. var deptname = com.sinosoft.lz.system.user.LoginInfo.getDeptnames();
  70. //初始话菜单和用户信息
  71. menuInit(roleids);
  72. /*****2016-05-20 老尚嫌显示角色名称太长,不显示角色名称,只显示单位名称和用户名称 徐威修改*******/
  73. $('#showuser_span').html(
  74. '欢迎您:' +corp_name+','+ deptname + ',' + real_name);
  75. //$('#showuser_span').html('欢迎您:'+deptname +',' + rolenames + ',' + real_name);
  76. if(!isIndexFlag){//首页跳转过来的页面
  77. setMainIndex();
  78. }
  79. //初始化frmright中的数据
  80. $("#frmright").attr("src", idxurl);
  81. }
  82. },
  83. error : function(error) {
  84. top.Dialog.confirm("用户验证失败,您是否需要重新登录?",function(){
  85. window.location = '../';
  86. },function(){
  87. window.location = '/nwyj/404.jsp';
  88. });
  89. }
  90. });
  91. } catch (e) {
  92. top.Dialog.confirm("加载页面时出现异常,您是否需要重新登录?",function(){
  93. window.location = '../';
  94. },function(){
  95. alert("错误:"+e);
  96. window.location = '/nwyj/404.jsp';
  97. });
  98. }
  99. };