userIndex.js 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200
  1. <%@ page contentType="text/html;charset=UTF-8" %>
  2. <script type="text/javascript">
  3. $(document).ready(function() {
  4. //zTree初始化
  5. $.getJSON("${ctx}/leader/org/leaderOrgNo/bootstrapTreeData",function(data){
  6. $('#jstree').treeview({
  7. data: data,
  8. levels: 5,
  9. onNodeSelected: function(event, treeNode) {
  10. var id = treeNode.id == '0' ? '' :treeNode.id;
  11. $("#officeId").val(id);
  12. $("#officeName").val(treeNode.text);
  13. $('#table').bootstrapTable('refresh');
  14. },
  15. });
  16. });
  17. //表格初始化
  18. $('#table').bootstrapTable({
  19. //请求方法
  20. method: 'post',
  21. //类型json
  22. dataType: "json",
  23. contentType: "application/x-www-form-urlencoded",
  24. //是否显示行间隔色
  25. striped: true,
  26. //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
  27. cache: false,
  28. //显示检索按钮
  29. showSearch: true,
  30. //显示刷新按钮
  31. showRefresh: true,
  32. //显示切换手机试图按钮
  33. showToggle: true,
  34. //显示 内容列下拉框
  35. showColumns: true,
  36. //显示切换分页按钮
  37. showPaginationSwitch: true,
  38. //是否显示分页(*)
  39. pagination: true,
  40. //排序方式
  41. sortOrder: "asc",
  42. //初始化加载第一页,默认第一页
  43. pageNumber:1,
  44. //每页的记录行数(*)
  45. pageSize: 10,
  46. //可供选择的每页的行数(*)
  47. pageList: [10, 25, 50, 100],
  48. //这个接口需要处理bootstrap table传递的固定参数,并返回特定格式的json数据
  49. url: "${ctx}/sys/user/list",
  50. //默认值为 'limit',传给服务端的参数为:limit, offset, search, sort, order Else
  51. //queryParamsType:'',
  52. ////查询参数,每次调用是会带上这个参数,可自定义
  53. queryParams : function(params) {
  54. var searchParam = $("#searchForm").serializeJSON();
  55. searchParam.pageNo = params.limit === undefined? "1" :params.offset/params.limit+1;
  56. searchParam.pageSize = params.limit === undefined? -1 : params.limit;
  57. searchParam.orderBy = params.sort === undefined? "" : params.sort+ " "+ params.order;
  58. return searchParam;
  59. },
  60. onShowSearch: function () {
  61. $("#search-collapse").slideToggle();
  62. },
  63. //分页方式:client客户端分页,server服务端分页(*)
  64. sidePagination: "server",
  65. contextMenuTrigger:"right",//pc端 按右键弹出菜单
  66. contextMenuTriggerMobile:"press",//手机端 弹出菜单,click:单击, press:长按。
  67. contextMenu: '#context-menu',
  68. onContextMenuItem: function(row, $el){
  69. if($el.data("item") == "edit"){
  70. edit(row.id);
  71. } else if($el.data("item") == "delete"){
  72. deleteAll(row.id);
  73. }
  74. },
  75. onClickRow: function(row, $el){
  76. },
  77. columns: [{
  78. checkbox: true
  79. }, {
  80. field: 'loginName',
  81. title: '登录名',
  82. sortable: true
  83. }, {
  84. field: 'name',
  85. title: '姓名',
  86. sortable: true
  87. }, {
  88. field: 'mobile',
  89. title: '手机',
  90. sortable: true
  91. }, /*{
  92. field: 'company.name',
  93. title: '归属公司',
  94. sortable: true,
  95. sortName: 'c.name'
  96. },*/ {
  97. field: 'office.deptName',
  98. title: '归属部门',
  99. sortable: true,
  100. sortName: 'o.deptName'
  101. }]
  102. });
  103. if(navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i)){//如果是移动端
  104. $('#table').bootstrapTable("toggleView");
  105. }
  106. $('#table').on('check.bs.table uncheck.bs.table load-success.bs.table ' +
  107. 'check-all.bs.table uncheck-all.bs.table', function () {
  108. $('#remove').prop('disabled', ! $('#table').bootstrapTable('getSelections').length);
  109. $('#edit').prop('disabled', $('#table').bootstrapTable('getSelections').length!=1);
  110. });
  111. $("#btnImport").click(function(){
  112. jp.open({
  113. type: 1,
  114. area: [500, 300],
  115. title:"导入数据",
  116. content:$("#importBox").html() ,
  117. btn: ['下载模板','确定', '关闭'],
  118. btn1: function(index, layero){
  119. window.location='${ctx}/sys/user/import/template';
  120. },
  121. btn2: function(index, layero){
  122. var inputForm =top.$("#importForm");
  123. var top_iframe = top.getActiveTab().attr("name");//获取当前active的tab的iframe
  124. inputForm.attr("target",top_iframe);//表单提交成功后,从服务器返回的url在当前tab中展示
  125. inputForm.onsubmit = function(){
  126. jp.info(' 正在导入,请稍等...');
  127. }
  128. inputForm.submit();
  129. jp.close(index);
  130. },
  131. btn3: function(index){
  132. jp.close(index);
  133. }
  134. });
  135. });
  136. $("#search").click("click", function() {// 绑定查询按扭
  137. $('#table').bootstrapTable('refresh');
  138. });
  139. $("#reset").click("click", function() {// 绑定查询按扭
  140. $("#searchForm input").val("");
  141. $("#searchForm select").val("");
  142. $('#table').bootstrapTable('refresh');
  143. });
  144. $('#beginInDate').datetimepicker({
  145. format: "YYYY-MM-DD HH:mm:ss"
  146. });
  147. $('#endInDate').datetimepicker({
  148. format: "YYYY-MM-DD HH:mm:ss"
  149. });
  150. });
  151. function getIdSelections() {
  152. return $.map($("#table").bootstrapTable('getSelections'), function (row) {
  153. return row.id
  154. });
  155. }
  156. function deleteAll(ids){
  157. if(!ids){
  158. ids = getIdSelections();
  159. }
  160. jp.confirm('确认要删除选中用户吗?', function(){
  161. jp.loading();
  162. $.get("${ctx}/sys/user/deleteAll?ids=" +ids, function(data){
  163. if(data.success){
  164. $('#table').bootstrapTable('refresh');
  165. jp.success(data.msg);
  166. }else{
  167. jp.error(data.msg);
  168. }
  169. })
  170. })
  171. }
  172. function edit(id){
  173. if(!id){
  174. id = getIdSelections();
  175. }
  176. jp.openSaveDialog('编辑用户', "${ctx}/sys/user/form?id=" + id,'1000px', '680px');
  177. }
  178. function refresh() {
  179. $('#table').bootstrapTable('refresh');
  180. }
  181. </script>