123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161 |
- <?php
- /**
- * Created by PhpStorm.
- * User: Administrator
- * Date: 2019/3/21
- * Time: 15:01
- */
- namespace App\Http\Controllers\Web\Hardware\Pad;
- use App\Http\Controllers\Web\WebBaseController;
- use App\Repositories\MemberHandselRepository;
- use http\Env\Response;
- use Illuminate\Http\Request;
- use Illuminate\Support\Facades\Auth;
- use App\Services\Auth\AuthService;
- use App\Services\Common\GeetestService;
- use App\Repositories\Jobfair\JobfairFloorplanStandRepository;
- use App\Repositories\Jobfair\JobfairCompanyRepository;
- use App\Repositories\CompanyRepository;
- use App\Services\Common\SmsService;
- use App\Models\Jobfair\Jobfair;
- use App\Models\MembersPoint;
- class PadController extends WebBaseController
- {
- /**
- * @var AuthService
- */
- protected $authService;
- /**
- * @var SmsService
- */
- protected $smsService;
- /**
- * @var GeetestService
- */
- protected $geetestService;
- /**
- * @var JobfairFloorplanStandRepository
- */
- protected $jobfairFloorplanStandRepository;
- /**
- * @var JobfairCompanyRepository
- */
- protected $jobfairCompanyRepository;
- protected $companyRepository;
- protected $memberHandselRepository;
- /**
- * LoginController constructor.
- * @param AuthService $authService
- * @param SmsService $smsService
- * @param GeetestService $geetestService
- * @param GeetestService $jobfairFloorplanStandRepository
- * @param GeetestService $jobfairCompanyRepository
- * @param GeetestService $companyRepository
- * @param MemberHandselRepository $memberHandselRepository
- */
- public function __construct(
- AuthService $authService,
- SmsService $smsService,
- GeetestService $geetestService,
- JobfairFloorplanStandRepository $jobfairFloorplanStandRepository,
- JobfairCompanyRepository $jobfairCompanyRepository,
- CompanyRepository $companyRepository,
- MemberHandselRepository $memberHandselRepository
- ) {
- $this->authService = $authService;
- $this->smsService = $smsService;
- $this->geetestService = $geetestService;
- $this->jobfairFloorplanStandRepository = $jobfairFloorplanStandRepository;
- $this->jobfairCompanyRepository = $jobfairCompanyRepository;
- $this->companyRepository = $companyRepository;
- $this->memberHandselRepository = $memberHandselRepository;
- }
- public function login(Request $request)
- {
- if($request->method() == 'GET'){
- $res = $this->jobfairFloorplanStandRepository->getOpenJobfair(['equipment_id'=>$request->exid]);
- if(!$res || !$res->jobfair_company){
- return view('app.hardware.pad.login',['eid'=>$request->exid,'flag'=>false]);
- }
- $comp_info = $this->companyRepository->getCompanyColumn($res->jobfair_company->company_id,['username','companyname']);
- return response()->view('app.hardware.pad.login',['eid'=>$request->exid,'comp_info'=>$comp_info,'flag'=>true])->cookie('exid',$request->exid,1440);
- }else{
- if($request->username == '' || $request->password == ''){
- return $this->sendSuccessResponse(['status'=>0,'msg'=>"请输入账号或密码"]);
- }
- if (!$company=$this->authService->loginByCompany($request->username, $request->password)) {
- return $this->sendSuccessResponse(['status'=>0,'msg'=>"用户名或密码错误"]);
- }
- if ($company->user_status == 0) {
- Auth::guard('web-company')->logout();
- return $this->sendSuccessResponse(['status'=>0,'msg'=>"你的账号处于封禁状态, 请联系管理员"]);
- }
- $user = auth('web-company')->user();
- $eid = $request->eid;
- $res = $this->jobfairFloorplanStandRepository->getOpenJobfair(['equipment_id'=>$eid]);
- $where = [
- 'company_id'=>$user->id,
- 'jobfair_id'=>$res->jobfair_id,
- 'position_id'=>$res->id,
- 'audit'=>1,
- ];
- $res1 = $this->jobfairCompanyRepository->getOne($where);
- if(!$res1){
- return $this->sendSuccessResponse(['status'=>0,'msg'=>"该企业没有预定展位"]);
- }
- if($res1->type == 0){
- if($res1->jobfair->holddate_start >= strtotime("-30 minute")){
- $this->jobfairCompanyRepository->updateInfo($where,['type'=>4,'signed_time'=>time()]);
- }elseif($res1->jobfair->holddate_start < strtotime("-30 minute")){
- $this->jobfairCompanyRepository->updateInfo($where,['type'=>1,'signed_time'=>time()]);
- $is_commonweal = Jobfair::where('id',$res->jobfair_id)->value('is_commonweal');
- $late_point = Jobfair::where('id',$res->jobfair_id)->value('late_point');
- if($late_point && $is_commonweal!=3){
- $points = MembersPoint::where(['utype'=>1,'uid'=>$user->id])->value('points');
- if($points > $late_point){
- MembersPoint::where(['utype'=>1,'uid'=>$user->id])->decrement('points',$late_point);
- $handsel['points'] = $late_point;
- }else{
- $handsel['points'] = $points;
- MembersPoint::where(['utype'=>1,'uid'=>$user->id])->update(['points'=>0]);
- }
- $handsel['uid'] = $user->id;
- $handsel['utype'] = $user->utype;
- $handsel['htype'] = 'jobfair_late';
- $handsel['htype_cn'] = '招聘会迟到';
- $handsel['operate'] = 2;
- $this->memberHandselRepository->addNew($handsel);
- }
- }
- }
- session(['floorplan_stands'=>[
- 'id'=> $res->id,
- 'equipment_id' => $res->equipment_id,
- 'jobfair_id' => $res->jobfair_id,
- 'floorplan_id' => $res->floorplan_id,
- 'exid' => $res1->id,
- 'company_id'=>$user->id
- ]]);
- return $this->sendSuccessResponse(['status'=>1,'msg'=>"登陆成功"]);
- }
- }
- public function logout(){
- $this->authService->logout();
- return $this->sendSuccessResponse(['status'=>1,'msg'=>"退出成功"]);
- }
- public function index(){
- return view('app.hardware.pad.index');
- }
- }
|