change.html 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
  1. {extend name="../../base/view/common/base" /}
  2. <!-- 主体 -->
  3. {block name="body"}
  4. <div class="p-page">
  5. <div class="layui-card border-x border-t" style="margin-bottom:0; box-shadow:0 0 0 0 rgb(5 32 96 / 0%)">
  6. <div class="body-table layui-tab layui-tab-brief" lay-filter="tab">
  7. <ul class="layui-tab-title">
  8. <li class="layui-this">全部</li>
  9. <li>我申请的</li>
  10. <li>待我审批</li>
  11. <li>我已审批</li>
  12. <li>抄送我的</li>
  13. </ul>
  14. </div>
  15. </div>
  16. <form class="layui-form gg-form-bar border-x tab-0" id="barsearchform">
  17. <div class="layui-input-inline search-item" style="width:150px;">
  18. <select name="check_status">
  19. <option value="">选择审批状态</option>
  20. {volist name=":get_check_status()" id="vo"}
  21. <option value="{$key}">{$vo}</option>
  22. {/volist}
  23. </select>
  24. </div>
  25. <div class="layui-input-inline" style="width:175px;">
  26. <input type="text" class="layui-input" id="move_time" placeholder="选择调动日期" readonly name="move_time">
  27. </div>
  28. <div class="layui-input-inline" style="width:150px">
  29. <input type="hidden" name="tab" value="0"/>
  30. <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="table-search"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
  31. <button type="reset" class="layui-btn layui-btn-reset" lay-filter="table-reset">清空</button>
  32. </div>
  33. </form>
  34. <table class="layui-hide" id="test" lay-filter="test"></table>
  35. </div>
  36. <script type="text/html" id="toolbarDemo">
  37. <div class="layui-btn-container">
  38. <button class="layui-btn layui-btn-sm" lay-event="add">+ 添加人事调动申请</button>
  39. </div>
  40. </script>
  41. {/block}
  42. <!-- /主体 -->
  43. <!-- 脚本 -->
  44. {block name="script"}
  45. <script>
  46. const moduleInit = ['tool','tablePlus','laydatePlus','oaPicker'];
  47. function gouguInit() {
  48. var table = layui.tablePlus, tool = layui.tool,form = layui.form,element = layui.element,laydatePlus = layui.laydatePlus;
  49. //日期范围
  50. var move_time = new laydatePlus({'target':'move_time'});
  51. //tab切换
  52. element.on('tab(tab)', function(data){
  53. $('[name="tab"]').val(data.index);
  54. $("#barsearchform")[0].reset();
  55. layui.pageTable.reload({where:{tab:data.index},page:{curr:1}});
  56. return false;
  57. });
  58. layui.pageTable = table.render({
  59. elem: '#test'
  60. , toolbar: '#toolbarDemo'
  61. ,defaultToolbar: false
  62. , url: "/user/personal/change"
  63. , page: true //开启分页
  64. , limit: 20
  65. , height: 'full-154'
  66. , cols: [[
  67. { field: 'id', width: 80, title: '序号', align: 'center' }
  68. ,{field:'check_status',title: '审批状态',width:110, align:'center',templet: function(d){
  69. var html = '<span class="check-status-color-'+d.check_status+'">『'+d.check_status_str+'』</span>';
  70. return html;
  71. }
  72. }
  73. , { field: 'name', width: 80, title: '员工姓名', align: 'center'}
  74. , { field: 'from_department', width: 150, title: '调出部门','style':'color:#FF5722'}
  75. , { field: 'to_department', width: 150, title: '调入部门','style':'color:#1e9fff'}
  76. , { field: 'status', width: 80,title: '执行状态', align: 'center',
  77. templet: function (d) {
  78. if(d.status==1){
  79. return '<span class="green">未执行</span>';
  80. }
  81. else{
  82. return '<span class="red">已执行</span>';
  83. }
  84. }
  85. }
  86. , { field: 'move_time', title: '调动日期',width: 100, align: 'center'}
  87. , { field: 'remark', title: '调动原因'}
  88. , {field: 'admin_name',title: '申请人',align: 'center',width: 80}
  89. , {field: 'create_time',title: '申请时间',align: 'center',width: 150}
  90. , {field: 'check_user',title: '当前审核人'}
  91. , {
  92. field: 'right',
  93. fixed: 'right',
  94. title: '操作',
  95. width: 130,
  96. align: 'center',
  97. templet:function(d){
  98. var html='<div class="layui-btn-group">';
  99. var btn1='<span class="layui-btn layui-btn-normal layui-btn-xs" lay-event="view">详情</span>';
  100. var btn2='<span class="layui-btn layui-btn-xs" lay-event="edit">编辑</span>';
  101. var btn3='<span class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</span>';
  102. let btn4='<button class="layui-btn layui-bg-orange layui-btn-xs" lay-event="set">执行</button>';
  103. html+=btn1;
  104. if((d.check_status==0 || d.check_status==4) && d.admin_id==login_admin){
  105. html+=btn2+btn3;
  106. }
  107. if(d.check_status==2 && d.status==1){
  108. html+=btn4;
  109. }
  110. html+='</div>';
  111. return html;
  112. }
  113. }
  114. ]]
  115. });
  116. //监听行工具事件
  117. table.on('tool(test)', function(obj){
  118. var data = obj.data;
  119. if(obj.event === 'edit'){
  120. tool.side('/user/personal/change_add?id='+data.id);
  121. return;
  122. }
  123. if(obj.event === 'view'){
  124. tool.side('/user/personal/change_view?id='+data.id);
  125. return;
  126. }
  127. if (obj.event === 'set') {
  128. layer.confirm('确定要执行部门调动吗?', { icon: 3, title: '提示' }, function (index) {
  129. let callback = function (e) {
  130. layer.msg(e.msg);
  131. if (e.code == 0) {
  132. layui.pageTable.reload();
  133. }
  134. }
  135. tool.delete("/user/api/change_check", { id: data.id }, callback);
  136. layer.close(index);
  137. });
  138. }
  139. if (obj.event === 'del') {
  140. layer.confirm('确定要删除吗?', { icon: 3, title: '提示' }, function (index) {
  141. let callback = function (e) {
  142. layer.msg(e.msg);
  143. if (e.code == 0) {
  144. layui.pageTable.reload();
  145. }
  146. }
  147. tool.delete("/user/personal/change_delete", { id: data.id }, callback);
  148. layer.close(index);
  149. });
  150. }
  151. });
  152. //表头工具栏事件
  153. table.on('toolbar(test)', function(obj){
  154. if (obj.event === 'add') {
  155. tool.side("/user/personal/change_add");
  156. return;
  157. }
  158. });
  159. //监听搜索提交
  160. form.on('submit(webform)', function(data){
  161. if(data.field.keywords) {
  162. layui.pageTable.reload({where:{keywords:data.field.keywords},page:{curr:1}});
  163. }
  164. else{
  165. location.reload();
  166. }
  167. return false;
  168. });
  169. }
  170. </script>
  171. {/block}
  172. <!-- /脚本 -->