|  | @@ -307,7 +307,8 @@ let zTreeOprObj = {
 | 
	
		
			
				|  |  |              params.closeWatermark = getCloseWatermark();
 | 
	
		
			
				|  |  |              params.isTextSignature = getTxtSignature();
 | 
	
		
			
				|  |  |              params.custCfg = CUST_CFG;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +            _getSplitAmendmentParam(params, treeNode);
 | 
	
		
			
				|  |  | +        
 | 
	
		
			
				|  |  |              rptArchiveObj.toggleBtn(false);
 | 
	
		
			
				|  |  |              const gather_select = customSelects.gather_select.find(function (x) {
 | 
	
		
			
				|  |  |                  return x.id === treeNode.refId;
 | 
	
	
		
			
				|  | @@ -382,6 +383,7 @@ let zTreeOprObj = {
 | 
	
		
			
				|  |  |              params.material_order = getMaterialOrder();
 | 
	
		
			
				|  |  |              params.closeWatermark = getCloseWatermark();
 | 
	
		
			
				|  |  |              params.isTextSignature = getTxtSignature();
 | 
	
		
			
				|  |  | +            _getSplitAmendmentParam(params, me.currentNode);
 | 
	
		
			
				|  |  |              // me.requestNormalReport(params);
 | 
	
		
			
				|  |  |              localStorage[CUST_NAME + '_custCfg'] = JSON.stringify(CUST_CFG);
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -669,13 +671,16 @@ let rptControlObj = {
 | 
	
		
			
				|  |  |              //me.currentOutputType = newType;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    getTplIdsCommon: function (refRptTplIds, rpt_names) {
 | 
	
		
			
				|  |  | +    getTplIdsCommon: function (refRptTplIds, rpt_names, splitArchives = []) {
 | 
	
		
			
				|  |  |          for (let node of zTreeOprObj.checkedRptTplNodes) {
 | 
	
		
			
				|  |  |              refRptTplIds.push(node.refId);
 | 
	
		
			
				|  |  |              if (rpt_names) rpt_names.push(node.name);
 | 
	
		
			
				|  |  |              if (node.hasOwnProperty('flags') && node.flags.hasOwnProperty('reportType') && node['flags']['reportType'] !== 'NA') {
 | 
	
		
			
				|  |  |                  // 未来可能会有额外处理,目前空着
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | +            if (node.flags && node.flags.amendmentType === 'splitArchive') {
 | 
	
		
			
				|  |  | +                splitArchives.push(node.refId);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      creatCommonExportParam: function (refRptTplIds) {
 | 
	
	
		
			
				|  | @@ -693,20 +698,21 @@ let rptControlObj = {
 | 
	
		
			
				|  |  |          rst.custCfg = CUST_CFG;
 | 
	
		
			
				|  |  |          rst.closeWatermark = getCloseWatermark();
 | 
	
		
			
				|  |  |          rst.isTextSignature = getTxtSignature();
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +        // rst.amendmentType = 
 | 
	
		
			
				|  |  |          return rst;
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      getAllInOneBook: async function () {
 | 
	
		
			
				|  |  |          if (zTreeOprObj.checkedRptTplNodes && zTreeOprObj.checkedRptTplNodes.length > 0) {
 | 
	
		
			
				|  |  |              let me = rptControlObj;
 | 
	
		
			
				|  |  | -            let refRptTplIds = [], rpt_sheet_names = [];
 | 
	
		
			
				|  |  | -            rptControlObj.getTplIdsCommon(refRptTplIds, rpt_sheet_names);
 | 
	
		
			
				|  |  | +            let refRptTplIds = [], rpt_sheet_names = [], splitArchives = [];
 | 
	
		
			
				|  |  | +            rptControlObj.getTplIdsCommon(refRptTplIds, rpt_sheet_names, splitArchives);
 | 
	
		
			
				|  |  |              let params = rptControlObj.creatCommonExportParam(refRptTplIds);
 | 
	
		
			
				|  |  |              params.closeWatermark = getCloseWatermarkForExcel();
 | 
	
		
			
				|  |  |              await rptCustomObj.getCustomSelect(params);
 | 
	
		
			
				|  |  |              params.rpt_names = rpt_sheet_names;
 | 
	
		
			
				|  |  |              params.rptName = TENDER_NAME;
 | 
	
		
			
				|  |  |              params.option = getExcelOutputOption();
 | 
	
		
			
				|  |  | +            params.splitArchives = splitArchives;
 | 
	
		
			
				|  |  |              let chkNodes = zTreeOprObj.treeObj.getCheckedNodes(true);
 | 
	
		
			
				|  |  |              if (chkNodes.length > 0) {
 | 
	
		
			
				|  |  |                  delete params.orientation; // 打印时有勾选的话,不需要提供方向
 | 
	
	
		
			
				|  | @@ -740,14 +746,15 @@ let rptControlObj = {
 | 
	
		
			
				|  |  |          let me = rptControlObj;
 | 
	
		
			
				|  |  |          if (zTreeOprObj.checkedRptTplNodes && zTreeOprObj.checkedRptTplNodes.length > 0) {
 | 
	
		
			
				|  |  |              let refRptTplIds = [];
 | 
	
		
			
				|  |  | -            let rpt_names = [];
 | 
	
		
			
				|  |  | -            rptControlObj.getTplIdsCommon(refRptTplIds, rpt_names);
 | 
	
		
			
				|  |  | +            let rpt_names = [], splitArchives = [];
 | 
	
		
			
				|  |  | +            rptControlObj.getTplIdsCommon(refRptTplIds, rpt_names, splitArchives);
 | 
	
		
			
				|  |  |              let params = rptControlObj.creatCommonExportParam(refRptTplIds);
 | 
	
		
			
				|  |  |              params.closeWatermark = getCloseWatermarkForExcel();
 | 
	
		
			
				|  |  |              await rptCustomObj.getCustomSelect(params);
 | 
	
		
			
				|  |  |              params.isOneSheet = true;
 | 
	
		
			
				|  |  |              params.rpt_names = rpt_names;
 | 
	
		
			
				|  |  |              params.rptName = 'All';
 | 
	
		
			
				|  |  | +            params.splitArchives = splitArchives;
 | 
	
		
			
				|  |  |              // 测试连续输出
 | 
	
		
			
				|  |  |              params.option = getExcelOutputOption();
 | 
	
		
			
				|  |  |              let chkNodes = zTreeOprObj.treeObj.getCheckedNodes(true);
 | 
	
	
		
			
				|  | @@ -861,8 +868,8 @@ let rptControlObj = {
 | 
	
		
			
				|  |  |          let me = rptControlObj;
 | 
	
		
			
				|  |  |          if (zTreeOprObj.checkedRptTplNodes && zTreeOprObj.checkedRptTplNodes.length > 0 && PAGE_SHOW['closeExportExcel'] !== 1) {
 | 
	
		
			
				|  |  |              let refRptTplIds = [];
 | 
	
		
			
				|  |  | -            let rpt_names = [];
 | 
	
		
			
				|  |  | -            rptControlObj.getTplIdsCommon(refRptTplIds, rpt_names);
 | 
	
		
			
				|  |  | +            let rpt_names = [], splitArchives = [];
 | 
	
		
			
				|  |  | +            rptControlObj.getTplIdsCommon(refRptTplIds, rpt_names, splitArchives);
 | 
	
		
			
				|  |  |              const signatureRelArr = [];
 | 
	
		
			
				|  |  |              if (refRptTplIds.length === 0) {
 | 
	
		
			
				|  |  |                  if (zTreeOprObj.currentNode) {
 | 
	
	
		
			
				|  | @@ -874,6 +881,7 @@ let rptControlObj = {
 | 
	
		
			
				|  |  |              if (refRptTplIds.length > 0) {
 | 
	
		
			
				|  |  |                  let params = rptControlObj.creatCommonExportParam(refRptTplIds);
 | 
	
		
			
				|  |  |                  params.option = getExcelOutputOption();
 | 
	
		
			
				|  |  | +                params.splitArchives = splitArchives;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                  // params.getPicFlag = true; //专门针对草图项,只有此项为true,才需要把草图信息带过来,预览及打印动态加载草图 // 纠结:但这样还是解决不了效率问题,得另外想交互方式
 | 
	
		
			
				|  |  |                  await rptCustomObj.getCustomSelect(params);
 | 
	
	
		
			
				|  | @@ -1033,8 +1041,8 @@ let rptControlObj = {
 | 
	
		
			
				|  |  |          let me = rptControlObj;
 | 
	
		
			
				|  |  |          if (zTreeOprObj.checkedRptTplNodes && zTreeOprObj.checkedRptTplNodes.length > 0 && PAGE_SHOW['closeExportPdf'] !== 1) {
 | 
	
		
			
				|  |  |              let refRptTplIds = [];
 | 
	
		
			
				|  |  | -            let rpt_names = [];
 | 
	
		
			
				|  |  | -            rptControlObj.getTplIdsCommon(refRptTplIds, rpt_names);
 | 
	
		
			
				|  |  | +            let rpt_names = [], splitArchives = [];
 | 
	
		
			
				|  |  | +            rptControlObj.getTplIdsCommon(refRptTplIds, rpt_names, splitArchives);
 | 
	
		
			
				|  |  |              const signatureRelArr = [];
 | 
	
		
			
				|  |  |              if (refRptTplIds.length > 0) {
 | 
	
		
			
				|  |  |                  let params = rptControlObj.creatCommonExportParam(refRptTplIds);
 | 
	
	
		
			
				|  | @@ -1407,3 +1415,12 @@ function getExcelOutputOption() {
 | 
	
		
			
				|  |  |          return 'normal'; // 目前是普通方式
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  | +function _getSplitAmendmentParam(params, tplNode) {
 | 
	
		
			
				|  |  | +    if (params.amendmentType === undefined || params.amendmentType === null) {
 | 
	
		
			
				|  |  | +        params.splitArchiveReports = [];
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +    if (tplNode.flags && tplNode.flags.amendmentType === 'splitArchive' && !params.splitArchiveReports.includes(tplNode.refId)) {
 | 
	
		
			
				|  |  | +        params.splitArchiveReports.push(tplNode.refId);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 |