zhongzewei 7 gadi atpakaļ
vecāks
revīzija
0480c96401

+ 4 - 0
modules/common/base/base_controller.js

@@ -62,6 +62,7 @@ class BaseController {
         }
 
         try {
+            console.log('enterINit');
             // 如果不适超级管理员则判断权限
             let sessionManager = request.session.managerData;
             if (sessionManager.superAdmin !== 1) {
@@ -105,6 +106,7 @@ class BaseController {
             // moment工具
             response.locals.moment = Moment;
         } catch (error) {
+            console.log('enterAURE');
             console.log(error);
             response.redirect('/dashboard');
             return;
@@ -125,6 +127,7 @@ class BaseController {
         // 判断session
         let mangerData = request.session.managerData;
         try {
+            console.log('enterAuth');
             if (typeof mangerData !== 'object' || Object.keys(mangerData).length < 0) {
                 throw 'err data';
             }
@@ -140,6 +143,7 @@ class BaseController {
             }
 
         } catch (error) {
+            console.log('enterAURE');
             response.redirect('/login');
             return;
         }

+ 0 - 1
modules/users/controllers/login_controller.js

@@ -82,7 +82,6 @@ class LoginController extends BaseController {
             responseData.error = error.code;
             responseData.msg = error.err;
         }
-
         response.json(responseData);
     }
 

+ 11 - 8
operation.js

@@ -34,6 +34,8 @@ cfgCacheUtil.setupDftCache();
 log.use(app);
 app.use(express.static(_rootDir));
 
+app.disable('view cache');
+
 app.set('views', path.join(__dirname, 'web'));
 app.engine('.html', require('ejs').__express);
 app.set('view engine', 'html');
@@ -50,7 +52,7 @@ app.use(bodyParser.json({limit: '3mb'}));
 app.use(session({
     name: 'usersSession',
     secret: 'session users secret',
-    cookie: {maxAge: 1000*60*30},
+    cookie: {maxAge: 3600 * 6 * 1000},
     resave: false,
     rolling: true,
     saveUninitialized: true
@@ -61,16 +63,17 @@ app.use(session({
     //*/
 }));
 
+
 app.use(function (req, res, next) {
     let referer = '';
     if (!/^\/login/.test(req.originalUrl) && !req.session.managerData) {
-        if (/\/api/.test(req.originalUrl)) {
-            console.log(`req.originalUrl`);
-            console.log(req.originalUrl);
-            referer = URL.parse(req.headers.referer);
-            return res.redirect('/login' + '?referer=' + referer.path);
-        } else {
-            return res.redirect("/login" + '?referer=' + req.originalUrl);
+        if (req.headers["x-requested-with"] != null
+            && req.headers["x-requested-with"] == "XMLHttpRequest"
+            && req.url != "/login") {
+            return res.json({ret_code: 99, ret_msg: '登录信息失效,请您重新登录'});
+        }
+        else{
+            return res.redirect('/login');
         }
     }
     next();

+ 26 - 0
public/web/common_ajax.js

@@ -2,6 +2,32 @@
  * Created by Mai on 2017/4/20.
  */
 
+/**
+ * 设置全局的AJAX请求默认选项
+ * 主要设置了AJAX请求遇到Session过期的情况
+ */
+$.ajaxSetup({
+    complete: function (data) {
+        if (data.responseJSON&&data.responseJSON.ret_code && data.responseJSON.ret_code == 99) {
+            alert(data.responseJSON.ret_msg);
+            var top = getTopWindow();
+            setTimeout('top.location.href = "/login";', 300);
+        }
+    }
+});
+
+/**
+ * 在页面中任何嵌套层次的窗口中获取顶层窗口
+ * @return 当前页面的顶层窗口对象
+ */
+function getTopWindow() {
+    var p = window;
+    while (p != p.parent) {
+        p = p.parent;
+    }
+    return p;
+}
+
 var CommonAjax = {
     post: function (url, data, successCallback, errorCallback) {
         $.ajax({

+ 1 - 0
web/maintain/bills_lib/html/neirong.html

@@ -224,6 +224,7 @@
             TREE_SHEET_HELPER.loadSheetHeader(setting, spreadAllJobs.getActiveSheet());
             jobsAjax.getJobContent(billsLibId, function(datas){
                 spreadAllJobs.getActiveSheet().suspendPaint();
+                spreadAllJobs.getActiveSheet().setRowCount(datas.length + 10);
                 let len = datas.length;
                 for(var i=0; i<len; i++){
                     setting.cols.forEach(function(col, colIdx){

+ 27 - 0
web/maintain/bills_lib/scripts/bills_lib_ajax.js

@@ -1,6 +1,33 @@
 /**
  * Created by vian on 2017/3/27.
  */
+
+/**
+ * 设置全局的AJAX请求默认选项
+ * 主要设置了AJAX请求遇到Session过期的情况
+ */
+$.ajaxSetup({
+    complete: function (data) {
+        console.log(data);
+        if (data.responseJSON&&data.responseJSON.ret_code && data.responseJSON.ret_code == 99) {
+            alert(data.responseJSON.ret_msg);
+            var top = getTopWindow();
+            setTimeout('top.location.href = "/login";', 300);
+        }
+    }
+});
+
+/**
+ * 在页面中任何嵌套层次的窗口中获取顶层窗口
+ * @return 当前页面的顶层窗口对象
+ */
+function getTopWindow() {
+    var p = window;
+    while (p != p.parent) {
+        p = p.parent;
+    }
+    return p;
+}
 var mainAjax = {
     //获取编办
     getCompilationList: function () {

+ 1 - 0
web/maintain/ration_repository/fuzhu.html

@@ -88,6 +88,7 @@
     <script type="text/javascript" src="/public/web/QueryParam.js"></script>
     <script src="/public/common_util.js"></script>
     <script src="/public/debug.js"></script>
+    <script src="/public/web/common_ajax.js"></script>
     <script type="text/javascript" src="/public/web/sheet/sheet_common.js"></script>
     <script type="text/javascript" src="/web/maintain/ration_repository/js/sheetsOpr.js"></script>
     <script type="text/javascript" src="/public/web/storageUtil.js"></script>

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 1 - 0
web/maintain/ration_repository/gongliao.html


+ 1 - 0
web/maintain/ration_repository/main.html

@@ -216,6 +216,7 @@
     <script src="/lib/bootstrap/bootstrap.min.js"></script>
     <script src="/public/web/PerfectLoad.js"></script>
     <script src="/web/maintain/ration_repository/js/global.js"></script>
+    <script src="/public/web/common_ajax.js"></script>
     <!-- zTree -->
     <script type="text/javascript" src="/public/web/date_util.js"></script>
   	<script type="text/javascript" src="/lib/ztree/jquery.ztree.core.js"></script>

+ 1 - 0
web/maintain/std_glj_lib/html/main.html

@@ -130,6 +130,7 @@
     <script src="/lib/tether/tether.min.js"></script>
     <script src="/lib/bootstrap/bootstrap.min.js"></script>
     <script src="/web/maintain/std_glj_lib/js/global.js"></script>
+    <script src="/public/web/common_ajax.js"></script>
     <!-- zTree -->
   	<script type="text/javascript" src="/lib/ztree/jquery.ztree.core.js"></script>
   	<script type="text/javascript" src="/lib/ztree/jquery.ztree.excheck.js"></script>