|
@@ -1422,7 +1422,7 @@ $(document).ready(() => {
|
|
|
$('#calc-by-ratio').modal('hide');
|
|
|
});
|
|
|
},
|
|
|
- exportExcel: function (filename, nodes) {
|
|
|
+ exportExcel: function (filename, nodes, withPos = true) {
|
|
|
const exportNodesData = function (data, nodes) {
|
|
|
for (const node of nodes) {
|
|
|
data.push({
|
|
@@ -1438,10 +1438,12 @@ $(document).ready(() => {
|
|
|
c_dgn_qty1: node.c_dgn_qty1, c_dgn_qty2: node.c_dgn_qty2,
|
|
|
final_dgn_price: node.final_dgn_price,
|
|
|
postil: node.postil, drawing_code: node.drawing_code, memo: node.memo,
|
|
|
+ contract_expr_str: node.calc_expr ? TreeExprCalc.expr2ExprStr(node.calc_expr) : '',
|
|
|
});
|
|
|
if (node.children && node.children.length > 0) {
|
|
|
exportNodesData(data, node.children);
|
|
|
} else {
|
|
|
+ if (!withPos) continue;
|
|
|
const posRange = stagePos.getLedgerPos(node.id);
|
|
|
if (posRange && posRange.length > 0) {
|
|
|
for (const [i, p] of posRange.entries()) {
|
|
@@ -1802,6 +1804,17 @@ $(document).ready(() => {
|
|
|
return !node;
|
|
|
}
|
|
|
},
|
|
|
+ exportContractExprXlsx: {
|
|
|
+ name: '导出本期合同计量公式',
|
|
|
+ callback: function(key, opt, menu, e) {
|
|
|
+ exportExcelSetting.cols.push({title: '本期合同计量计算式', colSpan: '1', rowSpan: '2', field: 'contract_expr_str', hAlign: 0, width: 140, formatter: '@'});
|
|
|
+ stageTreeSpreadObj.exportExcel($('.sidebar-title').attr('data-original-title') + '本期合同计量公式.xlsx', null, false);
|
|
|
+ exportExcelSetting.cols.splice(exportExcelSetting.cols.length - 1, 1);
|
|
|
+ },
|
|
|
+ visible: function(key, opt) {
|
|
|
+ return contractExpr;
|
|
|
+ }
|
|
|
+ },
|
|
|
importSpr: '---',
|
|
|
importStageGcl: {
|
|
|
name: '导入(其他标段)工程量清单计量数据',
|