datalist.html 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221
  1. {extend name="../../base/view/common/base" /}
  2. {block name="style"}
  3. <style>
  4. .dropdpwn-demo .layui-btn+.layui-btn{margin-left:3px;}
  5. </style>
  6. {/block}
  7. <!-- 主体 -->
  8. {block name="body"}
  9. <div class="p-page">
  10. <div class="layui-card border-x border-t" style="margin-bottom:0; box-shadow:0 0 0 0 rgb(5 32 96 / 0%)">
  11. <div class="body-table layui-tab layui-tab-brief" lay-filter="tab">
  12. <ul class="layui-tab-title">
  13. <li class="layui-this">全部</li>
  14. <li>我申请的</li>
  15. <li>待我审批</li>
  16. <li>我已审批</li>
  17. <li>抄送我的</li>
  18. </ul>
  19. </div>
  20. </div>
  21. <form class="layui-form gg-form-bar border-x tab-0" id="barsearchform">
  22. <div class="layui-input-inline search-item" style="width:120px;">
  23. <select name="check_status">
  24. <option value="">选择审批状态</option>
  25. {volist name=":get_check_status()" id="vo"}
  26. <option value="{$key}">{$vo}</option>
  27. {/volist}
  28. </select>
  29. </div>
  30. <div class="layui-input-inline" style="width:150px;">
  31. <input type="text" class="layui-input picker-oa" data-types="department" placeholder="选择入职部门" readonly>
  32. <input type="text" name="did" style="display:none;">
  33. </div>
  34. <div class="layui-input-inline" style="width:175px;">
  35. <input type="text" class="layui-input" id="entry_time" placeholder="选择入职日期" readonly name="entry_time">
  36. </div>
  37. <div class="layui-input-inline" style="width:240px">
  38. <input type="text" name="keywords" placeholder="关键字,姓名/手机号码" class="layui-input" />
  39. </div>
  40. <div class="layui-input-inline" style="width:150px">
  41. <input type="hidden" name="tab" value="0"/>
  42. <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="table-search"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
  43. <button type="reset" class="layui-btn layui-btn-reset" lay-filter="table-reset">清空</button>
  44. </div>
  45. </form>
  46. <table class="layui-hide" id="table_talent" lay-filter="table_talent"></table>
  47. </div>
  48. <script type="text/html" id="thumb">
  49. <img src="{{d.thumb}}" width="30" height="30" />
  50. </script>
  51. <script type="text/html" id="toolbarDemo">
  52. <div class="layui-btn-group">
  53. <button class="layui-btn layui-btn-sm tool-add" type="button" data-href="/user/talent/add">+ 添加入职申请</button>
  54. </div>
  55. </script>
  56. {/block}
  57. <!-- /主体 -->
  58. <!-- 脚本 -->
  59. {block name="script"}
  60. <script>
  61. const is_auth = {$is_auth};
  62. const moduleInit = ['tool','tablePlus','laydatePlus','oaPicker'];
  63. function gouguInit() {
  64. var table = layui.tablePlus, tool = layui.tool,form = layui.form,element = layui.element,laydatePlus = layui.laydatePlus;
  65. //日期范围
  66. var entry_time = new laydatePlus({'target':'entry_time'});
  67. //tab切换
  68. element.on('tab(tab)', function(data){
  69. $('[name="tab"]').val(data.index);
  70. $("#barsearchform")[0].reset();
  71. layui.pageTable.reload({where:{tab:data.index},page:{curr:1}});
  72. return false;
  73. });
  74. layui.pageTable = table.render({
  75. elem: "#table_talent"
  76. ,title: '入职申请列表'
  77. ,toolbar: "#toolbarDemo"
  78. ,url: "/user/talent/datalist"
  79. ,page: true
  80. ,limit: 20
  81. ,cellMinWidth: 60
  82. ,height: 'full-154'
  83. ,cols: [[
  84. {
  85. field: 'id',
  86. title: 'ID号',
  87. align: 'center',
  88. fixed:'left',
  89. width: 80
  90. },{field:'check_status',title: '审核状态',width:110, align:'center',templet: function(d){
  91. var html = '<span class="check-status-color-'+d.check_status+'">『'+d.check_status_str+'』</span>';
  92. return html;
  93. }
  94. },{
  95. field: 'name',
  96. title: '姓名',
  97. width: 150
  98. },{
  99. field: 'thumb',
  100. title: '照片头像',
  101. toolbar: '#thumb',
  102. align: 'center',
  103. width: 80
  104. },{
  105. field: 'sex',
  106. title: '性别',
  107. align: 'center',
  108. width: 50,
  109. templet: function (d) {
  110. var html = '未知';
  111. if(d.sex == 1){
  112. html = '男'
  113. }
  114. else if(d.sex == 2){
  115. html = '女'
  116. }
  117. return html;
  118. }
  119. },{
  120. field: 'mobile',
  121. title: '手机号码',
  122. align: 'center',
  123. width: 110
  124. },{
  125. field: 'department',
  126. title: '入职部门',
  127. align: 'center',
  128. width: 100
  129. },{
  130. field: 'position',
  131. title: '入职岗位',
  132. align: 'center',
  133. width: 100
  134. },{
  135. field:'admin_name',
  136. title: '申请人',
  137. width:90,
  138. align:'center'
  139. },{
  140. field:'create_time',
  141. title: '申请时间',
  142. width:150,
  143. align:'center'
  144. },{
  145. field:'check_users',
  146. title: '当前审批人'
  147. },{
  148. field: 'status',
  149. title: '入职状态',
  150. align: 'center',
  151. width: 80,
  152. templet: function (d) {
  153. var html = '';
  154. if(d.status == 1){
  155. html = '<span class="red">未入职</span>'
  156. }
  157. else if(d.status == 2){
  158. html = '<span class="green">已入职</span>'
  159. }
  160. return html;
  161. }
  162. },{
  163. field: 'entry_time',
  164. title: '入职日期',
  165. align: 'center',
  166. width: 90
  167. },{width:168,fixed:'right',title: '操作', align:'center',ignoreExport:true,templet: function(d){
  168. var html='';
  169. var btn1='<a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="view">详细</a>';
  170. var btn2='<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>';
  171. var btn3='<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>';
  172. var btn4='<a class="layui-btn layui-btn-xs" lay-event="user">转入职</a>';
  173. var html = '<div class="layui-btn-group">'+btn1+'</div>';
  174. if((d.check_status==0 || d.check_status==4) && d.admin_id == login_admin){
  175. html = '<div class="layui-btn-group">'+btn1+btn2+btn3+'</div>';
  176. }
  177. if(d.check_status==2 && d.status==1 && (d.admin_id == login_admin || is_auth==1)){
  178. html = '<div class="layui-btn-group">'+btn1+btn4+'</div>';
  179. }
  180. return html;
  181. }}
  182. ]]
  183. });
  184. table.on('tool(table_talent)',function (obj) {
  185. var checkStatus = table.checkStatus(obj.config.id); //获取选中行状态
  186. var data = obj.data;
  187. if (obj.event === 'view') {
  188. tool.side("/user/talent/view?id="+data.id);
  189. return;
  190. }
  191. if (obj.event === 'edit') {
  192. tool.side("/user/talent/add?id="+data.id);
  193. return;
  194. }
  195. if (obj.event === 'user') {
  196. tool.side("/user/talent/set?id="+data.id);
  197. return;
  198. }
  199. if (obj.event === 'del') {
  200. layer.confirm('确定要删除该记录吗?', { icon: 3, title: '提示' }, function (index) {
  201. let callback = function (e) {
  202. layer.msg(e.msg);
  203. if (e.code == 0) {
  204. obj.del();
  205. }
  206. }
  207. tool.delete("/user/talent/del", { id: data.id }, callback);
  208. layer.close(index);
  209. });
  210. return;
  211. }
  212. });
  213. }
  214. </script>
  215. {/block}
  216. <!-- /脚本 -->