Explorar el Código

feat: 1.新增建设项目对比的汇总类型选项。2.新增“干线公路汇总规则”的预处理

lishihao hace 2 semanas
padre
commit
2341a97056

+ 2 - 0
public/web/rpt_value_define.js

@@ -80,6 +80,8 @@ const JV = {
   PROP_HANDLE_TYPE_LAND_COMPS: "清单土地计算合并",
   PROP_HANDLE_TYPE_COST_TREE_BU_GLJ: "造价书插入补项工料机",
   PROP_HANDLE_TYPE_FLITE_XMJ_IS_BILL_BUDGET: "筛选清单预算项目节",
+  PROP_HANDLE_TYPE_FLITE_ARTERIAL_HIGHWAY_RULE: "干线公路汇总规则",
+  PROP_HANDLE_TYPE_ARTERIAL_HIGHWAY_RULE: "干线公路汇总规则类型",
 
   PROP_ADJUST_COLLECTION: "数据调整集",
   PROP_ADJUST_ACTION: "action",

+ 1 - 0
web/maintain/report/html/rpt_tpl_dtl_info.html

@@ -138,6 +138,7 @@
                         <option value="businessSummary">多个业务汇总</option>
                         <option value="changeProjectSummary">变更业务对比汇总</option>
                         <option value="changeProjectGljSummary">变更业务工料机对比汇总</option>
+                        <option value="compareConstruct">对比建设项目</option>
                     </select>
                     <label class="form-check-label" id="outputDesignDataBar" style="display: none;">
                         <input onchange="zTreeOprObj.onChangeFlag('outputDesignData', this)"  id="outputDesignData" type="checkbox">输出设计清单

+ 2 - 0
web/maintain/report/html/rpt_tpl_dtl_pre_hdl.html

@@ -35,6 +35,8 @@
             <%include ./rpt_tpl_dtl_pre_hdl_addDummy.html %>
             <!--工程量清单数据处理-->
             <%include ./rpt_tpl_dtl_pre_hdl_change_quantities_bills.html %>
+            <!--干线公路汇总规则数据处理-->
+            <%include ./rpt_tpl_dtl_pre_hdl_arterial_highway_rule.html%>
         </div>
     </div>
 </div>

+ 15 - 0
web/maintain/report/html/rpt_tpl_dtl_pre_hdl_arterial_highway_rule.html

@@ -0,0 +1,15 @@
+<div id="div_arterial_highway_rule_bar">
+    <div class="form-group row" id="div_arterial_highway_rule">
+        <div class="input-group col-5">
+            <div class="input-group-addon">汇总规则</div>
+            <select class="form-control input-sm" id="select_arterial_highway_rule"
+                onchange="preHandleArterialHighwayRuleObj.onArterialHighwayRuleChange(this)">
+                <option value="constructID">建设项目</option>
+                <option value="constructionUnitsAndRoadTechniqueGrade">养护管理单位名称和公路等级</option>
+                <option value="roadTechniqueGrade">公路技术等级</option>
+                <option value="routeName">养护路线名称</option>
+                <option value="constructionUnits">养护管理单位名称</option>
+            </select>
+        </div>
+    </div>
+</div>

+ 2 - 0
web/maintain/report/js/rpt_tpl_main.js

@@ -1307,6 +1307,8 @@ let zTreeOprObj = {
                   $("#element_sumLv_flags")[0].selectedIndex = 17;
                 else if (sumLvType === "changeProjectGljSummary")
                   $("#element_sumLv_flags")[0].selectedIndex = 18;
+                else if (sumLvType === "compareConstruct")
+                  $("#element_sumLv_flags")[0].selectedIndex = 19;
                 else {
                   $("#element_sumLv_flags")[0].selectedIndex = 0;
                 }

+ 52 - 2
web/maintain/report/js/rpt_tpl_pre_handle.js

@@ -467,7 +467,10 @@ let preHandleObj = {
       Name: JV.PROP_HANDLE_TYPE_FLITE_XMJ_IS_BILL_BUDGET,
       Title: "",
     });
-    types.push({ Name: JV.PROP_HANDLE_TYPE_BIND_AID_REPORT, Title: "" });
+    types.push({
+      Name: JV.PROP_HANDLE_TYPE_FLITE_ARTERIAL_HIGHWAY_RULE,
+      Title: "",
+    });
 
     // types.push({Name: "纯手工填写", Title: ""});
     me.typeTreeObj = $.fn.zTree.init(
@@ -601,7 +604,7 @@ let preHandleObj = {
           预处理类型: preHandleType,
         };
         break;
-      case JV.PROP_HANDLE_TYPE_BIND_AID_REPORT:
+      case JV.PROP_HANDLE_TYPE_FLITE_ARTERIAL_HIGHWAY_RULE:
         rst = {
           Name: "预处理环节",
           Title: "",
@@ -668,6 +671,9 @@ let preHandleObj = {
         break;
       case JV.PROP_HANDLE_TYPE_FLITE_XMJ_IS_BILL_BUDGET:
         break;
+      case JV.PROP_HANDLE_TYPE_FLITE_ARTERIAL_HIGHWAY_RULE:
+        item[JV.PROP_HANDLE_TYPE_ARTERIAL_HIGHWAY_RULE] = "constructID"; // 工程量清单排序
+        break;
       default:
         item[JV.PROP_HANDLE_TYPE] = JV.PROP_HANDLE_TYPE_SORT;
         item[JV.PROP_SORT_TYPE] = "normal";
@@ -695,6 +701,11 @@ let preHandleObj = {
       src[JV.PROP_HANDLE_TYPE] === JV.PROP_HANDLE_TYPE_CHANGE_QUANTITIES_BILLS
     ) {
       preHandleQuantitiesBillsSortObj.copyNode(src, dest);
+    } else if (
+      src[JV.PROP_HANDLE_TYPE] ===
+      JV.PROP_HANDLE_TYPE_FLITE_ARTERIAL_HIGHWAY_RULE
+    ) {
+      preHandleArterialHighwayRuleObj.copyNode(src, dest);
     }
   },
   private_set_title: function (node) {
@@ -744,6 +755,8 @@ let preHandleObj = {
           preHandleAddDummyObj.refresh_node();
         } else if (typeNode[JV.PROP_NAME] === "转化工程量清单") {
           preHandleQuantitiesBillsSortObj.refresh_node();
+        } else if (typeNode[JV.PROP_NAME] === "干线公路汇总规则") {
+          preHandleArterialHighwayRuleObj.refresh_node();
         }
       }
     }
@@ -761,6 +774,7 @@ let preHandleObj = {
     $("#div_sort_tree")[0].style.display = "none";
     $("#div_sort_self_define")[0].style.display = "none";
     $("#div_quantities_bills_sort_bar")[0].style.display = "none";
+    $("#div_arterial_highway_rule_bar")[0].style.display = "none";
   },
   onPreHandleClick: function (event, treeId, treeNode) {
     //点击预处理环节 节点
@@ -942,6 +956,11 @@ let preHandleObj = {
           case JV.PROP_HANDLE_TYPE_FLITE_XMJ_IS_BILL_BUDGET:
             rst.push(preHandleBillDataMoveObj.extractTabFields(handleObj));
             break;
+          case JV.PROP_HANDLE_TYPE_FLITE_ARTERIAL_HIGHWAY_RULE:
+            rst.push(
+              preHandleArterialHighwayRuleObj.extractTabFields(handleObj)
+            );
+            break;
           default:
             break;
         }
@@ -1880,6 +1899,37 @@ let preHandleQuantitiesBillsSortObj = {
       dom.value;
   },
 };
+// 干线公路汇总规则
+let preHandleArterialHighwayRuleObj = {
+  copyNode: function (src, dest) {
+    dest[JV.PROP_HANDLE_TYPE_ARTERIAL_HIGHWAY_RULE] = src.combileRule;
+  },
+  refresh_node: function () {
+    $("#div_arterial_highway_rule_bar")[0].style.display = "";
+    if (preHandleObj.currentNode) {
+      $("#select_arterial_highway_rule")[0].value =
+        preHandleObj.currentNode[JV.PROP_HANDLE_TYPE_ARTERIAL_HIGHWAY_RULE] ||
+        "constructID";
+    }
+  },
+  extractTabFields: function (handleObj) {
+    let me = preHandleArterialHighwayRuleObj,
+      rst = {};
+    me.copyNode(handleObj, rst);
+    rst = {
+      预处理类型: "干线公路汇总规则",
+      映射数据对象: "bills",
+      combileRule: handleObj[JV.PROP_HANDLE_TYPE_ARTERIAL_HIGHWAY_RULE],
+    };
+    return rst;
+  },
+  onArterialHighwayRuleChange: function (dom) {
+    // 工程量清单排序类型
+    let me = preHandleObj;
+    me.currentNode[JV.PROP_HANDLE_TYPE_ARTERIAL_HIGHWAY_RULE] = dom.value;
+  },
+};
+
 let preHandleFXGLJObj = {
   copyNode: function (src, dest) {
     //