dashboard.ejs 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no">
  6. <meta http-equiv="x-ua-compatible" content="ie=edge">
  7. <title>待审批-计量支付</title>
  8. <link rel="stylesheet" href="/public/css/bootstrap/bootstrap.min.css">
  9. <link rel="stylesheet" href="/public/css/wap/main.css">
  10. <link rel="stylesheet" href="/public/css/toast.css">
  11. <link rel="stylesheet" href="/public/css/font-awesome/font-awesome.min.css">
  12. <link rel="shortcut icon" href="/public/images/favicon.ico">
  13. <style>
  14. body {
  15. padding: 0;
  16. }
  17. </style>
  18. </head>
  19. <body>
  20. <div class="container">
  21. <!--顶部-->
  22. <nav class="fixed-top bg-dark">
  23. <div class="my-2 d-flex justify-content-between">
  24. <span class="text-white ml-3">待审批</span>
  25. <div class="mr-3">
  26. <div class="dropdown">
  27. <button class="btn btn-sm btn-light dropdown-toggle" type="button" data-toggle="dropdown">
  28. <%- ctx.session.sessionUser.name.substr(ctx.session.sessionUser.name.length > 2 ? ctx.session.sessionUser.name.length - 2 : 0) %>
  29. </button>
  30. <div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
  31. <a class="dropdown-item" href="/wap/logout">退出登录</a>
  32. </div>
  33. </div>
  34. </div>
  35. </div>
  36. </nav>
  37. <!--待审批期列表-->
  38. <div class="py-6">
  39. <% if (auditStages.length !== 0 || auditChanges.length !== 0 || auditRevise.length !== 0 || auditAdvance.length !== 0) { %>
  40. <% for (const audit of auditStages) { %>
  41. <div class="card mb-3">
  42. <div class="card-header d-flex justify-content-between">
  43. <span><%- JSON.parse(audit.deal_info).buildName %></span>
  44. <span class="badge badge-pill badge-info">计量期</span>
  45. </div>
  46. <div class="bg-light p-2 px-3"><b><%- audit.name %></b></div>
  47. <div class="card-body">
  48. <div class="d-flex justify-content-between"><span>第<%- audit.order %>期</span><span><%- audit.s_time %></span></div>
  49. <div class="my-2">
  50. <table class="table table-sm table-bordered">
  51. <tr><th>本期合同计量</th><td class="text-right"><%- audit.contract_tp ? audit.contract_tp : 0 %></td></tr>
  52. <tr><th>本期数量变更计量</th><td class="text-right"><%- audit.qc_tp ? audit.qc_tp : 0 %></td></tr>
  53. <tr><th>本期完成计量</th><td class="text-right"><%- audit.gather_tp ? audit.gather_tp : 0 %></td></tr>
  54. <tr><th>截止上期完成计量</th><td class="text-right"><%- audit.pre_gather_tp ? audit.pre_gather_tp : 0 %></td></tr>
  55. <tr><th>截止本期完成计量</th><td class="text-right"><%- audit.end_gather_tp ? audit.end_gather_tp : 0 %></td></tr>
  56. <% if (!ctx.session.sessionProject.page_show.closeWapYfSf) { %>
  57. <tr><th>本期应付</th><td class="text-right"><%- audit.yf_tp ? audit.yf_tp : 0 %></td></tr>
  58. <tr><th>本期实付</th><td class="text-right"><%- audit.sf_tp ? audit.sf_tp : 0 %></td></tr>
  59. <% } %>
  60. </table>
  61. </div>
  62. <div class="">
  63. <a href="/wap/tender/<%- audit.tid %>/stage/<%- audit.order %>" class="btn btn-block btn-success">审批</a>
  64. </div>
  65. </div>
  66. </div>
  67. <% } %>
  68. <% for (const revise of auditRevise) { %>
  69. <div class="card mb-3">
  70. <div class="card-header d-flex justify-content-between">
  71. <span><%- JSON.parse(revise.deal_info).buildName %></span>
  72. <span class="badge badge-pill badge-info">台账修订</span>
  73. </div>
  74. <div class="bg-light p-2 px-3"><b><%- revise.t_name %></b></div>
  75. <div class="card-body">
  76. <div class="d-flex justify-content-between"><span>第<%- revise.corder %>次修订</span></div>
  77. <div class="my-2">
  78. <table class="table table-sm table-bordered">
  79. <tr><th width="90">修订时间</th><td class="text-right"><%- ctx.moment(revise.in_time).format('YYYY-MM-DD') %></td></tr>
  80. <tr><th>修订人</th><td class="text-right"><%- revise.yb_name %></td></tr>
  81. <tr><th>修订详情</th><td class=""><% if (revise.content.length <= 22) { %><%- revise.content %><% } else { %><%- revise.content.substring(0,22) %><a class="show-content" data-content="<%- revise.content %>" href="javascript:void(0);">展开更多</a><% } %></td></tr>
  82. </table>
  83. </div>
  84. <div class="">
  85. <a href="/wap/tender/<%- revise.t_id %>/revise/<%- revise.id %>/info" class="btn btn-block btn-success">审批</a>
  86. </div>
  87. </div>
  88. </div>
  89. <% } %>
  90. <% for (const change of auditChanges) { %>
  91. <div class="card mb-3">
  92. <div class="card-header d-flex justify-content-between">
  93. <span><%- JSON.parse(change.deal_info).buildName %></span>
  94. <span class="badge badge-pill badge-danger">工程变更</span>
  95. </div>
  96. <div class="bg-light p-2 px-3"><b><%- change.name %></b></div>
  97. <div class="card-body">
  98. <div class="d-flex justify-content-between"><span><%- change.ccode %></span></div>
  99. <div class="my-2">
  100. <table class="table table-sm table-bordered">
  101. <tr><th width="90">工程名称</th><td><%- change.cname %></td></tr>
  102. <tr><th>变更性质</th><td><% for (const q in changeConst.quality) { %>
  103. <% const cQuality = changeConst.quality[q] %><% if (cQuality.value === change.quality) { %><%- cQuality.name %><% } %><% } %></td></tr>
  104. <tr><th>变更金额</th><td class="text-right"><%- ctx.helper.roundNum(change.total_price, JSON.parse(change.decimal).tp) %></td></tr>
  105. </table>
  106. </div>
  107. <div class="">
  108. <a href="/wap/tender/<%- change.tid %>/change/<%- change.cid %>/info#shenpi" class="btn btn-block btn-success">审批</a>
  109. </div>
  110. </div>
  111. </div>
  112. <% } %>
  113. <% for (const advance of auditAdvance) { %>
  114. <div class="card mb-3">
  115. <div class="card-header d-flex justify-content-between">
  116. <span><%- JSON.parse(advance.deal_info).buildName %></span>
  117. <span class="badge badge-pill badge-warning">预付款</span>
  118. </div>
  119. <div class="bg-light p-2 px-3"><b><%- advance.name %></b></div>
  120. <div class="card-body">
  121. <div class="d-flex justify-content-between"><span><%- advanceConst.typeCol[advance.type].name %>-第<%- advance.order %>期</span><span></span></div>
  122. <div class="my-2">
  123. <table class="table table-sm table-bordered">
  124. <% const advancePayTotal = JSON.parse(advance.deal_param)[advanceConst.typeCol[advance.type].key + 'Advance']; %>
  125. <tr><th>签约预付款</th><td class="text-right"><%- ctx.helper.formatMoney(advancePayTotal, ',', parseFloat(advancePayTotal).toString().split('.')[1] && parseFloat(advancePayTotal).toString().split('.')[1].length || 0) %></td></tr>
  126. <tr><th>本期支付比例</th><td class="text-right"><%- advance.pay_ratio %>%</td></tr>
  127. <tr><th>本期金额</th><td class="text-right"><%- advance.cur_amount %></td></tr>
  128. <tr><th>截止本期金额</th><td class="text-right"><%- advance.prev_total_amount %></td></tr>
  129. </table>
  130. </div>
  131. <div class="">
  132. <a href="/wap/tender/<%- advance.tid %>/advance/<%- advance.id %>/detail" class="btn btn-block btn-success">审批</a>
  133. </div>
  134. </div>
  135. </div>
  136. <% } %>
  137. <% } else { %>
  138. <h3 class="text-center text-muted">暂无待审批期计量</h3>
  139. <% } %>
  140. </div>
  141. <!--底栏菜单-->
  142. <nav class="fixed-bottom navbar-dark bg-light border-top">
  143. <ul class="nav nav-fill my-2">
  144. <li class="nav-item">
  145. <a class="nav-link active show-loading" href="/wap/dashboard"><i class="fa fa-check-square-o"></i> 待审批</a>
  146. </li>
  147. <li class="nav-item">
  148. <a class="nav-link text-muted show-loading" href="/wap/list"><i class="fa fa-list-ul"></i> 项目</a>
  149. </li>
  150. </ul>
  151. </nav>
  152. </div>
  153. <!-- JS. -->
  154. <script src="/public/js/jquery/jquery-3.2.1.min.js"></script>
  155. <script src="/public/js/popper/popper.min.js"></script>
  156. <script src="/public/js/bootstrap/bootstrap.min.js"></script>
  157. <script src="/public/js/cookies.js"></script>
  158. <script src="/public/js/wap/global.js"></script>
  159. <script>
  160. $(function () {
  161. $('.show-content').on('click', function () {
  162. $(this).parents('td').html($(this).data('content'));
  163. });
  164. })
  165. </script>
  166. </body>
  167. </html>