Prechádzať zdrojové kódy

Merge branch 'master' of http://smartcost.f3322.net:3000/SmartCost/ConstructionOperation

TonyKang 7 rokov pred
rodič
commit
13d1148ecb

+ 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 () {

+ 3 - 2
web/maintain/ration_repository/fuzhu.html

@@ -60,11 +60,11 @@
         <div class="content">
             <div class="container-fluid">
                 <div class="row">
-                    <div class="main-content col-lg-7 p-0">
+                    <div class="main-content col-lg-6 p-0">
                         <div class="main-data" id="mainSpread">
                         </div>
                     </div>
-                    <div class="main-side col-lg-5 p-0">
+                    <div class="main-side col-lg-6 p-0">
                         <div class="main-data" id="contentSpread" >
                         </div>
                     </div>
@@ -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>

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
web/maintain/ration_repository/gongliao.html


+ 4 - 4
web/maintain/ration_repository/js/coe.js

@@ -65,9 +65,9 @@ let coeOprObj = {
     currentMaxNo: null,
     setting: {
         header: [
-            {headerName:"编号", headerWidth:60, dataCode:"serialNo", dataType: "String", hAlign: "center", vAlign: "center", readOnly: false},
+            {headerName:"编号", headerWidth:50, dataCode:"serialNo", dataType: "String", hAlign: "center", vAlign: "center", readOnly: false},
             {headerName:"名称", headerWidth:280, dataCode:"name", dataType: "String", hAlign: "left", vAlign: "center", readOnly: false},
-            {headerName:"内容", headerWidth:250, dataCode:"content", dataType: "String", hAlign: "left", vAlign: "center", readOnly: false},
+            {headerName:"内容", headerWidth:150, dataCode:"content", dataType: "String", hAlign: "left", vAlign: "center", readOnly: false},
         ]
     },
     buildSheet: function (container) {
@@ -363,8 +363,8 @@ let gljAdjOprObj = {
     gljList: [],//只含编号和名称的总工料机列表
     setting: {
         header: [
-            {headerName:"调整类型", headerWidth:100, dataCode:"coeType", dataType: "String", hAlign: "center", vAlign: "center", readOnly: false},
-            {headerName:"人材机编码", headerWidth:100, dataCode:"gljCode", dataType: "String", formatter: '@', hAlign: "center", vAlign: "center", readOnly: false},
+            {headerName:"调整类型", headerWidth:80, dataCode:"coeType", dataType: "String", hAlign: "center", vAlign: "center", readOnly: false},
+            {headerName:"人材机编码", headerWidth:80, dataCode:"gljCode", dataType: "String", formatter: '@', hAlign: "center", vAlign: "center", readOnly: false},
             {headerName:"名称", headerWidth:100, dataCode:"gljName", dataType: "String", hAlign: "center", vAlign: "center", readOnly: true},
             {headerName:"操作符", headerWidth:60, dataCode:"operator", dataType: "String", hAlign: "center", vAlign: "center", readOnly: false},
             {headerName:"数量", headerWidth:80, dataCode:"amount", dataType: "String", hAlign: "center", vAlign: "center" , readOnly: false},

+ 9 - 9
web/maintain/ration_repository/js/ration.js

@@ -15,15 +15,15 @@ let rationOprObj = {
     rationsCodes: [],
     setting: {
         header:[
-            {headerName:"编码",headerWidth:120,dataCode:"code", dataType: "String", formatter: "@"},
-            {headerName:"名称",headerWidth:280,dataCode:"name", dataType: "String"},
-            {headerName:"计量单位",headerWidth:120,dataCode:"unit", dataType: "String", hAlign: "center"},
-            {headerName:"人工费",headerWidth:120,dataCode:"labourPrice", dataType: "Number", formatter: "0.00", hAlign: "right"},
-            {headerName:"材料费",headerWidth:120,dataCode:"materialPrice", dataType: "Number", formatter: "0.00",  hAlign: "right"},
-            {headerName:"机械费",headerWidth:120,dataCode:"machinePrice", dataType: "Number", formatter: "0.00", hAlign: "right"},
-            {headerName:"基价",headerWidth:120,dataCode:"basePrice", dataType: "Number", formatter: "0.00", hAlign: "right"},
-            {headerName:"显示名称(以%s表示参数)",headerWidth:280,dataCode:"caption", dataType: "String"},
-            {headerName:"取费专业",headerWidth:100,dataCode:"feeType", dataType: "Number", hAlign: "center"}
+            {headerName:"编码",headerWidth:70,dataCode:"code", dataType: "String", formatter: "@"},
+            {headerName:"名称",headerWidth:240,dataCode:"name", dataType: "String"},
+            {headerName:"计量单位",headerWidth:70,dataCode:"unit", dataType: "String", hAlign: "center"},
+            {headerName:"人工费",headerWidth:80,dataCode:"labourPrice", dataType: "Number", formatter: "0.00", hAlign: "right"},
+            {headerName:"材料费",headerWidth:80,dataCode:"materialPrice", dataType: "Number", formatter: "0.00",  hAlign: "right"},
+            {headerName:"机械费",headerWidth:80,dataCode:"machinePrice", dataType: "Number", formatter: "0.00", hAlign: "right"},
+            {headerName:"基价",headerWidth:80,dataCode:"basePrice", dataType: "Number", formatter: "0.00", hAlign: "right"},
+            {headerName:"显示名称(以%s表示参数)",headerWidth:240,dataCode:"caption", dataType: "String"},
+            {headerName:"取费专业",headerWidth:70,dataCode:"feeType", dataType: "Number", hAlign: "center"}
         ],
         view:{
             comboBox:[

+ 8 - 8
web/maintain/ration_repository/js/ration_assist.js

@@ -7,14 +7,14 @@ var rationAssistOprObj = {
     ration: null,
     setting: {
         header:[
-            {headerName:"调整名称",headerWidth:200,dataCode:"name", dataType: "String", hAlign: "left"},
-            {headerName:"辅助定额号",headerWidth:120,dataCode:"assistCode", dataType: "String", hAlign: "center"},
-            {headerName:"标准值",headerWidth:100,dataCode:"stdValue", dataType: "String", hAlign: "right"},
-            {headerName:"步距",headerWidth:100,dataCode:"stepValue", dataType: "String", hAlign: "right"},
-            {headerName:"精度",headerWidth:80,dataCode:"decimal",  dataType: "String", hAlign: "right"},
-            {headerName:"进位方式",headerWidth:100,dataCode:"carryBit", dataType: "String", hAlign: "center"},
-            {headerName:"最小值",headerWidth:100,dataCode:"minValue", dataType: "String", hAlign: "right"},
-            {headerName:"最大值",headerWidth:100,dataCode:"maxValue", dataType: "String", hAlign: "right"}
+            {headerName:"调整名称",headerWidth:110,dataCode:"name", dataType: "String", hAlign: "left"},
+            {headerName:"辅助定额号",headerWidth:90,dataCode:"assistCode", dataType: "String", hAlign: "center"},
+            {headerName:"标准值",headerWidth:60,dataCode:"stdValue", dataType: "String", hAlign: "right"},
+            {headerName:"步距",headerWidth:60,dataCode:"stepValue", dataType: "String", hAlign: "right"},
+            {headerName:"精度",headerWidth:60,dataCode:"decimal",  dataType: "String", hAlign: "right"},
+            {headerName:"进位方式",headerWidth:80,dataCode:"carryBit", dataType: "String", hAlign: "center"},
+            {headerName:"最小值",headerWidth:70,dataCode:"minValue", dataType: "String", hAlign: "right"},
+            {headerName:"最大值",headerWidth:70,dataCode:"maxValue", dataType: "String", hAlign: "right"}
         ],
         view:{},
         comboItems: ["四舍五入", "进一"]

+ 3 - 3
web/maintain/ration_repository/js/ration_coe.js

@@ -10,9 +10,9 @@ var rationCoeOprObj = {
     cache: {},
     setting: {
         header:[
-            {headerName:"编号",headerWidth:120,dataCode:"serialNo", dataType: "Number", hAlign: 'center'},
-            {headerName:"名称",headerWidth:400,dataCode:"name", dataType: "String", hAlign: 'left'},
-            {headerName:"内容",headerWidth:300,dataCode:"content", dataType: "String", hAlign: 'left'}
+            {headerName:"编号",headerWidth:50,dataCode:"serialNo", dataType: "Number", hAlign: 'center'},
+            {headerName:"名称",headerWidth:280,dataCode:"name", dataType: "String", hAlign: 'left'},
+            {headerName:"内容",headerWidth:150,dataCode:"content", dataType: "String", hAlign: 'left'}
         ],
         view:{
             comboBox:[],

+ 7 - 7
web/maintain/ration_repository/js/ration_glj.js

@@ -11,13 +11,13 @@ var rationGLJOprObj = {
     cache: {},
     setting: {
         header:[
-            {headerName:"编码",headerWidth:120,dataCode:"code", dataType: "String", formatter: "@"},
-            {headerName:"名称",headerWidth:400,dataCode:"name", dataType: "String"},
-            {headerName:"规格型号",headerWidth:120,dataCode:"specs", dataType: "String"},
-            {headerName:"单位",headerWidth:160,dataCode:"unit", dataType: "String", hAlign: "center", vAlign: "center"},
-            {headerName:"定额价",headerWidth:160, dataCode:"basePrice", dataType: "Number", formatter:"0.00",  precision: 2},
-            {headerName:"定额消耗",headerWidth:160, dataCode:"consumeAmt", dataType: "Number", formatter: "0.000", precision: 3},
-            {headerName:"类型",headerWidth:160,dataCode:"gljType", dataType: "String", hAlign: "center", vAlign: "center"}
+            {headerName:"编码",headerWidth:80,dataCode:"code", dataType: "String", formatter: "@"},
+            {headerName:"名称",headerWidth:160,dataCode:"name", dataType: "String"},
+            {headerName:"规格型号",headerWidth:100,dataCode:"specs", dataType: "String"},
+            {headerName:"单位",headerWidth:60,dataCode:"unit", dataType: "String", hAlign: "center", vAlign: "center"},
+            {headerName:"定额价",headerWidth:80, dataCode:"basePrice", dataType: "Number", formatter:"0.00",  precision: 2},
+            {headerName:"定额消耗",headerWidth:80, dataCode:"consumeAmt", dataType: "Number", formatter: "0.000", precision: 3},
+            {headerName:"类型",headerWidth:70,dataCode:"gljType", dataType: "String", hAlign: "center", vAlign: "center"}
         ],
         view:{
             comboBox:[],

+ 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>