Pārlūkot izejas kodu

Merge branch '1.0.0_online' of http://smartcost.f3322.net:3000/SmartCost/ConstructionCost into 1.0.0_online

# Conflicts:
#	web/building_saas/main/js/views/main_tree_col.js
zhongzewei 6 gadi atpakaļ
vecāks
revīzija
3c0cbe0761

+ 17 - 2
public/web/sheet/sheet_common.js

@@ -517,17 +517,32 @@ var sheetCommonObj = {
     },
     getTipsCombo:function (forLocked,tips,setting) {
         let getTipsCombo = function () {
-
+            this.clickCom=false;
         };
         getTipsCombo.prototype = sheetCommonObj.getDynamicCombo(forLocked);
         if(tips && tips !=""){
             getTipsCombo.prototype.processMouseEnter = function(hitinfo){
-                console.log(hitinfo);
+                if(this.clickCom == true){ //点击了下拉框的三角形,则不用再显示悬浮框了
+                    this.clickCom = false;
+                    return;
+                }
                 TREE_SHEET_HELPER.delayShowTips(hitinfo,setting,tips);
             };
             getTipsCombo.prototype.processMouseLeave = function (hitinfo) {
                 TREE_SHEET_HELPER.hideTipsDiv();
             };
+            getTipsCombo.prototype.processMouseDown = function (hitinfo){
+                if(hitinfo.isReservedLocation == true){//这里是点击了下拉框的三角形才会有这个属性
+                    TREE_SHEET_HELPER.hideTipsDiv();
+                    this.clickCom = true;
+                }
+                GC.Spread.Sheets.CellTypes.ComboBox.prototype.processMouseDown.apply(this, arguments);
+            };
+
+            getTipsCombo.prototype.updateEditor = function (editorContext, cellStyle, cellRect, context){
+                TREE_SHEET_HELPER.hideTipsDiv();
+                GC.Spread.Sheets.CellTypes.ComboBox.prototype.updateEditor.apply(this, arguments);
+            };
         }
         return new getTipsCombo();
     },

+ 20 - 6
web/building_saas/main/js/views/fee_rate_view.js

@@ -299,14 +299,28 @@ var feeRateObject={
                         refreshVisible(sub)
                     }
                 }
-                let parent = getParent(item.ParentID,datas);
-                if(parent){
-                    let prow= datas.indexOf(parent);
-                    let visible = !sheet.getCellType(prow,0).collapsed;
-                    let trow = datas.indexOf(item);
-                    sheet.getRange(trow , -1, 1, -1).visible(visible);
+                let visible = getVisible(item);
+                let trow = datas.indexOf(item);
+                sheet.getRange(trow , -1, 1, -1).visible(visible);
+            }
+            
+            function getVisible(item) {
+                if(item.ParentID){
+                    let parent = getParent(item.ParentID,datas);
+                    if(!parent) return true;
+                    let p_row= datas.indexOf(parent);
+                    let visible = !sheet.getCellType(p_row,0).collapsed;
+                    if(visible == true){ //如果是显示的,则要再往父节点的父节点检查,只要有一个节点是隐藏的,则都是隐藏
+                        return getVisible(parent);
+                    }else {
+                        return visible
+                    }
+                }else {//如果parentID 为空则是最根节点
+                    return true;
                 }
             }
+            
+            
         };
         return new TreeNodeCellType()
 

+ 1 - 2
web/building_saas/main/js/views/main_tree_col.js

@@ -255,8 +255,7 @@ let MainTreeCol = {
              if(node.sourceType == ModuleNames.bills &&projectObj.ifItemCharHiden(setting)){//清单、并且项目特征列隐藏的时候悬浮提示
                 tips = node.data.itemCharacterText?node.data.itemCharacterText:'';
              }
-           //  console.log(setting);
-            let dynamicCombo = sheetCommonObj.getTipsCombo(true,tips,setting);//sheetCommonObj.getDynamicCombo(true);
+                    let dynamicCombo = sheetCommonObj.getTipsCombo(true,tips,setting);//sheetCommonObj.getDynamicCombo(true);
             dynamicCombo.itemHeight(10).items(['m', 'm2', 'm3', 'km', 't', 'kg', '台班', '工日', '昼夜', '元', '项', '处', '个', '件',
                 '根', '组', '系统', '台', '套', '株', '丛', '缸', '支', '只', '块', '座', '对', '份', '樘', '攒', '榀']).editable(true);
             return dynamicCombo;