|  | @@ -961,7 +961,7 @@ var projectObj = {
 | 
	
		
			
				|  |  |      getNodeColorStyle: function (node, colSetting) {
 | 
	
		
			
				|  |  |          let colorSetting = optionsOprObj.getOption(optionsOprObj.optionsTypes.COLOROPTS);
 | 
	
		
			
				|  |  |          let mapping = {DEFAULT: 'DEFAULT', DXFY: 'DXFY', FB: 'FB', UNLEAFBILL: 'UNLEAFBILL',
 | 
	
		
			
				|  |  | -            FX: 'FX', UNCBBILL: 'UNCBBILL', CBBILL: 'CBBILL', ZCSB: 'ZCSB'};
 | 
	
		
			
				|  |  | +            FX: 'FX', BX: 'BX', UNCBBILL: 'UNCBBILL', CBBILL: 'CBBILL', ZCSB: 'ZCSB'};
 | 
	
		
			
				|  |  |          let styleMap = null;
 | 
	
		
			
				|  |  |          //中文字段名,由于同一节点中,中文字体大小和数字字体大小不同
 | 
	
		
			
				|  |  |          let stringFields = [
 | 
	
	
		
			
				|  | @@ -994,6 +994,10 @@ var projectObj = {
 | 
	
		
			
				|  |  |              else if(node.data.type === billType.FX){
 | 
	
		
			
				|  |  |                  styleMap = mapping.FX;
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | +            //补项
 | 
	
		
			
				|  |  | +            else if(node.data.type === billType.BX){
 | 
	
		
			
				|  |  | +                styleMap = mapping.BX;
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  |              //清单
 | 
	
		
			
				|  |  |              else if(node.data.type === billType.BILL){
 | 
	
		
			
				|  |  |                  //非叶子节点的清单
 | 
	
	
		
			
				|  | @@ -1157,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 () {
 | 
	
		
			
				|  |  |      let setCalcFlag = function (obj, val, curFlag) {
 | 
	
	
		
			
				|  | @@ -1169,7 +1253,7 @@ $('#poj-set').on('show.bs.modal', function () {
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |      if (projectObj.project) {
 | 
	
		
			
				|  |  |          // 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;
 | 
	
		
			
				|  |  |          setCalcFlag($('#rationContent'), leafBillGetFeeType.rationContent, ft);
 | 
	
		
			
				|  |  |          setCalcFlag($('#rationPriceConverse'), leafBillGetFeeType.rationPriceConverse, ft);
 |