Browse Source

bug fixed / 清单项目特征定额子目调整系数悬浮提示延时显示

zhangweicheng 6 years ago
parent
commit
ea874c25c8

+ 29 - 28
modules/common/const/glj_type_const.js

@@ -7,34 +7,35 @@
  */
 
 const gljType = {
-    // 人工
-    LABOUR: 1,
-    // ==============材料类型=================
-    // 普通材料
-    GENERAL_MATERIAL: 201,
-    // 混凝土
-    CONCRETE: 202,
-    // 砂浆
-    MORTAR: 203,
-    // 配合比
-    MIX_RATIO: 204,
-    // 商品混凝土
-    COMMERCIAL_CONCRETE: 205,
-    // 商品砂浆
-    COMMERCIAL_MORTAR: 206,
-    // ==============材料类型=================
-    // ==============机械类型=================
-    // 普通机械
-    GENERAL_MACHINE: 301,
-    // 机械组成物
-    MACHINE_COMPOSITION: 302,
-    // 机上人工
-    MACHINE_LABOUR: 303,
-    // ==============机械类型=================
-    // 主材
-    MAIN_MATERIAL: 4,
-    // 设备
-    EQUIPMENT: 5
+    LABOUR: 1,                                  // 人工
+    // ==============材料类型 ↓=================
+    GENERAL_MATERIAL: 201,                      // 普通材料
+    CONCRETE: 202,                              // 混凝土
+    MORTAR: 203,                                // 砂浆
+    MIX_RATIO: 204,                             // 配合比
+    COMMERCIAL_CONCRETE: 205,                   // 商品混凝土
+    COMMERCIAL_MORTAR: 206,                     // 商品砂浆
+    OTHER_MATERIAL: 207,                        // 其它材料
+    // ==============材料类型 ↑=================
+    // ==============机械类型 ↓=================
+    GENERAL_MACHINE: 301,                       // 机械台班
+    MACHINE_COMPOSITION: 302,                   // 机械组成物
+    MACHINE_LABOUR: 303,                        // 机上人工
+    INSTRUMENT: 304,                            // 仪器仪表
+    FUEL_POWER_FEE:305,                         // 燃料动力费
+    DEPRECIATION_FEE:306,                       // 折旧费
+    INSPECTION_FEE:307,                         // 检修费
+    MAINTENANCE:308,                            // 维护费
+    DISMANTLING_FREIGHT_FEE:309,                // 安拆费及场外运费
+    VERIFICATION_FEE:310,                       // 校验费
+    OTHER_FEE:311,                              // 其他费用
+    OTHER_MACHINE_USED:312,                     // 其他施工机具使用费
+    // ==============机械类型 ↑=================
+    MAIN_MATERIAL: 4,                           // 主材
+    EQUIPMENT: 5,                               // 设备
+    MANAGEMENT_FEE: 6,                          // 企业管理费
+    PROFIT: 7,                                  // 利润
+    GENERAL_RISK_FEE: 8                         // 一般风险费
 };
 
 export default gljType;

+ 1 - 1
modules/glj/models/glj_list_model.js

@@ -38,7 +38,7 @@ class GLJListModel extends BaseModel {
      * @var {Array}
      */
     ownCompositionTypes = [GLJTypeConst.CONCRETE, GLJTypeConst.MORTAR, GLJTypeConst.MIX_RATIO,
-        GLJTypeConst.GENERAL_MACHINE,GLJTypeConst.MAIN_MATERIAL];
+        GLJTypeConst.GENERAL_MACHINE,GLJTypeConst.MAIN_MATERIAL,GLJTypeConst.INSTRUMENT];
 
     /**
      * 构造函数

+ 34 - 22
public/web/tree_sheet/tree_sheet_helper.js

@@ -379,24 +379,18 @@ var TREE_SHEET_HELPER = {
                 hitinfo.sheet.repaint();
             }
         };
-        TreeNodeCellType.prototype.processMouseEnter = function(hitinfo){
-            let text = hitinfo.sheet.getText(hitinfo.row, hitinfo.col);
-            let tag = hitinfo.sheet.getTag(hitinfo.row, hitinfo.col);
-            if(tag&&tag!=''){
-                TREE_SHEET_HELPER.showTipsDiv(tag,setting,hitinfo);
+        TreeNodeCellType.prototype.processMouseMove = function(hitinfo){//造价书主界面,当鼠标移动到单元格最右往左50个像素内时才显示悬浮提示内容
+            if (hitinfo.sheet.name()!=="mainSheet") return;
+            let offset = 20;//从右向左显示的像素范围
+            let leftX = hitinfo.cellRect.x + hitinfo.cellRect.width;//最右边的坐标
+            if(leftX - hitinfo.x <= offset){//如果鼠标移动到的位置是在显示的范围内显示悬浮提示
+                TREE_SHEET_HELPER.delayShowTips(hitinfo,setting);
+            }else {//如果移出了范围,隐藏悬浮提示
+                TREE_SHEET_HELPER.hideTipsDiv();
             }
         };
-        TreeNodeCellType.prototype.processMouseMove = function(hitinfo){
-            //console.log(hitinfo);
-        };
         TreeNodeCellType.prototype.processMouseLeave = function (hitinfo) {
-            let me = TREE_SHEET_HELPER;
-            TREE_SHEET_HELPER.tipDiv = 'hide';
-            if (me._toolTipElement) {
-                $(me._toolTipElement).hide();
-                me._toolTipElement = null;
-            };
-            TREE_SHEET_HELPER.tipDivCheck();//延时检查:当tips正在show的时候,就调用了hide方法,会导致tips一直存在,所以设置一个超时处理
+            TREE_SHEET_HELPER.hideTipsDiv();
         };
 
         let TipCellType = function () {};
@@ -449,13 +443,7 @@ var TREE_SHEET_HELPER = {
             TREE_SHEET_HELPER.showTipsDiv(text,setting,hitinfo);
         };
         TipCellType.prototype.processMouseLeave = function (hitinfo) {
-            let me = TREE_SHEET_HELPER;
-            TREE_SHEET_HELPER.tipDiv = 'hide';
-            if (me._toolTipElement) {
-                $(me._toolTipElement).hide();
-                me._toolTipElement = null;
-            };
-            TREE_SHEET_HELPER.tipDivCheck();//延时检查:当tips正在show的时候,就调用了hide方法,会导致tips一直存在,所以设置一个超时处理
+            TREE_SHEET_HELPER.hideTipsDiv();
         }
 
         TREE_SHEET_HELPER.protectdSheet(sheet);
@@ -518,6 +506,16 @@ var TREE_SHEET_HELPER = {
             }
         }
     },
+    hideTipsDiv:function () {
+        TREE_SHEET_HELPER.tipTimeStamp = +new Date();//这个是为了造价书清单编号树节点的那个延时显示而打的时间戳,防止已经要隐藏的提示框,延时显示
+        let me = TREE_SHEET_HELPER;
+        TREE_SHEET_HELPER.tipDiv = 'hide';
+        if (me._toolTipElement) {
+            $(me._toolTipElement).hide();
+            me._toolTipElement = null;
+        }
+        TREE_SHEET_HELPER.tipDivCheck();//延时检查:当tips正在show的时候,就调用了hide方法,会导致tips一直存在,所以设置一个超时处理
+    },
     tipDivCheck(){
         setTimeout(function () {
             let tips = $('#autoTip');
@@ -528,5 +526,19 @@ var TREE_SHEET_HELPER = {
                 TREE_SHEET_HELPER._toolTipElement = null;
             }
         },600)
+    },
+    delayShowTips:function(hitinfo,setting){//延时显示
+        let delayTimes = 500; //延时时间
+        let now_timeStamp = +new Date();
+        TREE_SHEET_HELPER.tipTimeStamp = now_timeStamp;
+        setTimeout(function () {
+            if(now_timeStamp - TREE_SHEET_HELPER.tipTimeStamp == 0){//鼠标停下的时候才显示
+                let text = hitinfo.sheet.getText(hitinfo.row, hitinfo.col);
+                let tag = hitinfo.sheet.getTag(hitinfo.row, hitinfo.col);
+                if(tag&&tag!=''){
+                    TREE_SHEET_HELPER.showTipsDiv(tag,setting,hitinfo);
+                }
+            }
+        },delayTimes);
     }
 };

+ 0 - 7
web/building_saas/main/html/main.html

@@ -31,8 +31,6 @@
         let userAccount = '<%- userAccount %>';
         let userID = '<%- userID %>';
         let projectReadOnly = JSON.parse('<%- projectReadOnly %>');
-        console.log(`projectReadOnly`);
-        console.log(projectReadOnly);
     </script>
 </head>
 
@@ -1599,11 +1597,6 @@
         </script>
 
         <SCRIPT type="text/javascript">
-            let test = [{a: '1', b:'2'}, {t:{tt:'t',n: 'n'}}];
-            let clT = _.cloneDeep(test);
-            clT[0].a = '2222';
-            console.log(test);
-            console.log(clT);
             let clearFlag = false;
             function onCheck(e, treeId, treeNode) {
                 count();

+ 1 - 1
web/building_saas/main/js/controllers/material_controller.js

@@ -57,7 +57,7 @@ let MaterialController = {
             if(data.ration_gljs.length > 0) this.refreshRationGLJ(data.ration_gljs);
         }
         if(nodes.length >0){
-            projectObj.project.projectGLJ.loadData(function () {//先加载项目工料机
+            projectObj.project.projectGLJ.loadData(function () {
                 projectObj.project.calcProgram.calcNodesAndSave(nodes,function(){
                     installationFeeObj.calcInstallationFee();
                 });

+ 2 - 2
web/building_saas/main/js/views/project_view.js

@@ -663,7 +663,7 @@ var projectObj = {
                         curNode = projectObj.project.mainTree.items[i - 1];
                         break;
                     }
-                };
+                }
 
                 if (nodesArr.length < count){
                     if (projectObj.project.mainTree.selected != curNode)
@@ -772,7 +772,7 @@ var projectObj = {
             for (let changedCell of changedObj.changedCells) {
                 let node = project.mainTree.items[changedCell.row];
                 let colSetting = setting.cols[changedCell.col];
-                let value = projectObj.checkSpreadEditingText(changedCell.text, colSetting)
+                let value = projectObj.checkSpreadEditingText(changedCell.text, colSetting);
                 if(colSetting.data.field=='code' && node.sourceType == project.Ration.getSourceType()&&node.data.type==rationType.ration){//如果是更新定额的编码
                     updateRationCodes.push({'node':node,value:value});
                 }else {