|
|
@@ -273,15 +273,28 @@ let zTreeOprObj = {
|
|
|
onCheck: function(event, treeId, treeNode) {
|
|
|
zTreeOprObj.countChkedRptTpl();
|
|
|
},
|
|
|
+ _chkIfNeedShowPrjSelection: function(treeNode) {
|
|
|
+ let rst = false;
|
|
|
+ if (treeNode.hasOwnProperty('flags')) {
|
|
|
+ if (treeNode.flags.reportType && treeNode.flags.reportType !== 'NA') {
|
|
|
+ rst = true;
|
|
|
+ } else if (treeNode.flags.sumLevelType === 'custom') {
|
|
|
+ rst = true;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return rst;
|
|
|
+ },
|
|
|
onClick: function(event,treeId,treeNode) {
|
|
|
let me = zTreeOprObj;
|
|
|
if (treeNode.nodeType === TPL_TYPE_TEMPLATE && treeNode.refId > 0) {
|
|
|
me.currentNode = treeNode;
|
|
|
- if (treeNode.hasOwnProperty('flags') && treeNode.flags.hasOwnProperty('reportType') && treeNode['flags']['reportType'] !== 'NA' && treeNode['flags']['reportType'] !== null) {
|
|
|
+ if (me._chkIfNeedShowPrjSelection(treeNode)) {
|
|
|
if (treeNode['flags']['reportType'] === 'billSummary') {
|
|
|
me.requestPrjFolderForBillsSummary();
|
|
|
} else if (treeNode['flags']['reportType'] === 'gljSummary') {
|
|
|
me.requestPrjFolderForGljSummary();
|
|
|
+ } else if (treeNode['flags']['sumLevelType'] === 'custom') {
|
|
|
+ me.requestPrjFolderForNormalSummary();
|
|
|
}
|
|
|
} else {
|
|
|
let params = {};
|
|
|
@@ -469,6 +482,7 @@ let zTreeOprObj = {
|
|
|
$("#divReqCommonSummaryExcel")[0].style.display = "none";
|
|
|
$("#divReqCommonSummaryMultiExcel")[0].style.display = "none";
|
|
|
$("#divReqCommonSummaryPDF")[0].style.display = "none";
|
|
|
+ $("#divReqCustomSelect")[0].style.display = "none";
|
|
|
me.requestPrjFolderCommon();
|
|
|
},
|
|
|
requestPrjFolderForGljSummary: function () {
|
|
|
@@ -478,6 +492,17 @@ let zTreeOprObj = {
|
|
|
$("#divReqCommonSummaryExcel")[0].style.display = "none";
|
|
|
$("#divReqCommonSummaryMultiExcel")[0].style.display = "none";
|
|
|
$("#divReqCommonSummaryPDF")[0].style.display = "none";
|
|
|
+ $("#divReqCustomSelect")[0].style.display = "none";
|
|
|
+ me.requestPrjFolderCommon();
|
|
|
+ },
|
|
|
+ requestPrjFolderForNormalSummary: function () {
|
|
|
+ let me = zTreeOprObj;
|
|
|
+ $("#divReqBillSummary")[0].style.display = "none";
|
|
|
+ $("#divReqGljSummary")[0].style.display = "none";
|
|
|
+ $("#divReqCommonSummaryExcel")[0].style.display = "none";
|
|
|
+ $("#divReqCommonSummaryMultiExcel")[0].style.display = "none";
|
|
|
+ $("#divReqCommonSummaryPDF")[0].style.display = "none";
|
|
|
+ $("#divReqCustomSelect")[0].style.display = "";
|
|
|
me.requestPrjFolderCommon();
|
|
|
},
|
|
|
requestBillsSummaryRpt: function () {
|
|
|
@@ -580,31 +605,6 @@ let zTreeOprObj = {
|
|
|
);
|
|
|
}
|
|
|
},
|
|
|
- requestSumAndNormalRptForPDF: function () {
|
|
|
- let rpt_names = [], bill_rpt_names = [], glj_rpt_names = [];
|
|
|
- let refRptTplIds = [], refBillSumPrjsIds = [], refGljSumPrjsIds = [];
|
|
|
- let prj_ids_arr = [];
|
|
|
- rptControlObj.getTplIdsCommon(refRptTplIds, refBillSumPrjsIds, refGljSumPrjsIds, rpt_names, bill_rpt_names, glj_rpt_names, prj_ids_arr);
|
|
|
- let params = rptControlObj.creatCommonExportParam(refRptTplIds, refBillSumPrjsIds, refGljSumPrjsIds);
|
|
|
- params.sum_rpt_names = bill_rpt_names.concat(glj_rpt_names);
|
|
|
- params.rpt_names = rpt_names;
|
|
|
- params.prj_ids_arr = prj_ids_arr;
|
|
|
- params.isOneSheet = true;
|
|
|
-
|
|
|
- CommonAjax.postEx("report_api/createPdfFiles", params, WAIT_TIME_EXPORT, true, function(result){
|
|
|
- if (result) {
|
|
|
- let uuIdUrls = [];
|
|
|
- for (let uuIdObj of result) {
|
|
|
- let uuIdUrl = "/report_api/getFileByUUID/" + uuIdObj.uuid + "/" + stringUtil.replaceAll(uuIdObj.reportName, "#", "_") + "/pdf";
|
|
|
- uuIdUrls.push(uuIdUrl);
|
|
|
- }
|
|
|
- downloadReport(uuIdUrls);
|
|
|
- } else {
|
|
|
- //
|
|
|
- }
|
|
|
- }, null, null
|
|
|
- );
|
|
|
- },
|
|
|
requestSumAndNormalRptForPDF_Ex: function () {
|
|
|
let rpt_names = [], bill_rpt_names = [], glj_rpt_names = [];
|
|
|
let refRptTplIds = [], refBillSumPrjsIds = [], refGljSumPrjsIds = [];
|
|
|
@@ -695,6 +695,21 @@ let zTreeOprObj = {
|
|
|
}
|
|
|
);
|
|
|
},
|
|
|
+ requestNormalReportAfterSelection: function() {
|
|
|
+ let me = zTreeOprObj;
|
|
|
+ if (me.currentNode) {
|
|
|
+ let treeNode = me.currentNode;
|
|
|
+ let params = {};
|
|
|
+ let pageSize = rptControlObj.getCurrentPageSize();
|
|
|
+ params.pageSize = pageSize;
|
|
|
+ params.rpt_tpl_id = treeNode.refId;
|
|
|
+ params.prj_id = projectObj.project.projectInfo.ID;
|
|
|
+ params.custCfg = me.reportPageCfg;
|
|
|
+ params.prj_ids = rptControlObj._getRefPrjIdsByRptNode(treeNode);
|
|
|
+ me.requestNormalReport(params);
|
|
|
+ me.countChkedRptTpl();
|
|
|
+ }
|
|
|
+ },
|
|
|
showPage: function (pageNum, canvas) {
|
|
|
let me = zTreeOprObj;
|
|
|
if (pageNum >= 1 && pageNum <= me.maxPages) {
|
|
|
@@ -782,22 +797,26 @@ let rptControlObj = {
|
|
|
if (me.currentOutputType === "Excel") {
|
|
|
me.getExcel();
|
|
|
} else if (me.currentOutputType === "PDF") {
|
|
|
- me.getPDF();
|
|
|
+ me.getPDFEx();
|
|
|
} else {
|
|
|
//other types if needed.
|
|
|
}
|
|
|
},
|
|
|
getTplIdsCommon: function (refRptTplIds, refBillSumPrjsIds, refGljSumPrjsIds, rpt_names, bill_rpt_names, glj_rpt_names, prj_ids_arr) {
|
|
|
for (let node of zTreeOprObj.checkedRptTplNodes) {
|
|
|
- if (node.hasOwnProperty('flags') && node.flags.hasOwnProperty('reportType') && node['flags']['reportType'] !== 'NA' && node['flags']['reportType'] !== null) {
|
|
|
+ if (zTreeOprObj._chkIfNeedShowPrjSelection(node)) {
|
|
|
if (node['flags']['reportType'] === 'billSummary') {
|
|
|
refBillSumPrjsIds.push(node.refId);
|
|
|
if (bill_rpt_names) bill_rpt_names.push(node.name);
|
|
|
} else if (node['flags']['reportType'] === 'gljSummary') {
|
|
|
refGljSumPrjsIds.push(node.refId);
|
|
|
if (glj_rpt_names) glj_rpt_names.push(node.name);
|
|
|
+ } else if (treeNode.flags.sumLevelType === 'custom') {
|
|
|
+ //当普通方式处理
|
|
|
+ refRptTplIds.push(node.refId);
|
|
|
+ if (rpt_names) rpt_names.push(node.name);
|
|
|
+ if (prj_ids_arr) prj_ids_arr.push(rptControlObj._getRefPrjIdsByRptNode(node));
|
|
|
}
|
|
|
- // if (prj_ids_arr) prj_ids_arr.push([]); // 清单汇总及工料机汇总有专门的分支处理,不需要加空数组,加了反而会造成混淆
|
|
|
} else {
|
|
|
refRptTplIds.push(node.refId);
|
|
|
if (rpt_names) rpt_names.push(node.name);
|
|
|
@@ -820,6 +839,16 @@ let rptControlObj = {
|
|
|
if (rst.indexOf(prj.ID) < 0) rst.push(prj.ID);
|
|
|
}
|
|
|
}
|
|
|
+ } else if (rptNode.flags.sumLevelType === 'custom') {
|
|
|
+ //用户自己挑选
|
|
|
+ let nodes = (zTreeOprObj.prjFolderTreeObj === null)?[]:zTreeOprObj.prjFolderTreeObj.getCheckedNodes(true);
|
|
|
+ zTreeOprObj.selectedPrjIDs = [];
|
|
|
+ for (let node of nodes) {
|
|
|
+ if (node.level > 0) {
|
|
|
+ rst.push(node.ID);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
if (rst.length === 0) rst.push(projectObj.project.projectInfo.ID);
|
|
|
@@ -859,7 +888,8 @@ let rptControlObj = {
|
|
|
let orgRptName = projectObj.project.projectInfo.name;
|
|
|
let refRptTplIds = [], refBillSumPrjsIds = [], refGljSumPrjsIds = [];
|
|
|
let prj_ids_arr = [];
|
|
|
- rptControlObj.getTplIdsCommon(refRptTplIds, refBillSumPrjsIds, refGljSumPrjsIds, prj_ids_arr);
|
|
|
+ // rptControlObj.getTplIdsCommon(refRptTplIds, refBillSumPrjsIds, refGljSumPrjsIds, prj_ids_arr);
|
|
|
+ rptControlObj.getTplIdsCommon(refRptTplIds, refBillSumPrjsIds, refGljSumPrjsIds, null, null, null, prj_ids_arr);
|
|
|
if (zTreeOprObj.selectedPrjIDs.length > 0 && (refBillSumPrjsIds.length > 0 || refGljSumPrjsIds.length > 0)) {
|
|
|
let params = rptControlObj.creatCommonExportParam(refRptTplIds, refBillSumPrjsIds, refGljSumPrjsIds);
|
|
|
params.rptName = orgRptName;
|
|
|
@@ -885,20 +915,19 @@ let rptControlObj = {
|
|
|
}
|
|
|
);
|
|
|
} else {
|
|
|
- if (refBillSumPrjsIds.length > 0 || refGljSumPrjsIds.length > 0) {
|
|
|
- $("#divReqBillSummary")[0].style.display = "none";
|
|
|
- $("#divReqGljSummary")[0].style.display = "none";
|
|
|
- $("#divReqCommonSummaryExcel")[0].style.display = "";
|
|
|
- $("#divReqCommonSummaryMultiExcel")[0].style.display = "none";
|
|
|
- $("#divReqCommonSummaryPDF")[0].style.display = "none";
|
|
|
+ let needSelect = false;
|
|
|
+ for (let treeNode of zTreeOprObj.checkedRptTplNodes) {
|
|
|
+ if (zTreeOprObj._chkIfNeedShowPrjSelection(treeNode)) {
|
|
|
+ needSelect = true;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (needSelect) {
|
|
|
+ activeBranchAfterPrjSelection('divReqCommonSummaryExcel');
|
|
|
zTreeOprObj.requestPrjFolderCommon(); //先处理需要汇总的报表,走另外一个分支
|
|
|
} else if (refRptTplIds.length > 0) {
|
|
|
- let prj_ids_arr = [];
|
|
|
let params = {};
|
|
|
params.prj_id = projectObj.project.projectInfo.ID;
|
|
|
- for (let idx = 0; idx < refRptTplIds.length; idx++) {
|
|
|
- prj_ids_arr.push([projectObj.project.projectInfo.ID]);
|
|
|
- }
|
|
|
params.prj_ids_arr = prj_ids_arr;
|
|
|
params.rpt_ids = refRptTplIds;
|
|
|
params.rptName = orgRptName;
|
|
|
@@ -970,12 +999,15 @@ let rptControlObj = {
|
|
|
}
|
|
|
);
|
|
|
} else {
|
|
|
- if (refBillSumPrjsIds.length > 0 || refGljSumPrjsIds.length > 0) {
|
|
|
- $("#divReqBillSummary")[0].style.display = "none";
|
|
|
- $("#divReqGljSummary")[0].style.display = "none";
|
|
|
- $("#divReqCommonSummaryExcel")[0].style.display = "none";
|
|
|
- $("#divReqCommonSummaryMultiExcel")[0].style.display = "";
|
|
|
- $("#divReqCommonSummaryPDF")[0].style.display = "none";
|
|
|
+ let needSelect = false;
|
|
|
+ for (let treeNode of zTreeOprObj.checkedRptTplNodes) {
|
|
|
+ if (zTreeOprObj._chkIfNeedShowPrjSelection(treeNode)) {
|
|
|
+ needSelect = true;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (needSelect) {
|
|
|
+ activeBranchAfterPrjSelection('divReqCommonSummaryMultiExcel');
|
|
|
zTreeOprObj.requestPrjFolderCommon(); //先处理需要汇总的报表,走另外一个分支
|
|
|
} else if (refRptTplIds.length > 0) {
|
|
|
let params = {};
|
|
|
@@ -1037,71 +1069,6 @@ let rptControlObj = {
|
|
|
me.getAllIndividualExcelBook();
|
|
|
}
|
|
|
},
|
|
|
- getPDF: function () {
|
|
|
- let me = rptControlObj;
|
|
|
- if (zTreeOprObj.checkedRptTplNodes && zTreeOprObj.checkedRptTplNodes.length > 0) {
|
|
|
- let refRptTplIds = [], refBillSumPrjsIds = [], refGljSumPrjsIds = [];
|
|
|
- let rpt_names = [], bill_rpt_names = [], glj_rpt_names = [];
|
|
|
- let prj_ids_arr = [];
|
|
|
- rptControlObj.getTplIdsCommon(refRptTplIds, refBillSumPrjsIds, refGljSumPrjsIds, rpt_names, bill_rpt_names, glj_rpt_names, prj_ids_arr);
|
|
|
- if (zTreeOprObj.selectedPrjIDs.length > 0 && (glj_rpt_names.length > 0 || bill_rpt_names.length > 0)) {
|
|
|
- let params = rptControlObj.creatCommonExportParam();
|
|
|
- params.prj_id = projectObj.project.projectInfo.ID;
|
|
|
- params.prj_ids_arr = prj_ids_arr;
|
|
|
- params.sum_rpt_names = bill_rpt_names.concat(glj_rpt_names);
|
|
|
- params.rpt_ids = refRptTplIds;
|
|
|
- params.rpt_bill_tpl_ids = refBillSumPrjsIds;
|
|
|
- params.rpt_glj_tpl_ids = refGljSumPrjsIds;
|
|
|
- params.rpt_names = rpt_names;
|
|
|
- params.isOneSheet = true;
|
|
|
- params.rptName = projectObj.project.projectInfo.name;
|
|
|
- CommonAjax.postEx("report_api/createPdfFiles", params, WAIT_TIME_EXPORT, true, function(result){
|
|
|
- if (result) {
|
|
|
- let uuIdUrls = [];
|
|
|
- for (let uuIdObj of result) {
|
|
|
- let uuIdUrl = "/report_api/getFileByUUID/" + uuIdObj.uuid + "/" + stringUtil.replaceAll(uuIdObj.reportName, "#", "_") + "/pdf";
|
|
|
- uuIdUrls.push(uuIdUrl);
|
|
|
- }
|
|
|
- downloadReport(uuIdUrls);
|
|
|
- } else {
|
|
|
- //
|
|
|
- }
|
|
|
- }, null, null
|
|
|
- );
|
|
|
- } else {
|
|
|
- if (refBillSumPrjsIds.length > 0 || refGljSumPrjsIds.length > 0) {
|
|
|
- $("#divReqBillSummary")[0].style.display = "none";
|
|
|
- $("#divReqGljSummary")[0].style.display = "none";
|
|
|
- $("#divReqCommonSummaryExcel")[0].style.display = "none";
|
|
|
- $("#divReqCommonSummaryMultiExcel")[0].style.display = "none";
|
|
|
- $("#divReqCommonSummaryPDF")[0].style.display = "";
|
|
|
- zTreeOprObj.requestPrjFolderCommon(); //先处理需要汇总的报表,走另外一个分支
|
|
|
- } else if (refRptTplIds.length > 0) {
|
|
|
- let params = {};
|
|
|
- params.prj_id = projectObj.project.projectInfo.ID;
|
|
|
- params.rpt_ids = refRptTplIds;
|
|
|
- params.rpt_names = rpt_names;
|
|
|
- params.pageSize = me.getCurrentPageSize();
|
|
|
- params.orientation = ((zTreeOprObj.checkedRptTplNodes.length > 1)?null:me.getCurrentOrientation());
|
|
|
- params.custCfg = zTreeOprObj.reportPageCfg;
|
|
|
- params.option = "normal";
|
|
|
- CommonAjax.postEx("report_api/createPdfFiles", params, WAIT_TIME_EXPORT, true, function(result){
|
|
|
- if (result) {
|
|
|
- let uuIdUrls = [];
|
|
|
- for (let uuIdObj of result) {
|
|
|
- let uuIdUrl = "/report_api/getFileByUUID/" + uuIdObj.uuid + "/" + stringUtil.replaceAll(uuIdObj.reportName, "#", "_") + "/pdf";
|
|
|
- uuIdUrls.push(uuIdUrl);
|
|
|
- }
|
|
|
- downloadReport(uuIdUrls);
|
|
|
- } else {
|
|
|
- //
|
|
|
- }
|
|
|
- }, null, null
|
|
|
- );
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
_hidePdfIniPage: function () {
|
|
|
if ($('#ini_PDF_cover').is(':visible')) {
|
|
|
// $("#ini_PDF_Btn_Cancel").trigger("click");
|
|
|
@@ -1185,12 +1152,15 @@ let rptControlObj = {
|
|
|
}
|
|
|
);
|
|
|
} else {
|
|
|
- if (refBillSumPrjsIds.length > 0 || refGljSumPrjsIds.length > 0) {
|
|
|
- $("#divReqBillSummary")[0].style.display = "none";
|
|
|
- $("#divReqGljSummary")[0].style.display = "none";
|
|
|
- $("#divReqCommonSummaryExcel")[0].style.display = "none";
|
|
|
- $("#divReqCommonSummaryMultiExcel")[0].style.display = "none";
|
|
|
- $("#divReqCommonSummaryPDF")[0].style.display = "";
|
|
|
+ let needSelect = false;
|
|
|
+ for (let treeNode of zTreeOprObj.checkedRptTplNodes) {
|
|
|
+ if (zTreeOprObj._chkIfNeedShowPrjSelection(treeNode)) {
|
|
|
+ needSelect = true;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (needSelect) {
|
|
|
+ activeBranchAfterPrjSelection('divReqCommonSummaryPDF');
|
|
|
zTreeOprObj.requestPrjFolderCommon(); //先处理需要汇总的报表,走另外一个分支
|
|
|
} else if (refRptTplIds.length > 0) {
|
|
|
let params = {};
|
|
|
@@ -1209,10 +1179,6 @@ let rptControlObj = {
|
|
|
me._hidePdfIniPage();
|
|
|
let pageSize = rptControlObj.getCurrentPageSize();
|
|
|
downloadPDFReport(result, pageSize, rpt_names);
|
|
|
- // for (let idx = 0; idx < result.length; idx++) {
|
|
|
- // let pageData = result[idx];
|
|
|
- // JpcJsPDFHelper.outputAsPdf(pageData, pageSize, rpt_names[idx]);
|
|
|
- // }
|
|
|
},
|
|
|
function(failRst){
|
|
|
$.bootstrapLoading.end();
|
|
|
@@ -1392,4 +1358,14 @@ function dynamicLoadCss(url) {
|
|
|
link.rel = 'stylesheet';
|
|
|
link.href = url;
|
|
|
head.appendChild(link);
|
|
|
+}
|
|
|
+
|
|
|
+function activeBranchAfterPrjSelection(idStr) {
|
|
|
+ $("#divReqBillSummary")[0].style.display = "none";
|
|
|
+ $("#divReqGljSummary")[0].style.display = "none";
|
|
|
+ $("#divReqCommonSummaryExcel")[0].style.display = "none";
|
|
|
+ $("#divReqCommonSummaryMultiExcel")[0].style.display = "none";
|
|
|
+ $("#divReqCommonSummaryPDF")[0].style.display = "none";
|
|
|
+ $("#divReqCustomSelect")[0].style.display = "none";
|
|
|
+ $(`#${idStr}`)[0].style.display = "";
|
|
|
}
|