list_modal.ejs 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. <!--弹出添加标段-->
  2. <div class="modal fade" id="add-budget" data-backdrop="static">
  3. <div class="modal-dialog" role="document">
  4. <div class="modal-content">
  5. <div class="modal-header">
  6. <h5 class="modal-title">添加新项目</h5>
  7. </div>
  8. <div class="modal-body">
  9. <div class="form-group">
  10. <label>项目名称<b class="text-danger">*</b></label>
  11. <input class="form-control form-control-sm" placeholder="输入项目名称" type="text" id="add-budget-name" onchange="budgetNameChange(this);">
  12. <div class="invalid-feedback">名称超过100个字,请缩减名称。</div>
  13. </div>
  14. <div class="form-group">
  15. <label>概预算标准<b class="text-danger">*</b></label>
  16. <div>
  17. <% for (const [i, bs] of budgetStd.entries()) { %>
  18. <div class="form-check form-check-inline mt-2">
  19. <input class="form-check-input" name="std_id" type="radio" id="std<%- bs.id %>" value="<%- bs.id %>" <% if (i === 0) { %>checked<% } %>>
  20. <label class="form-check-label" for="std<%- bs.id %>"><%- bs.name %></label>
  21. </div>
  22. <% } %>
  23. </div>
  24. </div>
  25. </div>
  26. <div class="modal-footer">
  27. <button type="button" class="btn btn-secondary btn-sm" data-dismiss="modal">关闭</button>
  28. <button type="button" class="btn btn-primary btn-sm" id="add-budget-ok" onclick="addBudget();">确定添加</button>
  29. </div>
  30. </div>
  31. </div>
  32. </div>
  33. <!--编辑标段-->
  34. <div class="modal fade" id="modify-budget" data-backdrop="static">
  35. <div class="modal-dialog" role="document">
  36. <div class="modal-content">
  37. <div class="modal-header">
  38. <h5 class="modal-title">编辑标段</h5>
  39. </div>
  40. <div class="modal-body">
  41. <div class="form-group">
  42. <label>项目名称<b class="text-danger">*</b></label>
  43. <input class="form-control form-control-sm" placeholder="输入项目名称" type="text" id="modify-budget-name" value="" onchange="budgetNameChange(this);">
  44. <div class="invalid-feedback"> 名称超过100个字,请缩减名称。 </div>
  45. </div>
  46. </div>
  47. <div class="modal-footer">
  48. <button type="button" class="btn btn-secondary btn-sm" data-dismiss="modal">取消</button>
  49. <button type="button" class="btn btn-primary btn-sm" onclick="saveBudget();">确定修改</button>
  50. </div>
  51. </div>
  52. </div>
  53. </div>
  54. <!--删除标段-->
  55. <div class="modal fade" id="del-budget" data-backdrop="static">
  56. <div class="modal-dialog" role="document">
  57. <div class="modal-content">
  58. <div class="modal-header">
  59. <h5 class="modal-title">删除项目</h5>
  60. </div>
  61. <div class="modal-body">
  62. <h6>确认删除「<span id="del-budget-name">XXX高速公路</span>」?</h6>
  63. <h6>删除后,数据无法恢复,请谨慎操作。</h6>
  64. </div>
  65. <div class="modal-footer">
  66. <button type="button" class="btn btn-sm btn-secondary" data-dismiss="modal">取消</button>
  67. <button type="button" class="btn btn-sm btn-danger" onclick="delBudget();">确定删除</button>
  68. </div>
  69. </div>
  70. </div>
  71. </div>
  72. <!--弹出关联标段-->
  73. <div class="modal fade" id="select-rela" data-backdrop="static">
  74. <div class="modal-dialog" role="document">
  75. <div class="modal-content">
  76. <div class="modal-header">
  77. <h5 class="modal-title">选择决算标段</h5>
  78. </div>
  79. <div class="modal-body" style="display: block; overflow: auto; height: 500px">
  80. <h5>可选标段</h5>
  81. <table class="table table-sm table-bordered">
  82. <tr class="text-center"><th>选择</th><th>标段名称</th><th>期数</th><th>状态</th></tr>
  83. <tbody id="valid-rela-tender">
  84. <% for (const t of tenderList) { %>
  85. <tr><td class="text-center"><input type="checkbox" name="select-rela-check" tid="<%- t.id %>"></td><td><%- t.name %></td><td>第<%- t.lastStage.order %>期</td><td><%- auditConst.stage.statusString[t.lastStage.status] %></td></tr>
  86. <% } %>
  87. </tbody>
  88. </table>
  89. </div>
  90. <div class="modal-footer">
  91. <div class="form-check form-check-inline">
  92. <input class="form-check-input" type="checkbox" id="sr-select-all">
  93. <label class="form-check-label" for="sr-select-all">全选</label>
  94. </div>
  95. <button type="button" class="btn btn-sm btn-secondary" data-dismiss="modal">取消</button>
  96. <button type="button" class="btn btn-sm btn-primary" onclick="relaTender();">确定</button>
  97. </div>
  98. </div>
  99. </div>
  100. </div>
  101. <!--成员管理-->
  102. <div class="modal fade" id="member" data-backdrop="static">
  103. <div class="modal-dialog" role="document">
  104. <div class="modal-content">
  105. <div class="modal-header">
  106. <h5 class="modal-title">成员管理</h5>
  107. </div>
  108. <div class="modal-body">
  109. <div class="dropdown">
  110. <button class="btn btn-outline-primary btn-sm dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
  111. 添加用户
  112. </button>
  113. <div class="dropdown-menu" aria-labelledby="dropdownMenuButton" style="width:220px">
  114. <div class="mb-2 p-2"><input class="form-control form-control-sm" placeholder="姓名/手机 检索" id="member-search" autocomplete="off"></div>
  115. <dl class="list-unstyled book-list">
  116. <% accountGroup.forEach((group, idx) => { %>
  117. <dt><a href="javascript: void(0);" class="acc-btn" data-groupid="<%- idx %>" data-type="hide"><i class="fa fa-plus-square"></i></a> <%- group.groupName %></dt>
  118. <div class="dd-content" data-toggleid="<%- idx %>">
  119. <% group.groupList.forEach(item => { %>
  120. <dd class="border-bottom p-2 mb-0 " data-id="<%- item.id %>" >
  121. <p class="mb-0 d-flex"><span class="text-primary"><%- item.name %></span><span
  122. class="ml-auto"><%- item.mobile %></span></p>
  123. <span class="text-muted"><%- item.role %></span>
  124. </dd>
  125. <% });%>
  126. </div>
  127. <% }) %>
  128. </dl>
  129. </div>
  130. </div>
  131. <div class="mt-1">
  132. <table class="table table-bordered">
  133. <thead>
  134. <th>成员名称</th>
  135. <th>角色/职位</th>
  136. <th>编辑</th>
  137. <th>移除</th>
  138. </thead>
  139. <tbody id="member-list">
  140. </tbody>
  141. </table>
  142. </div>
  143. </div>
  144. <div class="modal-footer">
  145. <button type="button" class="btn btn-sm btn-secondary" data-dismiss="modal">取消</button>
  146. <button type="button" class="btn btn-sm btn-primary" id="member-ok">确认修改</button>
  147. </div>
  148. </div>
  149. </div>
  150. </div>
  151. <script>
  152. const accountList = JSON.parse('<%- JSON.stringify(accountList) %>');
  153. const accountGroup = JSON.parse('<%- JSON.stringify(accountGroup) %>');
  154. const permissionConst = JSON.parse('<%- JSON.stringify(permissionConst) %>');
  155. </script>