registerService = $registerService; $this->geetestService = $geetestService; $this->smsService = $smsService; $this->taskService = $taskService; $this->membersSetmealService = $membersSetmealService; $this->middleware(function ($request, Closure $next) { if (Auth::guard('web-member')->check() || Auth::guard('web-company')->check() || Auth::guard('web-organization')->check()) { if ($request->route()->getName() !='jkq.register.send_email') { return redirect(route('jkq.home')); } } return $next($request); }); $this->emailService = $emailService; $this->authService = $authService; } public function registerIndex() { return view('jkq.auth.register', ['title'=>'会员注册']); } public function registerCompany() { return view('jkq.auth.register_company', ['title'=>'企业会员注册']); } public function registerPerson() { return view('jkq.auth.register_person', ['title'=>'个人会员注册']); } public function registerOrg() { return view('jkq.auth.register_org', ['title'=>'机构会员注册']); } public function showSendEmail($type) { $user=$type==1?auth('web-company')->user():auth('web-member')->user(); return view('jkq.auth.register_send_email', ['title'=>'个人会员注册', 'type'=>$type, 'user'=>$user]); } public function checkUnique($utype) { if ($this->registerService->checkUnique($utype, request()->type, request()->param)) { return $this->sendSuccessResponse(); } return $this->sendErrorResponse("error"); } public function registerCompanyPost(RegisterValidatorRequest $registerValidatorRequest) { if (!$this->geetestService->checkGeetest()) { return $this->sendErrorResponse("极验不通过,请重新验证"); } $company=$this->registerService->registerCompany($registerValidatorRequest->all()); $this->authService->login($company); $this->membersSetmealService->addMemberSetmeal($company, config('aix.companyset.setmeal_com.setmeal_com_set.reg_service')); $this->taskService->doTask(17); $this->emailService->setAuthTag('company') ->setCallback('App\Services\Company\CompanyService', 'sendAuthEmailHook', [$registerValidatorRequest->email, $company]) ->sendAuthMail($registerValidatorRequest->email, EmailService::TEMPLATE_VALIDATION); return $this->sendSuccessResponse(['url'=>route('jkq.register.send_email', ['type'=>1])]); } public function registerPersonPost(RegisterValidatorRequest $registerValidatorRequest) { if (!$this->geetestService->checkGeetest()) { return $this->sendErrorResponse("验证码不通过,请重新验证"); } if ($registerValidatorRequest->reg_type == 1) { if (!$this->smsService->checkAuthSms($registerValidatorRequest->mobile, Smser::TEMPLATE_AUTH_REGISTER, $registerValidatorRequest->mobile_vcode)) { return $this->sendErrorResponse("短信验证码不通过,请重新输入"); } } $member=$this->registerService->registerPerson($registerValidatorRequest->all()); $this->authService->login($member); if ($registerValidatorRequest->reg_type == 1) { $this->taskService->doTask(7); return $this->sendSuccessResponse(['url'=>route('jkq.person.index')]); } $this->emailService->setAuthTag('personal') ->setCallback('App\Services\Person\MemberInfoService', 'sendAuthEmailHook', [$registerValidatorRequest->email, $member]) ->sendAuthMail($registerValidatorRequest->email, EmailService::TEMPLATE_VALIDATION); return $this->sendSuccessResponse(['url'=>route('jkq.register.send_email', ['type'=>2])]); } public function registerOrgPost(RegisterValidatorRequest $registerValidatorRequest) { if (!$this->geetestService->checkGeetest()) { return $this->sendErrorResponse("极验不通过,请重新验证"); } $org=$this->registerService->registerOrg($registerValidatorRequest->all()); $this->authService->login($org); //$this->membersSetmealService->addMemberSetmeal($org, config('aix.companyset.setmeal_com.setmeal_com_set.reg_service')); //$this->taskService->doTask(17); $this->emailService->setAuthTag('organization') ->setCallback('App\Services\Organization\OrganizationService', 'sendAuthEmailHook', [$registerValidatorRequest->email, $org]) ->sendAuthMail($registerValidatorRequest->email, EmailService::TEMPLATE_VALIDATION); return $this->sendSuccessResponse(['url'=>route('jkq.register.send_email', ['type'=>3])]); } public function registerStatus(){ $status=config('aix.system.register.register.close_reg'); if ($status==1){ return AjaxError("网站暂停会员注册,请稍后再次尝试!"); }else{ return AjaxSuccess(""); } } }