浏览代码

决算对比、报表,新增数量1/数量2、经济指标

MaiXinRong 3 年之前
父节点
当前提交
ff65f2eb65
共有 4 个文件被更改,包括 29 次插入20 次删除
  1. 17 3
      app/lib/budget_final.js
  2. 0 17
      app/public/js/budget_compare.js
  3. 6 0
      builder_report_index_define.js
  4. 6 0
      sql/update.sql

+ 17 - 3
app/lib/budget_final.js

@@ -192,6 +192,20 @@ class BudgetFinal {
             node.dgn_qty = node.dgn_qty1
                 ? (node.dgn_qty2 ? node.dgn_qty1 + '/' + node.dgn_qty2 : node.dgn_qty1)
                 : (node.dgn_qty2 ? '/' + node.dgn_qty2 : '');
+
+            node.gu_dgn_price = helper.div(node.gu_tp, node.gu_dgn_qty1, 2);
+            node.gu_dgn_qty = node.gu_dgn_qty1
+                ? (node.gu_dgn_qty2 ? node.gu_dgn_qty1 + '/' + node.gu_dgn_qty2 : node.gu_dgn_qty1 + '')
+                : (node.gu_dgn_qty2 ? '/' + node.gu_dgn_qty2 : '');
+            node.gai_dgn_price = helper.div(node.gai_tp, node.gai_dgn_qty1, 2);
+            node.gai_dgn_qty = node.gai_dgn_qty1
+                ? (node.gai_dgn_qty2 ? node.gai_dgn_qty1 + '/' + node.gai_dgn_qty2 : node.gai_dgn_qty1 + '')
+                : (node.gai_dgn_qty2 ? '/' + node.gai_dgn_qty2 : '');
+            node.yu_dgn_price = helper.div(node.yu_tp, node.yu_dgn_qty1, 2);
+            node.yu_dgn_qty = node.yu_dgn_qty1
+                ? (node.yu_dgn_qty2 ? node.yu_dgn_qty1 + '/' + node.yu_dgn_qty2 : node.yu_dgn_qty1 + '')
+                : (node.yu_dgn_qty2 ? '/' + node.yu_dgn_qty2 : '');
+
             node.final_dgn_price = helper.div(node.final_tp, node.final_dgn_qty1, 2);
             node.final_dgn_qty = node.final_dgn_qty1
                 ? (node.final_dgn_qty2 ? node.final_dgn_qty1 + '/' + node.final_dgn_qty2 : node.final_dgn_qty1)
@@ -219,9 +233,9 @@ class BudgetFinal {
                 id: ctx.app.uuid.v4(), bid, final_id,
                 tree_id: x.id, tree_pid: x.pid, order: x.order, level: x.level, full_path: x.full_path, is_leaf: x.is_leaf,
                 code: x.code, name: x.name, unit: x.unit,
-                gu_dgn_qty1: x.gu_dgn_qty1 || 0, gu_dgn_qty2: x.gu_dgn_qty2 || 0, gu_tp: x.gu_tp || 0,
-                gai_dgn_qty1: x.gai_dgn_qty1 || 0, gai_dgn_qty2: x.gai_dgn_qty2 || 0, gai_tp: x.gai_tp || 0,
-                yu_dgn_qty1: x.yu_dgn_qty1 || 0, yu_dgn_qty2: x.yu_dgn_qty2 || 0, yu_tp: x.yu_tp || 0,
+                gu_dgn_qty1: x.gu_dgn_qty1 || 0, gu_dgn_qty2: x.gu_dgn_qty2 || 0, gu_dgn_qty: x.gu_dgn_qty, gu_dgn_price: x.gu_dgn_price || 0, gu_tp: x.gu_tp || 0,
+                gai_dgn_qty1: x.gai_dgn_qty1 || 0, gai_dgn_qty2: x.gai_dgn_qty2 || 0, gai_dgn_qty: x.gai_dgn_qty, gai_dgn_price: x.gai_dgn_price || 0, gai_tp: x.gai_tp || 0,
+                yu_dgn_qty1: x.yu_dgn_qty1 || 0, yu_dgn_qty2: x.yu_dgn_qty2 || 0, yu_dgn_qty: x.yu_dgn_qty, yu_dgn_price: x.yu_dgn_price || 0, yu_tp: x.yu_tp || 0,
 
                 dgn_qty1: x.dgn_qty1 || 0, dgn_qty2: x.dgn_qty2 || 0, total_price: x.total_price || 0,
                 final_dgn_qty1: x.final_dgn_qty1 || 0, final_dgn_qty2: x.final_dgn_qty2 || 0, final_tp: x.final_tp || 0,

+ 0 - 17
app/public/js/budget_compare.js

@@ -96,7 +96,6 @@ $(document).ready(() => {
                 cur.yu_tp = ZhCalc.add(cur.yu_tp, source.total_price);
             });
             compareTree.afterLoad(node => {
-                if (node.code === '1')console.log(node);
                 node.gu_dgn_price = ZhCalc.div(node.gu_tp, node.gu_dgn_qty1, 2);
                 node.gu_dgn_qty = node.gu_dgn_qty1
                     ? (node.gu_dgn_qty2 ? node.gu_dgn_qty1 + '/' + node.gu_dgn_qty2 : node.gu_dgn_qty1)
@@ -130,24 +129,8 @@ $(document).ready(() => {
                 order: 'order',
                 level: 'level',
                 rootId: -1,
-                calcFields: [],
-                calcFun: function (node) {
-                    node.gu_dgn_price = ZhCalc.div(node.gu_tp, node.gu_dgn_qty1, 2);
-                    node.gu_dgn_qty = node.gu_dgn_qty1
-                        ? (node.gu_dgn_qty2 ? node.gu_dgn_qty1 + '/' + node.gu_dgn_qty2 : node.gu_dgn_qty1)
-                        : (node.gu_dgn_qty2 ? '/' + node.gu_dgn_qty2 : '');
-                    node.gai_dgn_price = ZhCalc.div(node.gai_tp, node.gai_dgn_qty1, 2);
-                    node.gai_dgn_qty = node.gai_dgn_qty1
-                        ? (node.gai_dgn_qty2 ? node.gai_dgn_qty1 + '/' + node.gai_dgn_qty2 : node.gai_dgn_qty1)
-                        : (node.gai_dgn_qty2 ? '/' + node.gai_dgn_qty2 : '');
-                    node.yu_dgn_price = ZhCalc.div(node.yu_tp, node.yu_dgn_qty1, 2);
-                    node.yu_dgn_qty = node.yu_dgn_qty1
-                        ? (node.yu_dgn_qty2 ? node.yu_dgn_qty1 + '/' + node.yu_dgn_qty2 : node.yu_dgn_qty1)
-                        : (node.yu_dgn_qty2 ? '/' + node.yu_dgn_qty2 : '');
-                }
             });
             finalTree.loadDatas(result.final);
-            treeCalc.calculateAll(finalTree);
             SpreadJsObj.loadSheetData(compareSheet, SpreadJsObj.DataType.Tree, finalTree);
             if (sfSelect) sfSelect.reloadSelect(this.finalInfo.tender);
         }

+ 6 - 0
builder_report_index_define.js

@@ -2658,14 +2658,20 @@ const budget = {
 
             { name: '估算-项目节-数量1', field: 'gu_dgn_qty1', type: dataType.currency },
             { name: '估算-项目节-数量2', field: 'gu_dgn_qty2', type: dataType.currency },
+            { name: '估算-数量1/数量2', field: 'gu_dgn_qty', type: dataType.currency },
+            { name: '估算-经济指标', field: 'gu_dgn_tp', type: dataType.currency },
             { name: '估算-金额', field: 'gu_tp', type: dataType.currency },
 
             { name: '概算-项目节-数量1', field: 'gai_dgn_qty1', type: dataType.currency },
             { name: '概算-项目节-数量2', field: 'gai_dgn_qty2', type: dataType.currency },
+            { name: '概算-数量1/数量2', field: 'gai_dgn_qty', type: dataType.currency },
+            { name: '概算-经济指标', field: 'gai_dgn_tp', type: dataType.currency },
             { name: '概算-金额', field: 'gai_tp', type: dataType.currency },
 
             { name: '预算-项目节-数量1', field: 'yu_dgn_qty1', type: dataType.currency },
             { name: '预算-项目节-数量2', field: 'yu_dgn_qty2', type: dataType.currency },
+            { name: '预算-数量1/数量2', field: 'yu_dgn_qty', type: dataType.currency },
+            { name: '预算-经济指标', field: 'yu_dgn_tp', type: dataType.currency },
             { name: '预算-金额', field: 'yu_tp', type: dataType.currency },
 
             { name: '决算-台账-项目节-数量1', field: 'dgn_qty1', type: dataType.currency },

+ 6 - 0
sql/update.sql

@@ -35,12 +35,18 @@ CREATE TABLE `zh_budget_final` (
   `unit` varchar(15) CHARACTER SET utf8 NOT NULL DEFAULT '' COMMENT '单位',
   `gu_dgn_qty1` decimal(24,8) NOT NULL DEFAULT '0.00000000' COMMENT '估算-设计数量1',
   `gu_dgn_qty2` decimal(24,8) NOT NULL DEFAULT '0.00000000' COMMENT '估算-设计数量1',
+  `gu_dgn_qty` varchar(50) COLLATE utf8_unicode_ci NOT NULL DEFAULT '' COMMENT '估算-设计数量1/设计数量2',
+  `gu_dgn_price` decimal(24,8) NOT NULL DEFAULT '0.00000000' COMMENT '估算-经济指标',
   `gu_tp` decimal(24,8) NOT NULL DEFAULT '0.00000000' COMMENT '估算-金额',
   `gai_dgn_qty1` decimal(24,8) NOT NULL DEFAULT '0.00000000' COMMENT '概算-设计数量1',
   `gai_dgn_qty2` decimal(24,8) NOT NULL DEFAULT '0.00000000' COMMENT '概算-设计数量1',
+  `gai_dgn_qty` varchar(50) COLLATE utf8_unicode_ci NOT NULL DEFAULT '' COMMENT '概算-设计数量1/设计数量2',
+  `gai_dgn_price` decimal(24,8) NOT NULL DEFAULT '0.00000000' COMMENT '概算-经济指标',
   `gai_tp` decimal(24,8) NOT NULL DEFAULT '0.00000000' COMMENT '概算-金额',
   `yu_dgn_qty1` decimal(24,8) NOT NULL DEFAULT '0.00000000' COMMENT '预算-设计数量1',
   `yu_dgn_qty2` decimal(24,8) NOT NULL DEFAULT '0.00000000' COMMENT '预算-设计数量1',
+  `yu_dgn_qty` varchar(50) COLLATE utf8_unicode_ci NOT NULL DEFAULT '' COMMENT '预算-设计数量1/设计数量2',
+  `yu_dgn_price` decimal(24,8) NOT NULL DEFAULT '0.00000000' COMMENT '预算-经济指标',
   `yu_tp` decimal(24,8) NOT NULL DEFAULT '0.00000000' COMMENT '预算-金额',
   `dgn_qty1` decimal(24,8) NOT NULL DEFAULT '0.00000000' COMMENT '决算-台账-设计数量1',
   `dgn_qty2` decimal(24,8) NOT NULL DEFAULT '0.00000000' COMMENT '决算-台账-设计数量1',