| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305 | 
							- <?php
 
- namespace App\Models;
 
- use App\Search\Traits\ResumeSearchable;
 
- use Illuminate\Database\Eloquent\SoftDeletes;
 
- use Illuminate\Database\Eloquent\Model;
 
- /**
 
-  * App\Models\Resume
 
-  *
 
-  * @property int $id
 
-  * @property int $uid 会员uid
 
-  * @property int|null $display 是否显示(1:显示 0:不显示)
 
-  * @property int $display_name 简历名称(1:显示 0:不显示)
 
-  * @property int|null $audit 简历审核(0:审核不通过 1:待审核 2:审核通过)
 
-  * @property string|null $remark 审核备注
 
-  * @property int|null $stick 是否置顶(0:否 1:是)
 
-  * @property int|null $strong_tag 醒目标签
 
-  * @property string $title 简历标题
 
-  * @property string $fullname 真实姓名
 
-  * @property int $sex 性别(1:男 2:女)
 
-  * @property string $sex_cn 性别
 
-  * @property int|null $nature 工作性质id
 
-  * @property string|null $nature_cn 工作性质
 
-  * @property string|null $trade 行业id
 
-  * @property string|null $trade_cn 行业
 
-  * @property int $birthdate 生日
 
-  * @property string|null $residence 现居住地
 
-  * @property int|null $height 身高(cm)
 
-  * @property int|null $marriage 婚否(1:已婚 2:未婚)
 
-  * @property string|null $marriage_cn 婚否
 
-  * @property int $experience 工作经验id
 
-  * @property string $experience_cn 工作经验
 
-  * @property string $district 地区ID
 
-  * @property string $district_cn 地区
 
-  * @property int $wage 期望薪资id
 
-  * @property string $wage_cn 期望薪资
 
-  * @property string|null $householdaddress 户口所在地
 
-  * @property int $education 学历id
 
-  * @property string $education_cn 学历
 
-  * @property int|null $major 专业id
 
-  * @property string|null $major_cn 专业
 
-  * @property int|null $tag 简历标签编号
 
-  * @property string|null $tag_cn 简历标签
 
-  * @property int $telephone 手机号码
 
-  * @property string $email 邮箱
 
-  * @property int|null $email_notify 邮件接收通知(1:接收 0:不接受)
 
-  * @property string $intention_jobs_id 期望职位id
 
-  * @property string $intention_jobs 期望职位
 
-  * @property string|null $specialty 自我描述
 
-  * @property int|null $photo 是否为照片简历(0:否 1:是)
 
-  * @property string|null $photo_img 照片
 
-  * @property int|null $photo_audit 照片审核(0:审核失败,1:待审核 2:审核成功)
 
-  * @property int|null $photo_display 是否显示照片(1:显示 0:不显示)
 
-  * @property string|null $qq QQ
 
-  * @property string|null $weixin 微信
 
-  * @property int|null $subsite_id 站点
 
-  * @property int|null $stime 置顶时间
 
-  * @property int|null $entrust 简历委托(天)
 
-  * @property string|null $talent 高级人才(0:否 1:是)
 
-  * @property int $level 简历等级(1:优,2:良 0:差)
 
-  * @property int $complete_percent 简历完整度
 
-  * @property int|null $current 求职状态编号
 
-  * @property string|null $current_cn 求职状态
 
-  * @property string|null $word_resume word简历
 
-  * @property string|null $word_resume_title word简历标题
 
-  * @property int|null $word_resume_addtime word简历添加时间
 
-  * @property string|null $key_full 全文搜索关键字
 
-  * @property string|null $key_precise 精确搜索关键字
 
-  * @property int|null $click 查看次数
 
-  * @property string|null $tpl 简历模板
 
-  * @property int|null $resume_from_pc 简历来自PC(1->是 0->否)
 
-  * @property int|null $def 是否为默认简历(1:是 0:否)
 
-  * @property int|null $mobile_audit 手机是否认证(1:是 0:否)
 
-  * @property string|null $comment_content 简历评论内容
 
-  * @property int|null $is_quick 快速创建简历(0:否 1:是)
 
-  * @property string|null $idcard 身份证
 
-  * @property \Illuminate\Support\Carbon|null $created_at
 
-  * @property \Illuminate\Support\Carbon|null $updated_at
 
-  * @property-read \App\Models\Member $members
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume newModelQuery()
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume newQuery()
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume query()
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereAudit($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereBirthdate($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereClick($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereCommentContent($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereCompletePercent($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereCreatedAt($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereCurrent($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereCurrentCn($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereDef($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereDisplay($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereDisplayName($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereDistrict($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereDistrictCn($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereEducation($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereEducationCn($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereEmail($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereEmailNotify($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereEntrust($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereExperience($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereExperienceCn($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereFullname($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereHeight($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereHouseholdaddress($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereId($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereIdcard($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereIntentionJobs($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereIntentionJobsId($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereIsQuick($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereKeyFull($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereKeyPrecise($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereLevel($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereMajor($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereMajorCn($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereMarriage($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereMarriageCn($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereMobileAudit($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereNature($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereNatureCn($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume wherePhoto($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume wherePhotoAudit($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume wherePhotoDisplay($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume wherePhotoImg($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereQq($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereRemark($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereResidence($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereResumeFromPc($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereSex($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereSexCn($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereSpecialty($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereStick($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereStime($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereStrongTag($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereSubsiteId($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereTag($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereTagCn($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereTalent($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereTelephone($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereTitle($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereTpl($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereTrade($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereTradeCn($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereUid($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereUpdatedAt($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereWage($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereWageCn($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereWeixin($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereWordResume($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereWordResumeAddtime($value)
 
-  * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Resume whereWordResumeTitle($value)
 
-  * @mixin \Eloquent
 
-  */
 
- class Resume extends Model
 
- {
 
-     use SoftDeletes, ResumeSearchable;
 
-     protected $guarded = [];
 
-     public function members()
 
-     {
 
-         return $this->belongsTo(Member::class, 'uid');
 
-     }
 
-     public function memberInfos()
 
-     {
 
-         return $this->belongsTo(MemberInfo::class, 'uid', 'uid');
 
-     }
 
-     public function resumeEntrusts()
 
-     {
 
-         return $this->hasOne(ResumeEntrust::class, 'resume_id', 'id');
 
-     }
 
-     public function companys()
 
-     {
 
-         return $this->belongsToMany(Company::class, 'company_favorites', 'resume_id', 'company_id')->withTimestamps();
 
-     }
 
-     public function resumeEducation()
 
-     {
 
-         return $this->hasMany(ResumeEducation::class, 'resume_id');
 
-     }
 
-     public function resumeWork()
 
-     {
 
-         return $this->hasMany(ResumeWork::class, 'resume_id');
 
-     }
 
-     public function resumeTrain()
 
-     {
 
-         return $this->hasMany(ResumeTrain::class, 'resume_id');
 
-     }
 
-     public function resumeCredent()
 
-     {
 
-         return $this->hasMany(ResumeCredent::class, 'resume_id');
 
-     }
 
-     public function resumeLanguage()
 
-     {
 
-         return $this->hasMany(ResumeLanguage::class, 'resume_id');
 
-     }
 
-     public function resumeImgs()
 
-     {
 
-         return $this->hasMany(ResumeImg::class, 'resume_id','id');
 
-     }
 
-     public function personTag()
 
-     {
 
-         return $this->hasOne(PersonalServiceTagLog::class, 'resume_id')->where('endtime', '>', time());
 
-     }
 
-     public function subsites()
 
-     {
 
-         return $this->belongsToMany(Subsite::class, 'subsite_resumes', 'resume_id', 'subsite_id');
 
-     }
 
-     public function subsiteResume()
 
-     {
 
-         return $this->hasMany(SubsiteResume::class, 'resume_id', 'id');
 
-     }
 
-     public function subsite()
 
-     {
 
-         return $this->belongsTo(Subsite::class,'subsite_id','id');
 
-     }
 
-     public function toSearchableArray()
 
-     {
 
-         $resume=$this->load([
 
-             'memberInfos',
 
-             'resumeEducation',
 
-             'resumeWork',
 
-             'resumeTrain',
 
-             'resumeCredent',
 
-             'resumeLanguage',
 
-             'subsiteResume',
 
-         ])->toArray();
 
-         $resume['stick']=$resume['stick']?$resume['stick']:0;
 
-         $resume['stime']=$resume['stime']?$resume['stime']:0;
 
-         $resume['mobile_audit']=$this->members->mobile_audit;
 
-         $resume['photo']=$this->memberInfos->photo;
 
-         $resume['photo_audit']=$this->memberInfos->photo_audit;
 
-         $resume['trade']=string_to_array(',', $resume['trade']);
 
-         $resume['trade_cn']=string_to_array('+', $resume['trade_cn']);
 
-         $resume['district']=string_to_array(['.',','], $resume['district']);
 
-         $new_dis = [];
 
-         foreach ($resume['district'] as $key => $val) {
 
-             if ($val==0 && $key != 1&&$key != 4 &&$key != 7) {
 
-                 $new = CategoryDistrict::where('parent_id', $resume['district'][$key-2])->pluck('id')->toArray();
 
-                 foreach ($new as $key2) {
 
-                     $new_dis[] = $key2;
 
-                 }
 
-                 unset($resume['district'][$key]);
 
-             }
 
-         }
 
-         $resume['district'] = array_merge($resume['district'], $new_dis);
 
-         $resume['district_cn']=string_to_array('+', $resume['district_cn']);
 
-         $resume['tag']=string_to_array(',', $resume['tag']);
 
-         $resume['tag_cn']=string_to_array(',', $resume['tag_cn']);
 
-         $resume['intention_jobs_id']=string_to_array(['.',','], $resume['intention_jobs_id']);
 
-         $new_jobs = [];
 
-         foreach ($resume['intention_jobs_id'] as $key => $val) {
 
-             if ($val==0) {
 
-                 $new = CategoryJobs::where('parent_id', $resume['intention_jobs_id'][$key-1])->pluck('id')->toArray();
 
-                 foreach ($new as $key2) {
 
-                     $new_jobs[] = $key2;
 
-                 }
 
-                 unset($resume['intention_jobs_id'][$key]);
 
-             }
 
-         }
 
-         $resume['intention_jobs_id'] = array_merge($resume['intention_jobs_id'], $new_jobs);
 
-         $resume['intention_jobs']=string_to_array('+', $resume['intention_jobs']);
 
-         $resume['member_infos']['residence']=string_to_array('.', $resume['member_infos']['residence']);
 
-         $resume['member_infos']['residence_cn']=string_to_array('-', $resume['member_infos']['residence_cn']);
 
-         $resume['member_infos']['householdaddress']=string_to_array('.', $resume['member_infos']['householdaddress']);
 
-         $resume['member_infos']['householdaddress_cn']=string_to_array('-', $resume['member_infos']['householdaddress_cn']);
 
-         $resume['person_shield_companys']=PersonShieldCompany::where('uid', $resume['uid'])->pluck('company_id')->toArray();
 
-         $resume['subsite_ids'] =  array_column($resume['subsite_resume'], 'subsite_id');
 
-         return $resume;
 
-     }
 
-     public function getResumeAllInfo()
 
-     {
 
-         return $this->load([
 
-             'memberInfos',
 
-             'resumeEducation',
 
-             'resumeWork',
 
-             'resumeTrain',
 
-             'resumeCredent',
 
-             'resumeLanguage',
 
-             'subsiteResume',
 
-         ]);
 
-     }
 
-     static function getTableName()
 
-     {
 
-         $obj = new Resume();
 
-         return $obj->getTable();
 
-     }
 
- }
 
 
  |