user_group.html 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217
  1. {{include "com/inc.html"}}
  2. <!-- Main Header -->
  3. {{include "com/header.html"}}
  4. <!-- Left side column. 权限菜单 -->
  5. {{include "com/menu.html"}}
  6. <div class="content-wrapper">
  7. <section class="content-header">
  8. <h1>
  9. <small></small>
  10. </h1>
  11. <ol class="breadcrumb">
  12. <li><a href="/front/user"><i class="fa fa-dashboard"></i> 用户组管理</a></li>
  13. </ol>
  14. </section>
  15. <!-- Main content -->
  16. <section class="content">
  17. <div class="row">
  18. <div class="col-xs-12">
  19. <div class="box">
  20. <div class="box-body">
  21. <div class="form-horizontal">
  22. <div class="box-body">
  23. <div class="form-group">
  24. <label class="col-sm-1 control-label">用户组名称</label>
  25. <div class="col-sm-2">
  26. <input type="text" class="form-control" id="customername" placeholder="公司名称" required>
  27. </div>
  28. <label class="col-sm-1 control-label">状态</label>
  29. <div class="col-sm-2">
  30. <select class="form-control selectpicker" id="pushModelSelect">
  31. <option value=-1>全部</option>
  32. <option value=0>开启</option>
  33. <option value=1>关闭</option>
  34. </select>
  35. </div>
  36. <div class="col-sm-2">
  37. <a class="btn btn-sm btn-success margin-r-5" onclick="">查询</a>
  38. <a class="btn btn-sm btn-default" onclick="">取消</a>
  39. </div>
  40. </div>
  41. <div class="form-group" style="margin-left: 20px">
  42. <a class="btn btn-sm btn-success margin" href="/front/group/new"><i class="fa fa-fw fa-plus fa-lg"></i>新建用户组</a>
  43. <a class="btn btn-sm btn-default margin" onclick="">批量开启</a>
  44. <a class="btn btn-sm btn-default margin" onclick="">批量关闭</a>
  45. </div>
  46. </div>
  47. </div>
  48. <table id="dataTable" class="table table-bordered table-hover">
  49. <thead>
  50. <tr>
  51. <th><input type="checkbox" onclick="allSelect(this)" id="allCheckbox"></th>
  52. <th>用户组名称</th>
  53. <th>负责人</th>
  54. <th>创建时间</th>
  55. <th>更新时间</th>
  56. <th>状态</th>
  57. <th>操作</th>
  58. </tr>
  59. </thead>
  60. </table>
  61. </div>
  62. <!-- /.box-body -->
  63. </div>
  64. <!-- /.box -->
  65. </div>
  66. </div>
  67. </section>
  68. </div>
  69. {{include "com/footer.html"}}
  70. <script>
  71. menuActive("group");
  72. $(function () {
  73. ttable = $('#dataTable').DataTable({
  74. "paging": true,
  75. "lengthChange": false,
  76. "searching": false,
  77. "ordering": false,
  78. "info": true,
  79. "autoWidth": false,
  80. "serverSide": true,
  81. "ajax": {
  82. "url": "/front/group",
  83. "type": "post",
  84. "data": {"ids": ""}
  85. },
  86. "language": {
  87. "url": "/dist/js/dataTables.chinese.lang"
  88. },
  89. "fnDrawCallback": function () {
  90. $("ul.pagination").prepend("&nbsp;&nbsp;&nbsp;转到第 <input type='text' id='changePage' style='width:20px;'> 页 <a type='text' href='javascript:void(0);' id='dataTable-btn' style='text-align:center'>GO</a>");
  91. $('#dataTable-btn').click(function (e) {
  92. var redirectpage = 0
  93. if ($("#changePage").val() && $("#changePage").val() > 0) {
  94. var redirectpage = $("#changePage").val() - 1;
  95. }
  96. ttable.page(redirectpage).draw(false);
  97. });
  98. // this.api().column(0).nodes().each(function(cell, i) {
  99. // cell.innerHTML = i + 1;
  100. // });
  101. },
  102. "columns": [
  103. {"data": "", width: "1%", render: function() {
  104. return `<input type="checkbox" name="ckb-keyid" onclick="singleSelect(this)" style="text-align: center">`
  105. }},
  106. {"data": "s_name", width: "15%"},
  107. {"data": "s_personname", width: "9%"},
  108. {"data": "i_createtime",width:"9%", render: function (val) {
  109. var dt = new Date()
  110. dt.setTime(parseInt(val) * 1000);
  111. return dt.format("yyyy-MM-dd")
  112. }},
  113. {"data": "i_updatetime",width:"9%", render: function (val) {
  114. var dt = new Date()
  115. dt.setTime(parseInt(val) * 1000);
  116. return dt.format("yyyy-MM-dd")
  117. }},
  118. {"data": "i_state", render: function (val, a, row) {
  119. tmp = ""
  120. if(val){
  121. tmp="<a href='#' title='停用' onclick='setupState(\""+row._id+"\",false)'><i class='fa fa-fw fa-circle text-green'></i></a>已启用"
  122. }else{
  123. tmp="<a href='#' title='启用' onclick='setupState(\""+row._id+"\",true)'><i class='fa fa-fw fa-circle text-red'></i></a>未启用"
  124. }
  125. return tmp
  126. }, width: "10%" },
  127. {"data": "_id", width:"11%",render: function (val, a, row, pos) {
  128. tmp = '<div>' +
  129. '<a class="btn btn-sm btn-primary" href="/front/group/edit?id='+val+'">编辑</a>&nbsp;&nbsp;'+
  130. '<a class="btn btn-sm btn-primary" href="/front/group/user?id='+val+'">设置</a>&nbsp;&nbsp;'+
  131. '<a class="btn btn-sm btn-danger" onclick="del(\''+val+'\')">删除</a>'+
  132. '</div>';
  133. return tmp
  134. }}
  135. ]
  136. });
  137. });
  138. function setupState(id, v) {
  139. console.log(id, v)
  140. showConfirm("确定修改当前状态?", function() {
  141. $.ajax({
  142. url: "/front/group/state",
  143. type: 'POST',
  144. data: {"id": id, "state": v},
  145. success: function (r) {
  146. if (r.rep) {
  147. ttable.ajax.reload();
  148. } else {
  149. showTip("状态修改失败");
  150. }
  151. }
  152. })
  153. })
  154. }
  155. function del(id) {
  156. showConfirm("确定删除该用户组?", function() {
  157. $.ajax({
  158. url: "/front/group/del",
  159. type: 'POST',
  160. data: {"id": id},
  161. success: function (r) {
  162. if (r.rep) {
  163. ttable.ajax.reload();
  164. } else {
  165. showTip("状态修改失败");
  166. }
  167. }
  168. })
  169. })
  170. }
  171. //表格全选
  172. function allSelect(obj) {
  173. if ($(obj).is(':checked')) {
  174. keyTableChecked = true;
  175. keyTableAllChecked = true;
  176. $('input[name="ckb-keyid"]').each(function () {
  177. this.checked = true;
  178. selectIndex.push($(this).parents("tr").index() + 1);
  179. })
  180. } else {
  181. selectIndex.length = 0;
  182. keyTableChecked = false;
  183. keyTableAllChecked = false;
  184. $('input[name="ckb-keyid"]').each(function () {
  185. this.checked = false;
  186. })
  187. }
  188. }
  189. //表格单个选中
  190. function singleSelect(obj) {
  191. let tag = true;
  192. selectIndex.length = 0;
  193. $('input[name="ckb-keyid"]').each(function () {
  194. if (this.checked) {
  195. keyTableChecked = true;
  196. selectIndex.push($(this).parents("tr").index() + 1);
  197. }else {
  198. tag = false
  199. }
  200. });
  201. if (tag) {
  202. keyTableAllChecked = true;
  203. $('#allCheckbox').prop("checked", true);
  204. } else {
  205. keyTableAllChecked = false;
  206. $('#allCheckbox').prop("checked", false);
  207. }
  208. }
  209. </script>