user_permission.ejs 6.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <% include ./sub_menu.ejs %>
  2. <div class="panel-content">
  3. <div class="panel-title">
  4. <div class="title-main">
  5. <h2>账号管理
  6. <% if (projectData.max_user === 0 || projectData.max_user > user_total) { %>
  7. <a href="#ver" data-toggle="modal" data-target="#add-user" class="btn btn-primary btn-sm pull-right">添加账号</a>
  8. <% } else { %>
  9. <a href="#add-unpass" data-toggle="modal" data-target="#add-unpass" class="btn btn-primary btn-sm pull-right">添加账号(受限)</a>
  10. <% } %>
  11. </h2>
  12. </div>
  13. </div>
  14. <div class="content-wrap">
  15. <div class="c-body">
  16. <div class="sjs-height-0">
  17. <nav class="nav nav-tabs m-3" role="tablist">
  18. <a class="nav-item nav-link" href="/setting/user">账号列表</a>
  19. <a class="nav-item nav-link active" href="/setting/user/permission/set">账号权限</a>
  20. <a class="nav-item nav-link" href="/setting/user/unit">参建单位</a>
  21. <div class="ml-auto">
  22. <form class="input-group input-group-sm" method="get">
  23. <input type="text" class="form-control" value="<%- keyword %>" name="keyword" placeholder="账号/姓名/单位/手机 搜索" aria-label="账号/姓名/单位/手机 搜索" aria-describedby="button-addon2">
  24. <input type="hidden" class="form-control" value="<%- company %>" name="company">
  25. <div class="input-group-append">
  26. <button class="btn btn-outline-primary" type="submit" id="button-addon2"><i class="fa fa-search"></i></button>
  27. </div>
  28. </form>
  29. </div>
  30. </nav>
  31. <div class="tab-content m-3">
  32. <div id="user-list" class="tab-pane active">
  33. <div class="row">
  34. <div class="col-3">
  35. <div class="list-group">
  36. <a href="/setting/user/permission/set?company=" class="list-group-item list-group-item-action <% if (!company) { %>active<% } %>">全部</a>
  37. <% for (const u of unitList) { %>
  38. <a href="/setting/user/permission/set?company=<%- u.name %>" class="list-group-item list-group-item-action <% if (company === u.name) { %>active<% } %>"><%- u.name %></a>
  39. <% } %>
  40. </div>
  41. </div>
  42. <div class="col-9">
  43. <table class="table table-hover table-bordered table-sm">
  44. <thead>
  45. <tr>
  46. <th>账号</th>
  47. <th>姓名</th>
  48. <th>单位</th>
  49. <th>角色/职位</th>
  50. <th>协作办公</th>
  51. <th>权限</th>
  52. </thead>
  53. <tbody>
  54. <% for (const account of accountData) { %>
  55. <tr>
  56. <td><%= account.account %><% if (account.is_admin === 1) { %> <span data-toggle="tooltip" data-placement="bottom" title="" data-original-title="管理员"><i class="fa fa-user-circle-o"></i></span><% } %></td>
  57. <td><%= account.name %></td>
  58. <td><%= account.company %></td>
  59. <td><%= account.role %></td>
  60. <td><% if (account.cooperation === 1) { %>启用<% } %></td>
  61. <td>
  62. <% if (account.permission !== '' && account.permission !== null) { %>
  63. <% const accountPermission = JSON.parse(account.permission); %>
  64. <% for(const ap in accountPermission) { %>
  65. <% if (permission[ap].type === 'checkbox') { %>
  66. <% for (const tc in permission[ap].children) { %>
  67. <% if (accountPermission[ap].indexOf(permission[ap].children[tc].value.toString()) !== -1) { %>
  68. <%= permission[ap].children[tc].title %>
  69. <% } %>
  70. <% } %>
  71. <% } else if (permission[ap].type === 'radio') { %>
  72. <% if (parseInt(accountPermission[ap]) === permission[ap].children[0].value) { %>
  73. <%= permission[ap].title %>
  74. <% } %>
  75. <% } %>
  76. <% } %>
  77. <% } %>
  78. <a href="#edit-user2" data-account="<%= JSON.stringify(account) %>" data-toggle="modal" data-target="#edit-user2" class="btn btn-sm btn-outline-primary pull-right">编辑</a></td>
  79. </tr>
  80. <% } %>
  81. </tbody>
  82. </table>
  83. <% include ../layout/page.ejs %>
  84. </div>
  85. </div>
  86. </div>
  87. </div>
  88. </div>
  89. </div>
  90. </div>
  91. </div>
  92. <script>
  93. const allPermission = JSON.parse('<%- permissionStr %>');
  94. const unitList = JSON.parse(unescape('<%- escape(JSON.stringify(unitList)) %>'));
  95. </script>
  96. <script src="/public/js/setting.js"></script>
  97. <script>autoFlashHeight();</script>