| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325 | 
							- <?php
 
- /**
 
-  * Created by PhpStorm.
 
-  * User: wuzhenke
 
-  * Date: 2019/1/17
 
-  * Time: 16:19
 
-  */
 
- namespace App\Http\Controllers\Mobile\Active;
 
- use App\Exceptions\ResponseException;
 
- use App\Http\Controllers\Mobile\MobileBaseController;
 
- use App\Services\Common\CategoryService;
 
- use App\Services\Common\SearchService;
 
- use App\Services\Company\JobsService;
 
- use Illuminate\Http\Request;
 
- use App\Services\Company\CompanyService;
 
- use Illuminate\Support\Facades\Cache;
 
- use Illuminate\Support\Facades\DB;
 
- class JobfairController extends MobileBaseController
 
- {
 
-     protected $companyService;
 
-     protected $jobsService;
 
-     protected $categoryService;
 
-     protected $searchService;
 
-     /*
 
-      * 企业中心
 
-      * */
 
-     /**
 
-      * JobfairController constructor.
 
-      * @param $jobfairJobsService
 
-      * @param $jobfairCompanyRepository
 
-      * @param $jobfairCompanyService
 
-      * @param $jobfairService
 
-      * @param $jobfairRepository
 
-      * @param $jobfairPersonalJobsApplyRepository
 
-      * @param $jobfairPersonalJopApplyService
 
-      * @param $resumeService
 
-      * @param $jobfairFloorplanStandRepository
 
-      * @param $jobfairFloorPlanRepository
 
-      * @param $jobfairPutJobRepository
 
-      * @param $resumeRepository
 
-      * @param $jobfairPutJobService
 
-      * @param $companyService
 
-      * @param $jobfairJobRepository
 
-      * @param $companyDownResumeService
 
-      * @param $articleService
 
-      * @param $articleRepository
 
-      */
 
-     public function __construct(
 
-         CompanyService $companyService,
 
-         JobsService $jobsService,
 
-         CategoryService $categoryService,
 
-         SearchService $searchService
 
-     )
 
-     {
 
-         $this->companyService = $companyService;
 
-         $this->jobsService = $jobsService;
 
-         $this->categoryService = $categoryService;
 
-         $this->searchService = $searchService;
 
-     }
 
-     /**2020新春线上招聘会
 
-      * @param Request $request
 
-      * @param int $id
 
-      * @return \Illuminate\Contracts\View\Factory|\Illuminate\Http\JsonResponse|\Illuminate\View\View
 
-      * @throws \Throwable
 
-      */
 
-     public function online2020(Request $request)
 
-     {
 
-         $offset = isset($request->page)?$request->page:0;
 
-         $limit = 20;
 
-         $citycategory = $request->input('citycategory');
 
-         $trade = $request->input('trade');
 
-         $param_array = array('citycategory','trade','nature');
 
-         $params= array();
 
-         if ($request->all()) {
 
-             foreach ($request->all() as $k => $v) {
 
-                 if (in_array($k, $param_array) && $v) {
 
-                     $params[$k] = $v;
 
-                 }
 
-             }
 
-         }
 
-         $subsites = Cache::get('subsites_list');
 
-         if ($subsites) {
 
-             if (!array_has($params, 'citycategory')) {
 
-                 if (get_subsite_id() > 0) {
 
-                     $citycategory = $subsites[get_subsite_id()]['district'];
 
-                 }
 
-             }
 
-             $is_subsite = 1;
 
-         }
 
-         $citys = $this->categoryService->getCitys($citycategory);
 
-         $companys = DB::table('jobs')->join('companys','jobs.company_id','=','companys.id')->whereRaw("jobs.created_at > '2020-01-01 00:00:00'")->groupBy('jobs.company_id')->select('jobs.company_id')->pluck('company_id')->toArray();
 
- //        echo '<pre>';
 
- //
 
- //        var_dump($companys);die;
 
-         $where = array();
 
-         $where[] = array('reg_time', '>', 1577808000);
 
-         $where[] = array('user_status', '=', 1);
 
-         $where[] = array('subsite_id', '=', get_subsite_id());
 
-         $where[] = array('audit','=',1);
 
-         $where[] = array('deleted_at','=',null);
 
-         if(!empty($trade)){
 
-             $where[] = array('trade','=',$trade);
 
-         }
 
-         //$where[] = array('id','in',$companys);
 
-         $order_by = array('id','desc');
 
-         //$list = $this->searchService->search('Company', $where, $order_by, '');
 
-         //$list = DB::table('companys')->where($where)->whereRaw("(district like ? or district like ?)",["%.{$citys['select']['id']}%","%{$citys['select']['id']}.%"])->whereIn('id',$companys)->orderBy('id','desc')->offset($limit*$offset)->limit($limit)->get();
 
-         $list = DB::table('companys')->where($where)->whereIn('id',$companys)->orderBy('id','desc')->offset($limit*$offset)->limit($limit)->get();
 
- //        echo '<pre>';
 
- //
 
- //        var_dump($list);die;
 
-         $more = count($list) >= $limit ? true : false;
 
- //        if ($list->total() >0) {
 
- //            //处理企业信息
 
- //            $list_items = $this->companyService->dealCompanyFields($list->items());
 
- //        } else {
 
- //            $list_items = array();
 
- //        }
 
-         $res = [];
 
-         foreach ($list as $val) {
 
-             $item = array(
 
-                 'id'    =>  $val->id,
 
-                 'companyname'   =>  $val->companyname,
 
-                 'jobs'  =>  []
 
-             );
 
-             //在招职位
 
-             $jobs_where = array(
 
-                 array('company_id','=',$val->id),
 
-                 array('valid','=',1),
 
-                 array('display','=',1),
 
-                 array('audit','=',1)
 
-             );
 
-             //$jobs = $this->jobsService->getOtherJobs($jobs_where);
 
-             $jobs = DB::table('jobs')->where($jobs_where)->get();
 
-             if($jobs){
 
-                 foreach ($jobs as $value) {
 
-                     $job = array(
 
-                         'id'    =>  $value->id,
 
-                         'jobs_name' =>  $value->jobs_name,
 
-                         'amount'    =>  $value->amount
 
-                     );
 
-                     array_push($item['jobs'],$job);
 
-                 }
 
-             }
 
-             array_push($res,$item);
 
-         }
 
-         $filter_where = array(
 
-             'AIX_trade'         => 100,
 
-             'AIX_company_type'  => 100
 
-         );
 
-         $categories = $this->categoryService->getCategories($filter_where);
 
-         if ($request->ajax()) {
 
-             if (count($res)) {
 
-                 return response()->json(['status'=>1,'data'=>view('app.active.ajax.ajax_jobfair_com', [
 
-                     'res'           =>  $res,
 
-                     'city'          =>  $citys,
 
-                     'params'        =>  $params,
 
-                     'categories'    =>  $categories,
 
-                     'more'          =>  $more
 
-                 ])->render()]);
 
-             }
 
-             return response()->json(['status'=>0]);
 
-         }
 
-         return view('app.active.online2020',[
 
-             'res'           =>  $res,
 
-             'city'          =>  $citys,
 
-             'params'        =>  $params,
 
-             'categories'    =>  $categories,
 
-             'more'          =>  $more
 
-             //'list_items'    => $list_items,
 
-             //'list'          => $list,
 
-         ]);
 
-     }
 
-     public function online2020m(Request $request){
 
-         $offset = isset($request->page)?$request->page:0;
 
-         $limit = 20;
 
-         $citycategory = $request->input('citycategory');
 
-         $trade = $request->input('trade');
 
-         $param_array = array('citycategory','trade','nature');
 
-         $params= array();
 
-         if ($request->all()) {
 
-             foreach ($request->all() as $k => $v) {
 
-                 if (in_array($k, $param_array) && $v) {
 
-                     $params[$k] = $v;
 
-                 }
 
-             }
 
-         }
 
-         $filter_where = array(
 
-             'AIX_trade'         => 100,
 
-             'AIX_company_type'  => 100
 
-         );
 
-         $categories = $this->categoryService->getCategories($filter_where);
 
-         $subsites = Cache::get('subsites_list');
 
-         if ($subsites) {
 
-             if (!array_has($params, 'citycategory')) {
 
-                 if (get_subsite_id() > 0) {
 
-                     $citycategory = $subsites[get_subsite_id()]['district'];
 
-                 }
 
-             }
 
-             $is_subsite = 1;
 
-         }
 
-         $citys = $this->categoryService->getCitys($citycategory);
 
-         if(empty($citycategory)){
 
-             $citys['select']['id'] = 623;
 
-         }
 
-         $companys = DB::table('jobs')->join('companys','jobs.company_id','=','companys.id')->whereRaw("jobs.created_at > '2020-01-01 00:00:00'")->groupBy('jobs.company_id')->select('jobs.company_id')->pluck('company_id')->toArray();
 
-         $where = array();
 
-         $where[] = array('reg_time', '>', 1577808000);
 
-         $where[] = array('user_status', '=', 1);
 
-         $where[] = array('subsite_id', '=', get_subsite_id());
 
-         $where[] = array('audit','=',1);
 
-         $where[] = array('deleted_at','=',null);
 
-         if(!empty($trade)){
 
-             $where[] = array('trade','=',$trade);
 
-         }
 
-         //$list = DB::table('companys')->where($where)->whereIn('id',$companys)->orderBy('id','desc')->offset($limit*$offset)->limit($limit)->get();
 
-         $list = DB::table('companys')->where($where)->whereIn('id',$companys)->whereRaw("(district like ? or district like ? or district like ? or district like ?)",["%.{$citys['select']['id']}%","%{$citys['select']['id']}.%","%.245%","%245.%"])->orderBy('id','desc')->offset($limit*$offset)->limit($limit)->get();
 
- //        echo '<pre>';
 
- //        var_dump($citys);die;
 
-         $more = count($list) >= $limit ? true : false;
 
-         $res = [];
 
-         foreach ($list as $val) {
 
-             $item = array(
 
-                 'id'    =>  $val->id,
 
-                 'companyname'   =>  $val->companyname,
 
-                 'trade'     =>  $val->trade ? $categories['AIX_trade'][$val->trade]['demand'] : '未分类',
 
-                 'jobs_num'  =>  0,
 
-                 'amount_num'    =>  0,
 
-                 'jobs'  =>  []
 
-             );
 
-             //在招职位
 
-             $jobs_where = array(
 
-                 array('company_id','=',$val->id),
 
-                 array('valid','=',1),
 
-                 array('display','=',1),
 
-                 array('audit','=',1)
 
-             );
 
-             //$jobs = $this->jobsService->getOtherJobs($jobs_where);
 
-             $jobs = DB::table('jobs')->where($jobs_where)->get();
 
-             if($jobs){
 
-                 $amount = 0;
 
-                 foreach ($jobs as $value) {
 
-                     $job = array(
 
-                         'id'    =>  $value->id,
 
-                         'jobs_name' =>  $value->jobs_name,
 
-                         'amount'    =>  $value->amount,
 
-                         'wage'      =>  $value->wage_str
 
-                     );
 
-                     $amount += $value->amount;
 
-                     array_push($item['jobs'],$job);
 
-                 }
 
-                 $item['jobs_num'] = count($item['jobs']);
 
-                 $item['amount_num'] = $amount;
 
-             }
 
-             array_push($res,$item);
 
-         }
 
-         if ($request->ajax()) {
 
-             if (count($res)) {
 
-                 return response()->json(['status'=>1,'data'=>view('mobile.app.active.ajax.ajax_jobfair_com', [
 
-                     'res'           =>  $res,
 
-                     'city'          =>  $citys,
 
-                     'params'        =>  $params,
 
-                     'categories'    =>  $categories,
 
-                     'more'          =>  $more
 
-                 ])->render()]);
 
-             }
 
-             return response()->json(['status'=>0]);
 
-         }
 
-         return view('mobile.app.active.online2020m',[
 
-             'res'           =>  $res,
 
-             'city'          =>  $citys,
 
-             'params'        =>  $params,
 
-             'categories'    =>  $categories,
 
-             'more'          =>  $more
 
-         ]);
 
-     }
 
- }
 
 
  |