QuanzhidaController.php 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: wuzhenke
  5. * Date: 2019/1/17
  6. * Time: 16:19
  7. */
  8. namespace App\Http\Controllers\Mobile\Active;
  9. use App\Http\Controllers\Mobile\MobileBaseController;
  10. use App\Services\Common\CategoryService;
  11. use Illuminate\Http\Request;
  12. use Illuminate\Support\Facades\DB;
  13. class QuanzhidaController extends MobileBaseController
  14. {
  15. protected $categoryService;
  16. public function __construct(CategoryService $categoryService)
  17. {
  18. $this->categoryService = $categoryService;
  19. }
  20. public function index(Request $request)
  21. {
  22. //获取分类
  23. $filter_where = [
  24. 'AIX_education' => 100,
  25. 'AIX_experience' => 100,
  26. ];
  27. $categories = $this->categoryService->getCategories($filter_where); //过滤条件信息
  28. $categories_res = [];
  29. foreach ($categories['AIX_education'] as $k => $v) {
  30. if ($k >= 69) {
  31. $categories_res['AIX_education'][$k] = $v;
  32. }
  33. }
  34. foreach ($categories['AIX_experience'] as $k => $v) {
  35. if ($k < 76) {
  36. $categories_res['AIX_experience'][$k] = $v;
  37. }
  38. }
  39. //获取数据
  40. $where = $this->_dealWhere($request);
  41. $list = DB::table('quanzhida')->where($where)->orderBy('wage_max','desc')->paginate(10);
  42. //数据处理
  43. foreach ($list as $val) {
  44. $val->wage_cn = $val->wage_min . '-' . $val->wage_max . '/月';
  45. $val->education_cn = $val->education ? get_category($val->education) : '不限';
  46. $val->experience_cn = $val->experience ? get_category($val->experience) : '不限';
  47. }
  48. //ajax返回
  49. if ($request->ajax()) {
  50. if ($list->lastPage() < $list->currentPage()) {
  51. return response()->json(['status' => 0]);
  52. }
  53. return response()->json(['status' => 1, 'data' => view('mobile.app.active.ajax.quanzhida_list', ['list' => $list->items()])->render()]);
  54. }
  55. $return_data['categories'] = $categories_res;
  56. $return_data['params'] = $request->input();
  57. $return_data['list'] = $list->items();
  58. $return_data['wap_title'] = '泉州职业技术大学';
  59. return view('mobile.app.active.quanzhida', $return_data);
  60. }
  61. /**
  62. * 搜索条件处理
  63. */
  64. private function _dealWhere(Request $request)
  65. {
  66. //搜索条件
  67. $where = [];
  68. $keyword = $request->input('keyword');
  69. if (!empty($keyword)) {
  70. $key_name = $request->input('key_name');
  71. $where[] = [$key_name, 'like', "%{$keyword}%"];
  72. }
  73. $education = $request->input('education');
  74. if (!empty($education)) {
  75. $where[] = ['education', '>=', $education];
  76. }
  77. $experience = $request->input('experience');
  78. if (!empty($experience)) {
  79. $where[] = ['experience', '=', $experience];
  80. }
  81. return $where;
  82. }
  83. }