sync.blade.php 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297
  1. @extends('app.hardware.layout.pad_content')
  2. @push('meta')
  3. @endpush
  4. @push('css')
  5. <link rel="stylesheet" href="{{theme_asset('app/css/pad/style.css')}}" />
  6. <link rel="stylesheet" href="{{theme_asset('app/css/pad/recruitment.css')}}" />
  7. @endpush
  8. @push('js')
  9. <script type="text/javascript" src="{{theme_asset('app/js/pad/layer.js')}}"></script>
  10. @endpush
  11. @section('content')
  12. <div class="main_list_content sync_job">
  13. <div class="oper_box">
  14. <div class="all_select check_list">
  15. <label><input type="checkbox" value="" class="J_allSelected">&nbsp;&nbsp; 全选</label>
  16. </div>
  17. <div class="btn_group">
  18. <div class="btn btn_sync sync_all">同步</div>
  19. {{--<div class="btn btn_pause">关闭</div>--}}
  20. {{--<div class="btn btn_del">删除</div>--}}
  21. </div>
  22. <div class="clear"></div>
  23. <div class="clear"></div>
  24. </div>
  25. <div class="joblist">
  26. @if($list->isNotEmpty())
  27. <table width="100%" class="load_more_body">
  28. <col width="5%" />
  29. <col width="22%" />
  30. <col width="17%" />
  31. <col width="38%" />
  32. <col width="18%" />
  33. @foreach($list as $key=>$job)
  34. <tr>
  35. <td class="td1"> <div class="check_list">
  36. <label><input type="checkbox" value="{{$job->id}}" class="J_allList"></label>
  37. </div>
  38. </td>
  39. <td class="td2">{{cut_str($job->jobs_name, 10, 0, '...')}}</td>
  40. <td class="td3">{{$job->wage_cn or '面议'}}</td>
  41. <td class="td4">经验{{$job->experience_cn}}/学历{{$job->education_cn}}/{{$job->nature_cn}}</td>
  42. <td class="td5" style="padding-right: 10px">
  43. {{--<div class="op3 delete" data-id="{{$job->id}}">删除</div>--}}
  44. {{--<a href="{{route('hardware.pad.recruitment.jobs.sync.edit',['id'=>$job->id,'page'=>$list->currentPage()])}}"><div class="op2">编辑</div></a>--}}
  45. @if($job->is_sync)
  46. <div class="op4 synced {{$job->audit ==1 ? '' : 'no'}}">
  47. 已同步
  48. </div>
  49. @else
  50. <div class="op4 sync" data-id="{{$job->id}}">
  51. 同步
  52. </div>
  53. @endif
  54. </td>
  55. </tr>
  56. <tr><td colspan="5" class="white_block"></td></tr>
  57. @endforeach
  58. </table>
  59. @if($list->currentPage()<$list->lastPage())
  60. <div class="load_more_footer">
  61. <span page="2" >-----上拉加载更多-----</span>
  62. </div>
  63. @endif
  64. @else
  65. @include('app.hardware.layout.list_empty')
  66. @endif
  67. </div>
  68. </div>
  69. <div class="back_top"></div>
  70. @endsection
  71. @section('script')
  72. <script type="text/javascript">
  73. $(document).on('click','.sync',function(){
  74. if($(this).hasClass('no')){
  75. $('.success_box').html('该职位暂未审核通过,无法操作').fadeIn(200).delay(2000).fadeOut(200);
  76. return false;
  77. }
  78. var url = "{{route('hardware.pad.recruitment.jobs.sync')}}";
  79. var id = $(this).data('id');
  80. var html= '<div class="content_txt" >您确定要同步职位到此招聘会职位吗?</div>';
  81. var logoutDialog = $(this).dialog({
  82. loading: false,
  83. header: false,
  84. border: false,
  85. backdrop: true,
  86. yes:function () {
  87. $.ajax({
  88. headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
  89. type: 'post',
  90. url: url,
  91. data: {
  92. jobs_id:id,
  93. exid:"{{session('floorplan_stands.exid')}}",
  94. },
  95. dataType: 'json',
  96. success: function (data) {
  97. if (data.status == 1)
  98. {
  99. $('.success_box').html(data.msg+','+ data.error).fadeIn(200).delay(2000).fadeOut(200);
  100. setTimeout(function () {
  101. window.location.href = "{{route('hardware.pad.recruitment.jobs.sync').'?page='.$list->currentPage()}}";
  102. }, 2000);
  103. }else{
  104. $('.success_box').html(data.msg).fadeIn(200).delay(2000).fadeOut(200);
  105. }
  106. },
  107. error:function (errorData) {
  108. $('.success_box').html(JSON.parse(errorData.responseText).message).fadeIn(200).delay(2000).fadeOut(200);
  109. }
  110. });
  111. }
  112. });
  113. logoutDialog.setContent(html)
  114. });
  115. //批量同步选中
  116. $('.sync_all').on('click',function(){
  117. var id_array=new Array();
  118. $('input[class="J_allList"]:checked').each(function(){
  119. id_array.push($(this).val());
  120. });
  121. var idstr=id_array.join(',');
  122. if(!idstr) {
  123. $('.success_box').html('请先选择职位').fadeIn(200).delay(2000).fadeOut(200);
  124. return false;
  125. }
  126. var url = "{{route('hardware.pad.recruitment.jobs.sync')}}";
  127. var html= '<div class="content_txt" >您确定要同步职位到此招聘会职位吗?</div>';
  128. var logoutDialog = $(this).dialog({
  129. loading: false,
  130. header: false,
  131. border: false,
  132. backdrop: true,
  133. yes:function () {
  134. $.ajax({
  135. headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
  136. type: 'post',
  137. url: url,
  138. data: {
  139. jobs_id:idstr,
  140. exid:"{{session('floorplan_stands.exid')}}",
  141. },
  142. dataType: 'json',
  143. success: function (data) {
  144. if (data.status == 1)
  145. {
  146. $('.success_box').html(data.msg).fadeIn(200).delay(2000).fadeOut(200);
  147. setTimeout(function () {
  148. window.location.href = "{{route('hardware.pad.recruitment.jobs.sync').'?page='.$list->currentPage()}}";
  149. }, 2000);
  150. }else{
  151. $('.success_box').html(data.msg).fadeIn(200).delay(2000).fadeOut(200);
  152. }
  153. },
  154. error:function (errorData) {
  155. $('.success_box').html(JSON.parse(errorData.responseText).message).fadeIn(200).delay(2000).fadeOut(200);
  156. }
  157. });
  158. }
  159. });
  160. logoutDialog.setContent(html)
  161. });
  162. //删除
  163. $(document).on('click','.delete',function(){
  164. var url = "{{route('hardware.pad.recruitment.jobs.sync.delete')}}";
  165. var ids = $(this).data('id');
  166. var html= '<div class="content_txt" >删除此职位会关联删除已发布职位,确定删除?</div>';
  167. var logoutDialog = $(this).dialog({
  168. loading: false,
  169. header: false,
  170. border: false,
  171. backdrop: true,
  172. yes:function () {
  173. $.ajax({
  174. headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
  175. type: 'post',
  176. url: url,
  177. data: {
  178. y_id:ids,
  179. },
  180. dataType: 'json',
  181. success: function (data) {
  182. //console.log(data)
  183. if (data.status == 1)
  184. {
  185. $('.success_box').html(data.msg).fadeIn(200).delay(2000).fadeOut(200);
  186. setTimeout(function () {
  187. window.location.href = "{{route('hardware.pad.recruitment.jobs.sync').'?page='.$list->currentPage()}}";
  188. }, 2000);
  189. }else{
  190. $('.success_box').html(data.msg).fadeIn(200).delay(2000).fadeOut(200);
  191. }
  192. }
  193. });
  194. }
  195. });
  196. logoutDialog.setContent(html)
  197. });
  198. //批量删除职位
  199. $('.btn_del').on('click',function(){
  200. var id_array=new Array();
  201. $('input[class="J_allList"]:checked').each(function(){
  202. id_array.push($(this).val());
  203. });
  204. var idstr=id_array.join(',');
  205. if(!idstr) {
  206. $('.success_box').html('请先选择职位').fadeIn(200).delay(2000).fadeOut(200);
  207. return false;
  208. }
  209. var url = "{{route('hardware.pad.recruitment.jobs.sync.delete')}}";
  210. var html= '<div class="content_txt" >删除职位会关联删除已发布职位,确定删除??</div>';
  211. var logoutDialog = $(this).dialog({
  212. loading: false,
  213. header: false,
  214. border: false,
  215. backdrop: true,
  216. yes:function () {
  217. $.ajax({
  218. headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
  219. type: 'post',
  220. url: url,
  221. data: {
  222. y_id:idstr,
  223. },
  224. dataType: 'json',
  225. success: function (data) {
  226. if (data.status == 1)
  227. {
  228. $('.success_box').html(data.msg).fadeIn(200).delay(2000).fadeOut(200);
  229. setTimeout(function () {
  230. window.location.href = "{{route('hardware.pad.recruitment.jobs.sync').'?page='.$list->currentPage()}}";
  231. }, 2000);
  232. }else{
  233. $('.success_box').html(data.msg).fadeIn(200).delay(2000).fadeOut(200);
  234. }
  235. }
  236. });
  237. }
  238. });
  239. logoutDialog.setContent(html);
  240. });
  241. /**
  242. * 监听网页滚动事件
  243. */
  244. @if($list->currentPage()<$list->lastPage())
  245. var f = true;
  246. $(window).scroll(function() {
  247. if($(".load_more_footer span").hasClass("end")){
  248. return false;
  249. }
  250. var h = document.documentElement.clientHeight || document.body.clientHeight;
  251. var sh = document.documentElement.scrollTop || document.body.scrollTop;
  252. var t1 = document.querySelector(".load_more_footer").offsetTop- sh;
  253. //可视区域
  254. if (t1 < h && f) {
  255. //console.log(33);
  256. s();
  257. }else{
  258. //console.log("hidden")
  259. }
  260. });
  261. var s = function () {
  262. var page = $(".load_more_footer span").attr('page');
  263. $.ajax({
  264. type:"get",
  265. url:"{{route('hardware.pad.recruitment.jobs.sync')}}",
  266. data: {page:page},
  267. beforeSend:function () {
  268. f= false;
  269. $(".load_more_footer span").html('正在加载').addClass("loading");
  270. },
  271. success:function (result) {
  272. if(result.status==1){
  273. $(".load_more_body").append(result.data);
  274. $(".load_more_footer span").attr('page',parseInt(page)+1);
  275. $(".load_more_footer span").html('-----上拉加载更多-----').removeClass("loading");
  276. }else {
  277. $(".load_more_footer span").html('-----没有更多了-----').removeClass("loading").addClass("end");
  278. }
  279. },
  280. complete:function () {
  281. f = true;
  282. }
  283. })
  284. };
  285. @endif
  286. </script>
  287. @endsection