| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228 | 
							- <% include ./sub_menu.ejs %>
 
- <div class="panel-content">
 
-     <div class="panel-title">
 
-         <div class="title-main  d-flex">
 
-             <% include ./sub_mini_menu.ejs %>
 
-             <div class="d-inline-block">
 
-                 <div class="dropdown">
 
-                     <button class="btn btn-sm btn-light dropdown-toggle text-primary" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
 
-                         <i class="fa fa-list-ol"></i> 显示层级
 
-                     </button>
 
-                     <div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
 
-                         <a class="dropdown-item" name="showLevel" tag="1" href="javascirpt: void(0);">第一层</a>
 
-                         <a class="dropdown-item" name="showLevel" tag="2" href="javascirpt: void(0);">第二层</a>
 
-                         <a class="dropdown-item" name="showLevel" tag="3" href="javascirpt: void(0);">第三层</a>
 
-                         <a class="dropdown-item" name="showLevel" tag="4" href="javascirpt: void(0);">第四层</a>
 
-                         <a class="dropdown-item" name="showLevel" tag="5" href="javascirpt: void(0);">第五层</a>
 
-                         <a class="dropdown-item" name="showLevel" tag="last" href="javascirpt: void(0);">最底层</a>
 
-                         <a class="dropdown-item" name="showLevel" tag="leafXmj" href="javascirpt: void(0);">只显示项目节</a>
 
-                         <a class="dropdown-item" name="showLevel" tag="differ" href="javascirpt: void(0);">只显示修订项</a>
 
-                     </div>
 
-                 </div>
 
-             </div>
 
-             <div class="d-inline-block">
 
-                 <span class=""><i class="fa fa-stop text-warning-50 border-warning-50 bg-primary-50"></i> 新增</span>
 
-                 <span class="ml-2"><i class="fa fa-stop text-secondary-50 border-secondary-50 bg-secondary-50"></i> 删除</span>
 
-                 <span class="ml-2"><i class="fa fa-stop text-info-50 border-info-50 bg-info-50"></i> 结构调整</span>
 
-                 <span class="ml-2"><i class="fa fa-stop text-danger-50 border-danger-50 bg-danger-50"></i> 计算项修改</span>
 
-                 <span class="ml-2"><i class="fa fa-stop text-success-50 border-success-50 bg-success-50"></i> 文字修改</span>
 
-             </div>
 
-             <div class="ml-auto">
 
-                 <% if (ctx.app.config.is_debug) { %>
 
-                 <% if (lastStage) { %>
 
-                 <a class="btn btn-sm btn-primary mr-1" id="load-stage-btn" href="#load-stage" data-toggle="modal" data-target="#load-stage">加载计量数据</a>
 
-                 <% } %>
 
-                 <% } %>
 
-             </div>
 
-         </div>
 
-     </div>
 
-     <div class="content-wrap row pr-46">
 
-         <div class="c-header p-0 col-12"></div>
 
-         <!--核心内容(两栏)-->
 
-         <div class="row w-100 sub-content">
 
-             <!--左栏-->
 
-             <div class="c-body" id="left-view" style="width: 100%">
 
-                 <!--0号台账模式-->
 
-                 <div class="sjs-height-1" style="overflow: hidden" id="bills-spread">
 
-                 </div>
 
-                 <% if (ctx.tender.data.measure_type === measureType.tz.value) { %>
 
-                 <div class="bcontent-wrap">
 
-                     <div id="revise-resize" class="resize-y" id="top-spr" r-Type="height" div1=".sjs-height-1" div2=".bcontent-wrap" title="调整大小"><!--调整上下高度条--></div>
 
-                     <div class="bc-bar mb-1">
 
-                         <ul class="nav nav-tabs">
 
-                             <li class="nav-item">
 
-                                 <a class="nav-link active" href="javascript:void(0)">计量单元</a>
 
-                             </li>
 
-                             <li>
 
-                                 <div class="d-inline-block ml-2 mt-1">
 
-                                     <span class=""><i class="fa fa-stop text-warning-50 border-warning-50 bg-primary-50"></i> 新增</span>
 
-                                     <span class="ml-2"><i class="fa fa-stop text-secondary-50 border-secondary-50 bg-secondary-50"></i> 删除</span>
 
-                                     <span class="ml-2"><i class="fa fa-stop text-danger-50 border-danger-50 bg-danger-50"></i> 数量修改</span>
 
-                                     <span class="ml-2"><i class="fa fa-stop text-success-50 border-success-50 bg-success-50"></i> 文字修改</span>
 
-                                 </div>
 
-                             </li>
 
-                             <li class="nav-item" id="pos-search">
 
-                             </li>
 
-                         </ul>
 
-                     </div>
 
-                     <div class="sp-wrap" id="pos-spread">
 
-                     </div>
 
-                 </div>
 
-                 <% } %>
 
-             </div>
 
-             <!--右栏-->
 
-             <div class="c-body" id="right-view" style="display: none; width: 33%;">
 
-                 <div class="resize-x" id="revise-right-spr" r-Type="width" div1="#left-view" div2="#right-view" title="调整大小" a-type="percent"><!--调整左右高度条--></div>
 
-                 <div class="tab-content">
 
-                     <div id="search" class="tab-pane">
 
-                     </div>
 
-                 </div>
 
-             </div>
 
-         </div>
 
-         <!--右侧菜单-->
 
-         <div class="side-menu">
 
-             <!--右侧菜单-->
 
-             <ul class="nav flex-column right-nav" id="side-menu">
 
-                 <li class="nav-item">
 
-                     <a class="nav-link" content="#search" href="javascript: void(0);">查找定位</a>
 
-                 </li>
 
-             </ul>
 
-         </div>
 
-     </div>
 
- </div>
 
- <script src="/public/js/moment/moment.min.js"></script>
 
- <script>
 
-     const isTz = <%- ctx.tender.data.measure_type === measureType.tz.value %>;
 
-     const thousandth = <%- ctx.tender.info.display.thousandth %>;
 
-     const decimal = JSON.parse('<%- JSON.stringify(ctx.tender.info.decimal) %>');
 
-     const compareFields = {
 
-         info: ['code', 'b_code', 'name', 'unit'],
 
-         leafCalc: ['unit_price', 'sgfh_qty', 'sgfh_tp', 'qtcl_qty', 'qtcl_tp', 'sjcl_qty', 'sjcl_tp', 'deal_qty', 'deal_tp', 'quantity', 'total_price'],
 
-         parentCalc: ['dgn_qty1', 'dgn_qty2',],
 
-         posInfo: ['name', 'position'],
 
-         posCalc: ['sgfh_qty', 'qtcl_qty', 'sjcl_qty'],
 
-     }
 
-     const getCompare = function (node, field, prefix, defaultValue) {
 
-         const result = {};
 
-         for (const f of field) {
 
-             result[f] = node[prefix + f] || defaultValue;
 
-         }
 
-         return result;
 
-     };
 
-     const billsSpreadSetting = {
 
-         cols: [
 
-             {
 
-                 title: '修\n订\n类\n型', colSpan: '1', rowSpan: '3', field: 'differ_str', hAlign: 1, width: 20, formatter: '@', cellType: 'tip',
 
-                 getTip: function (x) {
 
-                     if (x.differ_str.indexOf('改') >= 0) {
 
-                         const differ_hint = [];
 
-                         if (x.differ.indexOf('tree') >= 0)
 
-                             differ_hint.push('结构调整(原父项:' + (x.org_parent.code || '') + (x.org_parent.b_code || '') + ')');
 
-                         if (x.differ.indexOf('calc') >= 0) differ_hint.push('计算项修改');
 
-                         if (x.differ.indexOf('info') >= 0) differ_hint.push('文字修改');
 
-                         const pos_hint = [];
 
-                         if (x.differ.indexOf('pos-add') >= 0) pos_hint.push('增');
 
-                         if (x.differ.indexOf('pos-del') >= 0) pos_hint.push('删');
 
-                         if (x.differ.indexOf('pos-info') >= 0) pos_hint.push('文改');
 
-                         if (x.differ.indexOf('pos-calc') >= 0) pos_hint.push('量改');
 
-                         if (pos_hint.length > 0) differ_hint.push('计量单元: ' + pos_hint.join(','))
 
-                         return differ_hint.join('<br>');
 
-                     } else {
 
-                         return '';
 
-                     }
 
-                 }
 
-             },
 
-             {title: '修订台账|项目节编号', colSpan: '16|1', rowSpan: '1|2', field: 'new_code', hAlign: 0, width: 145, formatter: '@', cellType: 'tree'},
 
-             {title: '|清单编号', colSpan: '|1', rowSpan: '|2', field: 'new_b_code', hAlign: 0, width: 70, formatter: '@'},
 
-             {title: '|名称', colSpan: '|1', rowSpan: '|2', field: 'new_name', hAlign: 0, width: 185, formatter: '@'},
 
-             {title: '|单位', colSpan: '|1', rowSpan: '|2', field: 'new_unit', hAlign: 1, width: 50, formatter: '@'},
 
-             {title: '|单价', colSpan: '|1', rowSpan: '|2', field: 'new_unit_price', hAlign: 2, width: 60, type: 'Number'},
 
-             {title: '|项目节数量|数量1',  colSpan: '|2|1', rowSpan: '|1|1', field: 'new_dgn_qty1', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.dgnQty%>},
 
-             {title: '||数量2',  colSpan: '||1', rowSpan: '||1', field: 'new_dgn_qty2', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.dgnQty%>},
 
-             {title: '|经济指标',  colSpan: '|1', rowSpan: '|2', field: 'new_dgn_price', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.dgnQty%>},
 
-             {title: '|签约|数量', colSpan: '|2|1', rowSpan: '|1|1', field: 'new_deal_qty', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.data.measure_type === measureType.gcl.value%>},
 
-             {title: '||金额', colSpan: '||1', rowSpan: '||1', field: 'new_deal_tp', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.data.measure_type === measureType.gcl.value%>},
 
-             {title: '|设计量|数量', colSpan: '|2|1', rowSpan: '|1|1', field: 'new_sgfh_qty', hAlign: 2, width: 60, type: 'Number'},
 
-             {title: '||金额', colSpan: '||1', rowSpan: '||1', field: 'new_sgfh_tp', hAlign: 2, width: 60, type: 'Number'},
 
-             {title: '|设计错漏增减|数量', colSpan: '|2|1', rowSpan: '|1|1', field: 'new_sjcl_qty', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-             {title: '||金额', colSpan: '||1', rowSpan: '||1', field: 'new_sjcl_tp', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-             {title: '|其他错漏增减|数量', colSpan: '|2|1', rowSpan: '|1|1', field: 'new_qtcl_qty', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-             {title: '||金额', colSpan: '||1', rowSpan: '||1', field: 'new_qtcl_tp', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-             {title: '|台账小计|数量', colSpan: '|2|1', rowSpan: '|1|1', field: 'new_quantity', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-             {title: '||金额', colSpan: '||1', rowSpan: '||1', field: 'new_total_price', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-             {title: '原台账|项目节编号', colSpan: '16|1', rowSpan: '1|2', field: 'org_code', hAlign: 0, width: 145, formatter: '@', cellType: 'tree'},
 
-             {title: '|清单编号', colSpan: '|1', rowSpan: '|2', field: 'org_b_code', hAlign: 0, width: 70, formatter: '@'},
 
-             {title: '|名称', colSpan: '|1', rowSpan: '|2', field: 'org_name', hAlign: 0, width: 185, formatter: '@'},
 
-             {title: '|单位', colSpan: '|1', rowSpan: '|2', field: 'org_unit', hAlign: 1, width: 50, formatter: '@', cellType: 'unit'},
 
-             {title: '|单价', colSpan: '|1', rowSpan: '|2', field: 'org_unit_price', hAlign: 2, width: 60, type: 'Number'},
 
-             {title: '|项目节数量|数量1',  colSpan: '|2|1', rowSpan: '|1|1', field: 'org_dgn_qty1', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.dgnQty%>},
 
-             {title: '||数量2',  colSpan: '||1', rowSpan: '||1', field: 'org_dgn_qty2', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.dgnQty%>},
 
-             {title: '|经济指标',  colSpan: '|1', rowSpan: '|2', field: 'org_dgn_price', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.dgnQty%>},
 
-             {title: '|签约|数量', colSpan: '|2|1', rowSpan: '|1|1', field: 'org_deal_qty', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.data.measure_type === measureType.gcl.value%>},
 
-             {title: '||金额', colSpan: '||1', rowSpan: '||1', field: 'org_deal_tp', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.data.measure_type === measureType.gcl.value%>},
 
-             {title: '|设计量|数量', colSpan: '|2|1', rowSpan: '|1|1', field: 'org_sgfh_qty', hAlign: 2, width: 60, type: 'Number'},
 
-             {title: '||金额', colSpan: '||1', rowSpan: '||1', field: 'org_sgfh_tp', hAlign: 2, width: 60, type: 'Number'},
 
-             {title: '|设计错漏增减|数量', colSpan: '|2|1', rowSpan: '|1|1', field: 'org_sjcl_qty', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-             {title: '||金额', colSpan: '||1', rowSpan: '||1', field: 'org_sjcl_tp', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-             {title: '|其他错漏增减|数量', colSpan: '|2|1', rowSpan: '|1|1', field: 'org_qtcl_qty', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-             {title: '||金额', colSpan: '||1', rowSpan: '||1', field: 'org_qtcl_tp', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-             {title: '|台账小计|数量', colSpan: '|2|1', rowSpan: '|1|1', field: 'org_quantity', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-             {title: '||金额', colSpan: '||1', rowSpan: '||1', field: 'org_total_price', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-         ],
 
-         extraCols: [
 
-             {title: '计量数据|本期合同计量|数量', colSpan: '8|2|1', rowSpan: '1|1|1', field: 'contract_qty', hAlign: 2, width: 60, type: 'Number'},
 
-             {title: '||金额', colSpan: '||1', rowSpan: '||1', field: 'contract_tp', hAlign: 2, width: 60, type: 'Number'},
 
-             {title: '|本期数量变更|数量', colSpan: '|2|1', rowSpan: '|1|1', field: 'qc_qty', hAlign: 2, width: 60, type: 'Number'},
 
-             {title: '||金额', colSpan: '||1', rowSpan: '||1', field: 'qc_tp', hAlign: 2, width: 60, type: 'Number'},
 
-             // {title: '|本期完成计量|数量', colSpan: '|2|1', rowSpan: '|1|1', field: 'gather_qty', hAlign: 2, width: 60, type: 'Number'},
 
-             // {title: '||金额', colSpan: '||1', rowSpan: '||1', field: 'gather_tp', hAlign: 2, width: 60, type: 'Number'},
 
-             {title: '|截止本期合同计量|数量', colSpan: '|2|1', rowSpan: '|1|1', field: 'end_contract_qty', hAlign: 2, width: 60, type: 'Number'},
 
-             {title: '||金额', colSpan: '||1', rowSpan: '||1', field: 'end_contract_tp', hAlign: 2, width: 60, type: 'Number'},
 
-             {title: '|截止本期数量变更|数量', colSpan: '|2|1', rowSpan: '|1|1', field: 'end_qc_qty', hAlign: 2, width: 60, type: 'Number'},
 
-             {title: '||金额', colSpan: '||1', rowSpan: '||1', field: 'end_qc_tp', hAlign: 2, width: 60, type: 'Number'},
 
-             // {title: '|截止本期完成计量|数量', colSpan: '|2|1', rowSpan: '|1|1', field: 'end_gather_qty', hAlign: 2, width: 60, type: 'Number'},
 
-             // {title: '||金额', colSpan: '||1', rowSpan: '||1', field: 'end_gather_tp', hAlign: 2, width: 60, type: 'Number'},
 
-         ],
 
-         emptyRows: 3,
 
-         headRows: 3,
 
-         headRowHeight: [25, 25, 25],
 
-         defaultRowHeight: 21,
 
-         headerFont: '12px 微软雅黑',
 
-         font: '12px 微软雅黑',
 
-         readOnly: true,
 
-     };
 
-     const posSpreadSetting = {
 
-         cols: [
 
-             {title: '修订类型', colSpan: '1', rowSpan: '3', field: 'differ_str', hAlign: 1, width: 60, formatter: '@'},
 
-             {title: '修改台账|计量单元', colSpan: '6|1', rowSpan: '1|2', field: 'new_name', hAlign: 0, width: 230, formatter: '@'},
 
-             {title: '|位置', colSpan: '|1', rowSpan: '|2', field: 'new_position', hAlign: 0, width: 60, formatter: '@'},
 
-             {title: '|台账数量|设计量', colSpan: '|4|1', rowSpan: '|1|1', field: 'new_sgfh_qty', hAlign: 2, width: 100, type: 'Number'},
 
-             {title: '||设计错漏增减', colSpan: '||1', rowSpan: '||1', field: 'new_sjcl_qty', hAlign: 2, width: 100, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-             {title: '||其他错漏增减', colSpan: '||1', rowSpan: '||1', field: 'new_qtcl_qty', hAlign: 2, width: 100, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-             {title: '||小计', colSpan: '||1', rowSpan: '||1', field: 'new_quantity', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-             {title: '原台账|计量单元', colSpan: '6|1', rowSpan: '1|2', field: 'org_name', hAlign: 0, width: 230, formatter: '@'},
 
-             {title: '|位置', colSpan: '|1', rowSpan: '|2', field: 'org_position', hAlign: 0, width: 60, formatter: '@'},
 
-             {title: '|台账数量|设计量', colSpan: '|4|1', rowSpan: '|1|1', field: 'org_sgfh_qty', hAlign: 2, width: 100, type: 'Number'},
 
-             {title: '||设计错漏增减', colSpan: '||1', rowSpan: '||1', field: 'org_sjcl_qty', hAlign: 2, width: 100, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-             {title: '||其他错漏增减', colSpan: '||1', rowSpan: '||1', field: 'org_qtcl_qty', hAlign: 2, width: 100, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-             {title: '||小计', colSpan: '||1', rowSpan: '||1', field: 'org_quantity', hAlign: 2, width: 60, type: 'Number', visible: <%- ctx.tender.info.display.ledger.clQty%>},
 
-         ],
 
-         extraCols: [
 
-             {title: '计量数据|本期计量|合同', colSpan: '4|2|1', rowSpan: '1|1|1', field: 'contract_qty', hAlign: 2, width: 60, type: 'Number'},
 
-             {title: '||数量变更', colSpan: '||1', rowSpan: '||1', field: 'qc_qty', hAlign: 2, width: 80, type: 'Number'},
 
-             //{title: '||完成', colSpan: '||1', rowSpan: '||1', field: 'gather_qty', hAlign: 2, width: 60, type: 'Number'},
 
-             {title: '|截止本期计量|合同', colSpan: '|2|1', rowSpan: '1|1', field: 'end_contract_qty', hAlign: 2, width: 60, type: 'Number'},
 
-             {title: '||数量变更', colSpan: '||1', rowSpan: '||1', field: 'end_qc_qty', hAlign: 2, width: 80, type: 'Number'},
 
-             //{title: '||完成', colSpan: '||1', rowSpan: '|1', field: 'end_gather_qty', hAlign: 2, width: 60, type: 'Number'},
 
-         ],
 
-         emptyRows: 3,
 
-         headRows: 3,
 
-         headRowHeight: [25, 25, 25],
 
-         headColWidth: [30],
 
-         defaultRowHeight: 21,
 
-         headerFont: '12px 微软雅黑',
 
-         font: '12px 微软雅黑',
 
-         readOnly: true,
 
-     }
 
- </script>
 
 
  |