Browse Source

显示至

zhongzewei 7 years ago
parent
commit
7cafefab56

+ 8 - 8
web/building_saas/main/html/main.html

@@ -66,14 +66,14 @@
                       <span>
                       <span>
                   <a href="" class="btn btn-sm" data-toggle="dropdown"><b data-toggle="tooltip" data-placement="bottom">显示至...</b></a>
                   <a href="" class="btn btn-sm" data-toggle="dropdown"><b data-toggle="tooltip" data-placement="bottom">显示至...</b></a>
                   <div class="dropdown-menu dropdown-menu-left">
                   <div class="dropdown-menu dropdown-menu-left">
-                      <a class="dropdown-item" href="#">大项费用</a>
-                      <a class="dropdown-item" href="#">一级分部</a>
-                      <a class="dropdown-item" href="#">二级分部</a>
-                      <a class="dropdown-item" href="#">三级分部</a>
-                      <a class="dropdown-item" href="#">四级分部</a>
-                      <a class="dropdown-item" href="#">分项</a>
-                      <a class="dropdown-item" href="#">子目</a>
-                      <a class="dropdown-item" href="#">最底层</a>
+                      <a class="dropdown-item" href="javascript:void(0);" style="padding: 0rem 2.5rem" id="displayDXFY">大项费用</a>
+                      <a class="dropdown-item" href="javascript:void(0);" style="padding: 0rem 2.5rem" id="displayFB1">一级分部</a>
+                      <a class="dropdown-item" href="javascript:void(0);" style="padding: 0rem 2.5rem" id="displayFB2">二级分部</a>
+                      <a class="dropdown-item" href="javascript:void(0);" style="padding: 0rem 2.5rem" id="displayFB3">三级分部</a>
+                      <a class="dropdown-item" href="javascript:void(0);" style="padding: 0rem 2.5rem" id="displayFB4">四级分部</a>
+                      <a class="dropdown-item" href="javascript:void(0);" style="padding: 0rem 2.5rem" id="displayFX">分项</a>
+                      <a class="dropdown-item" href="javascript:void(0);" style="padding: 0rem 2.5rem" id="displayZM">子目</a>
+                      <a class="dropdown-item" href="javascript:void(0);" style="padding: 0rem 2.5rem" id="displayZD">最底层</a>
                   </div>
                   </div>
                 </span>
                 </span>
                   </div>
                   </div>

+ 81 - 1
web/building_saas/main/js/views/project_view.js

@@ -1161,6 +1161,86 @@ $('#downMove').click(function () {
         };
         };
     }
     }
 });
 });
+//显示至..
+let displayLevel = function(nodes, depth, type){
+    let refreshNodes = [];
+    function getExpandedController(){
+        if(type === 'DXFY' || type === 'FB'){
+            if(type === 'FB'){
+                projectObj.project.mainTree.items[0].setExpanded(true);
+                refreshNodes.push(projectObj.project.mainTree.items[0]);
+            }
+            return  function expandedControl(nodes, depth){
+                let bType = type === 'FB' ? billType.FB : billType.DXFY;
+                for(let node of nodes){
+                    let nodeDepth = node.depth();
+                    if(nodeDepth <= depth){
+                        let expanded = nodeDepth === depth && !node.children[0] || nodeDepth < depth && node.children[0] && node.children[0].data.type === bType ? true : false;
+                        node.setExpanded(expanded);
+                        refreshNodes.push(node);
+                        if(nodeDepth < depth){
+                            expandedControl(node.children, depth);
+                        }
+                    }
+                }
+            }
+        }
+        else if(type === 'FX' || type === 'ZM' || type === 'ZD'){
+            return  function expandedControl(nodes){
+                for(let node of nodes){
+                    if(type !== 'FX' || node.sourceType === projectObj.project.Bills.getSourceType()){
+                        let expanded = true;
+                        if(type === 'FX'){
+                            expanded =  !node.children[0] || node.children[0] && node.children[0].sourceType === projectObj.project.Bills.getSourceType() ? true : false;
+                        }
+                        else if(type === 'ZM'){
+                            expanded =  !node.children[0] || node.children[0] && node.children[0].sourceType !== projectObj.project.ration_glj.getSourceType() ? true : false;
+                        }
+                        node.setExpanded(expanded);
+                        refreshNodes.push(node);
+                        expandedControl(node.children);
+                    }
+                }
+            }
+        }
+    }
+    getExpandedController()(nodes, depth);
+    let sheet = projectObj.mainSpread.getActiveSheet();
+    TREE_SHEET_HELPER.massOperationSheet(sheet, function () {
+        TREE_SHEET_HELPER.refreshNodesVisible(refreshNodes, projectObj.mainSpread.getActiveSheet(), true)
+    });
+};
+$('#displayDXFY').click(function () {
+   displayLevel(projectObj.project.mainTree.items, 0, 'DXFY')
+});
+//显示至一级分部
+$('#displayFB1').click(function () {
+   displayLevel(projectObj.project.mainTree.items[0].children, 1, 'FB');
+});
+//二级分部
+$('#displayFB2').click(function () {
+    displayLevel(projectObj.project.mainTree.items[0].children, 2, 'FB');
+});
+//三级分部
+$('#displayFB3').click(function () {
+    displayLevel(projectObj.project.mainTree.items[0].children, 3, 'FB');
+});
+//四级分部
+$('#displayFB4').click(function () {
+    displayLevel(projectObj.project.mainTree.items[0].children, 4, 'FB');
+});
+//分项
+$('#displayFX').click(function () {
+    displayLevel(projectObj.project.mainTree.items, null, 'FX');
+});
+//子目
+$('#displayZM').click(function () {
+    displayLevel(projectObj.project.mainTree.items, null, 'ZM');
+});
+//最底层
+$('#displayZD').click(function () {
+   displayLevel(projectObj.project.mainTree.roots, null, 'ZD');
+});
 
 
 $('#poj-set').on('show.bs.modal', function () {
 $('#poj-set').on('show.bs.modal', function () {
     let setCalcFlag = function (obj, val, curFlag) {
     let setCalcFlag = function (obj, val, curFlag) {
@@ -1173,7 +1253,7 @@ $('#poj-set').on('show.bs.modal', function () {
     }
     }
     if (projectObj.project) {
     if (projectObj.project) {
         // let mode = projectObj.project.projSetting.billsCalcMode;
         // let mode = projectObj.project.projSetting.billsCalcMode;
-        // let settingConst = projectObj.project.projSetting.settingConst;
+        // let settingConst = projectObj.project.projSetting.settingConst;
         let ft = projectObj.project.property.billsCalcMode ? projectObj.project.property.billsCalcMode : leafBillGetFeeType.rationContent;
         let ft = projectObj.project.property.billsCalcMode ? projectObj.project.property.billsCalcMode : leafBillGetFeeType.rationContent;
         setCalcFlag($('#rationContent'), leafBillGetFeeType.rationContent, ft);
         setCalcFlag($('#rationContent'), leafBillGetFeeType.rationContent, ft);
         setCalcFlag($('#rationPriceConverse'), leafBillGetFeeType.rationPriceConverse, ft);
         setCalcFlag($('#rationPriceConverse'), leafBillGetFeeType.rationPriceConverse, ft);