index.html 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
  1. {extend name="common/common2" /}
  2. {block name="main"}
  3. <div class="ibox">
  4. <div class="ibox-content">
  5. <div class="row">
  6. <div class="col-xs-3">
  7. <a href="javascript:;" url="{:url('add')}" data-title="新增部门" onclick="layer_open(this,1)" class="btn btn-sm btn-primary">新增</a>
  8. <a href="javascript:;" onclick="batchSorts()" class="btn btn-sm btn-warning">保存排序</a>
  9. <a href="javascript:;" class="btn btn-sm batch-finish btn-danger">批量删除</a>
  10. </div>
  11. <div class="col-xs-9" style="text-align: right;">
  12. <form class="form-inline" id="form-search" action="{:url('index')}">
  13. <div class="input-group">
  14. <input type="text" class="form-control" name="title" placeholder="名称">
  15. </div>
  16. <div class="input-group">
  17. <select name="enable" class="form-control">
  18. <option value="">选择状态</option>
  19. <option value="0">禁用</option>
  20. <option value="1">正常</option>
  21. </select>
  22. </div>
  23. <div class="input-group">
  24. <span class="input-group-btn">
  25. <button class="btn-sm btn-primary" type="button" id ="search-btn" ><i class="fa fa-search"></i></button>
  26. </span> &nbsp;
  27. <span class="input-group-btn">
  28. <button class="btn-sm btn-warning" type="button" id="search-clear"><i class="fa fa-undo"></i></button>
  29. </span>&nbsp;
  30. <span class="input-group-btn">-->
  31. <button class="btn-sm btn-primary" data-url="{:url('import')}" type="button" id ="upload" ><i class="fa fa-upload"></i></button>
  32. </span>
  33. <span class="input-group-btn">
  34. <button data-url="{:url('export',[],'')}" title="导出" class="btn-sm btn-primary" onclick="excel_download(this)" type="button" ><i class="fa fa-cloud-download"></i></button>
  35. </span>
  36. </div>
  37. </form>
  38. </div>
  39. </div>
  40. </div>
  41. <div class="ibox-content">
  42. <div class="jqGrid_wrapper">
  43. <table id="table" style="border-collapse: collapse"></table>
  44. <div id="pager"></div>
  45. </div>
  46. </div>
  47. </div>
  48. {/block}
  49. {block name="script"}
  50. <script>
  51. $(function () {
  52. $(window).bind("resize",function(){
  53. var width=$(".jqGrid_wrapper").width();
  54. $("#table").setGridWidth(width);
  55. });
  56. $.jgrid.defaults.styleUI="Bootstrap";
  57. $("#table").jqGrid({
  58. url:"{:url('index')}",
  59. datatype: "json",
  60. colModel:[
  61. {label:'ID',name:'id',index:'id', width:30,sortable: false},
  62. {label:'名称',name:'title',index:'title',width:150,editable: false,sortable: false},
  63. {label:'排序',name:'sort',index:'sort',width:40,sortable: true,formatter: function (a, b, c) {
  64. return '<input type="number" data-url="{:url('changeSort')}" class="form-control input-sm usersorts" data-id="'+c.id+'" data-old="'+a+'" value="'+a+'" />';
  65. }},
  66. {label:'状态',name:'enable',index:'enable',width:40,editable: false,sortable: false,formatter:function (a,b,c){
  67. if(a == 0){
  68. var url = "{:url('changeField',[],'')}/fn/enable/fv/1/id/"+c.id;
  69. return '<a href="'+url+'" class="ajax-get" data-table="1"><span class="label label-danger" title="禁用">禁用</span></a>';
  70. } else{
  71. var url = "{:url('changeField',[],'')}/fn/enable/fv/0/id/"+c.id;
  72. return '<a href="'+url+'" class="ajax-get" data-table="1"><span class="label label-primary" title="正常">正常</span></a>';
  73. }
  74. }},
  75. {label:'是否显示通讯录',name:'is_show',index:'is_show',width:80,editable: false,sortable: false,formatter:function (a,b,c){
  76. if(a == 0){
  77. var url = "{:url('changeField',[],'')}/fn/is_show/fv/1/id/"+c.id;
  78. return '<a href="'+url+'" class="ajax-get" data-table="1"><span class="label label-primary" title="显示">显示</span></a>';
  79. } else{
  80. var url = "{:url('changeField',[],'')}/fn/is_show/fv/0/id/"+c.id;
  81. return '<a href="'+url+'" class="ajax-get" data-table="1"><span class="label label-danger" title="不显示">不显示</span></a>';
  82. }
  83. }},
  84. {label:'是否允许陪护',name:'ph',index:'ph',width:80,editable: false,sortable: false,formatter:function (a,b,c){
  85. if(a == 0){
  86. var url = "{:url('changeField',[],'')}/fn/ph/fv/1/id/"+c.id;
  87. return '<a href="'+url+'" class="ajax-get" data-table="1"><span class="label label-primary" title="是">是</span></a>';
  88. } else{
  89. var url = "{:url('changeField',[],'')}/fn/ph/fv/0/id/"+c.id;
  90. return '<a href="'+url+'" class="ajax-get" data-table="1"><span class="label label-danger" title="否">否</span></a>';
  91. }
  92. }},
  93. {label:'操作',width:50,sortable: false,formatter: function (a, b, c) {
  94. var editurl = "{:url('add',[],'')}/id/"+c.id;
  95. var delurl = "{:url('del',[],'')}/id/"+c.id;
  96. var btn = '<a url="'+editurl+'" href="javascript:;" data-title="编辑部门" onclick="layer_open(this,1)"><span class="label label-primary" title="编辑">编辑</span></a>&nbsp;';
  97. btn += '<a {if !btnAuth(session("user_auth.id"),"Dep/del")} style="display:none" {/if} href="'+delurl+'" class="confirm ajax-get" data-confirm="确定要删除此记录吗?" data-table="1"><span class="label label-danger" title="删除">删除</span></a>';
  98. return btn;
  99. }},
  100. ],
  101. rowNum:10,
  102. rowList:[10,20,30,50,100],
  103. pager: '#pager',
  104. sortname: 'sort',
  105. viewrecords: true,
  106. autowidth:true,
  107. mtype: 'post',
  108. height: 'auto',
  109. emptyrecords: "暂无数据",
  110. sortorder: "asc",
  111. caption:"部门列表",
  112. multiselect: true,//可多选
  113. loadComplete: function (xhr) {
  114. if(xhr.code==0){
  115. layer.msg(xhr.msg);
  116. return false;
  117. }
  118. },
  119. });
  120. $('.batch-finish').click(function () {
  121. var rowIds = jQuery("#table").jqGrid('getGridParam', 'selarrrow'); //获取勾选记录的ID
  122. if(rowIds.length==0){
  123. layer.msg("请选择记录");
  124. return;
  125. }
  126. $.post('batchDel.html',{ids:rowIds},function (res) {
  127. if(res.code==0){
  128. layer.msg(res.msg);
  129. return;
  130. }else {
  131. layer.msg(res.msg,{time:2000},function () {
  132. $('#top-alert').find('button').click();
  133. $("#table").trigger("reloadGrid");
  134. })
  135. }
  136. })
  137. })
  138. });
  139. function batchSorts() {
  140. let data = [];
  141. $('.usersorts').each(function(){
  142. data.push({
  143. id: $(this).attr('data-id'),
  144. sort: $(this).val(),
  145. })
  146. });
  147. let url = "{:url('Dep/batchSort')}";
  148. $.post(url,{data:JSON.stringify(data)},function (res) {
  149. if(res.code == 1){
  150. updateAlert('操作成功','alert-success');
  151. setTimeout(function(){
  152. $('#top-alert').find('button').click();
  153. },1500);
  154. $("#table").trigger("reloadGrid");
  155. }else{
  156. updateAlert(data.msg,'alert-danger');
  157. setTimeout(function(){
  158. $('#top-alert').find('button').click();
  159. },1500);
  160. }
  161. });
  162. }
  163. //导出
  164. function excel_download(_self){
  165. var url = $(_self).attr('data-url');
  166. var param = $('#form-search').serialize();
  167. window.location.href = url+'?'+param;
  168. }
  169. </script>
  170. {/block}