organizationRepository = $organizationRepository; $this->memberLogRepository = $memberLogRepository; } /** * 企业资料页面 * @return array * @throws ResponseException */ public function organizationInfo($user) { $orgInfo = $this->organizationRepository->getOrgInfoByID($user->id); if ($orgInfo->subsite_id) { $subsiteInfo = $this->subsiteRepository->find($orgInfo->subsite_id); } else { $subsiteInfo = ''; } $orgInfo->subsite_name = $subsiteInfo?$subsiteInfo->sitename:'总站'; //企业性质 $companyType = Category::categoryType('AIX_company_type'); //企业规模 $scale = Category::categoryType('AIX_scale'); //企业行业 $trade = Category::categoryType('AIX_trade'); //单位性质 $unit_character = Category::categoryType('AIX_dwxz'); $industry = Category::categoryType('AIX_cylb'); $economy = Category::categoryType('AIX_jjlx'); if ($jump_certificate = config('aix.companyset.audit.checkset.login_com_audit_certificate')==1 && $orgInfo->audit==0) { $jump_certificate= 1; } else { $jump_certificate= 0; } $res = [ 'companyInfo' => $orgInfo, 'companyType' => $companyType, 'scale' =>$scale, 'trade' =>$trade, 'unit_character' =>$unit_character, 'industry' =>$industry, 'economy' =>$economy, 'jump_certificate'=>$jump_certificate, ]; return $res; } /** * 账号安全 * @return array * @throws ResponseException */ public function orgSecurity($user) { $orgInfo = $this->organizationRepository->getOrgInfoByID($user->id); $res = [ 'organizationInfo' => $orgInfo ]; return $res; } public function verifyEmail($newEmail) { $organization=Cache::pull($newEmail, null); if ($organization) { $this->organizationRepository->changeEmail($organization->id, $newEmail); return true; } return false; } /** * 企业登录日志 * @return mixed */ public function orgLoginLog($user) { return $this->memberLogRepository->getMemberLog($user->id, 1, 1001); } public function savePwd($user, $oldpassword, $pwd, $pwd1) { $com_info = $this->organizationRepository->getOrganizationColumn($user->id, ['password']); if (!Hash::check($oldpassword, $com_info['password'])) { throw new ResponseException('原密码不正确!'); } if ($oldpassword == $pwd) { throw new ResponseException('新密码与原密码一致!'); } if ($pwd!= $pwd1) { throw new ResponseException('新密码与确认密码不一致'); } if (!$this->organizationRepository->save(['password'=>bcrypt($pwd)], $user->id)) { return false; } return true; } public function authEmail($user) { return $this->organizationRepository->getOrganizationColumn($user->id, ['email', 'email_audit']); } public function checkEmailAudit($id, $email) { return $this->organizationRepository->findByField(['id'=>$id, 'email'=>$email, 'email_audit'=>1]); } public function sendAuthEmailHook($newEmail, $company) { Cache::put($newEmail, $company, 24*60); } }