revise.ejs 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211
  1. <% include ./sub_menu.ejs %>
  2. <div class="panel-content">
  3. <div class="panel-title">
  4. <div class="title-main d-flex">
  5. <% include ./sub_mini_menu.ejs %>
  6. <!--工具-->
  7. <div>
  8. <% if (change.order_by && change.order_site && change.order_site_msg) { %>
  9. <div class="d-inline-block">
  10. 插入到:变更清单<%- change.order_site_msg.code %> 之后
  11. </div>
  12. <% } %>
  13. <div class="d-inline-block">
  14. <div class="dropdown">
  15. <button class="btn btn-sm btn-light dropdown-toggle text-primary" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
  16. <i class="fa fa-list-ol"></i> 显示层级
  17. </button>
  18. <div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
  19. <a class="dropdown-item" name="showLevel" tag="1" href="javascript: void(0);">第一层</a>
  20. <a class="dropdown-item" name="showLevel" tag="2" href="javascript: void(0);">第二层</a>
  21. <a class="dropdown-item" name="showLevel" tag="3" href="javascript: void(0);">第三层</a>
  22. <a class="dropdown-item" name="showLevel" tag="4" href="javascript: void(0);">第四层</a>
  23. <a class="dropdown-item" name="showLevel" tag="5" href="javascript: void(0);">第五层</a>
  24. <a class="dropdown-item" name="showLevel" tag="last" href="javascript: void(0);">最底层</a>
  25. <a class="dropdown-item" name="showLevel" tag="leafXmj" href="javascript: void(0);">只显示项目节</a>
  26. </div>
  27. </div>
  28. </div>
  29. <% if (!ledgering) { %>
  30. <div class="d-inline-block">
  31. <a href="javascript: void(0);" name="base-opr" type="add" class="btn btn-sm btn-light text-primary" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="新增"><i class="fa fa-plus" aria-hidden="true"></i></a>
  32. <a href="javascript: void(0);" name="base-opr" type="delete" class="btn btn-sm btn-light text-primary" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="删除"><i class="fa fa-remove" aria-hidden="true"></i></a>
  33. <a href="javascript: void(0);" name="base-opr" type="up-level" class="btn btn-sm btn-light text-primary" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="升级"><i class="fa fa-arrow-left" aria-hidden="true"></i></a>
  34. <a href="javascript: void(0);" name="base-opr" type="down-level" class="btn btn-sm btn-light text-primary" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="降级"><i class="fa fa-arrow-right" aria-hidden="true"></i></a>
  35. <a href="javascript: void(0);" name="base-opr" type="down-move" class="btn btn-sm btn-light text-primary" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="下移"><i class="fa fa-arrow-down" aria-hidden="true"></i></a>
  36. <a href="javascript: void(0);" name="base-opr" type="up-move" class="btn btn-sm btn-light text-primary" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="上移"><i class="fa fa-arrow-up" aria-hidden="true"></i></a>
  37. <a href="javascript: void(0);" name="cpc" type="copy" class="btn btn-sm btn-light text-primary" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="复制"><i class="fa fa-files-o" aria-hidden="true"></i></a>
  38. <a href="javascript: void(0);" name="cpc" type="cut" class="btn btn-sm btn-light text-primary" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="剪切"><i class="fa fa-scissors" aria-hidden="true"></i></a>
  39. <a href="javascript: void(0);" name="cpc" type="paste" class="btn btn-sm btn-light text-primary" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="粘贴"><i class="fa fa-clipboard" aria-hidden="true"></i></a>
  40. </div>
  41. <% } %>
  42. <div class="d-inline-block">
  43. <div class="btn-group">
  44. <button href="javascript: void(0);" class="btn btn-sm btn-light text-primary" id="pos-show"><i class="fa fa-eye-slash"></i> 隐藏计量单元</button>
  45. </div>
  46. </div>
  47. <div class="d-inline-block">
  48. <div class="input-group input-group-sm ml-2">
  49. <div class="input-group-prepend">
  50. <span class="input-group-text" id="basic-addon1">表达式</span>
  51. </div>
  52. <input type="text" class="form-control form-control-sm m-0" id="bills-expr" readonly="">
  53. </div>
  54. </div>
  55. </div>
  56. <div class="ml-auto">
  57. <!-- <a class="btn btn-sm btn-primary mr-1" id="add-all-revise" href="javascript: void(0);">勾选当前新增部位/清单</a> -->
  58. <a class="btn btn-sm btn-primary mr-1" id="ledger-check2" href="javascript: void(0);">数据检查</a>
  59. </div>
  60. </div>
  61. </div>
  62. <div class="content-wrap row pr-46">
  63. <div class="c-header p-0 col-12"></div>
  64. <!--核心内容(两栏)-->
  65. <div class="row w-100 sub-content">
  66. <!--左栏-->
  67. <div class="c-body" id="left-view" style="width: 100%">
  68. <!--0号台账模式-->
  69. <div class="sjs-height-1" style="overflow: hidden" id="bills-spread">
  70. </div>
  71. <div class="bcontent-wrap">
  72. <div id="revise-resize" class="resize-y" r-Type="height" div1=".sjs-height-1" div2=".bcontent-wrap" title="调整大小"><!--调整上下高度条--></div>
  73. <div class="bc-bar mb-1">
  74. <ul class="nav nav-tabs">
  75. <li class="nav-item">
  76. <a class="nav-link active" href="javascript:void(0)">计量单元</a>
  77. </li>
  78. <li class="ml-2 nav-item">
  79. <% if (!ledgering) { %>
  80. <div class="d-inline-flex">
  81. <a href="javascript: void(0);" name="pos-opr" type="down-move" class="btn btn-sm btn-light text-primary" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="下移"><i class="fa fa-arrow-down" aria-hidden="true"></i></a>
  82. <a href="javascript: void(0);" name="pos-opr" type="up-move" class="btn btn-sm btn-light text-primary" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="上移"><i class="fa fa-arrow-up" aria-hidden="true"></i></a>
  83. </div>
  84. <% } %>
  85. </li>
  86. <li class="nav-item" id="pos-search">
  87. </li>
  88. <li class="nav-item">
  89. <div class="d-inline-block">
  90. <div class="input-group input-group-sm ml-2">
  91. <div class="input-group-prepend">
  92. <span class="input-group-text" id="basic-addon1">表达式</span>
  93. </div>
  94. <input type="text" class="form-control form-control-sm m-0" id="pos-expr" readonly="">
  95. </div>
  96. </div>
  97. </li>
  98. <li class="nav-item">
  99. <div class="d-inline-block">
  100. <% if (!readOnly) { %>
  101. <a href="javascript:void(0);" data-toggle="modal" data-target="#batch-pos" class="btn btn-sm btn-primary ml-3">批量录入</a>
  102. <% } %>
  103. </div>
  104. </li>
  105. </ul>
  106. </div>
  107. <div class="sp-wrap" id="pos-spread">
  108. </div>
  109. </div>
  110. </div>
  111. <!--右栏-->
  112. <div class="c-body" id="right-view" style="display: none; width: 33%;">
  113. <div class="resize-x" id="revise-right-spr" r-Type="width" div1="#left-view" div2="#right-view" title="调整大小" a-type="percent"><!--调整左右高度条--></div>
  114. <div class="tab-content">
  115. <div id="search" class="tab-pane">
  116. </div>
  117. <div id="std-xmj" class="tab-pane">
  118. </div>
  119. <div id="std-gcl" class="tab-pane">
  120. </div>
  121. <div id="deal-bills" class="tab-pane">
  122. <div class="sjs-bar">
  123. 签约清单
  124. <a href="/tender/<%- ctx.tender.id %>/deal/download/签约清单.xlsx" class="btn btn-sm btn-primary" style="display: none">下载签约清单</a>
  125. </div>
  126. <div id="deal-bills-spread" class="sjs-sh">
  127. </div>
  128. </div>
  129. <div id="error-list" class="tab-pane">
  130. </div>
  131. <div id="check-list" class="tab-pane">
  132. </div>
  133. <div id="sum-load-miss" class="tab-pane tab-select-show">
  134. </div>
  135. <div id="dsk-list" class="tab-pane">
  136. <nav class="nav nav-tabs" id="dsk-tab" role="tablist">
  137. <a class="nav-item nav-link active" href="#jlzf-spread" data-toggle="tab" role="tab">云计量</a>
  138. <a class="nav-item nav-link" href="#dsk-spread" data-toggle="tab" role="tab">大司空</a>
  139. <div class="ml-auto">
  140. <% if (isYb) { %>
  141. <a href="javascript:void(0);" id="get-dsk-bills-btn" class="btn btn-sm btn-light text-primary pull-right mt-1" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="重新获取大司空造价书"><i class="fa fa-refresh" aria-hidden="true"></i></a>
  142. <a href="javascript:void(0);" id="get-dsk-btn" class="btn btn-sm btn-primary pull-right mt-1 mr-1" style="display: none;">获取计价项目</a>
  143. <% } %>
  144. </div>
  145. </nav>
  146. <div class="tab-content">
  147. <div id="jlzf-spread" class="tab-pane active">
  148. </div>
  149. <div id="dsk-spread" class="tab-pane">
  150. </div>
  151. </div>
  152. </div>
  153. </div>
  154. </div>
  155. </div>
  156. <!--右侧菜单-->
  157. <div class="side-menu">
  158. <!--右侧菜单-->
  159. <ul class="nav flex-column right-nav" id="side-menu">
  160. <li class="nav-item">
  161. <a class="nav-link" content="#search" href="javascript: void(0);">查找定位</a>
  162. </li>
  163. <% if (!ledgering) { %>
  164. <li class="nav-item">
  165. <a class="nav-link" content="#std-xmj" href="javascript: void(0);">项目节</a>
  166. </li>
  167. <li class="nav-item">
  168. <a class="nav-link" content="#std-gcl" href="javascript: void(0);">标准清单</a>
  169. </li>
  170. <li class="nav-item">
  171. <a class="nav-link" content="#deal-bills" href="javascript: void(0);">签约清单</a>
  172. </li>
  173. <% } %>
  174. <li class="nav-item">
  175. <a class="nav-link" content="#error-list" id="error-list-tab" href="javascript: void(0);" style="display: none;">错误列表</a>
  176. </li>
  177. <li class="nav-item">
  178. <a class="nav-link" content="#check-list" id="check-list-tab" href="javascript: void(0);" style="display: none;">数据检查</a>
  179. </li>
  180. <% if (!ledgering) { %>
  181. <li class="nav-item">
  182. <a class="nav-link" content="#dsk-list" href="javascript: void(0);">新增清单</a>
  183. </li>
  184. <% } %>
  185. </ul>
  186. </div>
  187. </div>
  188. </div>
  189. <script>
  190. const changeOrder = parseInt('<%- change.order_by %>');
  191. const stdChapters = JSON.parse(unescape('<%- escape(JSON.stringify(stdChapters)) %>'));
  192. const stdBills = JSON.parse(unescape('<%- escape(JSON.stringify(stdBills)) %>'));
  193. const readOnly = <%- readOnly %>;
  194. const ledgering = <%- ledgering %>;
  195. const isYb = <%- isYb %>;
  196. const isTz = <%- ctx.tender.data.measure_type === measureType.tz.value %>;
  197. const billsSpreadSetting = JSON.parse('<%- JSON.stringify(ledgerSpread) %>');
  198. const posSpreadSetting = JSON.parse('<%- JSON.stringify(posSpread) %>');
  199. const thousandth = <%- ctx.tender.info.display.thousandth %>;
  200. const decimal = JSON.parse('<%- JSON.stringify(ctx.tender.info.decimal) %>');
  201. const nodeType = JSON.parse('<%- JSON.stringify(nodeType) %>');
  202. const settleStatus = JSON.parse('<%- JSON.stringify(settleStatus) %>');
  203. let dskAccountData = JSON.parse(unescape('<%- escape(JSON.stringify(dskAccountData)) %>'));
  204. let dskProjects = JSON.parse(unescape('<%- escape(JSON.stringify(dskProjects)) %>'));
  205. const changeUsedData = JSON.parse(unescape('<%- escape(JSON.stringify(changeUsedData)) %>'));
  206. let changeList = JSON.parse(unescape('<%- escape(JSON.stringify(changeList)) %>'));
  207. const oldChangeList = _.cloneDeep(changeList);
  208. const settleBills = JSON.parse(unescape('<%- escape(JSON.stringify(settleBills)) %>'));
  209. const settlePos = JSON.parse(unescape('<%- escape(JSON.stringify(settlePos)) %>'));
  210. const precision = JSON.parse('<%- JSON.stringify(precision) %>');
  211. </script>