From 1a8aea45ebb1582c9f65d9e8dcd520002f83ae12 Mon Sep 17 00:00:00 2001 From: chengkun <chengkun@ishangstudy.com> Date: Thu, 22 May 2025 11:06:33 +0800 Subject: [PATCH] 提交 --- app/model/resume.model.php | 11577 ++++++++++++++++++++++++++++++----------------------------- 1 files changed, 5,825 insertions(+), 5,752 deletions(-) diff --git a/app/model/resume.model.php b/app/model/resume.model.php index dd03b32..830313a 100644 --- a/app/model/resume.model.php +++ b/app/model/resume.model.php @@ -1,186 +1,191 @@ <?php -class resume_model extends model{ +class resume_model extends model { public $resume_state_arr = array( - '0'=>'未审核', - '1'=>'已审核', - '2'=>'被举报', - '3'=>'未通过' - ); + '0' => '未审核', + '1' => '已审核', + '2' => '被举报', + '3' => '未通过' + ); public $resume_status_arr = array( - '1'=>'公开', - '2'=>'隐藏', - '3'=>'仅投递企业可见' - ); + '1' => '公开', + '2' => '隐藏', + '3' => '仅投递企业可见' + ); public $resume_rstatus_arr = array( - '0'=>'未审核', - '1'=>'已审核', - '2'=>'账户被锁定', - '3'=>'未通过' - ); - /* 查询数量 */ - function getResumeNum($Where=array()){ - return $this->select_num('resume',$Where); - } - /* 查询简历数 */ - function getExpectNum($Where=array()){ - return $this->select_num('resume_expect',$Where); - } - /** - * 通过uid查询单条简历。有默认简历返回默认简历;没有默认简历,返回最近更新的简历 - */ - function getExpectByUid($uid = '', $data = array()){ + '0' => '未审核', + '1' => '已审核', + '2' => '账户被锁定', + '3' => '未通过' + ); + + /* 查询数量 */ + function getResumeNum($Where = array()) { + return $this->select_num('resume', $Where); + } + + /* 查询简历数 */ + function getExpectNum($Where = array()) { + return $this->select_num('resume_expect', $Where); + } + + /** + * 通过uid查询单条简历。有默认简历返回默认简历;没有默认简历,返回最近更新的简历 + */ + function getExpectByUid($uid = '', $data = array()) { - $expect = $this->getExpect(array('uid'=>$uid,'defaults'=>1), $data); + $expect = $this->getExpect(array('uid' => $uid, 'defaults' => 1), $data); - if (empty($expect)){ + if (empty($expect)) { - $expect = $this->getExpect(array('uid'=>$uid,'orderby'=>'`id`'), $data); + $expect = $this->getExpect(array('uid' => $uid, 'orderby' => '`id`'), $data); } return $expect; } - private function addErrorLog($uid,$type='',$content) { - - require_once ('errlog.model.php'); - + + private function addErrorLog($uid, $type = '', $content) { + + require_once('errlog.model.php'); + $ErrlogM = new errlog_model($this->db, $this->def); - - return $ErrlogM -> addErrorLog($uid, $type, $content); - + + return $ErrlogM->addErrorLog($uid, $type, $content); + } - - /** + + /** * @desc 引用log类,添加用户日志 */ - private function addMemberLog($uid,$usertype,$content,$opera='',$type='') { - require_once ('log.model.php'); + private function addMemberLog($uid, $usertype, $content, $opera = '', $type = '') { + require_once('log.model.php'); $LogM = new log_model($this->db, $this->def); - return $LogM -> addMemberLog($uid,$usertype,$content,$opera,$type); + return $LogM->addMemberLog($uid, $usertype, $content, $opera, $type); } - /** - * 批量查个人基本信息 - * @param array $whereData - * @param string $field - */ - function getResumeList($whereData, $data = array('field' => null, 'utype'=>null)){ - $field = $data['field'] ? $data['field'] : '*'; - - $List = $this->select_all('resume', $whereData, $field); - $cache = $this->getClass(array('user')); + + /** + * 批量查个人基本信息 + * @param array $whereData + * @param string $field + */ + function getResumeList($whereData, $data = array('field' => null, 'utype' => null)) { + $field = $data['field'] ? $data['field'] : '*'; + + $List = $this->select_all('resume', $whereData, $field); + $cache = $this->getClass(array('user')); //所获列表数据是否要对下载后的简历信息处理 - $downuids = array(); - - if(!empty($data['downresume_where'])){ - - $dresume = $this -> select_all('down_resume',$data['downresume_where'],'`uid`'); - - foreach($dresume as $dv){ - - $downuids[] = $dv['uid']; - } - } - - foreach ($List as $k => $v) { - - $photoArr = array('photo' => $v['photo'],'defphoto' => $v['defphoto'], 'phototype'=> $v['phototype'], 'photo_status' => $v['photo_status'], 'sex' => $v['sex']); + $downuids = array(); + + if (!empty($data['downresume_where'])) { - if($v['photo']){ - $List[$k]['photo_o'] = $v['photo']; + $dresume = $this->select_all('down_resume', $data['downresume_where'], '`uid`'); + + foreach ($dresume as $dv) { + + $downuids[] = $dv['uid']; + } + } + + foreach ($List as $k => $v) { + + $photoArr = array('photo' => $v['photo'], 'defphoto' => $v['defphoto'], 'phototype' => $v['phototype'], 'photo_status' => $v['photo_status'], 'sex' => $v['sex']); + + if ($v['photo']) { + $List[$k]['photo_o'] = $v['photo']; } - if ($data['utype'] == 'admin'){ - - $List[$k]['photo'] = checkpic($v['photo']); - }else{ - - $List[$k]['photo'] = $this -> setResumePhotoShow($photoArr); + if ($data['utype'] == 'admin') { + + $List[$k]['photo'] = checkpic($v['photo']); + } else { + + $List[$k]['photo'] = $this->setResumePhotoShow($photoArr); } //已下载过的简历呈现给商家时为原名 - if(!empty($data['downresume_where']) && !empty($downuids) && in_array($v['uid'], $downuids)){ - - $List[$k]['name_n'] = $v['name']; - - }else{ - $nameArr = array('nametype' => $v['nametype'], 'name' => $v['name'], 'eid' => $v['def_job'], 'sex' => $v['sex']); - - $List[$k]['name_n'] = $this -> setUsernameShow($nameArr); + if (!empty($data['downresume_where']) && !empty($downuids) && in_array($v['uid'], $downuids)) { + + $List[$k]['name_n'] = $v['name']; + + } else { + $nameArr = array('nametype' => $v['nametype'], 'name' => $v['name'], 'eid' => $v['def_job'], 'sex' => $v['sex']); + + $List[$k]['name_n'] = $this->setUsernameShow($nameArr); } - - $List[$k]['username_n'] = $v['name']; - + + $List[$k]['username_n'] = $v['name']; + unset($List[$k]['name']); - + if ($v['marriage']) { - $List[$k]['marriage_n'] = $cache['userclass_name'][$v['marriage']]; + $List[$k]['marriage_n'] = $cache['userclass_name'][$v['marriage']]; } if ($v['sex']) { - $List[$k]['sex_n'] = $cache['user_sex'][$v['sex']]; + $List[$k]['sex_n'] = $cache['user_sex'][$v['sex']]; } if ($v['edu']) { - $List[$k]['edu_n'] = $cache['userclass_name'][$v['edu']]; + $List[$k]['edu_n'] = $cache['userclass_name'][$v['edu']]; } if ($v['exp']) { - $List[$k]['exp_n'] = $cache['userclass_name'][$v['exp']]; + $List[$k]['exp_n'] = $cache['userclass_name'][$v['exp']]; } if ($v['birthday']) { - $List[$k]['age_n'] = date('Y') - date('Y',strtotime($v['birthday'])); + $List[$k]['age_n'] = date('Y') - date('Y', strtotime($v['birthday'])); } if ($v['idcard_pic']) { - $List[$k]['idcard_pic'] = checkpic($v['idcard_pic']); + $List[$k]['idcard_pic'] = checkpic($v['idcard_pic']); } if ($v['tag']) { - $List[$k]['tag_arr'] = @explode(',',$v['tag']); + $List[$k]['tag_arr'] = @explode(',', $v['tag']); } - $List[$k]['email_status_n'] = $v['email_status']; - $List[$k]['moblie_status'] = $v['moblie_status']; - $List[$k]['idcard_status'] = $v['idcard_status']; - $List[$k]['idcard'] = $v['idcard']; - + $List[$k]['email_status_n'] = $v['email_status']; + $List[$k]['moblie_status'] = $v['moblie_status']; + $List[$k]['idcard_status'] = $v['idcard_status']; + $List[$k]['idcard'] = $v['idcard']; + } - if ($data['utype']=='admin') { - - $List = $this->getDataUserList($List); - + if ($data['utype'] == 'admin') { + + $List = $this->getDataUserList($List); + } return $List; } - + /** * @desc 获取resume_expect 列表,简单的查询返回,复杂的,访问getList方法 * * @param $whereData 查询条件 - * @param array $data 自定义处理数组 + * @param array $data 自定义处理数组 * @return array|bool|false|string|void */ - public function getSimpleList($whereData, $data = array()) - { - - $data['field'] = empty($data['field']) ? '*' : $data['field']; - $List = $this->select_all('resume_expect', $whereData, $data['field']); + public function getSimpleList($whereData, $data = array()) { + + $data['field'] = empty($data['field']) ? '*' : $data['field']; + $List = $this->select_all('resume_expect', $whereData, $data['field']); foreach ($List as $k => $v) { - - $List[$k]['lastupdate'] = date('Y-m-d H:i:s', $v['lastupdate']); + + $List[$k]['lastupdate'] = date('Y-m-d H:i:s', $v['lastupdate']); } - + return $List; } + //搜索筛选-简历列表 - public function searchList($data){ - - $uid = $data['uid']; - $usertype = $data['usertype']; + public function searchList($data) { + + $uid = $data['uid']; + $usertype = $data['usertype']; unset($data['uid']); unset($data['usertype']); - $_POST = $data; - $where = "a.`state`=1 AND a.`r_status`=1 AND a.`defaults`=1 AND a.`status`=1"; - - $page = $_POST['page']; - $limit = $_POST['limit']; - $time = time(); - $CacheArr = $this -> getClass(array('user','city')); - if($_POST['exp']){ + $_POST = $data; + $where = "a.`state`=1 AND a.`r_status`=1 AND a.`defaults`=1 AND a.`status`=1"; + + $page = $_POST['page']; + $limit = $_POST['limit']; + $time = time(); + $CacheArr = $this->getClass(array('user', 'city')); + if ($_POST['exp']) { $expArr = $CacheArr['userdata']['user_word']; $expIds = []; foreach ($expArr as $key => $value) { @@ -191,16 +196,16 @@ } sort($expIds); if ($expIds) { - $where .= " AND a.`exp` in (".implode(",",$expIds).")"; + $where .= " AND a.`exp` in (" . implode(",", $expIds) . ")"; } } - - + + //性别 - if($_POST['sex']){ - $where .= " AND a.`sex`='".$_POST['sex']."'"; + if ($_POST['sex']) { + $where .= " AND a.`sex`='" . $_POST['sex'] . "'"; } - if($_POST['edu']){ + if ($_POST['edu']) { $eduArr = $CacheArr['userdata']['user_edu']; $eduIds = []; foreach ($eduArr as $key => $value) { @@ -211,819 +216,817 @@ } sort($eduIds); if ($eduIds) { - $where .= " AND a.`edu` in (".implode(",", $eduIds).")"; + $where .= " AND a.`edu` in (" . implode(",", $eduIds) . ")"; } } - if($_POST['type']){ - $where .= " AND a.`type`='".$_POST['type']."'"; + if ($_POST['type']) { + $where .= " AND a.`type`='" . $_POST['type'] . "'"; } - if($_POST['report']){ - $where .= " AND a.`report`='".$_POST['report']."'"; + if ($_POST['report']) { + $where .= " AND a.`report`='" . $_POST['report'] . "'"; } - if($_POST['rec_resume']){ - $where .= " AND a.`rec_resume`=1"; + if ($_POST['rec_resume']) { + $where .= " AND a.`rec_resume`=1"; } - if($_POST['integrity']){ - - include(CONFIG_PATH.'db.data.php'); - - $integrity_val = $arr_data['integrity_val']; + if ($_POST['integrity']) { - $integrity = $integrity_val[$_POST['integrity']]; - - $where .= " AND a.`integrity`>='".$integrity."'"; + include(CONFIG_PATH . 'db.data.php'); + + $integrity_val = $arr_data['integrity_val']; + + $integrity = $integrity_val[$_POST['integrity']]; + + $where .= " AND a.`integrity`>='" . $integrity . "'"; } - if($_POST['tag']){ - $tagname=$CacheArr['userclass_name'][$_POST['tag']]; - $rwhere['def_job'] = array('>',0); - $rwhere['r_status'] = 1; - $rwhere['status'] = 1; - $rwhere['tag'] = array('findin',$tagname); - $tag = $this->select_all("resume",$rwhere,"`def_job`"); - if(is_array($tag)){ - foreach($tag as $v){ - $tagid[]=$v['def_job']; + if ($_POST['tag']) { + $tagname = $CacheArr['userclass_name'][$_POST['tag']]; + $rwhere['def_job'] = array('>', 0); + $rwhere['r_status'] = 1; + $rwhere['status'] = 1; + $rwhere['tag'] = array('findin', $tagname); + $tag = $this->select_all("resume", $rwhere, "`def_job`"); + if (is_array($tag)) { + foreach ($tag as $v) { + $tagid[] = $v['def_job']; } } - $where .= " AND a.`id` in (".pylode(",",$tagid).")"; + $where .= " AND a.`id` in (" . pylode(",", $tagid) . ")"; } - if($_POST['uptime']){ - if($_POST['uptime']==1){ - $beginToday = strtotime(date('Y-m-d 00:00:00')); - $where .= " AND a.`lastupdate`>$beginToday"; - }else{ - $uptime = time()-($_POST['uptime']*86400); - $where .= " AND a.`lastupdate`>$uptime"; + if ($_POST['uptime']) { + if ($_POST['uptime'] == 1) { + $beginToday = strtotime(date('Y-m-d 00:00:00')); + $where .= " AND a.`lastupdate`>$beginToday"; + } else { + $uptime = time() - ($_POST['uptime'] * 86400); + $where .= " AND a.`lastupdate`>$uptime"; } - }else{ - if($this->config['sy_datacycle']>0){ + } else { + if ($this->config['sy_datacycle'] > 0) { // 后台-页面设置-数据周期 - $uptime = strtotime('-'.$this->config['sy_datacycle'].' day'); - $where.=" AND a.`lastupdate`>$uptime"; + $uptime = strtotime('-' . $this->config['sy_datacycle'] . ' day'); + $where .= " AND a.`lastupdate`>$uptime"; } } - + $cjwhere = '1'; $job_col = $city_col = ''; - if($_POST['three_cityid']){ + if ($_POST['three_cityid']) { $city_col = "three_cityid"; $cjwhere .= " AND `$city_col`= $_POST[three_cityid]"; - }elseif($_POST['cityid']){ + } elseif ($_POST['cityid']) { $city_col = "cityid"; $cjwhere .= " AND `$city_col`= $_POST[cityid]"; - }elseif($_POST['provinceid']){ + } elseif ($_POST['provinceid']) { $city_col = "provinceid"; $cjwhere .= " AND `$city_col`= $_POST[provinceid]"; } - if($_POST['job_post']){ + if ($_POST['job_post']) { $job_col = "job_post"; $cjwhere .= " AND `$job_col`= $_POST[job_post]"; - }elseif($_POST['job1_son']){ + } elseif ($_POST['job1_son']) { $job_col = "job1_son"; $cjwhere .= " AND `$job_col`= $_POST[job1_son]"; - }elseif($_POST['job1']){ + } elseif ($_POST['job1']) { $job_col = "job1"; $cjwhere .= " AND `$job_col`= $_POST[job1]"; } - if ($_POST['keyword']){ - $keyword = $_POST['keyword']; - $where1[] = "a.`name` LIKE '%$keyword%'"; - $where1[] = "a.`uname` LIKE '%$keyword%'"; - $cityid = array(); - foreach($CacheArr['city_name'] as $k=>$v){ - if(strpos($v,$keyword)!==false){ - $cityid[] = $k; + if ($_POST['keyword']) { + $keyword = $_POST['keyword']; + $where1[] = "a.`name` LIKE '%$keyword%'"; + $where1[] = "a.`uname` LIKE '%$keyword%'"; + $cityid = array(); + foreach ($CacheArr['city_name'] as $k => $v) { + if (strpos($v, $keyword) !== false) { + $cityid[] = $k; } } //只取匹配到的第一个城市,已选省则匹配省下面的城市、未选择城市则按关键字匹配城市 - if(!empty($cityid)){ - - $ckwhere['PHPYUNBTWSTART_A'] = ''; - $ckwhere['cityid'] = array('in',pylode(',',$cityid),'OR'); - $ckwhere['three_cityid'] = array('in',pylode(',',$cityid),'OR'); - $ckwhere['PHPYUNBTWEND_A'] = ''; - - $cityresume = $this->select_all("resume_cityclass",$ckwhere); - if($cityresume){ - $rc = array(); - foreach ($cityresume as $v){ - $rc[] = $v['eid']; - } - $where1[] = 'a.`id` IN ('.pylode(',', $rc).')'; - } - } - //搜索工作经历 - $workList = $this->select_all('resume_work', array('title'=>array('like',$keyword), 'content'=>array('like',$keyword, 'OR'),'orderby'=>'id', 'limit'=>500), 'eid'); - if(!empty($workList)){ - $workId = array(); - foreach($workList as $v){ - $workId[] = $v['eid']; - } - $where1[] = 'a.`id` IN ('.pylode(',', $workId).')'; - } - $where .= " AND (".@implode(" or ",$where1).")"; - } - - if(!empty($_POST['zdids'])){ - $where .= " AND a.`id` not in (".pylode(',',$_POST['zdids']).")"; + if (!empty($cityid)) { + + $ckwhere['PHPYUNBTWSTART_A'] = ''; + $ckwhere['cityid'] = array('in', pylode(',', $cityid), 'OR'); + $ckwhere['three_cityid'] = array('in', pylode(',', $cityid), 'OR'); + $ckwhere['PHPYUNBTWEND_A'] = ''; + + $cityresume = $this->select_all("resume_cityclass", $ckwhere); + if ($cityresume) { + $rc = array(); + foreach ($cityresume as $v) { + $rc[] = $v['eid']; + } + $where1[] = 'a.`id` IN (' . pylode(',', $rc) . ')'; + } + } + //搜索工作经历 + $workList = $this->select_all('resume_work', array('title' => array('like', $keyword), 'content' => array('like', $keyword, 'OR'), 'orderby' => 'id', 'limit' => 500), 'eid'); + if (!empty($workList)) { + $workId = array(); + foreach ($workList as $v) { + $workId[] = $v['eid']; + } + $where1[] = 'a.`id` IN (' . pylode(',', $workId) . ')'; + } + $where .= " AND (" . @implode(" or ", $where1) . ")"; } - $order = " order by a.`lastupdate` desc"; - if($page){//分页 - $pagenav = ($page-1)*$limit; - $resumelimit=" limit $pagenav,$limit"; - }else{ - $resumelimit=" limit $limit"; + if (!empty($_POST['zdids'])) { + $where .= " AND a.`id` not in (" . pylode(',', $_POST['zdids']) . ")"; + } + + $order = " order by a.`lastupdate` desc"; + if ($page) {//分页 + $pagenav = ($page - 1) * $limit; + $resumelimit = " limit $pagenav,$limit"; + } else { + $resumelimit = " limit $limit"; } // 拼接唯一标识字段 - if($city_col || $job_col){ - if($city_col && $job_col){ + if ($city_col || $job_col) { + if ($city_col && $job_col) { $cjwhere .= " AND `{$city_col}_{$job_col}_num`= 1"; - }elseif($city_col){ + } elseif ($city_col) { $cjwhere .= " AND `{$city_col}_num`= 1"; - }elseif($job_col){ + } elseif ($job_col) { $cjwhere .= " AND `{$job_col}_num`= 1"; } } - $pagewhere = ""; - $joinwhere = ""; - if($cjwhere != '1'){ - $pagewhere .= " ,(select `eid` from `".$this->def."resume_city_job_class` where ".$cjwhere." group by `eid`) cj"; - $joinwhere .= " a.`id`=cj.`eid` and "; + $pagewhere = ""; + $joinwhere = ""; + if ($cjwhere != '1') { + $pagewhere .= " ,(select `eid` from `" . $this->def . "resume_city_job_class` where " . $cjwhere . " group by `eid`) cj"; + $joinwhere .= " a.`id`=cj.`eid` and "; } - $select = "a.`id`,a.`uid`,a.`name`,a.`hy`,a.`job_classid`,a.`city_classid`,a.`jobstatus`,a.`type`,a.`photo`,a.`report`,a.`lastupdate`,a.`rec`,a.`top`,a.`topdate`,a.`rec_resume`,a.`ctime`,a.`uname`,a.`idcard_status`,a.`minsalary`,a.`maxsalary`,a.`topdate`"; - if($pagewhere!=""){ - $sql = "select ".$select." from `".$this->def."resume_expect` a ".$pagewhere." where ".$joinwhere.$where.$order.$resumelimit; - }else{ - $sql = "select ".$select." from `".$this->def."resume_expect` a where ".$where.$order.$resumelimit; + $select = "a.`id`,a.`uid`,a.`name`,a.`hy`,a.`job_classid`,a.`city_classid`,a.`jobstatus`,a.`type`,a.`photo`,a.`report`,a.`lastupdate`,a.`rec`,a.`top`,a.`topdate`,a.`rec_resume`,a.`ctime`,a.`uname`,a.`idcard_status`,a.`minsalary`,a.`maxsalary`,a.`topdate`"; + if ($pagewhere != "") { + $sql = "select " . $select . " from `" . $this->def . "resume_expect` a " . $pagewhere . " where " . $joinwhere . $where . $order . $resumelimit; + } else { + $sql = "select " . $select . " from `" . $this->def . "resume_expect` a where " . $where . $order . $resumelimit; } - - $rows = $this->DB_query_all($sql,'all'); - if($rows&&is_array($rows)){ - if ($page==1){ - $zdids = array(); - $where .= ' AND a.`top`=1 AND a.`topdate`>"'.$time.'"'; - if($pagewhere!=""){ - $sql = "select ".$select." from `".$this->def."resume_expect` a ".$pagewhere." where ".$joinwhere.$where.' ORDER BY rand() limit 5'; - }else{ - $sql = "select ".$select." from `".$this->def."resume_expect` a where ".$where.' ORDER BY rand() limit 5'; + + $rows = $this->DB_query_all($sql, 'all'); + if ($rows && is_array($rows)) { + if ($page == 1) { + $zdids = array(); + $where .= ' AND a.`top`=1 AND a.`topdate`>"' . $time . '"'; + if ($pagewhere != "") { + $sql = "select " . $select . " from `" . $this->def . "resume_expect` a " . $pagewhere . " where " . $joinwhere . $where . ' ORDER BY rand() limit 5'; + } else { + $sql = "select " . $select . " from `" . $this->def . "resume_expect` a where " . $where . ' ORDER BY rand() limit 5'; } - $topresume = $this->DB_query_all($sql,'all'); - if ($topresume){ - foreach($rows as $k=>$v){ - foreach ($topresume as $val){ - if($v['id']==$val['id']){ + $topresume = $this->DB_query_all($sql, 'all'); + if ($topresume) { + foreach ($rows as $k => $v) { + foreach ($topresume as $val) { + if ($v['id'] == $val['id']) { unset($rows[$k]); } } } - foreach ($topresume as $v){ - $zdids[] = $v['id']; - array_unshift($rows,$v); + foreach ($topresume as $v) { + $zdids[] = $v['id']; + array_unshift($rows, $v); } } } } - $data['row']=$rows; - $data['zdids']=$zdids; + $data['row'] = $rows; + $data['zdids'] = $zdids; return $data; } - /** - * 简历列表 - * @param array $whereData - * @param array $data field:查询字段; - 'utype':列表显示位置,不同的位置可能有不同的需求 ; - 'cache':页面需要传回缓存 多条数据查询合并, - withResumeFiled:联合resume表 多条数据查询合并时查询resume表的字段 - downresume_where:在联合resume表查询时,查询down_resume表的条件 - search:列表搜索的post值,主要用于列表搜索筛选 - - */ - public function getList($whereData,$data=array('utype'=>'')){ - - $ListNew = array(); - - $field = $data['field'] ? $data['field'] : '*'; - - if(!empty($data['search'])){ - - $rdata = $this -> searchList($data['search']); - $List = $rdata['row']; - $zdids = $rdata['zdids']; - }elseif(!empty($data['sql'])){ - $List = $this->DB_query_all($data['sql'], 'all'); - }else{ - $List = $this -> select_all('resume_expect',$whereData,$field); - } - - if(!empty($List)){ - //真正的列表查询,需要处理列表数据,一般的简单查询,不需要处理 - $time = time(); - $cache = $this -> getClass(array('user','city','hy','job')); - - foreach($List as $k=>$v){ - - $euids[] = $v['uid']; - - $List[$k]['age_n'] = date('Y') - date('Y',strtotime($v['birthday'])); - - $List[$k]['hy_n'] = $cache['industry_name'][$v['hy']] ? $cache['industry_name'][$v['hy']] : '不限'; - - $List[$k]['sex_n'] = $cache['user_sex'][$v['sex']]; - - $List[$k]['edu_n'] = $cache['userclass_name'][$v['edu']]; - - $List[$k]['exp_n'] = $cache['userclass_name'][$v['exp']]; - - $List[$k]['report_n'] = $cache['userclass_name'][$v['report']]; - - $List[$k]['type_n'] = $cache['userclass_name'][$v['type']]; - if($v['lastupdate']){ - $ltime = $v['lastupdate']; - //今天开始时间戳 - $beginToday = strtotime('today'); - //昨天开始时间戳 - $beginYesterday = strtotime('yesterday'); - //一周内时间戳 - if($ltime>$beginYesterday && $ltime<$beginToday){ - - $List[$k]['lastupdate_n'] = "昨天"; - - }elseif($ltime>$beginToday){ - - $List[$k]['lastupdate_n'] = lastupdateStyle($ltime); - - }else{ - - $List[$k]['lastupdate_n'] = date("Y-m-d",$ltime); - } - } - if(isset($v['ctime'])){ - $todaystart = strtotime('today'); - $beforeYesterday = $todaystart - 86400 * 2; - if($v['ctime']>$beforeYesterday){ - $List[$k]['newtime'] = 1; - } - } - - //处理薪资 - if($v['minsalary'] && $v['maxsalary']){ - if($this ->config['resume_salarytype']==1){ - $List[$k]['salary'] = $v['minsalary'].'-'.$v['maxsalary'].'元'; - }else{ - if($v['maxsalary']<1000){ - if($this->config['resume_salarytype']==2){ - $List[$k]['salary'] = '1千以下'; - }elseif($this->config['resume_salarytype']==3){ - $List[$k]['salary'] = '1K以下'; - }elseif($this->config['resume_salarytype']==4){ - $List[$k]['salary'] = '1k以下'; - } - }else{ - $List[$k]['salary'] = changeSalary($v['minsalary']).'-'.changeSalary($v['maxsalary']); - } - } - }elseif ($v['minsalary']){ - if($this ->config['resume_salarytype']==1){ - $List[$k]['salary'] = $v['minsalary']; - }else{ - $List[$k]['salary'] = changeSalary($v['minsalary']); - } - }elseif ($v['maxsalary']){ - if($this ->config['resume_salarytype']==1){ - $List[$k]['salary'] = $v['maxsalary'].'元'; - }else{ - $List[$k]['salary'] = changeSalary($v['maxsalary']); - } - }else{ - - $List[$k]['salary'] = '面议'; - } - //处理职位类别id - if ($v['job_classid'] && $cache){ - - $job_classid = @explode(',',$v['job_classid']); - - if(is_array($job_classid)){ - - $jobclassid = array(); - $job_classname = array(); - - foreach($job_classid as $jv){ - - if($cache['job_name'][$jv]){ - - $jobclassid[] = $jv; - - $job_classname[] = $cache['job_name'][$jv]; - } - } - $List[$k]['job_classid'] = pylode(',',$jobclassid); - - $List[$k]['job_classname'] = @implode(',',$job_classname); - } - } - //处理城市类别id - if ($v['city_classid'] && $cache){ - - $city_classid = @explode(',',$v['city_classid']); - - if(is_array($city_classid)){ - - $cityclassid = array(); - $city_classname = array(); - - foreach($city_classid as $cv){ - - if($cache['city_name'][$cv]){ - - $cityclassid[] = $cv; - - $city_classname[] = $cache['city_name'][$cv]; - } - } - $List[$k]['city_classid'] = pylode(',',$cityclassid); - - $List[$k]['city_classname'] = @implode(' ',$city_classname); - } - } - //处理置顶天数 - if($v['topdate'] > $time){ - - $List[$k]['top_day'] = ceil(($v['topdate']-$time)/86400); - - }else{ - - $List[$k]['top_day'] = '0'; - } - - if (isset($v['photo'])){ - - $icon = $v['sex'] == 1 ? $this->config['sy_member_icon'] : $this->config['sy_member_iconv']; - - $List[$k]['photo_n'] = checkpic($v['photo'], $icon); - } - - if (isset($data['url'])){ - - $List[$k]['wapurl'] = Url('wap', array('c'=>'resume','a'=>'show','id'=>$v['id'])); - } - } - //后台处理简历多城市/用户名、审核状态 - if ($data['utype'] == 'admin'){ - - $List = $this -> getDataList($List,$cache); - } - //联合resume表 多条数据 查询合并 - if ($data['withResumeField']){ - - $resumelist = $this -> getResumeList( - - array('uid'=>array('in',pylode(',',$euids))), - - array( - 'field' => $data['withResumeField'], - 'downresume_where' => $data['downresume_where'] - ) - - ); - - foreach($List as $lk=>$lv){ - - foreach($resumelist as $rk=>$rv){ - - if($rv['uid']==$lv['uid']){ - - $List[$lk] = array_merge($lv,$rv); - - - } - } - } - - - } - - //网络招聘会大厅简历列表、浏览简历列表类查询个人姓名使用 - if ($data['utype'] == 'zphnet' || $data['utype'] == 'user'){ - - $List = $this -> getJlData($List); - } + + /** + * 简历列表 + * @param array $whereData + * @param array $data field:查询字段; + * 'utype':列表显示位置,不同的位置可能有不同的需求 ; + * 'cache':页面需要传回缓存 多条数据查询合并, + * withResumeFiled:联合resume表 多条数据查询合并时查询resume表的字段 + * downresume_where:在联合resume表查询时,查询down_resume表的条件 + * search:列表搜索的post值,主要用于列表搜索筛选 + */ + public function getList($whereData, $data = array('utype' => '')) { + + $ListNew = array(); + + $field = $data['field'] ? $data['field'] : '*'; + + if (!empty($data['search'])) { - if($data['workexp']){//学历与经验简化显示 - - $List = $this -> getWorkexpData($List); - - } - - $ListNew['list'] = $List; - //app简历列表返回第一页的置顶简历id数组集 - if(isset($zdids) && !empty($zdids)){ - $ListNew['zdids'] = $zdids; - } - - //需要缓存的 - if ($data['cache']){ - - $ListNew['cache'] = $cache; - } - } - return $ListNew; - } - - function getWorkexpData($List){ - - $cache = $this -> getClass(array('user')); - - $userclass_name = $cache['userclass_name']; - - $eids = array(); - - foreach ($List as $lv){ - - $eids[] = $lv['id']; - } - - if(!empty($eids)){ - - $eduList = $this-> select_all("resume_edu",array('eid'=>array('in',pylode(',',$eids)))); - $workList = $this-> select_all("resume_work",array('eid'=>array('in',pylode(',',$eids)))); + $rdata = $this->searchList($data['search']); + $List = $rdata['row']; + $zdids = $rdata['zdids']; + } elseif (!empty($data['sql'])) { + $List = $this->DB_query_all($data['sql'], 'all'); + } else { + $List = $this->select_all('resume_expect', $whereData, $field); } - if(!empty($eduList)){ - foreach($eduList as $key=>$value){ + if (!empty($List)) { + //真正的列表查询,需要处理列表数据,一般的简单查询,不需要处理 + $time = time(); + $cache = $this->getClass(array('user', 'city', 'hy', 'job')); + + foreach ($List as $k => $v) { + + $euids[] = $v['uid']; + + $List[$k]['age_n'] = date('Y') - date('Y', strtotime($v['birthday'])); + + $List[$k]['hy_n'] = $cache['industry_name'][$v['hy']] ? $cache['industry_name'][$v['hy']] : '不限'; + + $List[$k]['sex_n'] = $cache['user_sex'][$v['sex']]; + + $List[$k]['edu_n'] = $cache['userclass_name'][$v['edu']]; + + $List[$k]['exp_n'] = $cache['userclass_name'][$v['exp']]; + + $List[$k]['report_n'] = $cache['userclass_name'][$v['report']]; + + $List[$k]['type_n'] = $cache['userclass_name'][$v['type']]; + if ($v['lastupdate']) { + $ltime = $v['lastupdate']; + //今天开始时间戳 + $beginToday = strtotime('today'); + //昨天开始时间戳 + $beginYesterday = strtotime('yesterday'); + //一周内时间戳 + if ($ltime > $beginYesterday && $ltime < $beginToday) { + + $List[$k]['lastupdate_n'] = "昨天"; + + } elseif ($ltime > $beginToday) { + + $List[$k]['lastupdate_n'] = lastupdateStyle($ltime); + + } else { + + $List[$k]['lastupdate_n'] = date("Y-m-d", $ltime); + } + } + if (isset($v['ctime'])) { + $todaystart = strtotime('today'); + $beforeYesterday = $todaystart - 86400 * 2; + if ($v['ctime'] > $beforeYesterday) { + $List[$k]['newtime'] = 1; + } + } + + //处理薪资 + if ($v['minsalary'] && $v['maxsalary']) { + if ($this->config['resume_salarytype'] == 1) { + $List[$k]['salary'] = $v['minsalary'] . '-' . $v['maxsalary'] . '元'; + } else { + if ($v['maxsalary'] < 1000) { + if ($this->config['resume_salarytype'] == 2) { + $List[$k]['salary'] = '1千以下'; + } elseif ($this->config['resume_salarytype'] == 3) { + $List[$k]['salary'] = '1K以下'; + } elseif ($this->config['resume_salarytype'] == 4) { + $List[$k]['salary'] = '1k以下'; + } + } else { + $List[$k]['salary'] = changeSalary($v['minsalary']) . '-' . changeSalary($v['maxsalary']); + } + } + } elseif ($v['minsalary']) { + if ($this->config['resume_salarytype'] == 1) { + $List[$k]['salary'] = $v['minsalary']; + } else { + $List[$k]['salary'] = changeSalary($v['minsalary']); + } + } elseif ($v['maxsalary']) { + if ($this->config['resume_salarytype'] == 1) { + $List[$k]['salary'] = $v['maxsalary'] . '元'; + } else { + $List[$k]['salary'] = changeSalary($v['maxsalary']); + } + } else { + + $List[$k]['salary'] = '面议'; + } + //处理职位类别id + if ($v['job_classid'] && $cache) { + + $job_classid = @explode(',', $v['job_classid']); + + if (is_array($job_classid)) { + + $jobclassid = array(); + $job_classname = array(); + + foreach ($job_classid as $jv) { + + if ($cache['job_name'][$jv]) { + + $jobclassid[] = $jv; + + $job_classname[] = $cache['job_name'][$jv]; + } + } + $List[$k]['job_classid'] = pylode(',', $jobclassid); + + $List[$k]['job_classname'] = @implode(',', $job_classname); + } + } + //处理城市类别id + if ($v['city_classid'] && $cache) { + + $city_classid = @explode(',', $v['city_classid']); + + if (is_array($city_classid)) { + + $cityclassid = array(); + $city_classname = array(); + + foreach ($city_classid as $cv) { + + if ($cache['city_name'][$cv]) { + + $cityclassid[] = $cv; + + $city_classname[] = $cache['city_name'][$cv]; + } + } + $List[$k]['city_classid'] = pylode(',', $cityclassid); + + $List[$k]['city_classname'] = @implode(' ', $city_classname); + } + } + //处理置顶天数 + if ($v['topdate'] > $time) { + + $List[$k]['top_day'] = ceil(($v['topdate'] - $time) / 86400); + + } else { + + $List[$k]['top_day'] = '0'; + } + + if (isset($v['photo'])) { + + $icon = $v['sex'] == 1 ? $this->config['sy_member_icon'] : $this->config['sy_member_iconv']; + + $List[$k]['photo_n'] = checkpic($v['photo'], $icon); + } + + if (isset($data['url'])) { + + $List[$k]['wapurl'] = Url('wap', array('c' => 'resume', 'a' => 'show', 'id' => $v['id'])); + } + } + //后台处理简历多城市/用户名、审核状态 + if ($data['utype'] == 'admin') { + + $List = $this->getDataList($List, $cache); + } + //联合resume表 多条数据 查询合并 + if ($data['withResumeField']) { + + $resumelist = $this->getResumeList( + + array('uid' => array('in', pylode(',', $euids))), + + array( + 'field' => $data['withResumeField'], + 'downresume_where' => $data['downresume_where'] + ) + + ); + + foreach ($List as $lk => $lv) { + + foreach ($resumelist as $rk => $rv) { + + if ($rv['uid'] == $lv['uid']) { + + $List[$lk] = array_merge($lv, $rv); + + + } + } + } + + + } + + //网络招聘会大厅简历列表、浏览简历列表类查询个人姓名使用 + if ($data['utype'] == 'zphnet' || $data['utype'] == 'user') { + + $List = $this->getJlData($List); + } + + if ($data['workexp']) {//学历与经验简化显示 + + $List = $this->getWorkexpData($List); + + } + + $ListNew['list'] = $List; + //app简历列表返回第一页的置顶简历id数组集 + if (isset($zdids) && !empty($zdids)) { + $ListNew['zdids'] = $zdids; + } + + //需要缓存的 + if ($data['cache']) { + + $ListNew['cache'] = $cache; + } + } + return $ListNew; + } + + function getWorkexpData($List) { + + $cache = $this->getClass(array('user')); + + $userclass_name = $cache['userclass_name']; + + $eids = array(); + + foreach ($List as $lv) { + + $eids[] = $lv['id']; + } + + if (!empty($eids)) { + + $eduList = $this->select_all("resume_edu", array('eid' => array('in', pylode(',', $eids)))); + $workList = $this->select_all("resume_work", array('eid' => array('in', pylode(',', $eids)))); + } + + if (!empty($eduList)) { + foreach ($eduList as $key => $value) { $eduListNew[$value['eid']][] = $value; } - foreach($eduListNew as $k=>$eduv){ - $edumin = 0; - $edumax = 0; - $edutitle = array(); - $education = array(); - foreach($eduv as $v){ - - $edumin = $v['sdate']; - - if($v['edate']==0 ){ - $edumax = 0; - }elseif($edumax<$v['edate']){ - $edumax = $v['edate']; + foreach ($eduListNew as $k => $eduv) { + $edumin = 0; + $edumax = 0; + $edutitle = array(); + $education = array(); + foreach ($eduv as $v) { + + $edumin = $v['sdate']; + + if ($v['edate'] == 0) { + $edumax = 0; + } elseif ($edumax < $v['edate']) { + $edumax = $v['edate']; } - $education[] = $userclass_name[$v['education']]; - $edutitle[] = $v['specialty']; + $education[] = $userclass_name[$v['education']]; + $edutitle[] = $v['specialty']; } - $return = array(); - $return['edumin'] = date('Y.m',$edumin); - $return['edumax'] = $edumax == 0 ? '至今': date('Y',$edumax); - $return['education']= @implode(',',$education); - $return['edu_time'] = $return['edumin']."-".$return['edumax']; - $return['eduspecialty'] = @implode('、',$edutitle); - if($return['eduspecialty']){ - $workexpList[$k]['edu_content'] = $return['education'].'学历 ▪ '.$return['eduspecialty'].' ▪ 毕业于'.$return['edumax'].'年'; - }else{ - $workexpList[$k]['edu_content'] = $return['education'].'学历 ▪ 毕业于'.$return['edumax'].'年'; + $return = array(); + $return['edumin'] = date('Y.m', $edumin); + $return['edumax'] = $edumax == 0 ? '至今' : date('Y', $edumax); + $return['education'] = @implode(',', $education); + $return['edu_time'] = $return['edumin'] . "-" . $return['edumax']; + $return['eduspecialty'] = @implode('、', $edutitle); + if ($return['eduspecialty']) { + $workexpList[$k]['edu_content'] = $return['education'] . '学历 ▪ ' . $return['eduspecialty'] . ' ▪ 毕业于' . $return['edumax'] . '年'; + } else { + $workexpList[$k]['edu_content'] = $return['education'] . '学历 ▪ 毕业于' . $return['edumax'] . '年'; } } } - - if(!empty($workList)){ - foreach($workList as $key=>$value){ + + if (!empty($workList)) { + foreach ($workList as $key => $value) { $workListNew[$value['eid']][] = $value; } - foreach($workListNew as $k=>$workv){ + foreach ($workListNew as $k => $workv) { - $whour = 0; - $hour = array(); - $time = time(); - $workmin = 0; - $workmax = 0; - $worknum = count($workv); - $wtitle = array(); - foreach($workv as $v){ - - if ($v['edate']){ - $workTime = ceil(($v['edate']-$v['sdate'])/(30*86400)); - }else{ - $workTime = ceil(($time - $v['sdate'])/(30*86400)); + $whour = 0; + $hour = array(); + $time = time(); + $workmin = 0; + $workmax = 0; + $worknum = count($workv); + $wtitle = array(); + foreach ($workv as $v) { + + if ($v['edate']) { + $workTime = ceil(($v['edate'] - $v['sdate']) / (30 * 86400)); + } else { + $workTime = ceil(($time - $v['sdate']) / (30 * 86400)); } /* 计算每份工作时长(按月) */ - $workmin = $v['sdate']; - - if($v['edate']==0 ){ - $workmax = 0; - }elseif($workmax<$v['edate']){ - $workmax = $v['edate']; - } - - $wtitle[] = $v['title']; + $workmin = $v['sdate']; - $hour[] = $workTime; - $whour += $workTime; + if ($v['edate'] == 0) { + $workmax = 0; + } elseif ($workmax < $v['edate']) { + $workmax = $v['edate']; + } + + $wtitle[] = $v['title']; + + $hour[] = $workTime; + $whour += $workTime; } - $workavg = ceil($whour/count($hour)); - $return = array(); - $return['worknum'] = $worknum > 0 ? $worknum:0; - - $return['workavg'] = $workavg > 11 ? avgToYm($workavg) : $workavg; - - $return['workmin'] = date('Y.m',$workmin); - $return['workmax'] = $workmax == 0 ? '至今': date('Y.m',$workmax); - $return['worktit'] = @implode(',',$wtitle); - $return['work_time'] = $return['workmin'].'-'.$return['workmax']; - if($return['workavg']>0){ - if($return['worktit']!=''){ - $workexpList[$k]['work_content'] = ' 参加过'.$return['worknum'].'份工作 ▪ 涉及'.$return['worktit'].'等岗位'; - }else{ - $workexpList[$k]['work_content'] = '参加过'.$return['worknum'].'份工作'; + $workavg = ceil($whour / count($hour)); + $return = array(); + $return['worknum'] = $worknum > 0 ? $worknum : 0; + + $return['workavg'] = $workavg > 11 ? avgToYm($workavg) : $workavg; + + $return['workmin'] = date('Y.m', $workmin); + $return['workmax'] = $workmax == 0 ? '至今' : date('Y.m', $workmax); + $return['worktit'] = @implode(',', $wtitle); + $return['work_time'] = $return['workmin'] . '-' . $return['workmax']; + if ($return['workavg'] > 0) { + if ($return['worktit'] != '') { + $workexpList[$k]['work_content'] = ' 参加过' . $return['worknum'] . '份工作 ▪ 涉及' . $return['worktit'] . '等岗位'; + } else { + $workexpList[$k]['work_content'] = '参加过' . $return['worknum'] . '份工作'; } } } } - - if(!empty($workexpList)){ - - foreach ($List as $k=>$v){ + + if (!empty($workexpList)) { + + foreach ($List as $k => $v) { - $List[$k]['work_content'] = ''; - $List[$k]['edu_content'] = ''; - - foreach($workexpList as $wk=>$wv){ - - if($wk==$v['id']){ - - $List[$k]['work_content'] = $wv['work_content'] ? $wv['work_content'] : ''; - $List[$k]['edu_content'] = $wv['edu_content'] ? $wv['edu_content'] : ''; + $List[$k]['work_content'] = ''; + $List[$k]['edu_content'] = ''; + + foreach ($workexpList as $wk => $wv) { + + if ($wk == $v['id']) { + + $List[$k]['work_content'] = $wv['work_content'] ? $wv['work_content'] : ''; + $List[$k]['edu_content'] = $wv['edu_content'] ? $wv['edu_content'] : ''; } } } } - + return $List; } - + /** * @desc 获取resume 详情 ; 简单的查询返回,复杂的,访问getInfo方法 * @param $whereData 查询条件 - * @param null[] $data 自定义处理数组 + * @param null[] $data 自定义处理数组 * @return array|bool|false|string|void */ - public function getResumeInfo($whereData, $data = array('logo'=>null)) - { - - $data['field'] = empty($data['field']) ? '*' : $data['field']; - $resumeInfo = $this -> select_once('resume', $whereData, $data['field']); - - if(!empty($resumeInfo)){ - - $cache = $this -> getClass('user'); - - $userclass_name = $cache['userclass_name']; - - if($resumeInfo['birthday']){ - $a = date('Y',strtotime($resumeInfo['birthday'])); - $resumeInfo['birthYear'] = date('Y',strtotime($resumeInfo['birthday'])); - $resumeInfo['age'] = date("Y")-$a; - } - - $resumeInfo['sex_n'] = $resumeInfo['sex'] == 1?'男':'女'; - + public function getResumeInfo($whereData, $data = array('logo' => null)) { + + $data['field'] = empty($data['field']) ? '*' : $data['field']; + $resumeInfo = $this->select_once('resume', $whereData, $data['field']); + + if (!empty($resumeInfo)) { + + $cache = $this->getClass('user'); + + $userclass_name = $cache['userclass_name']; + + if ($resumeInfo['birthday']) { + $a = date('Y', strtotime($resumeInfo['birthday'])); + $resumeInfo['birthYear'] = date('Y', strtotime($resumeInfo['birthday'])); + $resumeInfo['age'] = date("Y") - $a; + } + + $resumeInfo['sex_n'] = $resumeInfo['sex'] == 1 ? '男' : '女'; + if ($resumeInfo['nametype'] == 1) { - - $resumeInfo['nametype_n'] = '完全公开'; + + $resumeInfo['nametype_n'] = '完全公开'; } elseif ($resumeInfo['nametype'] == 2) { - - $resumeInfo['nametype_n'] = '显示编号(例:NO.11)'; + + $resumeInfo['nametype_n'] = '显示编号(例:NO.11)'; } elseif ($resumeInfo['nametype'] == 3) { - - $resumeInfo['nametype_n'] = '性别称呼(例:X先生)'; + + $resumeInfo['nametype_n'] = '性别称呼(例:X先生)'; } else { - - $resumeInfo['nametype_n'] = '完全公开'; + + $resumeInfo['nametype_n'] = '完全公开'; } if ($resumeInfo['marriage']) { - - $resumeInfo['marriage_n'] = $userclass_name[$resumeInfo['marriage']]; + + $resumeInfo['marriage_n'] = $userclass_name[$resumeInfo['marriage']]; } if ($resumeInfo['edu']) { - - $resumeInfo['edu_n'] = $userclass_name[$resumeInfo['edu']]; + + $resumeInfo['edu_n'] = $userclass_name[$resumeInfo['edu']]; } if ($resumeInfo['exp']) { - - $resumeInfo['exp_n'] = $userclass_name[$resumeInfo['exp']]; + + $resumeInfo['exp_n'] = $userclass_name[$resumeInfo['exp']]; } - - if (!empty($resumeInfo['tag'])){ - $resumeInfo['arrayTag'] = explode(',', $resumeInfo['tag']); - } - - if (!empty($whereData['uid'])){ - - if(isset($data['setname']) && $data['setname'] == 1){ - - require_once ('userinfo.model.php'); - $UserinfoM = new userinfo_model($this->db, $this->def); - $info = $UserinfoM -> getInfo(array('uid'=> $whereData['uid']),array('setname'=>'1')); - - $resumeInfo['setname'] = $info['setname']=='1'?1:0; - } - - if($data['logo'] == 1){ - // 个人查看 - $icon = $resumeInfo['sex'] == 1 ? $this->config['sy_member_icon'] : $this->config['sy_member_iconv']; - - $resumeInfo['photo_n'] = $resumeInfo['photo']; - $resumeInfo['photo'] = checkpic($resumeInfo['photo'],$icon); - $resumeInfo['wxewm'] = checkpic($resumeInfo['wxewm']); - $resumeInfo['idcard_pic'] = checkpic($resumeInfo['idcard_pic']); - - }elseif($data['logo'] == 2){ - // 非个人查看 - if (empty($resumeInfo['photo_status']) || empty($resumeInfo['phototype']) || empty($resumeInfo['sex'])){ - - $resume = $this -> select_once('resume', $whereData, '`photo_status`,`phototype`,`sex`'); - - $resumeInfo['photo_status'] = $resume['photo_status']; - $resumeInfo['phototype'] = $resume['phototype']; - $resumeInfo['sex'] = $resume['sex']; - } - $resumeInfo['photo'] = $this -> setResumePhotoShow(array('photo' => $resumeInfo['photo'],'defphoto' => $resumeInfo['defphoto'], 'photo_status'=>$resumeInfo['photo_status'],'phototype' => $resumeInfo['phototype'], 'sex' => $resumeInfo['sex'])); - } - } - } + + if (!empty($resumeInfo['tag'])) { + $resumeInfo['arrayTag'] = explode(',', $resumeInfo['tag']); + } + + if (!empty($whereData['uid'])) { + + if (isset($data['setname']) && $data['setname'] == 1) { + + require_once('userinfo.model.php'); + $UserinfoM = new userinfo_model($this->db, $this->def); + $info = $UserinfoM->getInfo(array('uid' => $whereData['uid']), array('setname' => '1')); + + $resumeInfo['setname'] = $info['setname'] == '1' ? 1 : 0; + } + + if ($data['logo'] == 1) { + // 个人查看 + $icon = $resumeInfo['sex'] == 1 ? $this->config['sy_member_icon'] : $this->config['sy_member_iconv']; + + $resumeInfo['photo_n'] = $resumeInfo['photo']; + $resumeInfo['photo'] = checkpic($resumeInfo['photo'], $icon); + $resumeInfo['wxewm'] = checkpic($resumeInfo['wxewm']); + $resumeInfo['idcard_pic'] = checkpic($resumeInfo['idcard_pic']); + + } elseif ($data['logo'] == 2) { + // 非个人查看 + if (empty($resumeInfo['photo_status']) || empty($resumeInfo['phototype']) || empty($resumeInfo['sex'])) { + + $resume = $this->select_once('resume', $whereData, '`photo_status`,`phototype`,`sex`'); + + $resumeInfo['photo_status'] = $resume['photo_status']; + $resumeInfo['phototype'] = $resume['phototype']; + $resumeInfo['sex'] = $resume['sex']; + } + $resumeInfo['photo'] = $this->setResumePhotoShow(array('photo' => $resumeInfo['photo'], 'defphoto' => $resumeInfo['defphoto'], 'photo_status' => $resumeInfo['photo_status'], 'phototype' => $resumeInfo['phototype'], 'sex' => $resumeInfo['sex'])); + } + } + } return $resumeInfo; - } - + } + /** * @desc 更新个人基本信息操作 * @param array $whereData * @param null[] $data | mData member表要修改数据; rData resume表要修改数据; utype 修改操作类型:admin-后台,user-会员中心; port 刷新简历操作端 * @return array|string[] */ - public function upResumeInfo($whereData = array(), $data = array('mData' => null, 'rData' => null, 'utype' => null, 'port' => 1)) - { - - $return = array(); - + public function upResumeInfo($whereData = array(), $data = array('mData' => null, 'rData' => null, 'utype' => null, 'port' => 1)) { + + $return = array(); + if (is_array($whereData) && !empty($whereData)) { - - $mData = $data['mData']; - $rData = $data['rData']; - - $rField = '`living`,`lastupdate`,`moblie_status`,`email_status`,`idcard_status`'; - $resume = $this->select_once('resume', array('uid' => $whereData['uid']), $rField); - + + $mData = $data['mData']; + $rData = $data['rData']; + + $rField = '`living`,`lastupdate`,`moblie_status`,`email_status`,`idcard_status`'; + $resume = $this->select_once('resume', array('uid' => $whereData['uid']), $rField); + //会员操作的修改,需要判断手机号、邮件是否已绑定,身份证是否已验证,绑定的不能修改 if ($data['utype'] == 'user') { - + if (!empty($resume)) { - + if ($resume['moblie_status'] == '1') { - + if (!empty($mData) && $mData['moblie']) { - + unset($mData['moblie']); } if (!empty($rData) && $rData['moblie']) { - + unset($rData['moblie']); } } if ($resume['email_status'] == '1') { - + if (!empty($mData) && $mData['email']) { - + unset($mData['email']); } if (!empty($rData) && $rData['email']) { - + unset($rData['email']); } } if ($resume['idcard_status'] == '1') { - + if (!empty($rData) && $rData['name']) { unset($rData['name']); } } } } - + // 处理会员基本信息 if (!empty($mData)) { - + require_once('userinfo.model.php'); - $UserinfoM = new userinfo_model($this->db, $this->def); - $ckresult = $UserinfoM->addMemberCheck($mData, $whereData['uid'], $data['utype']); - + $UserinfoM = new userinfo_model($this->db, $this->def); + $ckresult = $UserinfoM->addMemberCheck($mData, $whereData['uid'], $data['utype']); + if (isset($ckresult) && $ckresult['msg']) { - + $ckresult['errcode'] = 8; - + return $ckresult; } } - + // 处理个人基本信息 if (!empty($rData)) { //处理手机站个人二维码 if (!empty($rData['preview']) || !empty($rData['ewmFromWx'])) { - - $upArr = array( - 'base' => $rData['preview'], - 'dir' => 'user', - 'file' => $rData['ewmFromWx'] + + $upArr = array( + 'base' => $rData['preview'], + 'dir' => 'user', + 'file' => $rData['ewmFromWx'] ); - - $result = $this->upload($upArr); - + + $result = $this->upload($upArr); + if (!empty($result['msg'])) { - - $return['msg'] = $result['msg']; - $return['errcode'] = 8; + + $return['msg'] = $result['msg']; + $return['errcode'] = 8; return $return; } else { - - $rData['wxewm'] = $result['picurl']; + + $rData['wxewm'] = $result['picurl']; } unset($rData['preview']); unset($rData['ewmFromWx']); } - + if ($data['utype'] == 'user') { - - $pass = $this->infoConCheck($rData, array('uid' => $whereData['uid'], 'usertype' => 1, 'source' => $data['source'])); - + + $pass = $this->infoConCheck($rData, array('uid' => $whereData['uid'], 'usertype' => 1, 'source' => $data['source'])); + if (!$pass) { - - $rData['r_status'] = 0; - $rData['state'] = 0; + + $rData['r_status'] = 0; + $rData['state'] = 0; // 将个人设为未审核,简历也要设为未审核 - $return['r_status'] = $rData['r_status']; + $return['r_status'] = $rData['r_status']; } } - - $return['id'] = $this->update_once('resume', $rData, $whereData); - + + $return['id'] = $this->update_once('resume', $rData, $whereData); + if ($return['id']) { - + //处理求职意向相关数据 - $expect = $this->setExpectInfo($whereData['uid'], $rData, $port = $data['port']); - + $expect = $this->setExpectInfo($whereData['uid'], $rData, $port = $data['port']); + //处理用户提交内容 if ($data['utype'] == 'user') { - + require_once('cookie.model.php'); - $cookieM = new cookie_model($this->db, $this->def); + $cookieM = new cookie_model($this->db, $this->def); $cookieM->SetCookie('delay', '', time() - 60); - + // 会员日志 $this->addMemberLog($whereData['uid'], 1, '修改基本信息', 7, 2); - + // 首次完善获取积分 if ($resume['name'] == '' || $resume['living'] == '') { - + require_once('integral.model.php'); $IntegralM = new integral_model($this->db, $this->def); $IntegralM->invtalCheck($whereData['uid'], 1, 'integral_userinfo', '首次填写基本资料', 25); } - - $status = '1'; + + $status = '1'; } - - $return['msg'] = '基本资料修改成功'; - $return['errcode'] = 9; - + + $return['msg'] = '基本资料修改成功'; + $return['errcode'] = 9; + if ($expect == false) { - - $return['url'] = 'index.php?c=expect&act=add'; + + $return['url'] = 'index.php?c=expect&act=add'; } else { - - $return['url'] = $_SERVER['HTTP_REFERER']; + + $return['url'] = $_SERVER['HTTP_REFERER']; } } else { - - $status = '2'; - $return['msg'] = '基本资料修改失败'; - $return['errcode'] = 8; + + $status = '2'; + $return['msg'] = '基本资料修改失败'; + $return['errcode'] = 8; } } else { - $return['msg'] = '没有要修改的信息'; - $return['errcode'] = 8; + $return['msg'] = '没有要修改的信息'; + $return['errcode'] = 8; } } else { - - $return['msg'] = '请选择要修改的个人'; - $return['errcode'] = 8; + + $return['msg'] = '请选择要修改的个人'; + $return['errcode'] = 8; } - - if (isset($status)){ - $return['status'] = $status; + + if (isset($status)) { + $return['status'] = $status; } - + return $return; } - + /** * 修改个人基本信息同步修改简历相关信息 * @param $uid @@ -1031,605 +1034,595 @@ * @param $port * @return bool */ - private function setExpectInfo($uid, $rData, $port) - { - - $eField = '`sex`,`birthday`,`exp`,`edu`,`uname`,`r_status`,`photo`'; - $expect = $this->select_once('resume_expect', array('uid' => $uid), $eField); - + private function setExpectInfo($uid, $rData, $port) { + + $eField = '`sex`,`birthday`,`exp`,`edu`,`uname`,`r_status`,`photo`'; + $expect = $this->select_once('resume_expect', array('uid' => $uid), $eField); + // 有简的比较各修改项,有改动的才修改 if (!empty($expect)) { - + if (!empty($rData['lastupdate'])) { - - $eData['lastupdate'] = $rData['lastupdate']; + + $eData['lastupdate'] = $rData['lastupdate']; } if (!empty($rData['photo']) && $expect['photo'] != $rData['photo']) { - - $eData['photo'] = $rData['photo']; + + $eData['photo'] = $rData['photo']; } if (!empty($rData['sex']) && $expect['sex'] != $rData['sex']) { - - $eData['sex'] = $rData['sex']; + + $eData['sex'] = $rData['sex']; } if (!empty($rData['birthday']) && $expect['birthday'] != $rData['birthday']) { - - $eData['birthday'] = $rData['birthday']; + + $eData['birthday'] = $rData['birthday']; } if (!empty($rData['exp']) && $expect['exp'] != $rData['exp']) { - - $eData['exp'] = $rData['exp']; + + $eData['exp'] = $rData['exp']; } if (!empty($rData['edu']) && $expect['edu'] != $rData['edu']) { - - $eData['edu'] = $rData['edu']; + + $eData['edu'] = $rData['edu']; } if (!empty($rData['name']) && $expect['uname'] != $rData['name']) { - - $eData['uname'] = $rData['name']; + + $eData['uname'] = $rData['name']; } if (isset($rData['r_status']) && $expect['r_status'] != $rData['r_status']) { - - $eData['r_status'] = $rData['r_status']; + + $eData['r_status'] = $rData['r_status']; } if (!empty($eData)) { - + $this->update_once('resume_expect', $eData, array('uid' => $uid)); } - + if (isset($rData['state'])) { - - $expectS = $this->select_all('resume_expect', array('uid' => $uid), 'id, state, uname, name'); - + + $expectS = $this->select_all('resume_expect', array('uid' => $uid), 'id, state, uname, name'); + require_once 'admin.model.php'; - $adminM = new admin_model($this->db, $this->def); - - if ($rData['state'] == 0){ - - $eidArr = array(); - + $adminM = new admin_model($this->db, $this->def); + + if ($rData['state'] == 0) { + + $eidArr = array(); + foreach ($expectS as $ek => $ev) { - - $eidArr[] = $ev['id']; - - if ($ev['state'] != 0){ - if ($ev['uname']){ - - $wxTempMsg = '有新的简历需要审核,用户《'.$ev['uname'].'》修改简历《'.$ev['name'].'》'; - }else{ - - $wxTempMsg = '有新的简历需要审核,用户修改简历《'.$ev['name'].'》'; + + $eidArr[] = $ev['id']; + + if ($ev['state'] != 0) { + if ($ev['uname']) { + + $wxTempMsg = '有新的简历需要审核,用户《' . $ev['uname'] . '》修改简历《' . $ev['name'] . '》'; + } else { + + $wxTempMsg = '有新的简历需要审核,用户修改简历《' . $ev['name'] . '》'; } - - $adminM->sendAdminMsg(array('first'=>$wxTempMsg,'type'=>6)); + + $adminM->sendAdminMsg(array('first' => $wxTempMsg, 'type' => 6)); } } $this->update_once('resume_expect', array('state' => 0), array('id' => array('in', pylode(',', $eidArr)))); $this->update_once('userid_job', array('resume_state' => 0), array('eid' => array('in', pylode(',', $eidArr)))); } - }else{ - - $expectS = $this->select_all('resume_expect', array('uid' => $uid, 'state' => 3), 'id, uname, name'); - - if (!empty($expectS)){ - + } else { + + $expectS = $this->select_all('resume_expect', array('uid' => $uid, 'state' => 3), 'id, uname, name'); + + if (!empty($expectS)) { + require_once 'admin.model.php'; - $adminM = new admin_model($this->db, $this->def); - - $eidArr = array(); + $adminM = new admin_model($this->db, $this->def); + + $eidArr = array(); foreach ($expectS as $ek => $ev) { - - $eidArr[] = $ev['id']; - if ($ev['uname']){ - - $wxTempMsg = '有新的简历需要审核,用户《'.$ev['uname'].'》修改简历《'.$ev['name'].'》'; - }else{ - - $wxTempMsg = '有新的简历需要审核,用户修改简历《'.$ev['name'].'》'; + + $eidArr[] = $ev['id']; + if ($ev['uname']) { + + $wxTempMsg = '有新的简历需要审核,用户《' . $ev['uname'] . '》修改简历《' . $ev['name'] . '》'; + } else { + + $wxTempMsg = '有新的简历需要审核,用户修改简历《' . $ev['name'] . '》'; } - $adminM->sendAdminMsg(array('first'=>$wxTempMsg,'type'=>6)); + $adminM->sendAdminMsg(array('first' => $wxTempMsg, 'type' => 6)); } - + $this->update_once('resume_expect', array('state' => 0), array('id' => array('in', pylode(',', $eidArr)))); $this->update_once('userid_job', array('resume_state' => 0), array('eid' => array('in', pylode(',', $eidArr)))); } } - - if (isset($eData['lastupdate'])){ - - $resumeExpect = $this->select_all('resume_expect', array('uid' => $uid), 'id,lastupdate'); - - $logSxData = array(); - + + if (isset($eData['lastupdate'])) { + + $resumeExpect = $this->select_all('resume_expect', array('uid' => $uid), 'id,lastupdate'); + + $logSxData = array(); + foreach ($resumeExpect as $rk => $rv) { - - $logSxData[$rk]['uid'] = $uid; - $logSxData[$rk]['resume_id'] = $rv['id']; - $logSxData[$rk]['r_time'] = $rv['lastupdate']; - $logSxData[$rk]['port'] = $port; - $logSxData[$rk]['ip'] = fun_ip_get(); + + $logSxData[$rk]['uid'] = $uid; + $logSxData[$rk]['resume_id'] = $rv['id']; + $logSxData[$rk]['r_time'] = $rv['lastupdate']; + $logSxData[$rk]['port'] = $port; + $logSxData[$rk]['ip'] = fun_ip_get(); } - + require_once 'log.model.php'; $logM = new log_model($this->db, $this->def); $logM->addResumeSxLogS($logSxData); } - + return true; } else { - + return false; } } - + /** * 修改询简历信息时的查询 * @param array $data uid=>用户id; eid=>简历id; rfield=>基本信息查询字段; needCache=>需要调用缓存; tb=>查询表范围 * @return mixed */ - public function getInfo($data = array('uid'=>null,'eid'=>null,'needCache'=>null,'tb'=>null)) - { - - if ($data['needCache'] == 1){ - $cache = $this -> getClass(array('user','city','job','hy','introduce')); - $return['cache'] = $cache; - } - $resume = $expect = $edu = $other = $project = $skill = $training = $work = array(); - - $resume = $this -> getResumeInfo(array('uid'=>$data['uid']),array('logo'=>1)); - - //查询简历信息 - if ($resume['uid'] && !empty($data['eid'])){ - $eid = intval($data['eid']); - - $expect = $this -> getExpect(array('id'=>$eid,'uid'=>$resume['uid']),array('cache'=>$cache,'needCache'=>$data['needCache'])); - - //查询所有附表信息 - if ($expect['id'] && $data['tb'] == 'all'){ - $edu = $this -> getResumeEdus(array('eid'=>$eid,'uid'=>$resume['uid'],'orderby'=>'sdate,desc'),'*',$cache['userclass_name']); - - $other = $this -> getResumeOthers((array('eid'=>$eid,'uid'=>$resume['uid']))); - - $project = $this -> getResumeProjects(array('eid'=>$eid,'uid'=>$resume['uid'],'orderby'=>'sdate,desc')); - - $skill = $this -> getResumeSkills(array('eid'=>$eid,'uid'=>$resume['uid']),'*',$cache['userclass_name']); - - $training = $this -> getResumeTrains(array('eid'=>$eid,'uid'=>$resume['uid'],'orderby'=>'sdate,desc')); - - $work = $this -> getResumeWorks(array('eid'=>$eid,'uid'=>$resume['uid'],'orderby'=>'sdate,desc')); - - $show = $this -> getResumeShowList(array('eid'=>$eid,'uid'=>$resume['uid'],'orderby'=>'sort,desc')); - } - } - - $return['resume'] = $resume; - $return['expect'] = $expect; - $return['edu'] = $edu; - $return['other'] = $other; - $return['project'] = $project; - $return['skill'] = $skill; - $return['training'] = $training; - $return['work'] = $work; - $return['show'] = $show; - - return $return; - } - + public function getInfo($data = array('uid' => null, 'eid' => null, 'needCache' => null, 'tb' => null)) { + if ($data['needCache'] == 1) { + $cache = $this->getClass(array('user', 'city', 'job', 'hy', 'introduce')); + $return['cache'] = $cache; + } + $resume = $expect = $edu = $other = $project = $skill = $training = $work = array(); + + $resume = $this->getResumeInfo(array('uid' => $data['uid']), array('logo' => 1)); + + //查询简历信息 + if ($resume['uid'] && !empty($data['eid'])) { + $eid = intval($data['eid']); + + $expect = $this->getExpect(array('id' => $eid, 'uid' => $resume['uid']), array('cache' => $cache, 'needCache' => $data['needCache'])); + //查询所有附表信息 + if ($expect['id'] && $data['tb'] == 'all') { + $edu = $this->getResumeEdus(array('eid' => $eid, 'uid' => $resume['uid'], 'orderby' => 'sdate,desc'), '*', $cache['userclass_name']); + $other = $this->getResumeOthers((array('eid' => $eid, 'uid' => $resume['uid']))); + $project = $this->getResumeProjects(array('eid' => $eid, 'uid' => $resume['uid'], 'orderby' => 'sdate,desc')); + $skill = $this->getResumeSkills(array('eid' => $eid, 'uid' => $resume['uid']), '*', $cache['userclass_name']); + $training = $this->getResumeTrains(array('eid' => $eid, 'uid' => $resume['uid'], 'orderby' => 'sdate,desc')); + $work = $this->getResumeWorks(array('eid' => $eid, 'uid' => $resume['uid'], 'orderby' => 'sdate,desc')); + $show = $this->getResumeShowList(array('eid' => $eid, 'uid' => $resume['uid'], 'orderby' => 'sort,desc')); + } + } + + $return['resume'] = $resume; + $return['expect'] = $expect; + $return['edu'] = $edu; + $return['other'] = $other; + $return['project'] = $project; + $return['skill'] = $skill; + $return['training'] = $training; + $return['work'] = $work; + $return['show'] = $show; + + return $return; + } + /** * 通过eid查询简历信息,用作简历详情页展示 * @param array $data : uid => 查看用户id; eid=>简历id; field=>基本信息查询字段; cache=>返回包含的缓存数据 * @return array|bool|false|string|void */ - public function getInfoByEid($data = array()) - { - $res = array(); - $eid = intval($data['eid']); - $uid = intval($data['uid']); //查看简历的用户uid - $usertype = intval($data['usertype']); //查看简历的用户usertype - $spid = !empty($data['spid']) ? intval($data['spid']) : ''; - - if(empty($eid)){ - return $res; - } - - $cache = $this -> getClass(array('user', 'city', 'job', 'hy', 'industry')); - - //查询简历信息 - $expect = $this -> getExpect(array('id' => $eid), array('cache' => $cache,'needCache'=>1)); - - if(empty($expect)){ - return $res; - } - $euid = $expect['uid']; - $resume = $this -> getResumeInfo(array('uid' => $euid)); - if(empty($resume)){ - return $res; - } - - //拼凑相关的字段 - if(empty($resume['sex'])){ - $resume['sex'] = $expect['sex']; - } - if($resume['sex'] == 152){ - $resume['sex'] = 2; - }elseif ($resume['sex'] == 153){ - $resume['sex'] = 1; - } - //简历名称 - $resume['customjob'] = $expect['name']; - //名称显示处理 - $resume['username_n'] = $this -> setUsernameShow(array('nametype' => $resume['nametype'], 'name' => $resume['name'], 'eid' => $eid, 'sex' => $resume['sex'])); - //图片显示处理 - $resume['photo'] = $this -> setResumePhotoShow(array('photo' => $resume['photo'],'defphoto' => $resume['defphoto'], 'photo_status'=>$resume['photo_status'],'phototype' => $resume['phototype'], 'sex' => $resume['sex'])); - //年龄 - if(!empty($resume['birthday'])){ - $resume['age'] = date('Y') - date('Y', strtotime($resume['birthday'])); - } - - $resume['user_exp'] = $cache['userclass_name'][$resume['exp']]; - $resume['user_marriage'] = $cache['userclass_name'][$resume['marriage']]; - $resume['useredu'] = $cache['userclass_name'][$resume['edu']]; - $resume['job_sex'] = $cache['user_sex'][$resume['sex']]; - $resume['minsalary'] = $expect['minsalary']; - $resume['job_classid'] = $expect['job_classid']; - $resume['city_classid'] = $expect['city_classid']; - $resume['maxsalary'] = $expect['maxsalary']; - $resume['salary'] = $expect['salary']; - $resume['jobstatus'] = $expect['jobstatus_n']; - $resume['report'] = $expect['report_n']; - $resume['type'] = $expect['type_n']; - $resume['hy'] = $expect['hy_n']; - $resume['lastupdate'] = lastupdateStyle($expect['lastupdate']); - $resume['r_name'] = $expect['name']; - $resume['doc'] = $expect['doc']; - $resume['hits'] = $expect['hits']; - $resume['dnum'] = $expect['dnum']; - $resume['r_status'] = $expect['r_status']; - $resume['state'] = $expect['state']; - $resume['expect_audit'] = $expect['statusbody']; - $resume['content'] = $expect['content']; - $resume['uname'] = $expect['uname']; - $resume['label_n'] = !empty($expect['label']) ? $cache['userclass_name'][$expect['label']] : ''; - $resume['height_status'] = $expect['height_status']; - $resume['id'] = $eid; - $resume['login_date_n'] = $resume['login_date'] > 0 ? date('Y-m-d', $resume['login_date']) : '<font color="red">从未登录</font>'; - $resume['wxewm'] = checkpic($resume['wxewm']); - - if (!empty($resume['tag'])){ - $resume['arrayTag'] = explode(',', $resume['tag']); - } - - if (!empty($expect['whour'])){ - $resume['whour'] = $expect['whour']; - if(($expect['whour']/12) >= 1){ - $whour = floor($expect['whour']/12).'年'; - } - if(($expect['whour']%12) >= 1){ - $whour = floor($expect['whour']%12).'个月'; - } - $resume['whourInfo'] = $whour; - } - - if (!empty($expect['avghour'])){ - $resume['avghour'] = $expect['avghour']; + public function getInfoByEid($data = array()) { + $res = array(); + $eid = intval($data['eid']); + $uid = intval($data['uid']); //查看简历的用户uid + $usertype = intval($data['usertype']); //查看简历的用户usertype + $spid = !empty($data['spid']) ? intval($data['spid']) : ''; + + if (empty($eid)) { + return $res; + } + + $cache = $this->getClass(array('user', 'city', 'job', 'hy', 'industry')); + + //查询简历信息 + $expect = $this->getExpect(array('id' => $eid), array('cache' => $cache, 'needCache' => 1)); + + if (empty($expect)) { + return $res; + } + $euid = $expect['uid']; + $resume = $this->getResumeInfo(array('uid' => $euid)); + if (empty($resume)) { + return $res; + } + + //拼凑相关的字段 + if (empty($resume['sex'])) { + $resume['sex'] = $expect['sex']; + } + if ($resume['sex'] == 152) { + $resume['sex'] = 2; + } elseif ($resume['sex'] == 153) { + $resume['sex'] = 1; + } + //简历名称 + $resume['customjob'] = $expect['name']; + //名称显示处理 + $resume['username_n'] = $this->setUsernameShow(array('nametype' => $resume['nametype'], 'name' => $resume['name'], 'eid' => $eid, 'sex' => $resume['sex'])); + //图片显示处理 + $resume['photo'] = $this->setResumePhotoShow(array('photo' => $resume['photo'], 'defphoto' => $resume['defphoto'], 'photo_status' => $resume['photo_status'], 'phototype' => $resume['phototype'], 'sex' => $resume['sex'])); + //年龄 + if (!empty($resume['birthday'])) { + $resume['age'] = date('Y') - date('Y', strtotime($resume['birthday'])); + } + + $resume['user_exp'] = $cache['userclass_name'][$resume['exp']]; + $resume['user_marriage'] = $cache['userclass_name'][$resume['marriage']]; + $resume['useredu'] = $cache['userclass_name'][$resume['edu']]; + $resume['job_sex'] = $cache['user_sex'][$resume['sex']]; + $resume['minsalary'] = $expect['minsalary']; + $resume['job_classid'] = $expect['job_classid']; + $resume['city_classid'] = $expect['city_classid']; + $resume['maxsalary'] = $expect['maxsalary']; + $resume['salary'] = $expect['salary']; + $resume['jobstatus'] = $expect['jobstatus_n']; + $resume['report'] = $expect['report_n']; + $resume['type'] = $expect['type_n']; + $resume['hy'] = $expect['hy_n']; + $resume['lastupdate'] = lastupdateStyle($expect['lastupdate']); + $resume['r_name'] = $expect['name']; + $resume['doc'] = $expect['doc']; + $resume['hits'] = $expect['hits']; + $resume['dnum'] = $expect['dnum']; + $resume['r_status'] = $expect['r_status']; + $resume['state'] = $expect['state']; + $resume['expect_audit'] = $expect['statusbody']; + $resume['content'] = $expect['content']; + $resume['uname'] = $expect['uname']; + $resume['label_n'] = !empty($expect['label']) ? $cache['userclass_name'][$expect['label']] : ''; + $resume['height_status'] = $expect['height_status']; + $resume['id'] = $eid; + $resume['login_date_n'] = $resume['login_date'] > 0 ? date('Y-m-d', $resume['login_date']) : '<font color="red">从未登录</font>'; + $resume['wxewm'] = checkpic($resume['wxewm']); + + if (!empty($resume['tag'])) { + $resume['arrayTag'] = explode(',', $resume['tag']); + } + + if (!empty($expect['whour'])) { + $resume['whour'] = $expect['whour']; + if (($expect['whour'] / 12) >= 1) { + $whour = floor($expect['whour'] / 12) . '年'; + } + if (($expect['whour'] % 12) >= 1) { + $whour = floor($expect['whour'] % 12) . '个月'; + } + $resume['whourInfo'] = $whour; + } + + if (!empty($expect['avghour'])) { + $resume['avghour'] = $expect['avghour']; $avghour = ''; - if(($expect['avghour']/12) >= 1){ - $avghour .= floor($expect['avghour']/12).'年'; - } - if(($expect['avghour']%12) >= 1){ - $avghour .= floor($expect['avghour']%12).'个月'; - } - $resume['avghourInfo'] = $avghour; - }else{ - $resume['avghourInfo'] = '1个月内'; - } - - $resume['jobname'] = $expect['job_classname']; - $resume['expectjob'] = @explode(',', $expect['job_classname']); - - $resume['cityname'] = $expect['city_classname']; - $resume['expectcity'] = @explode(',', $expect['city_classname']); - if($expect['doc'] == 1){ - $user_doc = $this -> select_once('resume_doc', array('eid' => $eid)); - }else{ - $user_edu = $this -> getResumeEdus(array('eid' => $eid, 'orderby' => 'sdate, desc'), '*', $cache['userclass_name']); - $user_training = $this -> getResumeTrains(array('eid' => $eid, 'orderby' => 'sdate,desc')); - $user_work = $this -> getResumeWorks(array('eid' => $eid, 'orderby' => 'sdate,desc')); - $user_other = $this -> getResumeOthers(array('eid' => $eid)); - $user_skill = $this -> getResumeSkills(array('eid' => $eid), '*', $cache['userclass_name']); - $user_xm = $this -> getResumeProjects(array('eid' => $eid, 'orderby' => 'sdate,desc')); - if ($usertype == 2 || $usertype == 3) { - $user_show = $this -> getResumeShowList(array('eid' => $eid, 'status' => 0)); - }else { - $user_show = $this -> getResumeShowList(array('eid' => $eid)); - } - } - - //获取是否可以查看 - if($usertype == 2){ - - $userid_job = $this->select_once('userid_job',array('com_id' => $uid,'isdel'=>9,'eid' => $eid,'orderby'=>'id,desc'),'`id`,`job_name`,`datetime`'); - - if (!empty($userid_job)){ - $resume['sqInfo'] = array( - 'sq_job_name' => $userid_job['job_name'], - 'sq_job_time' => date('Y-m-d', $userid_job['datetime']) + if (($expect['avghour'] / 12) >= 1) { + $avghour .= floor($expect['avghour'] / 12) . '年'; + } + if (($expect['avghour'] % 12) >= 1) { + $avghour .= floor($expect['avghour'] % 12) . '个月'; + } + $resume['avghourInfo'] = $avghour; + } else { + $resume['avghourInfo'] = '1个月内'; + } + + $resume['jobname'] = $expect['job_classname']; + $resume['expectjob'] = @explode(',', $expect['job_classname']); + + $resume['cityname'] = $expect['city_classname']; + $resume['expectcity'] = @explode(',', $expect['city_classname']); + if ($expect['doc'] == 1) { + $user_doc = $this->select_once('resume_doc', array('eid' => $eid)); + } else { + $user_edu = $this->getResumeEdus(array('eid' => $eid, 'orderby' => 'sdate, desc'), '*', $cache['userclass_name']); + $user_training = $this->getResumeTrains(array('eid' => $eid, 'orderby' => 'sdate,desc')); + $user_work = $this->getResumeWorks(array('eid' => $eid, 'orderby' => 'sdate,desc')); + $user_other = $this->getResumeOthers(array('eid' => $eid)); + $user_skill = $this->getResumeSkills(array('eid' => $eid), '*', $cache['userclass_name']); + $user_xm = $this->getResumeProjects(array('eid' => $eid, 'orderby' => 'sdate,desc')); + if ($usertype == 2 || $usertype == 3) { + $user_show = $this->getResumeShowList(array('eid' => $eid, 'status' => 0)); + } else { + $user_show = $this->getResumeShowList(array('eid' => $eid)); + } + } + + //获取是否可以查看 + if ($usertype == 2) { + + $userid_job = $this->select_once('userid_job', array('com_id' => $uid, 'isdel' => 9, 'eid' => $eid, 'orderby' => 'id,desc'), '`id`,`job_name`,`datetime`'); + + if (!empty($userid_job)) { + $resume['sqInfo'] = array( + 'sq_job_name' => $userid_job['job_name'], + 'sq_job_time' => date('Y-m-d', $userid_job['datetime']) ); } - - $comstatis = $this->select_once('company_statis',array('uid'=>$uid),'`rating`'); - //已投递简历并且免费查看联系方式 - $com_look = @explode(',', $this->config['com_look']); - if(!empty($userid_job)){ + + $comstatis = $this->select_once('company_statis', array('uid' => $uid), '`rating`'); + //已投递简历并且免费查看联系方式 + $com_look = @explode(',', $this->config['com_look']); + if (!empty($userid_job)) { // 已向简历投递企业 - $resume['userid_job'] = 1; - if(!empty($com_look)){ - if(in_array($comstatis['rating'], $com_look)){ + $resume['userid_job'] = 1; + if (!empty($com_look)) { + if (in_array($comstatis['rating'], $com_look)) { // 后台设置企业当前套餐可以免费查看联系方式 - $resume['m_status'] = 1; + $resume['m_status'] = 1; } } - if($this->config['sy_privacy_open'] =='1' && $this -> config['sy_privacy_type'] == '1'){ + if ($this->config['sy_privacy_open'] == '1' && $this->config['sy_privacy_type'] == '1') { // 隐私号开启,并且是全部简历的(因此处是已投递,未投递简历状态无需考虑),更换为隐私号模式 禁止直接展示联系方式 - $resume['privacy_status'] = 1; + $resume['privacy_status'] = 1; } } - $resume['rdayprice'] = $this -> setDayprice($eid); - } - - if($uid == $euid){ - $resume['m_status'] = 1; - $resume['username_n'] = $resume['name']; - $resume['diy_status'] = 1; - }else{ - $resume['diy_status'] = 2; - } - - //获取是否下载过此简历 - if(in_array($usertype, array(2, 3))){ - - - $row = $this -> select_once('down_resume',array('eid' => $eid, 'comid' => $uid,'usertype'=>$usertype)); - if(!empty($row)){ - //已下载 - $resume['downresume'] = 1; - if ($usertype == 2 && $this->config['sy_privacy_open'] =='1' && ($this->config['sy_privacy_type'] == '1' || ($this->config['sy_privacy_type'] == '2' && empty($userid_job)))){ - // 条件解释:1、隐私号只针对企业。2、隐私号开启。(3、设置全部简历;或者4、设置未投递简历,且没有投递记录) - $resume['privacy_status'] = 1; - }else{ - $resume['m_status'] = 1; - } - $resume['username_n'] = $resume['name']; - }else{ - - //此处获取每日最大限制 - if($usertype == 3){ - $tmpField = '`lt_down_resume` AS down_resume, `rating_type`'; - }else{ - $tmpField = '`down_resume`, `rating_type`'; - $suid = !empty($spid) ? $spid : $uid; - } - require_once ('statis.model.php'); - $statisM = new statis_model($this->db, $this->def); - $row = $statisM -> getInfo($suid, array('usertype' => $usertype, 'field' => $tmpField)); - - if($row['rating_type'] == 2){ - - require_once ('company.model.php'); - $comM = new company_model($this->db, $this->def); - $today = strtotime('today'); - $nid = $comM -> comVipDayActionCheck('resume', $uid); - $dnum = $this -> select_num('down_resume', array('comid' => $uid, 'downtime' => array('>',$today))); - - if($nid != 1){ - $row['down_resume'] = 0; - }else{ - $row['down_resume'] = $row['down_resume'] - $dnum; // 时间会员今日已下载 - } - } - - if(isVip($row['vip_etime']) && $row['down_resume'] > 0){ - - if($this->config['com_lietou_job'] == 1){ - - if($usertype == 2){ - $jobNum = $this->select_num('company_job',array('uid' => $uid, 'state' => 1,'r_status' =>1, 'status' => 0)); - $ltJobNum = $this->select_num('lt_job',array('uid' => $uid, 'zp_status' => 0, 'status' => 1, 'r_status' => 1)); - $listNum = $jobNum + $ltJobNum; - } - if($usertype == 3){ - $listNum = $this->select_num('lt_job',array('uid' => $uid, 'zp_status' => 0, 'status' => 1, 'r_status' => 1)); - } - - if(intval($listNum) > 0){ - $resume['showcontactflag'] = true; - $resume['downresumes'] = $row['down_resume']; // 剩余下载量(时间会员每人剩余/套餐会员总剩余量) - } - }else { - - $resume['showcontactflag'] = true; - $resume['downresumes'] = $row['down_resume']; // 剩余下载量(时间会员每人剩余/套餐会员总剩余量) + $resume['rdayprice'] = $this->setDayprice($eid); + } + + if ($uid == $euid) { + $resume['m_status'] = 1; + $resume['username_n'] = $resume['name']; + $resume['diy_status'] = 1; + } else { + $resume['diy_status'] = 2; + } + + //获取是否下载过此简历 + if (in_array($usertype, array(2, 3))) { + + + $row = $this->select_once('down_resume', array('eid' => $eid, 'comid' => $uid, 'usertype' => $usertype)); + if (!empty($row)) { + //已下载 + $resume['downresume'] = 1; + if ($usertype == 2 && $this->config['sy_privacy_open'] == '1' && ($this->config['sy_privacy_type'] == '1' || ($this->config['sy_privacy_type'] == '2' && empty($userid_job)))) { + // 条件解释:1、隐私号只针对企业。2、隐私号开启。(3、设置全部简历;或者4、设置未投递简历,且没有投递记录) + $resume['privacy_status'] = 1; + } else { + $resume['m_status'] = 1; + } + $resume['username_n'] = $resume['name']; + } else { + + //此处获取每日最大限制 + if ($usertype == 3) { + $tmpField = '`lt_down_resume` AS down_resume, `rating_type`'; + } else { + $tmpField = '`down_resume`, `rating_type`'; + $suid = !empty($spid) ? $spid : $uid; + } + require_once('statis.model.php'); + $statisM = new statis_model($this->db, $this->def); + $row = $statisM->getInfo($suid, array('usertype' => $usertype, 'field' => $tmpField)); + + if ($row['rating_type'] == 2) { + + require_once('company.model.php'); + $comM = new company_model($this->db, $this->def); + $today = strtotime('today'); + $nid = $comM->comVipDayActionCheck('resume', $uid); + $dnum = $this->select_num('down_resume', array('comid' => $uid, 'downtime' => array('>', $today))); + + if ($nid != 1) { + $row['down_resume'] = 0; + } else { + $row['down_resume'] = $row['down_resume'] - $dnum; // 时间会员今日已下载 } } - } - } - - if(isset($data['reward'])){ - if($data['reward']>1 && $data['reward']!=20){ - $resume['m_status'] = 1; - }elseif($data['reward']==1){ - $resume['m_status'] = 2; - } - } - $tj = $this->getTj(array('edu'=>$user_edu,'train'=>$user_training,'work'=>$user_work,'xm'=>$user_xm,'skill'=>$user_skill , 'show'=>$user_show)); - - $resume['per'] = sprintf('%.2f%%',($expect['dnum']/$expect['hits'])*100); - - $resume['description'] = str_replace(array('\r','\n'), array('<br/>','<br/>'), strip_tags($resume['description'],'\r,\n')); - $resume['user_doc'] = isset($user_doc) ? $user_doc : array(); - $resume['user_edu'] = $user_edu; - $resume['user_tra'] = $user_training; - $resume['user_work'] = $user_work; - $resume['user_other'] = $user_other; - $resume['user_xm'] = $user_xm; - $resume['user_skill'] = $user_skill; - $resume['user_show'] = $user_show; - $resume['tj'] = $tj; - - return $resume; - } - /** - * 企业、猎头通过uid查看用户姓名 - */ - function getUnameByUid($uid, $data = array()) - { - $name = ''; - if (empty($data['comid']) || empty($data['usertype'])){ - return $name; - } - // 首先按照后台、个人设置的姓名显示方式处理 - $resume = $this->select_once('resume',array('uid'=>$uid),'name,sex,nametype,def_job'); - $setarr = array('name'=>$resume['name'],'sex'=>$resume['sex'],'eid'=>$resume['def_job'],'nametype'=>$resume['nametype']); - $name = $this->setUsernameShow($setarr); - - if ($data['usertype'] == 2){ - // 企业会员 - $statis = $this->select_once('company_statis',array('uid'=>$data['comid']),'rating'); - $comlook = explode(',', $this->config['com_look']); - if (in_array($statis['rating'], $comlook)){ - // 后台设置企业的会员套餐可以免费查看和下载投递简历,返回真实姓名 - $name = $resume['name']; - return $name; - } - } - // 有下载记录,返回真实姓名 - $down = $this->select_num('down_resume', array('uid'=>$uid, 'comid'=>$data['comid'], 'usertype'=>$data['usertype'])); - if ($down){ - $name = $resume['name']; - } - return $name; - } + + if (isVip($row['vip_etime']) && $row['down_resume'] > 0) { + + if ($this->config['com_lietou_job'] == 1) { + + if ($usertype == 2) { + $jobNum = $this->select_num('company_job', array('uid' => $uid, 'state' => 1, 'r_status' => 1, 'status' => 0)); + $ltJobNum = $this->select_num('lt_job', array('uid' => $uid, 'zp_status' => 0, 'status' => 1, 'r_status' => 1)); + $listNum = $jobNum + $ltJobNum; + } + if ($usertype == 3) { + $listNum = $this->select_num('lt_job', array('uid' => $uid, 'zp_status' => 0, 'status' => 1, 'r_status' => 1)); + } + + if (intval($listNum) > 0) { + $resume['showcontactflag'] = true; + $resume['downresumes'] = $row['down_resume']; // 剩余下载量(时间会员每人剩余/套餐会员总剩余量) + } + } else { + + $resume['showcontactflag'] = true; + $resume['downresumes'] = $row['down_resume']; // 剩余下载量(时间会员每人剩余/套餐会员总剩余量) + } + } + } + } + + if (isset($data['reward'])) { + if ($data['reward'] > 1 && $data['reward'] != 20) { + $resume['m_status'] = 1; + } elseif ($data['reward'] == 1) { + $resume['m_status'] = 2; + } + } + $tj = $this->getTj(array('edu' => $user_edu, 'train' => $user_training, 'work' => $user_work, 'xm' => $user_xm, 'skill' => $user_skill, 'show' => $user_show)); + + $resume['per'] = sprintf('%.2f%%', ($expect['dnum'] / $expect['hits']) * 100); + + $resume['description'] = str_replace(array('\r', '\n'), array('<br/>', '<br/>'), strip_tags($resume['description'], '\r,\n')); + $resume['user_doc'] = isset($user_doc) ? $user_doc : array(); + $resume['user_edu'] = $user_edu; + $resume['user_tra'] = $user_training; + $resume['user_work'] = $user_work; + $resume['user_other'] = $user_other; + $resume['user_xm'] = $user_xm; + $resume['user_skill'] = $user_skill; + $resume['user_show'] = $user_show; + $resume['tj'] = $tj; + + return $resume; + } + + /** + * 企业、猎头通过uid查看用户姓名 + */ + function getUnameByUid($uid, $data = array()) { + $name = ''; + if (empty($data['comid']) || empty($data['usertype'])) { + return $name; + } + // 首先按照后台、个人设置的姓名显示方式处理 + $resume = $this->select_once('resume', array('uid' => $uid), 'name,sex,nametype,def_job'); + $setarr = array('name' => $resume['name'], 'sex' => $resume['sex'], 'eid' => $resume['def_job'], 'nametype' => $resume['nametype']); + $name = $this->setUsernameShow($setarr); + + if ($data['usertype'] == 2) { + // 企业会员 + $statis = $this->select_once('company_statis', array('uid' => $data['comid']), 'rating'); + $comlook = explode(',', $this->config['com_look']); + if (in_array($statis['rating'], $comlook)) { + // 后台设置企业的会员套餐可以免费查看和下载投递简历,返回真实姓名 + $name = $resume['name']; + return $name; + } + } + // 有下载记录,返回真实姓名 + $down = $this->select_num('down_resume', array('uid' => $uid, 'comid' => $data['comid'], 'usertype' => $data['usertype'])); + if ($down) { + $name = $resume['name']; + } + return $name; + } + //个人随机默认头像 - public function deflogo($data = array()){ - + public function deflogo($data = array()) { + $logo = ''; $sex = $data['sex']; - - if($sex=='2'){ + + if ($sex == '2') { $icon_arr = $this->config['sy_member_iconv_arr']; - }else{ + } else { $icon_arr = $this->config['sy_member_icon_arr']; } - if(!empty($icon_arr)){ - $key = array_rand($icon_arr,1); + if (!empty($icon_arr)) { + $key = array_rand($icon_arr, 1); $logo = $icon_arr[$key]; } - + return $logo; } - + /** * 创建简历 * @param null[] $data * @return array|string[] */ - public function addInfo($data=array('uid'=>null,'eData'=>null,'rData'=>null,'workData'=>null,'eduData'=>null,'proData'=>null,'utype'=>null)){ - // 字段检测 - - $check = $this->setFieldCheck($data); - - $uid = $data['uid']; - - if ($check['msg']){ - return $check; - } - - // 保存基本信息 - if (!empty($data['rData']) && !empty($uid)){ - - $mData = array( - 'email' => $data['rData']['email'], - 'moblie' => $data['rData']['telphone'] - ); - - $num = $this->select_num('resume',array('uid'=>$uid)); - + public function addInfo($data = array('uid' => null, 'eData' => null, 'rData' => null, 'workData' => null, 'eduData' => null, 'proData' => null, 'utype' => null)) { + // 字段检测 + + $check = $this->setFieldCheck($data); + + $uid = $data['uid']; + + if ($check['msg']) { + return $check; + } + + // 保存基本信息 + if (!empty($data['rData']) && !empty($uid)) { + + $mData = array( + 'email' => $data['rData']['email'], + 'moblie' => $data['rData']['telphone'] + ); + + $num = $this->select_num('resume', array('uid' => $uid)); + if ($num > 0) { - - $result = $this->upResumeInfo(array('uid' => $uid), array('mData' => $mData, 'rData' => $data['rData'], 'utype' => 'user', 'source' => $data['source'])); + + $result = $this->upResumeInfo(array('uid' => $uid), array('mData' => $mData, 'rData' => $data['rData'], 'utype' => 'user', 'source' => $data['source'])); } else { - + $this->insert_into('resume', array('uid' => $uid)); - - $result = $this->upResumeInfo(array('uid' => $uid), array('mData' => $mData, 'rData' => $data['rData'], 'utype' => 'user', 'source' => $data['source'])); + + $result = $this->upResumeInfo(array('uid' => $uid), array('mData' => $mData, 'rData' => $data['rData'], 'utype' => 'user', 'source' => $data['source'])); } - - if ($result['errcode'] == 8){ - - return $result; - } - } - - // 添加求职意向 - if (!empty($data['eData'])){ - $eData = $data['eData']; - //先检查后台设置的最大简历数量 - $enum = $this -> getExpectNum(array('uid'=>$uid)); - - //用户操作的,判断简历是否超限 - if ($data['utype'] == 'user'){ - - if($this->config['user_number'] && $enum >= $this->config['user_number']){ - - return array('errcode'=>8,'msg'=>'您最多可以拥有'.$this->config['user_number'].'份简历'); - } - } - if (isset($result['r_status'])){ - - // 根据上面 upResumeInfo 返回的参数进行修改账号审核状态 - $eData['r_status'] = $result['r_status']; - } - // 拥有简历数量为0,新添加的简历设为默认简历 - $eData['defaults'] = $enum == 0 ? 1 : 0; - - $return['id'] = $this -> insert_into('resume_expect',$eData); - - if ($return['id']){ - - // 处理简历多职位和多城市 - $this->city_job($return['id'], $uid, $eData['lastupdate'], $eData['city_classid'], $eData['job_classid']); - - $this -> update_once('member_statis',array('resume_num'=>$enum + 1),array('uid'=>$uid)); - // 创建简历基础完成度 - $integrity = 55; - // 基础平均工作时长 - $whour = 0; - // 处理user_resume表数据 - $uResume = array( - 'uid' => $uid, - 'eid' => $return['id'], - 'expect' => 1, - 'work' => 0, - 'edu' => 0, - 'project' => 0 - ); - - if ($data['utype'] == 'user'){ - // 处理工作经历 - if (!empty($data['workData'])){ - // 处理平均工作时长 - $whour = 0; - $hour = array(); - + + if ($result['errcode'] == 8) { + + return $result; + } + } + + // 添加求职意向 + if (!empty($data['eData'])) { + $eData = $data['eData']; + //先检查后台设置的最大简历数量 + $enum = $this->getExpectNum(array('uid' => $uid)); + + //用户操作的,判断简历是否超限 + if ($data['utype'] == 'user') { + + if ($this->config['user_number'] && $enum >= $this->config['user_number']) { + + return array('errcode' => 8, 'msg' => '您最多可以拥有' . $this->config['user_number'] . '份简历'); + } + } + if (isset($result['r_status'])) { + + // 根据上面 upResumeInfo 返回的参数进行修改账号审核状态 + $eData['r_status'] = $result['r_status']; + } + // 拥有简历数量为0,新添加的简历设为默认简历 + $eData['defaults'] = $enum == 0 ? 1 : 0; + + $return['id'] = $this->insert_into('resume_expect', $eData); + + if ($return['id']) { + + // 处理简历多职位和多城市 + $this->city_job($return['id'], $uid, $eData['lastupdate'], $eData['city_classid'], $eData['job_classid']); + + $this->update_once('member_statis', array('resume_num' => $enum + 1), array('uid' => $uid)); + // 创建简历基础完成度 + $integrity = 55; + // 基础平均工作时长 + $whour = 0; + // 处理user_resume表数据 + $uResume = array( + 'uid' => $uid, + 'eid' => $return['id'], + 'expect' => 1, + 'work' => 0, + 'edu' => 0, + 'project' => 0 + ); + + if ($data['utype'] == 'user') { + // 处理工作经历 + if (!empty($data['workData'])) { + // 处理平均工作时长 + $whour = 0; + $hour = array(); + foreach ($data['workData'] as $key => $value) { - - $data['workData'][$key]['eid'] = $return['id']; - $this -> insert_into('resume_work',$data['workData'][$key]); + + $data['workData'][$key]['eid'] = $return['id']; + $this->insert_into('resume_work', $data['workData'][$key]); $uResume['work']++; // 计算每份工作时长(按月) if ($value['edate']) { - + $workTime = ceil(($value['edate'] - $value['sdate']) / (30 * 86400)); } else { $workTime = ceil((time() - $value['sdate']) / (30 * 86400)); @@ -1639,979 +1632,1051 @@ } // 更新当前简历时长字段 $avghour = ceil($whour / count($hour)); - - - $integrity += 10; - - } - // 处理教育经历 - if (!empty($data['eduData'])){ - - foreach ($data['eduData'] as $key => $value) { - - $data['eduData'][$key]['eid'] = $return['id']; - - $this -> insert_into('resume_edu',$data['eduData'][$key]); - + + + $integrity += 10; + + } + // 处理教育经历 + if (!empty($data['eduData'])) { + + foreach ($data['eduData'] as $key => $value) { + + $data['eduData'][$key]['eid'] = $return['id']; + + $this->insert_into('resume_edu', $data['eduData'][$key]); + $uResume['edu']++; - + } - - $integrity += 10; - - } - // 处理项目经历 - if (!empty($data['proData'])){ - - foreach ($data['proData'] as $key => $value) { - - $data['proData'][$key]['eid'] = $return['id']; - - $this -> insert_into('resume_project',$data['proData'][$key]); - + + $integrity += 10; + + } + // 处理项目经历 + if (!empty($data['proData'])) { + + foreach ($data['proData'] as $key => $value) { + + $data['proData'][$key]['eid'] = $return['id']; + + $this->insert_into('resume_project', $data['proData'][$key]); + $uResume['project']++; - + } - - $integrity += 8; - - } - // 记录会员日志 - $this -> addMemberLog($uid, 1, '创建一份简历(ID:'.$return['id'].')', 2, 1); - - //预警处理 - require_once('warning.model.php'); - $warningM = new warning_model($this->db, $this->def); - $warningM -> warning(3, $uid); - - require_once ('cookie.model.php'); - $cookieM = new cookie_model($this->db, $this->def); - $cookieM -> SetCookie('delay', '', time() - 60); - } - - // 创建简历,修改默认简历 - if ($enum == 0){ - - $this -> update_once('resume',array('def_job'=>$return['id'],'lastupdate'=>$eData['lastupdate'],'resumetime'=>$eData['ctime']),array('uid'=>$uid)); - - if ($data['utype'] == 'user'){ - // 创建首份简历发微信红包 - require_once('wxredpack.model.php'); - $wxRedPackM = new wxredpack_model($this->db, $this->def); - $wxRedPackM ->sendRedPack(array('type'=>3,'uid'=>$uid)); - // 创建首份简历加积分,先要检测是否已获得过此积分 - $ipay = $this -> select_once('company_pay',array('com_id'=>$uid,'pay_remark'=>'发布简历')); - + + $integrity += 8; + + } + // 记录会员日志 + $this->addMemberLog($uid, 1, '创建一份简历(ID:' . $return['id'] . ')', 2, 1); + + //预警处理 + require_once('warning.model.php'); + $warningM = new warning_model($this->db, $this->def); + $warningM->warning(3, $uid); + + require_once('cookie.model.php'); + $cookieM = new cookie_model($this->db, $this->def); + $cookieM->SetCookie('delay', '', time() - 60); + } + + // 创建简历,修改默认简历 + if ($enum == 0) { + + $this->update_once('resume', array('def_job' => $return['id'], 'lastupdate' => $eData['lastupdate'], 'resumetime' => $eData['ctime']), array('uid' => $uid)); + + if ($data['utype'] == 'user') { + // 创建首份简历发微信红包 + require_once('wxredpack.model.php'); + $wxRedPackM = new wxredpack_model($this->db, $this->def); + $wxRedPackM->sendRedPack(array('type' => 3, 'uid' => $uid)); + // 创建首份简历加积分,先要检测是否已获得过此积分 + $ipay = $this->select_once('company_pay', array('com_id' => $uid, 'pay_remark' => '发布简历')); + if (empty($ipay)) { - + require_once('integral.model.php'); - $integralM = new integral_model($this->db, $this->def); + $integralM = new integral_model($this->db, $this->def); $integralM->invtalCheck($uid, 1, 'integral_add_resume', '发布简历'); } - } - }else { - - $this -> update_once('resume',array('resumetime'=>$eData['ctime']),array('uid'=>$uid)); - } - // 增加简历附表数据 - $this -> insert_into('user_resume', $uResume); - // 向简历表中更新基本信息中已有数据 - $resume = $this->select_once('resume',array('uid'=>$uid),'`name`,`idcard_status`,`status`,`photo`,`defphoto`, `phototype`,`did`'); - - $upExpect = array( - 'did' => $resume['did'], - 'integrity' => $integrity, - 'whour' => $whour, - 'avghour' => $avghour, - 'uname' => $resume['name'], - 'status' => $resume['status'], - 'photo' => $resume['photo'], - 'defphoto' => $resume['defphoto'], - 'phototype' => $resume['phototype'], - 'idcard_status' => $resume['idcard_status'] - ); - + } + } else { + + $this->update_once('resume', array('resumetime' => $eData['ctime']), array('uid' => $uid)); + } + // 增加简历附表数据 + $this->insert_into('user_resume', $uResume); + // 向简历表中更新基本信息中已有数据 + $resume = $this->select_once('resume', array('uid' => $uid), '`name`,`idcard_status`,`status`,`photo`,`defphoto`, `phototype`,`did`'); + + $upExpect = array( + 'did' => $resume['did'], + 'integrity' => $integrity, + 'whour' => $whour, + 'avghour' => $avghour, + 'uname' => $resume['name'], + 'status' => $resume['status'], + 'photo' => $resume['photo'], + 'defphoto' => $resume['defphoto'], + 'phototype' => $resume['phototype'], + 'idcard_status' => $resume['idcard_status'] + ); + //内容检测 - if ($data['utype'] == 'user'){ - - $reusmeData['expect'] = $eData; + if ($data['utype'] == 'user') { + + $reusmeData['expect'] = $eData; $reusmeData['workData'] = $data['workData']; - $reusmeData['eduData'] = $data['eduData']; - $reusmeData['projectData'] = $data['proData']; - - $pass = $this->resumeConCheck($reusmeData,array('uid'=>$uid,'usertype'=>1,'eid'=>$return['id'],'source'=>$data['source'])); - - if(!$pass){ - $upExpect['state'] = 0; + $reusmeData['eduData'] = $data['eduData']; + $reusmeData['projectData'] = $data['proData']; + + $pass = $this->resumeConCheck($reusmeData, array('uid' => $uid, 'usertype' => 1, 'eid' => $return['id'], 'source' => $data['source'])); + + if (!$pass) { + $upExpect['state'] = 0; } } - if(isset($upExpect['state'])){ - $this->setExpectState($upExpect,array('id'=>$return['id'], 'uid'=> $uid)); - }else{ - $this->update_once('resume_expect', $upExpect, array('id'=>$return['id'], 'uid'=> $uid)); + if (isset($upExpect['state'])) { + $this->setExpectState($upExpect, array('id' => $return['id'], 'uid' => $uid)); + } else { + $this->update_once('resume_expect', $upExpect, array('id' => $return['id'], 'uid' => $uid)); } - - // 管理员操作记录管理员日志 - if ($data['utype'] == 'admin'){ - - require_once 'log.model.php'; - $logM = new log_model($this->db, $this->def); - $logM -> addAdminLog('添加简历(ID:'.$return['id'].')'); - } - $return['errcode'] = 9; - - $return['msg'] = '保存成功'; - if(isset($eData['state']) && $eData['state']==0){ + + // 管理员操作记录管理员日志 + if ($data['utype'] == 'admin') { + + require_once 'log.model.php'; + $logM = new log_model($this->db, $this->def); + $logM->addAdminLog('添加简历(ID:' . $return['id'] . ')'); + } + $return['errcode'] = 9; + + $return['msg'] = '保存成功'; + if (isset($eData['state']) && $eData['state'] == 0) { require_once 'admin.model.php'; - $adminM = new admin_model($this->db, $this->def); - $wxtempMsg='有新的简历需要审核,用户《'.$resume['name'].'》新增简历《'.$eData['name'].'》'; - $adminM -> sendAdminMsg(array('first'=>$wxtempMsg,'type'=>6)); + $adminM = new admin_model($this->db, $this->def); + $wxtempMsg = '有新的简历需要审核,用户《' . $resume['name'] . '》新增简历《' . $eData['name'] . '》'; + $adminM->sendAdminMsg(array('first' => $wxtempMsg, 'type' => 6)); } - - }else { - - $return['errcode'] = 8; - $return['msg'] = '保存失败'; - $this->addErrorLog($uid,2,'简历保存失败'); - } - } - return $return; - } - /** - * 创建简历字段检测 - */ - private function setFieldCheck($data = array()){ - - $return = array(); - - $rData = $data['rData']; - $eData = $data['eData']; - $workData = $data['workData']; - $eduData = $data['eduData']; - $proData = $data['proData']; - - $return['errcode'] = 8; - - if (!empty($rData)){ - - if($rData['name']=='') {$return['msg'] == '请填写真实姓名';} - - if($rData['sex']=='') {$return['msg'] == '请选择性别';} - - if($rData['birthday']=='') {$return['msg'] == '请选择出生年月';} - - if($rData['living']=='') {$return['msg'] == '请填写现居住地';} - - if($rData['edu']=='') {$return['msg'] == '请选择最高学历';} - - if($rData['exp']=='') {$return['msg'] == '请选择工作经验';} - - if($rData['telphone']=='') {$return['msg'] == '请填写手机号码';} - } - - if (!empty($eData)){ - - if($eData['name']=='') {$return['msg'] == '请填写期望职位';} - - if($eData['hy']=='') {$return['msg'] == '请选择从事行业';} - - if($eData['job_class']=='') {$return['msg'] == '请选择期望职位';} - - if($eData['minsalary']=='') {$return['msg'] == '请填写期望薪资';} - - elseif($eData['maxsalary']>0 && (int)$eData['minsalary'] > (int)$eData['maxsalary']){$return['msg'] == '最高薪资必须大于最低薪资';} - - if($eData['city_class']==''){$return['msg'] == '请选择工作地区';} - - if($eData['type']=='') {$return['msg'] == '请选择工作性质';} - - if($eData['report']=='') {$return['msg'] == '请选择到岗时间';} - - if($eData['jobstatus']=='') {$return['msg'] == '请选择求职状态';} - } - - if (!empty($workData)){ - - if($workData['workname']=='') {$return['msg'] == '请填写公司名称';} - - if($workData['worksdate']==''){$return['msg'] == '请填写工作时间';} - - if($workData['worktitle']==''){$return['msg'] == '请填写公司职务';} - - if($workData['workedate'] < $workData['worksdate']){$return['msg'] == '工作时间不合理';} - } - - if (!empty($eduData)){ - - if($eduData['eduname']=='') {$return['msg'] == '请填写学校名称';} - - if($eduData['edusdate']=='') {$return['msg'] == '请填写在校时间';} - - if($eduData['eduedate']=='') {$return['msg'] == '请填写离校或预计离校时间';} - - if($eduData['education']==''){$return['msg'] == '请选择相关学历';} - - if($eduData['eduspec']=='') {$return['msg'] == '请填写相关专业';} - - if($eduData['eduedate'] < $eduData['edusdate']){$return['msg'] == '在校时间不合理';} - } - - if (!empty($proData)){ - - if($proData['proname']=='') {$return['msg'] == '请填写项目名称';} - - if($proData['prosdate']==''){$return['msg'] == '请填写项目开始时间';} - - if($proData['proedate']==''){$return['msg'] == '请填写项目结束时间';} - - if($proData['protitle']==''){$return['msg'] == '请填写项目担任职务';} - - if($eduData['proedate'] < $eduData['prosdate']){$return['msg'] == '项目时间不合理';} - } - return $return; + + } else { + + $return['errcode'] = 8; + $return['msg'] = '保存失败'; + $this->addErrorLog($uid, 2, '简历保存失败'); + } + } + return $return; } - + + /** + * 创建简历字段检测 + */ + private function setFieldCheck($data = array()) { + + $return = array(); + + $rData = $data['rData']; + $eData = $data['eData']; + $workData = $data['workData']; + $eduData = $data['eduData']; + $proData = $data['proData']; + + $return['errcode'] = 8; + + if (!empty($rData)) { + + if ($rData['name'] == '') { + $return['msg'] == '请填写真实姓名'; + } + + if ($rData['sex'] == '') { + $return['msg'] == '请选择性别'; + } + + if ($rData['birthday'] == '') { + $return['msg'] == '请选择出生年月'; + } + + if ($rData['living'] == '') { + $return['msg'] == '请填写现居住地'; + } + + if ($rData['edu'] == '') { + $return['msg'] == '请选择最高学历'; + } + + if ($rData['exp'] == '') { + $return['msg'] == '请选择工作经验'; + } + + if ($rData['telphone'] == '') { + $return['msg'] == '请填写手机号码'; + } + } + + if (!empty($eData)) { + + if ($eData['name'] == '') { + $return['msg'] == '请填写期望职位'; + } + + if ($eData['hy'] == '') { + $return['msg'] == '请选择从事行业'; + } + + if ($eData['job_class'] == '') { + $return['msg'] == '请选择期望职位'; + } + + if ($eData['minsalary'] == '') { + $return['msg'] == '请填写期望薪资'; + } elseif ($eData['maxsalary'] > 0 && (int)$eData['minsalary'] > (int)$eData['maxsalary']) { + $return['msg'] == '最高薪资必须大于最低薪资'; + } + + if ($eData['city_class'] == '') { + $return['msg'] == '请选择工作地区'; + } + + if ($eData['type'] == '') { + $return['msg'] == '请选择工作性质'; + } + + if ($eData['report'] == '') { + $return['msg'] == '请选择到岗时间'; + } + + if ($eData['jobstatus'] == '') { + $return['msg'] == '请选择求职状态'; + } + } + + if (!empty($workData)) { + + if ($workData['workname'] == '') { + $return['msg'] == '请填写公司名称'; + } + + if ($workData['worksdate'] == '') { + $return['msg'] == '请填写工作时间'; + } + + if ($workData['worktitle'] == '') { + $return['msg'] == '请填写公司职务'; + } + + if ($workData['workedate'] < $workData['worksdate']) { + $return['msg'] == '工作时间不合理'; + } + } + + if (!empty($eduData)) { + + if ($eduData['eduname'] == '') { + $return['msg'] == '请填写学校名称'; + } + + if ($eduData['edusdate'] == '') { + $return['msg'] == '请填写在校时间'; + } + + if ($eduData['eduedate'] == '') { + $return['msg'] == '请填写离校或预计离校时间'; + } + + if ($eduData['education'] == '') { + $return['msg'] == '请选择相关学历'; + } + + if ($eduData['eduspec'] == '') { + $return['msg'] == '请填写相关专业'; + } + + if ($eduData['eduedate'] < $eduData['edusdate']) { + $return['msg'] == '在校时间不合理'; + } + } + + if (!empty($proData)) { + + if ($proData['proname'] == '') { + $return['msg'] == '请填写项目名称'; + } + + if ($proData['prosdate'] == '') { + $return['msg'] == '请填写项目开始时间'; + } + + if ($proData['proedate'] == '') { + $return['msg'] == '请填写项目结束时间'; + } + + if ($proData['protitle'] == '') { + $return['msg'] == '请填写项目担任职务'; + } + + if ($eduData['proedate'] < $eduData['prosdate']) { + $return['msg'] == '项目时间不合理'; + } + } + return $return; + } + /** * 添加修改粘贴简历 * @param $post * @return array */ - public function addDocInfo($post) - { - - $eid = intval($post['eid']); - $uid = intval($post['uid']); - $usertype = intval($post['usertype']); - $expect = $post['expect'];//插入到resume_expect数据 - - $doc = $post['doc']; - $doctype = $post['doctype'];//判断是否是粘贴简历 - - $expect['lastupdate'] = time(); - - if($doctype){ - - $expect['doc'] = 1; - } - - if(!$eid){ - + public function addDocInfo($post) { + + $eid = intval($post['eid']); + $uid = intval($post['uid']); + $usertype = intval($post['usertype']); + $expect = $post['expect'];//插入到resume_expect数据 + + $doc = $post['doc']; + $doctype = $post['doctype'];//判断是否是粘贴简历 + + $expect['lastupdate'] = time(); + + if ($doctype) { + + $expect['doc'] = 1; + } + + if (!$eid) { + //判断简历数是否超过后台设置 - $num = $this -> getExpectNum(array('uid'=>$uid)); - if($this->config['user_number'] && $num >= $this->config['user_number']){ - - return array('errcode'=>1,'msg'=>'您最多可以拥有'.$this->config['user_number'].'份简历'); + $num = $this->getExpectNum(array('uid' => $uid)); + if ($this->config['user_number'] && $num >= $this->config['user_number']) { + + return array('errcode' => 1, 'msg' => '您最多可以拥有' . $this->config['user_number'] . '份简历'); } - + //拥有简历数量为0,新添加的简历设为默认简历 - $expect['defaults'] = $num == 0 ? 1 : 0; - - $expect['ctime'] = time(); - - $nid = $this -> insert_into('resume_expect',$expect); - $eid = $nid; - - if($doctype){ - $this->insert_into('resume_doc',array('uid'=>$uid,'eid'=>$eid,'doc'=>$doc)); - } - if($nid){ - $qdata = array( - 'uid'=>$uid, - 'eid'=>$eid, - 'expect'=>1 - ); - $this->insert_into('user_resume',$qdata); - - $this->update_once('member_statis',array('resume_num'=>array('+',1)),array('uid'=>$uid)); - if($num==0){ - $this->update_once('resume',array('def_job'=>$eid),array('uid'=>$uid)); - } - } - $etype = 1; - $msg = '添加'; - }else{ - - $oldresume = $this->getExpect(array('uid'=>$uid),array('field'=>'`city_classid`,`job_classid`,`state`')); - - $nid = $this->update_once('resume_expect', $expect,array('id'=>$eid,'uid'=>$uid)); - if($doctype){ - $this->update_once('resume_doc',array('doc'=>$doc),array('uid'=>$uid,'eid'=>$eid)); - } - $etype = 2; - $msg = '修改'; - } - if($nid){ - - //判断是否已获取发布简历送积分 - $paynum = $this->select_num('company_pay',array('com_id'=>$uid,'pay_remark'=>'发布简历')); - - if($paynum < 1){ - - include_once('integral.model.php'); - $integralM = new integral_model($this->db, $this->def); - $integralM->invtalCheck($uid,$usertype,'integral_add_resume','发布简历'); - } - - //更新与resume里相同的字段 - $resume = $this->getResumeInfo(array('uid'=>$uid),array('field'=>'`name`,`edu`,`exp`,`sex`,`birthday`,`idcard_status`,`status`,`r_status`,`photo`,`phototype`')); - - $rdata = array( - 'edu' => $resume['edu'], - 'exp' => $resume['exp'], - 'uname' => $resume['name'], - 'sex' => $resume['sex'], - 'birthday' => $resume['birthday'], - 'idcard_status' => $resume['idcard_status'], - 'status' => $resume['status'], - 'state' => $resume['r_status']==2 ? 0 : $this->config['resume_status'], - 'photo' => $resume['photo'], - 'phototype' => $resume['phototype'] - ); - - $expectS = $this->getExpect(array('id'=>$eid)); - - if(!empty($expectS['edu'])){ - if( $this->config['user_revise_state']=='0'){ - - $rdata['state'] = 0; - - $wxTempMsg = '有新的简历需要审核,用户《'.$resume['name'].'》修改简历《'.$post['name'].'》'; + $expect['defaults'] = $num == 0 ? 1 : 0; + + $expect['ctime'] = time(); + + $nid = $this->insert_into('resume_expect', $expect); + $eid = $nid; + + if ($doctype) { + $this->insert_into('resume_doc', array('uid' => $uid, 'eid' => $eid, 'doc' => $doc)); + } + if ($nid) { + $qdata = array( + 'uid' => $uid, + 'eid' => $eid, + 'expect' => 1 + ); + $this->insert_into('user_resume', $qdata); + + $this->update_once('member_statis', array('resume_num' => array('+', 1)), array('uid' => $uid)); + if ($num == 0) { + $this->update_once('resume', array('def_job' => $eid), array('uid' => $uid)); } } - - $resume_v = array('lastupdate'=>time()); - - if ($post['utype'] == 'user'){ - - $resumeData['docData'][] = array('doc'=>$doc); - - $pass2 = $this->resumeConCheck($resumeData,array('uid'=>$uid,'usertype'=>1,'eid'=>$eid)); - if(!$pass2){ - $rdata['state'] = 0; - } - - $pass1 = $this->infoConCheck($expect,array('uid'=>$uid,'usertype'=>1,'source'=>$post['source'])); - if(!$pass1){ - $resume_v['r_status'] = 0; - $rdata['r_status'] = 0; - $rdata['state'] = 0; + $etype = 1; + $msg = '添加'; + } else { + + $oldresume = $this->getExpect(array('uid' => $uid), array('field' => '`city_classid`,`job_classid`,`state`')); + + $nid = $this->update_once('resume_expect', $expect, array('id' => $eid, 'uid' => $uid)); + if ($doctype) { + $this->update_once('resume_doc', array('doc' => $doc), array('uid' => $uid, 'eid' => $eid)); + } + $etype = 2; + $msg = '修改'; + } + if ($nid) { + + //判断是否已获取发布简历送积分 + $paynum = $this->select_num('company_pay', array('com_id' => $uid, 'pay_remark' => '发布简历')); + + if ($paynum < 1) { + + include_once('integral.model.php'); + $integralM = new integral_model($this->db, $this->def); + $integralM->invtalCheck($uid, $usertype, 'integral_add_resume', '发布简历'); + } + + //更新与resume里相同的字段 + $resume = $this->getResumeInfo(array('uid' => $uid), array('field' => '`name`,`edu`,`exp`,`sex`,`birthday`,`idcard_status`,`status`,`r_status`,`photo`,`phototype`')); + + $rdata = array( + 'edu' => $resume['edu'], + 'exp' => $resume['exp'], + 'uname' => $resume['name'], + 'sex' => $resume['sex'], + 'birthday' => $resume['birthday'], + 'idcard_status' => $resume['idcard_status'], + 'status' => $resume['status'], + 'state' => $resume['r_status'] == 2 ? 0 : $this->config['resume_status'], + 'photo' => $resume['photo'], + 'phototype' => $resume['phototype'] + ); + + $expectS = $this->getExpect(array('id' => $eid)); + + if (!empty($expectS['edu'])) { + if ($this->config['user_revise_state'] == '0') { + + $rdata['state'] = 0; + + $wxTempMsg = '有新的简历需要审核,用户《' . $resume['name'] . '》修改简历《' . $post['name'] . '》'; } } - - if (isset($oldresume)){ - if ($oldresume['state'] == 3){ - - $rdata['state'] = 0; - - $wxTempMsg = '有新的简历需要审核,用户《'.$resume['name'].'》修改简历《'.$post['name'].'》'; + + $resume_v = array('lastupdate' => time()); + + if ($post['utype'] == 'user') { + + $resumeData['docData'][] = array('doc' => $doc); + + $pass2 = $this->resumeConCheck($resumeData, array('uid' => $uid, 'usertype' => 1, 'eid' => $eid)); + if (!$pass2) { + $rdata['state'] = 0; } - if ($oldresume['state'] != 0 && $rdata['state'] == 0){ - - $wxTempMsg = '有新的简历需要审核,用户《'.$resume['name'].'》修改简历《'.$post['name'].'》'; + + $pass1 = $this->infoConCheck($expect, array('uid' => $uid, 'usertype' => 1, 'source' => $post['source'])); + if (!$pass1) { + $resume_v['r_status'] = 0; + $rdata['r_status'] = 0; + $rdata['state'] = 0; } } - + + if (isset($oldresume)) { + if ($oldresume['state'] == 3) { + + $rdata['state'] = 0; + + $wxTempMsg = '有新的简历需要审核,用户《' . $resume['name'] . '》修改简历《' . $post['name'] . '》'; + } + if ($oldresume['state'] != 0 && $rdata['state'] == 0) { + + $wxTempMsg = '有新的简历需要审核,用户《' . $resume['name'] . '》修改简历《' . $post['name'] . '》'; + } + } + if (isset($wxTempMsg) && !empty($wxTempMsg)) { - + require_once 'admin.model.php'; $adminM = new admin_model($this->db, $this->def); - + $adminM->sendAdminMsg(array('first' => $wxTempMsg, 'type' => 6)); } - - $this->setExpectState($rdata,array('id'=>$eid)); - - $this->update_once('resume',$resume_v,array('uid'=>$uid)); - - // 处理简历职位和城市多选 - $oldCity = isset($oldresume['city_classid']) ? $oldresume['city_classid'] : ''; - $oldJob = isset($oldresume['job_classid']) ? $oldresume['job_classid'] : ''; - $this->city_job($eid,$uid,$expect['lastupdate'],$expect['city_classid'],$expect['job_classid'],$oldCity,$oldJob); - - if($doctype){ - $docmsg = '粘贴'; - } - if($etype==1 && $usertype && $uid){ - - $this->addMemberLog($uid,$usertype,$msg.$docmsg.'简历',2,2); - }elseif($etype==2 && $usertype && $uid){ - - $this->addMemberLog($uid,$usertype,$msg.$docmsg.'简历',2,1); - } - return array('errcode'=>9,'msg'=>$msg.'成功'); - }else{ - - $this->addErrorLog($uid,2,'粘贴简历'.$msg.'失败'); - return array('errcode'=>9,'msg'=>$msg.'失败'); - } - } - + $this->setExpectState($rdata, array('id' => $eid)); + + $this->update_once('resume', $resume_v, array('uid' => $uid)); + + // 处理简历职位和城市多选 + $oldCity = isset($oldresume['city_classid']) ? $oldresume['city_classid'] : ''; + $oldJob = isset($oldresume['job_classid']) ? $oldresume['job_classid'] : ''; + $this->city_job($eid, $uid, $expect['lastupdate'], $expect['city_classid'], $expect['job_classid'], $oldCity, $oldJob); + + if ($doctype) { + $docmsg = '粘贴'; + } + + if ($etype == 1 && $usertype && $uid) { + + $this->addMemberLog($uid, $usertype, $msg . $docmsg . '简历', 2, 2); + } elseif ($etype == 2 && $usertype && $uid) { + + $this->addMemberLog($uid, $usertype, $msg . $docmsg . '简历', 2, 1); + } + return array('errcode' => 9, 'msg' => $msg . '成功'); + } else { + + $this->addErrorLog($uid, 2, '粘贴简历' . $msg . '失败'); + return array('errcode' => 9, 'msg' => $msg . '失败'); + } + } + /** * 修改求职意向信息 - * @param $whereData | $id int:1 or array('in','1,2,3') - * @param array $data | port 刷新端口 sxlog: 1-需要添加刷新日志; + * @param $whereData | $id int:1 or array('in','1,2,3') + * @param array $data | port 刷新端口 sxlog: 1-需要添加刷新日志; * @return boolean | $return */ - public function upInfo($whereData, $data = array('eData' => null, 'utype' => null, 'port' => 1, 'sxlog' => null)) - { - + public function upInfo($whereData, $data = array('eData' => null, 'utype' => null, 'port' => 1, 'sxlog' => null)) { + if (!empty($whereData)) { - + //修改求职意向 if (!empty($data['eData'])) { - - $return['msg'] = '简历信息'; - - $eData = $data['eData']; - + + $return['msg'] = '简历信息'; + + $eData = $data['eData']; + //处理简历多职位、多城市 if ($eData['job_classid'] || $eData['city_classid'] && !empty($whereData['id'])) { - - $oldJob = $oldCity = ''; - - $oldExpect = $this->select_once('resume_expect', array('id' => $whereData['id']), 'uid,job_classid,city_classid,state'); - + + $oldJob = $oldCity = ''; + + $oldExpect = $this->select_once('resume_expect', array('id' => $whereData['id']), 'uid,job_classid,city_classid,state'); + if ($data['utype'] != 'admin' && $whereData['uid'] != $oldExpect['uid']) { - - $return['msg'] = '简历信息修改失败!'; - $return['errcode'] = 8; + + $return['msg'] = '简历信息修改失败!'; + $return['errcode'] = 8; return $return; } - + // 处理简历职位和城市多选 - $oldJob = isset($oldExpect['job_classid']) ? $oldExpect['job_classid'] : ''; - $oldCity = isset($oldExpect['city_classid']) ? $oldExpect['city_classid'] : ''; + $oldJob = isset($oldExpect['job_classid']) ? $oldExpect['job_classid'] : ''; + $oldCity = isset($oldExpect['city_classid']) ? $oldExpect['city_classid'] : ''; $this->city_job($whereData['id'], $oldExpect['uid'], $eData['lastupdate'], $eData['city_classid'], $eData['job_classid'], $oldCity, $oldJob); } - + //内容检测 if ($data['utype'] == 'user') { - - $reusmeData['expect'] = $eData; - - $pass = $this->resumeConCheck($reusmeData, array('uid' => $whereData['uid'], 'usertype' => 1, 'eid' => $whereData['id'], 'source' => $data['source'])); - + + $reusmeData['expect'] = $eData; + + $pass = $this->resumeConCheck($reusmeData, array('uid' => $whereData['uid'], 'usertype' => 1, 'eid' => $whereData['id'], 'source' => $data['source'])); + if (!$pass) { - - $eData['state'] = 0; - }else if (!isset($oldExpect)){ - - $oldExpect = $this->select_once('resume_expect', array('id' => $whereData['id']), 'state'); - if ($oldExpect['state'] == 3){ - - $eData['state'] = 0; + + $eData['state'] = 0; + } else if (!isset($oldExpect)) { + + $oldExpect = $this->select_once('resume_expect', array('id' => $whereData['id']), 'state'); + if ($oldExpect['state'] == 3) { + + $eData['state'] = 0; } - }else if ($oldExpect['state'] == 3){ - - $eData['state'] = 0; + } else if ($oldExpect['state'] == 3) { + + $eData['state'] = 0; } } - + if (isset($eData['state'])) { - - $return['id'] = $this->setExpectState($eData, $whereData); + + $return['id'] = $this->setExpectState($eData, $whereData); } else { - - $return['id'] = $this->update_once('resume_expect', $eData, $whereData); - - if (isset($eData['lastupdate']) && $data['sxlog'] == 1){ - + + $return['id'] = $this->update_once('resume_expect', $eData, $whereData); + + if (isset($eData['lastupdate']) && $data['sxlog'] == 1) { + require_once 'log.model.php'; - $logM = new log_model($this->db, $this->def); - - $logSxData = array( - 'uid' => $whereData['uid'], - 'resume_id' => $whereData['id'], - 'r_time' => $eData['lastupdate'], - 'port' => $data['port'], - 'ip' => fun_ip_get() + $logM = new log_model($this->db, $this->def); + + $logSxData = array( + 'uid' => $whereData['uid'], + 'resume_id' => $whereData['id'], + 'r_time' => $eData['lastupdate'], + 'port' => $data['port'], + 'ip' => fun_ip_get() ); - + $logM->addResumeSxLog($logSxData); } } - - $resume = $this->select_once('resume', array('uid' => $whereData['uid']), '`name`'); - $resumeinfo = $this->select_once('resume_expect', array('id' => $whereData['id']), '`name`'); - + + $resume = $this->select_once('resume', array('uid' => $whereData['uid']), '`name`'); + $resumeinfo = $this->select_once('resume_expect', array('id' => $whereData['id']), '`name`'); + if ($return['id']) { - + if ($data['utype'] == 'admin') { - + require_once 'log.model.php'; - $logM = new log_model($this->db, $this->def); + $logM = new log_model($this->db, $this->def); $logM->addAdminLog('修改简历信息(ID:' . $whereData['id'] . ')'); } - + if (isset($eData['state']) && $eData['state'] == 0) { - + require_once 'admin.model.php'; - $adminM = new admin_model($this->db, $this->def); - $wxTempMsg = '有新的简历需要审核,用户《' . $resume['name'] . '》修改简历《' . $resumeinfo['name'] . '》'; + $adminM = new admin_model($this->db, $this->def); + $wxTempMsg = '有新的简历需要审核,用户《' . $resume['name'] . '》修改简历《' . $resumeinfo['name'] . '》'; $adminM->sendAdminMsg(array('first' => $wxTempMsg, 'type' => 6)); } - $return['msg'] = '简历信息修改成功!'; - $return['errcode'] = 9; + $return['msg'] = '简历信息修改成功!'; + $return['errcode'] = 9; } else { - - $return['msg'] = '简历信息修改失败!'; - $return['errcode'] = 8; + + $return['msg'] = '简历信息修改失败!'; + $return['errcode'] = 8; } } - + return $return; } } - + /** * 查询求职意向 * @param $whereData * @param array $data * @return array */ - public function getExpect($whereData,$data = array()) - { - - $field = isset($data['field']) ? $data['field'] : '*'; - - $expect = $this -> select_once('resume_expect',$whereData, $field); - - if ($expect && !empty($data['needCache'])){ - //处理薪资 - if($expect['minsalary'] && $expect['maxsalary']){ - if($this ->config['resume_salarytype']==1){ - $expect['salary'] = $expect['minsalary'].'-'.$expect['maxsalary']; - }else{ - if($expect['maxsalary']<1000){ - if($this->config['resume_salarytype']==2){ - $expect['salary'] = '1千以下'; - }elseif($this->config['resume_salarytype']==3){ - $expect['salary'] = '1K以下'; - }elseif($this->config['resume_salarytype']==4){ - $expect['salary'] = '1k以下'; + public function getExpect($whereData, $data = array()) { + + $field = isset($data['field']) ? $data['field'] : '*'; + + $expect = $this->select_once('resume_expect', $whereData, $field); + + if ($expect && !empty($data['needCache'])) { + //处理薪资 + if ($expect['minsalary'] && $expect['maxsalary']) { + if ($this->config['resume_salarytype'] == 1) { + $expect['salary'] = $expect['minsalary'] . '-' . $expect['maxsalary']; + } else { + if ($expect['maxsalary'] < 1000) { + if ($this->config['resume_salarytype'] == 2) { + $expect['salary'] = '1千以下'; + } elseif ($this->config['resume_salarytype'] == 3) { + $expect['salary'] = '1K以下'; + } elseif ($this->config['resume_salarytype'] == 4) { + $expect['salary'] = '1k以下'; } - }else{ - $expect['salary'] = changeSalary($expect['minsalary']).'-'.changeSalary($expect['maxsalary']); + } else { + $expect['salary'] = changeSalary($expect['minsalary']) . '-' . changeSalary($expect['maxsalary']); } } - }elseif ($expect['minsalary']){ - if($this ->config['resume_salarytype']==1){ - $expect['salary'] = $expect['minsalary']; - }else{ - $expect['salary'] = changeSalary($expect['minsalary']); + } elseif ($expect['minsalary']) { + if ($this->config['resume_salarytype'] == 1) { + $expect['salary'] = $expect['minsalary']; + } else { + $expect['salary'] = changeSalary($expect['minsalary']); } - }else{ - - $expect['salary'] = '面议'; - } - - if ($data['cache']){ - - $cache = $data['cache']; - - }else{ - - $cache = $this -> getClass(array('user','city','job','hy')); - } - //处理职位类别id - if ($expect['job_classid'] ){ - - $job_classid = @explode(',',$expect['job_classid']); - - if(is_array($job_classid)){ - - foreach($job_classid as $v){ - - if($cache['job_name'][$v]){ - - $job_classname[$v] = $cache['job_name'][$v]; - - $jobclassid[] = $v; - } - } - $expect['jobArr'] = $jobclassid; - $expect['jobnameArr'] = $job_classname; - $expect['job_classid'] = pylode(',',$jobclassid); - $expect['job_classname'] = @implode(',',$job_classname); - } - } - //处理城市类别id - if ($expect['city_classid']){ - - $city_classid = @explode(',',$expect['city_classid']); - - if(is_array($city_classid)){ - - foreach($city_classid as $v){ - - if($cache['city_name'][$v]){ - - $city_classname[$v] = $cache['city_name'][$v]; - - $cityclassid[] = $v; - } - } - $expect['cityArr'] = $cityclassid; - $expect['citynameArr'] = $city_classname; - $expect['city_classid'] = pylode(',',$cityclassid); - $expect['city_classname'] = @implode(' ',$city_classname); - } - } - $expect['lastupdate_n'] = date('Y-m-d',$expect['lastupdate']); - if($expect['state']=='1'){ - $expect['r_status_n'] = '已审核'; - }elseif($expect['state']=='0'){ - $expect['r_status_n'] = '正在审核中'; - }elseif($expect['state']=='3'){ - $expect['r_status_n'] = '未通过审核'; - } - $expect['exp_n'] = $cache['userclass_name'][$expect['exp']]; - $expect['edu_n'] = $cache['userclass_name'][$expect['edu']]; - $expect['hy_n'] = isset($cache['industry_name'][$expect['hy']]) ? $cache['industry_name'][$expect['hy']] : '不限'; - $expect['report_n'] = $cache['userclass_name'][$expect['report']]; - $expect['type_n'] = $cache['userclass_name'][$expect['type']]; - $expect['jobstatus_n'] = $cache['userclass_name'][$expect['jobstatus']]; - - if ($expect['topdate'] > time()){ - $day = ($expect['topdate'] - strtotime(date('Y-m-d')))/86400; - $expect['top_day'] = (int)$day; + } else { + + $expect['salary'] = '面议'; } - if($data['member']){ - $ur = $this->getUserResumeInfo(array('eid'=>$expect['id'],'uid'=>$whereData['uid'])); - if ($ur['expect'] == 0){ + + if ($data['cache']) { + + $cache = $data['cache']; + + } else { + + $cache = $this->getClass(array('user', 'city', 'job', 'hy')); + } + //处理职位类别id + if ($expect['job_classid']) { + + $job_classid = @explode(',', $expect['job_classid']); + + if (is_array($job_classid)) { + + foreach ($job_classid as $v) { + + if ($cache['job_name'][$v]) { + + $job_classname[$v] = $cache['job_name'][$v]; + + $jobclassid[] = $v; + } + } + $expect['jobArr'] = $jobclassid; + $expect['jobnameArr'] = $job_classname; + $expect['job_classid'] = pylode(',', $jobclassid); + $expect['job_classname'] = @implode(',', $job_classname); + } + } + //处理城市类别id + if ($expect['city_classid']) { + + $city_classid = @explode(',', $expect['city_classid']); + + if (is_array($city_classid)) { + + foreach ($city_classid as $v) { + + if ($cache['city_name'][$v]) { + + $city_classname[$v] = $cache['city_name'][$v]; + + $cityclassid[] = $v; + } + } + $expect['cityArr'] = $cityclassid; + $expect['citynameArr'] = $city_classname; + $expect['city_classid'] = pylode(',', $cityclassid); + $expect['city_classname'] = @implode(' ', $city_classname); + } + } + $expect['lastupdate_n'] = date('Y-m-d', $expect['lastupdate']); + if ($expect['state'] == '1') { + $expect['r_status_n'] = '已审核'; + } elseif ($expect['state'] == '0') { + $expect['r_status_n'] = '正在审核中'; + } elseif ($expect['state'] == '3') { + $expect['r_status_n'] = '未通过审核'; + } + $expect['exp_n'] = $cache['userclass_name'][$expect['exp']]; + $expect['edu_n'] = $cache['userclass_name'][$expect['edu']]; + $expect['hy_n'] = isset($cache['industry_name'][$expect['hy']]) ? $cache['industry_name'][$expect['hy']] : '不限'; + $expect['report_n'] = $cache['userclass_name'][$expect['report']]; + $expect['type_n'] = $cache['userclass_name'][$expect['type']]; + $expect['jobstatus_n'] = $cache['userclass_name'][$expect['jobstatus']]; + + if ($expect['topdate'] > time()) { + $day = ($expect['topdate'] - strtotime(date('Y-m-d'))) / 86400; + $expect['top_day'] = (int)$day; + } + if ($data['member']) { + $ur = $this->getUserResumeInfo(array('eid' => $expect['id'], 'uid' => $whereData['uid'])); + if ($ur['expect'] == 0) { $expect['wstitle'] = '求职意向'; - - }elseif ($ur['work'] == 0){ - $expect['wstitle'] ='工作经历'; - $expect['wspcurl']= 'index.php?c=expect&e=' .$expect['id'] ."#work_upbox"; - }elseif ($ur['edu'] == 0){ - $expect['wstitle'] ='教育经历'; - $expect['wspcurl']= 'index.php?c=expect&e=' .$expect['id'] ."#edu_upbox"; - }elseif ($ur['project'] == 0){ - $expect['wstitle'] ='项目经历'; - $expect['wspcurl']= 'index.php?c=expect&e=' .$expect['id'] ."#project_upbox"; - }elseif ($ur['training'] == 0){ - $expect['wstitle'] ='培训经历'; - $expect['wspcurl']= 'index.php?c=expect&e=' .$expect['id'] ."#training_upbox"; - }elseif ($ur['skill'] == 0){ - $expect['wstitle'] ='职业技能'; - $expect['wspcurl']= 'index.php?c=expect&e=' .$expect['id'] ."#skill_upbox"; - }elseif($ur['other'] == 0){ - $expect['wstitle'] ='其他信息'; - $expect['wspcurl']= 'index.php?c=expect&e=' .$expect['id'] ."#other_upbox"; + + } elseif ($ur['work'] == 0) { + $expect['wstitle'] = '工作经历'; + $expect['wspcurl'] = 'index.php?c=expect&e=' . $expect['id'] . "#work_upbox"; + } elseif ($ur['edu'] == 0) { + $expect['wstitle'] = '教育经历'; + $expect['wspcurl'] = 'index.php?c=expect&e=' . $expect['id'] . "#edu_upbox"; + } elseif ($ur['project'] == 0) { + $expect['wstitle'] = '项目经历'; + $expect['wspcurl'] = 'index.php?c=expect&e=' . $expect['id'] . "#project_upbox"; + } elseif ($ur['training'] == 0) { + $expect['wstitle'] = '培训经历'; + $expect['wspcurl'] = 'index.php?c=expect&e=' . $expect['id'] . "#training_upbox"; + } elseif ($ur['skill'] == 0) { + $expect['wstitle'] = '职业技能'; + $expect['wspcurl'] = 'index.php?c=expect&e=' . $expect['id'] . "#skill_upbox"; + } elseif ($ur['other'] == 0) { + $expect['wstitle'] = '其他信息'; + $expect['wspcurl'] = 'index.php?c=expect&e=' . $expect['id'] . "#other_upbox"; } } - } - return $expect; - } - - //查询单个教育经历 - public function getResumeEdu($where = array(), $field = '*', $userclass_name = null){ - - $edu = $this -> select_once('resume_edu', $where, $field); - - if($edu){ - $edu['sdate_n'] = date('Y-m',$edu['sdate']); - - $edu['edate_n'] = $edu['edate'] == 0 ? '至今' : date('Y-m',$edu['edate']); - - //如没有传入缓存,重新调取 - if ($userclass_name == null){ - - $cache = $this -> getClass('user'); - - $userclass_name = $cache['userclass_name']; } - $edu['education_n'] = $userclass_name[$edu['education']]; - } - - return $edu; - } - /** - * 查询多个教育经历 $userclass_name 个人缓存,调用方法里已经有缓存的,可以先对学历进行处理 - */ - public function getResumeEdus($where = array(), $field = '*', $userclass_name = null){ - - $edus = $this->select_all('resume_edu', $where, $field); - - foreach ($edus as $k=>$v){ - $edus[$k]['content'] = str_replace('\r\n', '<br/>', strip_tags($v['content'],'\r\n')); - - $edus[$k]['sdate_n'] = date('Y-m',$v['sdate']); - - $edus[$k]['edate_n'] = $v['edate'] == 0 ? '至今' : date('Y-m',$v['edate']); - - $edus[$k]['date_n'] = $edus[$k]['sdate_n'].'-'.$edus[$k]['edate_n']; - - if ($userclass_name){ - - $edus[$k]['education_n'] = $userclass_name[$v['education']]; - } - - } - - return $edus; - } - //添加/修改 教育经历 - public function addResumeEdu($addData,$data = array()){ - - if ($data['where'] && !empty($data['where'])){ - - $type = 'up'; - $success = $this->update_once('resume_edu',$addData,$data['where']); - - } else { - $type = 'add'; - $success = $this->insert_into('resume_edu',$addData); - } - $fbData = array( - 'id' => $data['where']['id'], - 'eid' => $addData['eid'], - 'uid' => $addData['uid'] - ); - // 简历附表处理完成的返回值处理 - $return = $this->getFbReturn('edu',$fbData,array('type'=>$type,'success'=>$success,'utype'=>$data['utype'])); - - return $return; - } - //查询单条其他描述 - public function getResumeOther($where = array(), $field = '*'){ - - return $this -> select_once('resume_other', $where, $field); - } - - - //查询多条其他描述 - public function getResumeOthers($where = array(), $field = '*'){ - - $others = $this -> select_all('resume_other', $where, $field); - foreach ($others as $k=>$v){ - $others[$k]['content'] = str_replace('\r\n', '<br/>', strip_tags($v['content'],'\r\n')); - } - return $others; - } - //添加/修改 其他描述 - public function addResumeOther($addData,$data = array()){ - - if ($data['where'] && !empty($data['where'])){ - - $type = 'up'; - $success = $this->update_once('resume_other',$addData,$data['where']); - - } else { - $type = 'add'; - $success = $this->insert_into('resume_other',$addData); - } - $fbData = array( - 'id' => $data['where']['id'], - 'eid' => $addData['eid'], - 'uid' => $addData['uid'] - ); - // 简历附表处理完成的返回值处理 - $return = $this->getFbReturn('other',$fbData,array('type'=>$type,'success'=>$success,'utype'=>$data['utype'])); - - return $return; - } - //查询单条项目经历 - public function getResumeProject($where = array(), $field = '*'){ - - $project = $this->select_once('resume_project', $where, $field); - - if($project){ - - $project['sdate_n'] = date('Y-m',$project['sdate']); - - $project['edate_n'] = $project['edate'] == 0 ? '至今' : date('Y-m',$project['edate']); - } - - - return $project; - } - //查询多条项目经历 - public function getResumeProjects($where = array(), $field = '*'){ - - $projects = $this->select_all('resume_project', $where, $field); - - foreach ($projects as $k=>$v){ - $projects[$k]['content'] = str_replace('\r\n', '<br/>', strip_tags($v['content'],'\r\n')); - - $projects[$k]['sdate_n'] = date('Y-m',$v['sdate']); - - $projects[$k]['edate_n'] = $v['edate'] == 0 ? '至今' : date('Y-m',$v['edate']); - - $projects[$k]['date_n'] = $projects[$k]['sdate_n'].'-'.$projects[$k]['edate_n']; - } - - return $projects; - } - //添加/修改 项目经历 - public function addResumeProject($addData,$data = array()){ - - if ($data['where'] && !empty($data['where'])){ - - $type = 'up'; - $success = $this->update_once('resume_project',$addData,$data['where']); - - } else { - $type = 'add'; - $success = $this->insert_into('resume_project',$addData); - } - $fbData = array( - 'id' => $data['where']['id'], - 'eid' => $addData['eid'], - 'uid' => $addData['uid'] - ); - // 简历附表处理完成的返回值处理 - $return = $this->getFbReturn('project',$fbData,array('type'=>$type,'success'=>$success,'utype'=>$data['utype'])); - - return $return; - } - //查询单条职业技能 - public function getResumeSkill($where = array(), $field = '*', $userclass_name = null){ - - $skill = $this->select_once('resume_skill', $where, $field); - - if(!empty($skill)){ - $cache = $this -> getClass(array('user')); - $userclass_name = $cache['userclass_name']; - $skill['pic'] = checkpic($skill['pic']); - $skill['ing_n'] = $userclass_name[$skill['ing']]; - } - - return $skill; - } - //查询多条职业技能 - public function getResumeSkills($where = array(), $field = '*', $userclass_name = null){ - $cache = $this -> getClass(array('user')); - $userclass_name = $cache['userclass_name']; + return $expect; + } + + //查询单个教育经历 + public function getResumeEdu($where = array(), $field = '*', $userclass_name = null) { + + $edu = $this->select_once('resume_edu', $where, $field); + + if ($edu) { + $edu['sdate_n'] = date('Y-m', $edu['sdate']); + + $edu['edate_n'] = $edu['edate'] == 0 ? '至今' : date('Y-m', $edu['edate']); + + //如没有传入缓存,重新调取 + if ($userclass_name == null) { + + $cache = $this->getClass('user'); + + $userclass_name = $cache['userclass_name']; + } + $edu['education_n'] = $userclass_name[$edu['education']]; + } + + return $edu; + } + + /** + * 查询多个教育经历 $userclass_name 个人缓存,调用方法里已经有缓存的,可以先对学历进行处理 + */ + public function getResumeEdus($where = array(), $field = '*', $userclass_name = null) { + + $edus = $this->select_all('resume_edu', $where, $field); + + foreach ($edus as $k => $v) { + $edus[$k]['content'] = str_replace('\r\n', '<br/>', strip_tags($v['content'], '\r\n')); + + $edus[$k]['sdate_n'] = date('Y-m', $v['sdate']); + + $edus[$k]['edate_n'] = $v['edate'] == 0 ? '至今' : date('Y-m', $v['edate']); + + $edus[$k]['date_n'] = $edus[$k]['sdate_n'] . '-' . $edus[$k]['edate_n']; + + if ($userclass_name) { + + $edus[$k]['education_n'] = $userclass_name[$v['education']]; + } + + } + + return $edus; + } + + //添加/修改 教育经历 + public function addResumeEdu($addData, $data = array()) { + + if ($data['where'] && !empty($data['where'])) { + + $type = 'up'; + $success = $this->update_once('resume_edu', $addData, $data['where']); + + } else { + $type = 'add'; + $success = $this->insert_into('resume_edu', $addData); + } + $fbData = array( + 'id' => $data['where']['id'], + 'eid' => $addData['eid'], + 'uid' => $addData['uid'] + ); + // 简历附表处理完成的返回值处理 + $return = $this->getFbReturn('edu', $fbData, array('type' => $type, 'success' => $success, 'utype' => $data['utype'])); + + return $return; + } + + //查询单条其他描述 + public function getResumeOther($where = array(), $field = '*') { + + return $this->select_once('resume_other', $where, $field); + } + + + //查询多条其他描述 + public function getResumeOthers($where = array(), $field = '*') { + + $others = $this->select_all('resume_other', $where, $field); + foreach ($others as $k => $v) { + $others[$k]['content'] = str_replace('\r\n', '<br/>', strip_tags($v['content'], '\r\n')); + } + return $others; + } + + //添加/修改 其他描述 + public function addResumeOther($addData, $data = array()) { + + if ($data['where'] && !empty($data['where'])) { + + $type = 'up'; + $success = $this->update_once('resume_other', $addData, $data['where']); + + } else { + $type = 'add'; + $success = $this->insert_into('resume_other', $addData); + } + $fbData = array( + 'id' => $data['where']['id'], + 'eid' => $addData['eid'], + 'uid' => $addData['uid'] + ); + // 简历附表处理完成的返回值处理 + $return = $this->getFbReturn('other', $fbData, array('type' => $type, 'success' => $success, 'utype' => $data['utype'])); + + return $return; + } + + //查询单条项目经历 + public function getResumeProject($where = array(), $field = '*') { + + $project = $this->select_once('resume_project', $where, $field); + + if ($project) { + + $project['sdate_n'] = date('Y-m', $project['sdate']); + + $project['edate_n'] = $project['edate'] == 0 ? '至今' : date('Y-m', $project['edate']); + } + + + return $project; + } + + //查询多条项目经历 + public function getResumeProjects($where = array(), $field = '*') { + + $projects = $this->select_all('resume_project', $where, $field); + + foreach ($projects as $k => $v) { + $projects[$k]['content'] = str_replace('\r\n', '<br/>', strip_tags($v['content'], '\r\n')); + + $projects[$k]['sdate_n'] = date('Y-m', $v['sdate']); + + $projects[$k]['edate_n'] = $v['edate'] == 0 ? '至今' : date('Y-m', $v['edate']); + + $projects[$k]['date_n'] = $projects[$k]['sdate_n'] . '-' . $projects[$k]['edate_n']; + } + + return $projects; + } + + //添加/修改 项目经历 + public function addResumeProject($addData, $data = array()) { + + if ($data['where'] && !empty($data['where'])) { + + $type = 'up'; + $success = $this->update_once('resume_project', $addData, $data['where']); + + } else { + $type = 'add'; + $success = $this->insert_into('resume_project', $addData); + } + $fbData = array( + 'id' => $data['where']['id'], + 'eid' => $addData['eid'], + 'uid' => $addData['uid'] + ); + // 简历附表处理完成的返回值处理 + $return = $this->getFbReturn('project', $fbData, array('type' => $type, 'success' => $success, 'utype' => $data['utype'])); + + return $return; + } + + //查询单条职业技能 + public function getResumeSkill($where = array(), $field = '*', $userclass_name = null) { + + $skill = $this->select_once('resume_skill', $where, $field); + + if (!empty($skill)) { + $cache = $this->getClass(array('user')); + $userclass_name = $cache['userclass_name']; + $skill['pic'] = checkpic($skill['pic']); + $skill['ing_n'] = $userclass_name[$skill['ing']]; + } + + return $skill; + } + + //查询多条职业技能 + public function getResumeSkills($where = array(), $field = '*', $userclass_name = null) { + $cache = $this->getClass(array('user')); + $userclass_name = $cache['userclass_name']; $skills = $this->select_all('resume_skill', $where, $field); - foreach ($skills as $k=>$v){ - $skills[$k]['ing_n'] = $userclass_name[$v['ing']]; - $skills[$k]['pic'] = checkpic($v['pic']); - $skills[$k]['picurl'] = $skills[$k]['pic']; - } - return $skills; - } - //添加/修改 职业技能 - public function addResumeSkill($addData,$data = array()){ - - if($addData['file']['tmp_name']){ - $upArr = array( - 'file' => $addData['file'], - 'dir' => 'user' - ); - include_once('upload.model.php'); - - $uploadM = new upload_model($this->db, $this->def); - - $picr = $uploadM->newUpload($upArr); - - if (!empty($picr['msg'])){ - - $return['msg'] = $picr['msg']; - $return['errcode'] = '8'; - return $return; - - }elseif (!empty($picr['picurl'])){ - - $pictures = $picr['picurl']; - } - } - - unset($addData['file']); - - if(isset($pictures)){ - - $addData['pic']=$pictures; - - } - - if ($data['where'] && !empty($data['where'])){ - - $type = 'up'; - $success = $this->update_once('resume_skill',$addData,$data['where']); - - } else { - $type = 'add'; - $success = $this->insert_into('resume_skill',$addData); - } - $fbData = array( - 'id' => $data['where']['id'], - 'eid' => $addData['eid'], - 'uid' => $addData['uid'] - ); - // 简历附表处理完成的返回值处理 - $return = $this->getFbReturn('skill',$fbData,array('type'=>$type,'success'=>$success,'utype'=>$data['utype'])); - - return $return; - } - //查询单条培训经历 - public function getResumeTrain($where = array(), $field = '*'){ - - $training = $this->select_once('resume_training', $where, $field); - - $training['sdate_n'] = date('Y-m',$training['sdate']); - - $training['edate_n'] = $training['edate'] == 0 ? '至今' : date('Y-m',$training['edate']); - - return $training; - } - //查询多条培训经历 - public function getResumeTrains($where = array(), $field = '*'){ - - $trainings = $this->select_all('resume_training', $where, $field); - - foreach ($trainings as $k=>$v){ - $trainings[$k]['content'] = str_replace('\r\n', '<br/>', strip_tags($v['content'],'\r\n')); - - $trainings[$k]['sdate_n'] = date('Y-m', $v['sdate']); - - $trainings[$k]['edate_n'] = $v['edate'] == 0 ? '至今' : date('Y-m',$v['edate']); - - $trainings[$k]['date_n'] = $trainings[$k]['sdate_n'].'-'.$trainings[$k]['edate_n']; - } - - return $trainings; - } - //添加/修改 培训经历 - public function addResumeTrain($addData,$data = array()){ - - if ($data['where'] && !empty($data['where'])){ - - $type = 'up'; - $success = $this->update_once('resume_training',$addData,$data['where']); - - } else { - $type = 'add'; - $success = $this->insert_into('resume_training',$addData); - } - $fbData = array( - 'id' => $data['where']['id'], - 'eid' => $addData['eid'], - 'uid' => $addData['uid'] - ); - // 简历附表处理完成的返回值处理 - $return = $this->getFbReturn('training',$fbData,array('type'=>$type,'success'=>$success,'utype'=>$data['utype'])); - - return $return; - } - //查询单个工作经历 - public function getResumeWork($where = array(), $field = '*'){ - - $work = $this->select_once('resume_work', $where, $field); - if($work){ - - $work['sdate_n'] = date('Y-m',$work['sdate']); - - $work['edate_n'] = $work['edate'] == 0 ? '至今' : date('Y-m',$work['edate']); - } - - - return $work; - } - + foreach ($skills as $k => $v) { + $skills[$k]['ing_n'] = $userclass_name[$v['ing']]; + $skills[$k]['pic'] = checkpic($v['pic']); + $skills[$k]['picurl'] = $skills[$k]['pic']; + } + return $skills; + } + + //添加/修改 职业技能 + public function addResumeSkill($addData, $data = array()) { + + if ($addData['file']['tmp_name']) { + $upArr = array( + 'file' => $addData['file'], + 'dir' => 'user' + ); + include_once('upload.model.php'); + + $uploadM = new upload_model($this->db, $this->def); + + $picr = $uploadM->newUpload($upArr); + + if (!empty($picr['msg'])) { + + $return['msg'] = $picr['msg']; + $return['errcode'] = '8'; + return $return; + + } elseif (!empty($picr['picurl'])) { + + $pictures = $picr['picurl']; + } + } + + unset($addData['file']); + + if (isset($pictures)) { + + $addData['pic'] = $pictures; + + } + + if ($data['where'] && !empty($data['where'])) { + + $type = 'up'; + $success = $this->update_once('resume_skill', $addData, $data['where']); + + } else { + $type = 'add'; + $success = $this->insert_into('resume_skill', $addData); + } + $fbData = array( + 'id' => $data['where']['id'], + 'eid' => $addData['eid'], + 'uid' => $addData['uid'] + ); + // 简历附表处理完成的返回值处理 + $return = $this->getFbReturn('skill', $fbData, array('type' => $type, 'success' => $success, 'utype' => $data['utype'])); + + return $return; + } + + //查询单条培训经历 + public function getResumeTrain($where = array(), $field = '*') { + + $training = $this->select_once('resume_training', $where, $field); + + $training['sdate_n'] = date('Y-m', $training['sdate']); + + $training['edate_n'] = $training['edate'] == 0 ? '至今' : date('Y-m', $training['edate']); + + return $training; + } + + //查询多条培训经历 + public function getResumeTrains($where = array(), $field = '*') { + + $trainings = $this->select_all('resume_training', $where, $field); + + foreach ($trainings as $k => $v) { + $trainings[$k]['content'] = str_replace('\r\n', '<br/>', strip_tags($v['content'], '\r\n')); + + $trainings[$k]['sdate_n'] = date('Y-m', $v['sdate']); + + $trainings[$k]['edate_n'] = $v['edate'] == 0 ? '至今' : date('Y-m', $v['edate']); + + $trainings[$k]['date_n'] = $trainings[$k]['sdate_n'] . '-' . $trainings[$k]['edate_n']; + } + + return $trainings; + } + + //添加/修改 培训经历 + public function addResumeTrain($addData, $data = array()) { + + if ($data['where'] && !empty($data['where'])) { + + $type = 'up'; + $success = $this->update_once('resume_training', $addData, $data['where']); + + } else { + $type = 'add'; + $success = $this->insert_into('resume_training', $addData); + } + $fbData = array( + 'id' => $data['where']['id'], + 'eid' => $addData['eid'], + 'uid' => $addData['uid'] + ); + // 简历附表处理完成的返回值处理 + $return = $this->getFbReturn('training', $fbData, array('type' => $type, 'success' => $success, 'utype' => $data['utype'])); + + return $return; + } + + //查询单个工作经历 + public function getResumeWork($where = array(), $field = '*') { + + $work = $this->select_once('resume_work', $where, $field); + if ($work) { + + $work['sdate_n'] = date('Y-m', $work['sdate']); + + $work['edate_n'] = $work['edate'] == 0 ? '至今' : date('Y-m', $work['edate']); + } + + + return $work; + } + /** * 查询多个工作经历 * @@ -2619,2868 +2684,2866 @@ * @param string $field * @return array|bool|false|string|void */ - public function getResumeWorks($where = array(), $field = '*') - { - - $works = $this->select_all('resume_work', $where, $field); - - foreach ($works as $k => $v) { - - $works[$k]['content'] = str_replace('\r\n', '<br/>', strip_tags($v['content'], '\r\n')); - $works[$k]['sdate_n'] = date('Y-m', $v['sdate']); - $works[$k]['edate_n'] = $v['edate'] == 0 ? '至今' : date('Y-m', $v['edate']); - $works[$k]['date_n'] = $works[$k]['sdate_n'] . '-' . $works[$k]['edate_n']; - if ($v['edate'] == 0) { - - $works[$k]['time_n']= $this->computeTime(time() - $v['sdate']); - } else { - - $works[$k]['time_n']= $this->computeTime($v['edate'] - $v['sdate']); + public function getResumeWorks($where = array(), $field = '*') { + $works = $this->select_all('resume_work', $where, $field); + if ($works) { + foreach ($works as $k => $v) { + $works[$k]['content'] = $v['content'] ? str_replace('\r\n', '<br/>', strip_tags($v['content'], '\r\n')) : ""; + $works[$k]['sdate_n'] = date('Y-m', $v['sdate']); + $works[$k]['edate_n'] = $v['edate'] == 0 ? '至今' : date('Y-m', $v['edate']); + $works[$k]['date_n'] = $works[$k]['sdate_n'] . '-' . $works[$k]['edate_n']; + if ($v['edate'] == 0) { + $works[$k]['time_n'] = $this->computeTime(time() - $v['sdate']); + } else { + $works[$k]['time_n'] = $this->computeTime($v['edate'] - $v['sdate']); + } } } return $works; } - + /** * @desc 时间戳差值转换成多少年多少月; * @param $timesDiff * @return string */ - private function computeTime($timesDiff) - { - - $avgHour = ceil($timesDiff / (86400 * 30)); - - if ($avgHour > 11) { - - $time = $avgHour > 11 ? avgToYm($avgHour) : $avgHour; - - if (bcmod($avgHour, 12) > 0) { - - return $time . '个月'; - } else { - - return $time; - } - } else if($avgHour > 0){ - + private function computeTime($timesDiff) { + + $avgHour = ceil($timesDiff / (86400 * 30)); + + if ($avgHour > 0) { + return $avgHour . '个月'; } else { - + return '1个月'; } - + } - + //查询单条粘贴简历 - public function getResumeDoc($where = array(), $field = '*'){ - - return $this -> select_once('resume_doc', $where, $field); - } - //添加/修改 工作经历 - public function addResumeWork($addData,$data = array()){ - - if ($data['where'] && !empty($data['where'])){ - - $type = 'up'; - $success = $this->update_once('resume_work',$addData,$data['where']); - - } else { - $type = 'add'; - $success = $this->insert_into('resume_work',$addData); - } - $fbData = array( - 'id' => $data['where']['id'], - 'eid' => $addData['eid'], - 'uid' => $addData['uid'] - ); - // 简历附表处理完成的返回值处理 - $return = $this->getFbReturn('work',$fbData,array('type'=>$type,'success'=>$success,'utype'=>$data['utype'])); - - return $return; - } - //查询多个简历证书,未见使用 - // public function getResumeCerts($where = array(), $field = '*'){ - - // return $this->select_all('resume_cert', $where, $field); - // } - //查询单个简历附表 - public function getFb($table, $id ,$uid=''){ - - if ($table == 'resume_work'){ - - $info = $this -> getResumeWork(array('id'=>$id)); - - }elseif ($table == 'resume_edu'){ - - $cache = $this -> getClass('user'); - - $info = $this -> getResumeEdu(array('id'=>$id),'*',$cache['userclass_name']); - - }elseif ($table == 'resume_training'){ - - $info = $this -> getResumeTrain(array('id'=>$id)); - - }elseif ($table == 'resume_skill'){ - - $cache = $this -> getClass('user'); - - $info = $this -> getResumeSkill(array('id'=>$id),'*',$cache['userclass_name']); - - }elseif ($table == 'resume_project'){ - - $info = $this -> getResumeProject(array('id'=>$id)); - - }elseif ($table == 'resume_other'){ - - $info = $this -> getResumeOther(array('id'=>$id)); - - }elseif ($table == 'resume_doc'){ - - $info = $this -> getResumeDoc(array('eid'=>$id)); - }elseif ($table == 'resume_show'){ - - $info = $this -> getResumeShowInfo(array('id'=>$id)); - } - if($uid && $info['uid']!=$uid){ - $info = array(); - } - return $info; - } - public function getFbList($type, $where) - { - - $table = 'resume_'.$type; - - if ($table == 'resume_work'){ - - $list = $this -> getResumeWorks($where); - - }elseif ($table == 'resume_edu'){ - - $cache = $this -> getClass('user'); - - $list = $this -> getResumeEdus($where,'*',$cache['userclass_name']); - - }elseif ($table == 'resume_training'){ - - $list = $this -> getResumeTrains($where); - - }elseif ($table == 'resume_skill'){ - - $cache = $this -> getClass('user'); - - $list = $this -> getResumeSkills($where,'*',$cache['userclass_name']); - - }elseif ($table == 'resume_project'){ - - $list = $this -> getResumeProjects($where); - - }elseif ($table == 'resume_other'){ - - $list = $this -> getResumeOthers($where); - - }elseif ($table == 'resume_show'){ - - $list = $this-> getResumeShowList($where); - } - - return $list; - } - /** - * 删除简历附表 - * @param string $table 'work' - * @param array $whereData array('id'=>1,'eid'=>1) - * @return string - */ - public function delFb($table,$whereData = array(),$data = array()){ - - if(!in_array($table,array('expect','edu','other','project','show','skill','training','work'))){ - - $return['msg'] = '请选择要删除的内容'; - $return['errcode'] = '8'; - - return $return; - } - - $tableName = 'resume_'.$table; - - //处理查询条件,如某项传值有问题,即返回错误 - foreach ($whereData as $v){ - - if (!$v){ - return false; - } - } - - if($whereData['id']){ + public function getResumeDoc($where = array(), $field = '*') { + + return $this->select_once('resume_doc', $where, $field); + } + + //添加/修改 工作经历 + public function addResumeWork($addData, $data = array()) { + + if ($data['where'] && !empty($data['where'])) { + + $type = 'up'; + $success = $this->update_once('resume_work', $addData, $data['where']); + + } else { + $type = 'add'; + $success = $this->insert_into('resume_work', $addData); + } + $fbData = array( + 'id' => $data['where']['id'], + 'eid' => $addData['eid'], + 'uid' => $addData['uid'] + ); + // 简历附表处理完成的返回值处理 + $return = $this->getFbReturn('work', $fbData, array('type' => $type, 'success' => $success, 'utype' => $data['utype'])); + + return $return; + } + //查询多个简历证书,未见使用 + // public function getResumeCerts($where = array(), $field = '*'){ + + // return $this->select_all('resume_cert', $where, $field); + // } + //查询单个简历附表 + public function getFb($table, $id, $uid = '') { + + if ($table == 'resume_work') { + + $info = $this->getResumeWork(array('id' => $id)); + + } elseif ($table == 'resume_edu') { + + $cache = $this->getClass('user'); + + $info = $this->getResumeEdu(array('id' => $id), '*', $cache['userclass_name']); + + } elseif ($table == 'resume_training') { + + $info = $this->getResumeTrain(array('id' => $id)); + + } elseif ($table == 'resume_skill') { + + $cache = $this->getClass('user'); + + $info = $this->getResumeSkill(array('id' => $id), '*', $cache['userclass_name']); + + } elseif ($table == 'resume_project') { + + $info = $this->getResumeProject(array('id' => $id)); + + } elseif ($table == 'resume_other') { + + $info = $this->getResumeOther(array('id' => $id)); + + } elseif ($table == 'resume_doc') { + + $info = $this->getResumeDoc(array('eid' => $id)); + } elseif ($table == 'resume_show') { + + $info = $this->getResumeShowInfo(array('id' => $id)); + } + if ($uid && $info['uid'] != $uid) { + $info = array(); + } + return $info; + } + + public function getFbList($type, $where) { + + $table = 'resume_' . $type; + + if ($table == 'resume_work') { + + $list = $this->getResumeWorks($where); + + } elseif ($table == 'resume_edu') { + + $cache = $this->getClass('user'); + + $list = $this->getResumeEdus($where, '*', $cache['userclass_name']); + + } elseif ($table == 'resume_training') { + + $list = $this->getResumeTrains($where); + + } elseif ($table == 'resume_skill') { + + $cache = $this->getClass('user'); + + $list = $this->getResumeSkills($where, '*', $cache['userclass_name']); + + } elseif ($table == 'resume_project') { + + $list = $this->getResumeProjects($where); + + } elseif ($table == 'resume_other') { + + $list = $this->getResumeOthers($where); + + } elseif ($table == 'resume_show') { + + $list = $this->getResumeShowList($where); + } + + return $list; + } + + /** + * 删除简历附表 + * @param string $table 'work' + * @param array $whereData array('id'=>1,'eid'=>1) + * @return string + */ + public function delFb($table, $whereData = array(), $data = array()) { + + if (!in_array($table, array('expect', 'edu', 'other', 'project', 'show', 'skill', 'training', 'work'))) { + + $return['msg'] = '请选择要删除的内容'; + $return['errcode'] = '8'; + + return $return; + } + + $tableName = 'resume_' . $table; + + //处理查询条件,如某项传值有问题,即返回错误 + foreach ($whereData as $v) { + + if (!$v) { + return false; + } + } + + if ($whereData['id']) { $whereData['id'] = array('in', is_array($whereData['id']) ? pylode(',', $whereData['id']) : $whereData['id']); } - - $success = $this -> delete_all($tableName, $whereData,''); - - - if(!empty($data['utype'])){ - - $fbData = array( - 'id' => $whereData['id'], - 'eid' => $whereData['eid'], - 'uid' => $whereData['uid'] + + $success = $this->delete_all($tableName, $whereData, ''); + + + if (!empty($data['utype'])) { + + $fbData = array( + 'id' => $whereData['id'], + 'eid' => $whereData['eid'], + 'uid' => $whereData['uid'] ); //简历附表处理完成的返回值处理 - $return = $this -> getFbReturn($table,$fbData,array('type'=>'del','success'=>$success,'utype'=>$data['utype'])); - + $return = $this->getFbReturn($table, $fbData, array('type' => 'del', 'success' => $success, 'utype' => $data['utype'])); + return $return; - - }else{ - - return $success; + + } else { + + return $success; } - } - /** - * 简历附表处理完成的返回值处理 - * @param string $fbName 'work' - * @param array $fbData array('id'=>1,'eid'=>'1') - * @param array $data array('id'=>1,'type'=>'add','success'=>$nid) - * @return string - */ - private function getFbReturn($fbName,$fbData,$data = array('utype'=>null)){ - //获取统一附表名称 + } + + /** + * 简历附表处理完成的返回值处理 + * @param string $fbName 'work' + * @param array $fbData array('id'=>1,'eid'=>'1') + * @param array $data array('id'=>1,'type'=>'add','success'=>$nid) + * @return string + */ + private function getFbReturn($fbName, $fbData, $data = array('utype' => null)) { + //获取统一附表名称 // $msg = $this -> getFbName($fbName).'(ID:'.$fbData['id'].')'; - $msg = $this -> getFbName($fbName); - //根据操作类型,分别返回 - if ($data['type'] == 'add'){ - - $msg .= '添加'; - }elseif ($data['type'] == 'up'){ - - $msg .= '修改'; - }elseif ($data['type'] == 'del'){ - - $msg .= '删除'; - } - //操作是否成功判断 - if ($data['success']){ - - $msg .= '成功'; - $return['errcode'] = '9'; - - if ($fbName == 'work'){ - //处理求职意向表中的平均工作时长 - $this -> workTime($fbData['eid']); - } - //操作成功的处理简历完整度 - if ($data['type'] == 'add'){ - - $this -> upUserResume(array($fbName=>array('+',1)), array('eid'=>$fbData['eid'],'uid'=>$fbData['uid'])); - }elseif ($data['type'] == 'del'){ - - $this -> upUserResume(array($fbName=>array('-',1)), array('eid'=>$fbData['eid'],'uid'=>$fbData['uid'])); - } - }else { - - $msg .= '失败'; - $return['errcode'] = '8'; - } - $return['id'] = $data['success']; - $return['msg'] = $msg; - //后台操作的,添加管理员日志 - if ($data['utype'] == 'admin'){ - - include_once('log.model.php'); - - $logM = new log_model($this->db, $this->def); - - $logM -> addAdminLog($msg); - } - if ($data['utype'] == 'user'){ - - $this->addMemberLog($fbData['uid'], 1, $msg); - } - return $return; - } - //简历附表名称处理 - private function getFbName($fb){ - $tname = array( - 'work' => '工作经历', - 'edu' => '教育经历', - 'skill' => '职业技能', - 'project' => '项目经历', - 'training' => '培训经历', - 'other' => '其他描述' - ); - - return $tname[$fb]; - } - + $msg = $this->getFbName($fbName); + //根据操作类型,分别返回 + if ($data['type'] == 'add') { + + $msg .= '添加'; + } elseif ($data['type'] == 'up') { + + $msg .= '修改'; + } elseif ($data['type'] == 'del') { + + $msg .= '删除'; + } + //操作是否成功判断 + if ($data['success']) { + + $msg .= '成功'; + $return['errcode'] = '9'; + + if ($fbName == 'work') { + //处理求职意向表中的平均工作时长 + $this->workTime($fbData['eid']); + } + //操作成功的处理简历完整度 + if ($data['type'] == 'add') { + + $this->upUserResume(array($fbName => array('+', 1)), array('eid' => $fbData['eid'], 'uid' => $fbData['uid'])); + } elseif ($data['type'] == 'del') { + + $this->upUserResume(array($fbName => array('-', 1)), array('eid' => $fbData['eid'], 'uid' => $fbData['uid'])); + } + } else { + + $msg .= '失败'; + $return['errcode'] = '8'; + } + $return['id'] = $data['success']; + $return['msg'] = $msg; + //后台操作的,添加管理员日志 + if ($data['utype'] == 'admin') { + + include_once('log.model.php'); + + $logM = new log_model($this->db, $this->def); + + $logM->addAdminLog($msg); + } + if ($data['utype'] == 'user') { + + $this->addMemberLog($fbData['uid'], 1, $msg); + } + return $return; + } + + //简历附表名称处理 + private function getFbName($fb) { + $tname = array( + 'work' => '工作经历', + 'edu' => '教育经历', + 'skill' => '职业技能', + 'project' => '项目经历', + 'training' => '培训经历', + 'other' => '其他描述' + ); + + return $tname[$fb]; + } + /** * 获取user_resume 详情 * $whereData 查询条件 - * $data 自定义处理数组 - * 完整度的查询返回 + * $data 自定义处理数组 + * 完整度的查询返回 */ public function getUserResumeInfo($whereData, $data = array()) { - $data['field'] = empty($data['field']) ? '*' : $data['field']; - $resumeInfo = $this -> select_once('user_resume', $whereData, $data['field']); + $data['field'] = empty($data['field']) ? '*' : $data['field']; + $resumeInfo = $this->select_once('user_resume', $whereData, $data['field']); return $resumeInfo; - } - /** - * 修改简历完整度 - * 参数格式 - * $data = array('work'=>array('+',1)); - * $whereData = array('eid'=>'1') - */ - function upUserResume($data,$whereData){ + } + + /** + * 修改简历完整度 + * 参数格式 + * $data = array('work'=>array('+',1)); + * $whereData = array('eid'=>'1') + */ + function upUserResume($data, $whereData) { - if (isset($whereData['uid']) && isset($whereData['eid'])){ - $skill = $this-> select_num('resume_skill',array('eid'=>$whereData['eid'])); - $work = $this-> select_num('resume_work',array('eid'=>$whereData['eid'])); - $pro = $this-> select_num('resume_project',array('eid'=>$whereData['eid'])); - $edu = $this-> select_num('resume_edu',array('eid'=>$whereData['eid'])); - $train = $this-> select_num('resume_training',array('eid'=>$whereData['eid'])); - $cert = $this-> select_num('resume_cert',array('eid'=>$whereData['eid'])); - $other = $this-> select_num('resume_other',array('eid'=>$whereData['eid'])); - $integrity = 55; - $user_resume_sql['uid'] = $whereData['uid']; - $user_resume_sql['eid'] = $whereData['eid']; - $user_resume_sql['expect'] = 1; - - if($work > 0){ - $integrity = $integrity + 10; - } - $user_resume_sql['work'] = $work; - if($edu > 0){ - $integrity = $integrity + 10; - } - $user_resume_sql['edu'] = $edu; - if($skill > 0){ - $integrity = $integrity + 10; - } - $user_resume_sql['skill'] = $skill; - if($pro > 0){ - $integrity = $integrity + 8; - } - $user_resume_sql['project'] = $pro; - if($train > 0){ - $integrity = $integrity + 7; - } - $user_resume_sql['training'] = $train; - - $userResume = $this->select_once('user_resume',$whereData); - - if (!empty($userResume)){ - $this->update_once('user_resume',$user_resume_sql,$whereData); - }else{ - $this->insert_into('user_resume',$user_resume_sql); - } - $this->update_once('resume_expect',array('integrity'=>$integrity),array('id'=>$whereData['eid'])); - } - } - /** - * @desc 简历审核,个人不是已审核状态,弹出同步操作状态审核 - * @param int $id - * @param array $data|state statusbody - */ - public function status($id, $data = array()){ - - if (!$id){ - - $return = array( - 'errcode' => 8, - 'msg' => '参数错误!' - ); - return $return; - }else{ - - $resume = $this->select_once('resume_expect', array('id' => $id), '`id`,`uid`,`name`,`state`'); - - $resumeinfo = $this->select_once('resume', array('uid' =>$resume['uid']), '`telphone`'); - - $upData = array( - - 'state' => intval($data['state']), - 'statusbody'=> trim($data['statusbody']) - ); - - - $uid = $data['uid']; - - $result = $this->setExpectState($upData,array('id' => $id, 'uid' => $uid)); - - if ($result) { - - if ($data['state'] == '1') { - $state_n = '已通过'; - $body = ''; - $msg = '您的简历<a href="resumetpl,'.$id.'">《'.$resume['name'].'》</a>审核通过'; - - require_once 'userinfo.model.php'; - $userinfoM = new userinfo_model($this->db, $this->def); - - $post = array( - 'id' => $id, - 'status' => 1 - ); - $userinfoM -> status(array('uid' => $uid, 'usertype' => 1), array('post' => $post)); - // 因简历未审核不能投递,记录的申请职位id,审核通过后,将简历按职位id,进行投递 - $reusmesqjob = $this -> select_once('resume_expect',array('id'=>$id),'`id`,`uid`,`sq_jobid`'); - if (!empty($reusmesqjob) && $reusmesqjob['sq_jobid'] > 0){ - $reusmesqjobinfos = $this -> select_once('company_job',array('id'=>$reusmesqjob['sq_jobid']),'`id`,`uid`,`name`,`com_name`'); - if($reusmesqjob['sq_jobid']){ - include_once('job.model.php'); - $jobM = new job_model($this->db, $this->def); - $sqdata = array( - 'job_id' => $reusmesqjob['sq_jobid'], - 'com_name' => $reusmesqjobinfos['com_name'], - 'job_name' => $reusmesqjobinfos['name'], - 'com_id' => $reusmesqjobinfos['uid'], - 'uid' => $reusmesqjob['uid'], - 'eid' => $reusmesqjob['id'], - 'datetime' => time(), - 'resume_state' => $data['state'], - ); - $jobM -> addSqJob($sqdata); - $this -> update_once('resume_expect',array('sq_jobid'=>''), array('id' => $id, 'uid' => $uid)); - } - } - }else{ - $state_n = '未通过'; - $body = '。原因:'.$data['statusbody']; - $msg = '您的简历<a href="resumetpl,'.$id.'">《'.$resume['name'].'》</a>审核未通过;原因:'.$data['statusbody']; - } - if($resumeinfo['telphone'] && $resume['state']!=$upData['state']){ - + if (isset($whereData['uid']) && isset($whereData['eid'])) { + $skill = $this->select_num('resume_skill', array('eid' => $whereData['eid'])); + $work = $this->select_num('resume_work', array('eid' => $whereData['eid'])); + $pro = $this->select_num('resume_project', array('eid' => $whereData['eid'])); + $edu = $this->select_num('resume_edu', array('eid' => $whereData['eid'])); + $train = $this->select_num('resume_training', array('eid' => $whereData['eid'])); + $cert = $this->select_num('resume_cert', array('eid' => $whereData['eid'])); + $other = $this->select_num('resume_other', array('eid' => $whereData['eid'])); + $integrity = 55; + $user_resume_sql['uid'] = $whereData['uid']; + $user_resume_sql['eid'] = $whereData['eid']; + $user_resume_sql['expect'] = 1; + + if ($work > 0) { + $integrity = $integrity + 10; + } + $user_resume_sql['work'] = $work; + if ($edu > 0) { + $integrity = $integrity + 10; + } + $user_resume_sql['edu'] = $edu; + if ($skill > 0) { + $integrity = $integrity + 10; + } + $user_resume_sql['skill'] = $skill; + if ($pro > 0) { + $integrity = $integrity + 8; + } + $user_resume_sql['project'] = $pro; + if ($train > 0) { + $integrity = $integrity + 7; + } + $user_resume_sql['training'] = $train; + + $userResume = $this->select_once('user_resume', $whereData); + + if (!empty($userResume)) { + $this->update_once('user_resume', $user_resume_sql, $whereData); + } else { + $this->insert_into('user_resume', $user_resume_sql); + } + $this->update_once('resume_expect', array('integrity' => $integrity), array('id' => $whereData['eid'])); + } + } + + /** + * @desc 简历审核,个人不是已审核状态,弹出同步操作状态审核 + * @param int $id + * @param array $data |state statusbody + */ + public function status($id, $data = array()) { + + if (!$id) { + + $return = array( + 'errcode' => 8, + 'msg' => '参数错误!' + ); + return $return; + } else { + + $resume = $this->select_once('resume_expect', array('id' => $id), '`id`,`uid`,`name`,`state`'); + + $resumeinfo = $this->select_once('resume', array('uid' => $resume['uid']), '`telphone`'); + + $upData = array( + + 'state' => intval($data['state']), + 'statusbody' => trim($data['statusbody']) + ); + + + $uid = $data['uid']; + + $result = $this->setExpectState($upData, array('id' => $id, 'uid' => $uid)); + + if ($result) { + + if ($data['state'] == '1') { + $state_n = '已通过'; + $body = ''; + $msg = '您的简历<a href="resumetpl,' . $id . '">《' . $resume['name'] . '》</a>审核通过'; + + require_once 'userinfo.model.php'; + $userinfoM = new userinfo_model($this->db, $this->def); + + $post = array( + 'id' => $id, + 'status' => 1 + ); + $userinfoM->status(array('uid' => $uid, 'usertype' => 1), array('post' => $post)); + // 因简历未审核不能投递,记录的申请职位id,审核通过后,将简历按职位id,进行投递 + $reusmesqjob = $this->select_once('resume_expect', array('id' => $id), '`id`,`uid`,`sq_jobid`'); + if (!empty($reusmesqjob) && $reusmesqjob['sq_jobid'] > 0) { + $reusmesqjobinfos = $this->select_once('company_job', array('id' => $reusmesqjob['sq_jobid']), '`id`,`uid`,`name`,`com_name`'); + if ($reusmesqjob['sq_jobid']) { + include_once('job.model.php'); + $jobM = new job_model($this->db, $this->def); + $sqdata = array( + 'job_id' => $reusmesqjob['sq_jobid'], + 'com_name' => $reusmesqjobinfos['com_name'], + 'job_name' => $reusmesqjobinfos['name'], + 'com_id' => $reusmesqjobinfos['uid'], + 'uid' => $reusmesqjob['uid'], + 'eid' => $reusmesqjob['id'], + 'datetime' => time(), + 'resume_state' => $data['state'], + ); + $jobM->addSqJob($sqdata); + $this->update_once('resume_expect', array('sq_jobid' => ''), array('id' => $id, 'uid' => $uid)); + } + } + } else { + $state_n = '未通过'; + $body = '。原因:' . $data['statusbody']; + $msg = '您的简历<a href="resumetpl,' . $id . '">《' . $resume['name'] . '》</a>审核未通过;原因:' . $data['statusbody']; + } + if ($resumeinfo['telphone'] && $resume['state'] != $upData['state']) { + require_once 'notice.model.php'; - $noticeM = new notice_model($this->db, $this->def); - $smsdata = array( - 'uid' => $resume['uid'], - 'usertype' => 1, - 'moblie' => $resumeinfo['telphone'], - 'type' => 'resumestate', - 'resumename'=> $resume['name'], - 'state_n' => $state_n, - 'port' => '1' + $noticeM = new notice_model($this->db, $this->def); + $smsdata = array( + 'uid' => $resume['uid'], + 'usertype' => 1, + 'moblie' => $resumeinfo['telphone'], + 'type' => 'resumestate', + 'resumename' => $resume['name'], + 'state_n' => $state_n, + 'port' => '1' ); $noticeM->sendSMSType($smsdata); } - - //发送系统通知 - require_once 'sysmsg.model.php'; - $sysmsgM = new sysmsg_model($this->db, $this->def); - $sysmsgM -> addInfo(array('uid' => $uid,'usertype'=>1,'content'=>$msg)); - - $return = array( - 'errcode' => 9, - 'msg' => '简历审核'.$state_n.'设置成功!(ID:'.$id.$body.')' - ); - - }else{ - $return = array( - 'errcode' => 8, - 'msg' => '简历审核设置失败!(ID:'.$id.')' - ); - } - - return $return; - } - } - - /** - * 后台简历审核 - * @param string $id 格式:单个,如1 ; 批量,如1,2,3 - * @param array $data - */ - public function statusResume($id,$data = array()){ - - $id = @explode(',',$id); - - foreach($id as $v){ - - if($v){ - - $ids[] = $v; - } - } - - if (!empty($ids)){ - - $idstr = pylode(',', $ids); - - $post = $data['post']; - - //查询出需审核的简历的名称,为发送系统通知做准备 - $expects = $this -> getList(array('id'=>array('in',$idstr),'r_status'=>1),array('field'=>'id,uid,name,state','withResumeField'=>'`uid`,`telphone`')); - - $result = $this -> upInfo(array('id'=>array('in',$idstr),'r_status'=>1),array('eData'=>$post)); - - if ($result){ - if($post['state']==1){ - $reusmesqjob = $this -> select_all('resume_expect',array('id'=>array('in',$idstr)),'`id`,`uid`,`sq_jobid`'); - foreach($reusmesqjob as $val){ - $job_ids[]=$val['sq_jobid']; - } - $reusmesqjobinfos = $this -> select_all('company_job',array('id'=>array('in',pylode(',', $job_ids))),'`id`,`uid`,`name`,`com_name`'); - - include_once('job.model.php'); - $jobM = new job_model($this->db, $this->def); - - foreach($reusmesqjob as $k=>$v){ - foreach($reusmesqjobinfos as $val){ - if($v['sq_jobid']==$val['id']){ - - $ysqnum= $jobM->getSqJobNum(array('job_id'=>$val['id'],'com_id'=>$val['uid'],'uid'=>$v['uid'],'eid'=>$v['id'],'isdel'=>9)); - if($ysqnum<1){ - $jobM -> addSqJob(array('job_id'=>$val['id'],'com_name'=>$val['com_name'], 'job_name'=>$val['name'],'com_id'=>$val['uid'],'uid'=>$v['uid'],'eid'=>$v['id'],'datetime'=>time(),'resume_state'=>$post['state'])); - } - } - } - } - $this -> update_once('resume_expect',array('sq_jobid'=>''),array('id'=>array('in',$idstr))); - } - if ($post['state'] == 1 || $post['state'] == 3){ - $msg = array(); - $uids = array(); - /* 处理审核信息 */ - if ($post['state'] == 3){ - - $state_n = '未通过'; - $body = !empty($post['statusbody']) ? '。 原因:'.$post['statusbody'] : ''; - - }elseif($post['state'] == 1){ - - $state_n = '已通过'; - $boty = ''; - } - - require_once 'notice.model.php'; + + //发送系统通知 + require_once 'sysmsg.model.php'; + $sysmsgM = new sysmsg_model($this->db, $this->def); + $sysmsgM->addInfo(array('uid' => $uid, 'usertype' => 1, 'content' => $msg)); + + $return = array( + 'errcode' => 9, + 'msg' => '简历审核' . $state_n . '设置成功!(ID:' . $id . $body . ')' + ); + + } else { + $return = array( + 'errcode' => 8, + 'msg' => '简历审核设置失败!(ID:' . $id . ')' + ); + } - $noticeM = new notice_model($this->db, $this->def); - - if($expects && is_array($expects)){ - foreach ($expects['list'] as $k=>$v){ - - $uids[] = $v['uid']; - /* 处理审核信息 */ - if ($post['state'] == 3){ - - $msg[$v['uid']][] = '您的简历《'.$v['name'].'》审核未通过'.$body; - - }elseif($post['state'] == 1){ - - $msg[$v['uid']][] = '您的简历<a href="resumetpl,'.$v['id'].'">《'.$v['name'].'》</a>已审核通过'; - } - if($v['telphone'] && $v['state']!=$post['state']){ - $smsdata = array( - 'uid' => $v['uid'], - 'usertype' => 1, - 'moblie' => $v['telphone'], - 'type' => 'resumestate', - 'resumename'=> $v['name'], - 'state_n' => $state_n, - 'port' => '1' - ); - $res=$noticeM->sendSMSType($smsdata); + return $return; + } + } + + /** + * 后台简历审核 + * @param string $id 格式:单个,如1 ; 批量,如1,2,3 + * @param array $data + */ + public function statusResume($id, $data = array()) { + + $id = @explode(',', $id); + + foreach ($id as $v) { + + if ($v) { + + $ids[] = $v; + } + } + + if (!empty($ids)) { + + $idstr = pylode(',', $ids); + + $post = $data['post']; + + //查询出需审核的简历的名称,为发送系统通知做准备 + $expects = $this->getList(array('id' => array('in', $idstr), 'r_status' => 1), array('field' => 'id,uid,name,state', 'withResumeField' => '`uid`,`telphone`')); + + $result = $this->upInfo(array('id' => array('in', $idstr), 'r_status' => 1), array('eData' => $post)); + + if ($result) { + if ($post['state'] == 1) { + $reusmesqjob = $this->select_all('resume_expect', array('id' => array('in', $idstr)), '`id`,`uid`,`sq_jobid`'); + foreach ($reusmesqjob as $val) { + $job_ids[] = $val['sq_jobid']; + } + $reusmesqjobinfos = $this->select_all('company_job', array('id' => array('in', pylode(',', $job_ids))), '`id`,`uid`,`name`,`com_name`'); + + include_once('job.model.php'); + $jobM = new job_model($this->db, $this->def); + + foreach ($reusmesqjob as $k => $v) { + foreach ($reusmesqjobinfos as $val) { + if ($v['sq_jobid'] == $val['id']) { + + $ysqnum = $jobM->getSqJobNum(array('job_id' => $val['id'], 'com_id' => $val['uid'], 'uid' => $v['uid'], 'eid' => $v['id'], 'isdel' => 9)); + if ($ysqnum < 1) { + $jobM->addSqJob(array('job_id' => $val['id'], 'com_name' => $val['com_name'], 'job_name' => $val['name'], 'com_id' => $val['uid'], 'uid' => $v['uid'], 'eid' => $v['id'], 'datetime' => time(), 'resume_state' => $post['state'])); + } } - } - //发送系统通知 - include_once('sysmsg.model.php'); - - $sysmsgM = new sysmsg_model($this->db, $this->def); - - $sysmsgM -> addInfo(array('uid'=>$uids,'usertype'=>1, 'content'=>$msg)); - } - } - - $resumewhere['id'] = array('in',$idstr); - - $resumenum = $this->getExpectNum($resumewhere); - - if($resumenum>1){ - $resumetwhere['id'] = array('in',$idstr); - $resumetwhere['r_status'] = 1; - $resumetnum = $this->getExpectNum($resumetwhere); - $resumewwhere['id'] = array('in',$idstr); - $resumewwhere['r_status'] = array('<>',1); - $resumewnum = $this->getExpectNum($resumewwhere); - if($resumewnum>0){ - $return['msg'] = '简历批量审核'.$state_n.'成功'.$resumetnum.'条,失败'.$resumewnum.'条。原因:个人账户未审核'; - }else{ - $return['msg'] = '简历批量审核'.$state_n.'成功(ID:'.$idstr.$body.')'; - } - - $return['errcode'] = 9; - }else{ - $resumewwhere['id'] = array('in',$idstr); - $resumewwhere['r_status'] = array('<>',1); - $resumetnum = $this->getExpectNum($resumewwhere); - if($resumetnum>0){ - $return['msg'] = '审核简历'.$state_n.'失败,原因:个人账户未审核(ID:'.$idstr.')'; - $return['errcode'] = 8; - }else{ - $return['msg'] = '审核简历'.$state_n.'设置成功(ID:'.$idstr.$body.')'; - $return['errcode'] = 9; - } - + } + } + $this->update_once('resume_expect', array('sq_jobid' => ''), array('id' => array('in', $idstr))); } - }else{ - $return['msg'] = '审核简历设置失败(ID:'.$idstr.')'; - $return['errcode'] = '8'; - } - }else{ - $return['msg'] = '请选择要审核的简历'; - $return['errcode'] = '8'; - } - return $return; - } - + if ($post['state'] == 1 || $post['state'] == 3) { + $msg = array(); + $uids = array(); + /* 处理审核信息 */ + if ($post['state'] == 3) { + + $state_n = '未通过'; + $body = !empty($post['statusbody']) ? '。 原因:' . $post['statusbody'] : ''; + + } elseif ($post['state'] == 1) { + + $state_n = '已通过'; + $boty = ''; + } + + require_once 'notice.model.php'; + + $noticeM = new notice_model($this->db, $this->def); + + if ($expects && is_array($expects)) { + foreach ($expects['list'] as $k => $v) { + + $uids[] = $v['uid']; + /* 处理审核信息 */ + if ($post['state'] == 3) { + + $msg[$v['uid']][] = '您的简历《' . $v['name'] . '》审核未通过' . $body; + + } elseif ($post['state'] == 1) { + + $msg[$v['uid']][] = '您的简历<a href="resumetpl,' . $v['id'] . '">《' . $v['name'] . '》</a>已审核通过'; + } + if ($v['telphone'] && $v['state'] != $post['state']) { + $smsdata = array( + 'uid' => $v['uid'], + 'usertype' => 1, + 'moblie' => $v['telphone'], + 'type' => 'resumestate', + 'resumename' => $v['name'], + 'state_n' => $state_n, + 'port' => '1' + ); + $res = $noticeM->sendSMSType($smsdata); + } + } + //发送系统通知 + include_once('sysmsg.model.php'); + + $sysmsgM = new sysmsg_model($this->db, $this->def); + + $sysmsgM->addInfo(array('uid' => $uids, 'usertype' => 1, 'content' => $msg)); + } + } + + $resumewhere['id'] = array('in', $idstr); + + $resumenum = $this->getExpectNum($resumewhere); + + if ($resumenum > 1) { + $resumetwhere['id'] = array('in', $idstr); + $resumetwhere['r_status'] = 1; + $resumetnum = $this->getExpectNum($resumetwhere); + $resumewwhere['id'] = array('in', $idstr); + $resumewwhere['r_status'] = array('<>', 1); + $resumewnum = $this->getExpectNum($resumewwhere); + if ($resumewnum > 0) { + $return['msg'] = '简历批量审核' . $state_n . '成功' . $resumetnum . '条,失败' . $resumewnum . '条。原因:个人账户未审核'; + } else { + $return['msg'] = '简历批量审核' . $state_n . '成功(ID:' . $idstr . $body . ')'; + } + + $return['errcode'] = 9; + } else { + $resumewwhere['id'] = array('in', $idstr); + $resumewwhere['r_status'] = array('<>', 1); + $resumetnum = $this->getExpectNum($resumewwhere); + if ($resumetnum > 0) { + $return['msg'] = '审核简历' . $state_n . '失败,原因:个人账户未审核(ID:' . $idstr . ')'; + $return['errcode'] = 8; + } else { + $return['msg'] = '审核简历' . $state_n . '设置成功(ID:' . $idstr . $body . ')'; + $return['errcode'] = 9; + } + + } + } else { + $return['msg'] = '审核简历设置失败(ID:' . $idstr . ')'; + $return['errcode'] = '8'; + } + } else { + $return['msg'] = '请选择要审核的简历'; + $return['errcode'] = '8'; + } + return $return; + } + /** * 刷新简历 * @param string $id 格式:单个,如1 ; 批量,如1,2,3 * @param array $data * @return mixed */ - public function refreshResume($id) - { - - $id = @explode(',', $id); - + public function refreshResume($id) { + + $id = @explode(',', $id); + foreach ($id as $v) { if ($v) { - - $ids[] = $v; + + $ids[] = $v; } } if (!empty($ids)) { - - $idstr = pylode(',', $ids); - - $post = array('lastupdate' => time()); - - $result['id'] = $this->update_once('resume_expect', $post, array('id' => array('in', $idstr))); - + + $idstr = pylode(',', $ids); + + $post = array('lastupdate' => time()); + + $result['id'] = $this->update_once('resume_expect', $post, array('id' => array('in', $idstr))); + if ($result['id']) { - - $msg = array(); - $uids = array(); - + + $msg = array(); + $uids = array(); + //查询出需刷新的简历的名称,为发送系统通知做准备 - $expects= $this->getList(array('id' => array('in', $idstr)), array('field' => 'id,uid,name')); - - $logSxData = array(); + $expects = $this->getList(array('id' => array('in', $idstr)), array('field' => 'id,uid,name')); + + $logSxData = array(); foreach ($expects['list'] as $k => $v) { - - $uids[] = $v['uid']; - - $msg[$v['uid']] = '您的简历<a href="resumetpl,'.$v['id'].'">《'.$v['name'].'》</a>已刷新'; - - $logSxData[$k]['uid'] = $v['uid']; - $logSxData[$k]['resume_id'] = $v['id']; - $logSxData[$k]['r_time'] = time(); - $logSxData[$k]['port'] = 5; - $logSxData[$k]['ip'] = fun_ip_get(); + + $uids[] = $v['uid']; + + $msg[$v['uid']] = '您的简历<a href="resumetpl,' . $v['id'] . '">《' . $v['name'] . '》</a>已刷新'; + + $logSxData[$k]['uid'] = $v['uid']; + $logSxData[$k]['resume_id'] = $v['id']; + $logSxData[$k]['r_time'] = time(); + $logSxData[$k]['port'] = 5; + $logSxData[$k]['ip'] = fun_ip_get(); } //简历刷新成功,修改个人基本信息表中的更新时间 $this->update_once('resume', $post, array('uid' => array('in', pylode(',', $uids)))); //发送系统通知 include_once('sysmsg.model.php'); - $sysmsgM = new sysmsg_model($this->db, $this->def); + $sysmsgM = new sysmsg_model($this->db, $this->def); $sysmsgM->addInfo(array('uid' => $uids, 'usertype' => 1, 'content' => $msg)); - + include_once('log.model.php'); - $logM = new log_model($this->db, $this->def); + $logM = new log_model($this->db, $this->def); $logM->addResumeSxLogS($logSxData); - - $return['msg'] = '刷新简历(ID:' . $idstr . ')设置成功'; - $return['errcode'] = '9'; + + $return['msg'] = '刷新简历(ID:' . $idstr . ')设置成功'; + $return['errcode'] = '9'; } else { - - $return['msg'] = '刷新简历(ID:' . $idstr . ')设置失败'; - $return['errcode'] = '8'; + + $return['msg'] = '刷新简历(ID:' . $idstr . ')设置失败'; + $return['errcode'] = '8'; } } else { - - $return['msg'] = '请选择要刷新的简历'; - $return['errcode'] = '8'; + + $return['msg'] = '请选择要刷新的简历'; + $return['errcode'] = '8'; } return $return; } - - /** - * 推荐简历 - * @param string $id 格式:单个,如1 ; 批量,如1,2,3 - * @param array $data - */ - public function recResume($id,$rec){ - $id = @explode(',',$id); - - foreach($id as $v){ - - if($v){ - - $ids[] = $v; - } - } - if (!empty($ids)){ - - $idstr = pylode(',', $ids); - - $post = array('rec_resume'=>$rec); - - $result['id'] = $this -> update_once('resume_expect', $post, array('id'=>array('in',$idstr))); - - if ($result['id']){ - - $msg = array(); - $uids = array(); - //查询出需推荐的简历的名称,为发送系统通知做准备 - $expects = $this -> getList(array('id'=>array('in',$idstr)),array('field'=>'id,uid,name')); - - foreach ($expects['list'] as $k=>$v){ - - $uids[] = $v['uid']; - - if ($rec == 1){ - - $msg[$v['uid']] = '您的简历<a href="resumetpl,'.$v['id'].'">《'.$v['name'].'》</a>被管理员设为推荐简历'; - - }elseif ($rec == 0){ - - $msg[$v['uid']] = '您的简历<a href="resumetpl,'.$v['id'].'">《'.$v['name'].'》</a>被管理员设为非推荐简历'; - } - } - //发送系统通知 - include_once('sysmsg.model.php'); - - $sysmsgM = new sysmsg_model($this->db, $this->def); - - $sysmsgM -> addInfo(array('uid'=>$uids,'usertype'=>1, 'content'=>$msg)); - - $return['msg'] = '推荐简历(ID:'.$idstr.')设置成功'; - $return['errcode'] = '9'; - }else{ - $return['msg'] = '推荐简历(ID:'.$idstr.')设置失败'; - $return['errcode'] = '8'; - } - }else{ - $return['msg'] = '请选择要推荐的简历'; - $return['errcode'] = '8'; - } - return $return; - } - /** - * 置顶简历 - * @param string $id 格式:单个,如1 ; 批量,如1,2,3 - * @param array $data - */ - public function topResume($id,$post){ - - $id = @explode(',',$id); - - foreach($id as $v){ - - if($v){ - - $ids[] = $v; - } - } - if (!empty($ids)){ - - $idstr = pylode(',', $ids); - - $result['id'] = $this -> update_once('resume_expect', $post, array('id'=>array('in',$idstr))); - - if ($result['id']){ - - $msg = array(); - $uids = array(); - //查询出需置顶的简历的名称,为发送系统通知做准备 - $expects = $this -> getList(array('id'=>array('in',$idstr)),array('field'=>'id,uid,name')); - - foreach ($expects['list'] as $k=>$v){ - - $uids[] = $v['uid']; - - if ($post['top'] == 1){ - - $msg[$v['uid']] = '您的简历<a href="resumetpl,'.$v['id'].'">《'.$v['name'].'》</a>已置顶'; - - }elseif ($post['top'] == 0){ - - $msg[$v['uid']] = '您的简历<a href="resumetpl,'.$v['id'].'">《'.$v['name'].'》</a>被管理员取消置顶'; - } - } - //发送系统通知 - include_once('sysmsg.model.php'); - - $sysmsgM = new sysmsg_model($this->db, $this->def); - - $sysmsgM -> addInfo(array('uid'=>$uids,'usertype'=>1, 'content'=>$msg)); - - $return['msg'] = '置顶简历(ID:'.$idstr.')设置成功'; - $return['errcode'] = '9'; - }else{ - $return['msg'] = '置顶简历(ID:'.$idstr.')设置失败'; - $return['errcode'] = '8'; - } - }else{ - $return['msg'] = '请选择要置顶的简历'; - $return['errcode'] = '8'; - } - return $return; - } - /** - * 后台简历备注 - * @param string $id 格式:如1 ; - * @param array $data - */ - public function label($id,$post){ - - if (!empty($id)){ - - $return['id'] = $this -> update_once('resume_expect', $post, array('id'=>$id)); - $return['msg'] = '简历备注(ID:'.$id.')'; - $return['msg'] = $return['id'] ? $return['msg'].'设置成功!' : $return['msg'].'设置失败!'; - //操作状态 9:成功 8:失败 配合原有提示函数 - $return['errcode'] = $return['id'] ? '9' :'8'; - - return $return; - } - } - /** - * 删除简历 - * @param string $id 格式:单个,如1 ; 批量,如1,2,3 - * @param array $data utype=admin; delAccount=1, 同步删除账号 - */ - public function delResume($id,$data=array()){ - - $limit = 'limit 1'; - $return['layertype'] = 0; - - if (!empty($id)){ - - if(is_array($id)){ - - $id = pylode(',', $id); - $return['layertype'] = 1; - $limit = ''; - } - - if($data['utype']!='admin'){ - //如果不是后台操作 必须传入UID - - $elist = $this -> getList(array('id'=>array('in',$id)),array('field'=>'`id`,`uid`')); - foreach($elist['list'] as $v){ - - if($data['uid'] != $v['uid']){ - $return['msg'] = '非法操作!'; - $return['errcode'] = '8'; - return $return; - } - - $resumenum= $this -> getExpectNum(array('uid'=>array('in',$v['uid']))); - if($resumenum==1){ - $return['msg'] = '请至少保留一份简历!'; - $return['errcode'] = '8'; - return $return; - } - } - }else if($data['utype'] == 'admin' && $data['delAccount'] == '1'){ // 同步删除账号,提取账号UID - - $elist = $this -> getList(array('id'=>array('in',$id)),array('field'=>'`id`,`uid`')); - - $euids = array(); - foreach($elist['list'] as $ek => $ev){ - - $euids[$ev['uid']] = $ev['uid']; - } - - require_once ('userinfo.model.php'); - $userinfoM = new userinfo_model($this->db, $this->def); - return $userinfoM -> delMember($euids); - } - - //查询删掉的是默认简历的数据 - $expects = $this -> getList(array('id'=>array('in',$id),'defaults'=>1),array('field'=>'`id`,`uid`')); - - $expectA = $this -> select_all('resume_expect',array('id'=>array('in',$id)),'`uid`'); - if (!empty($expectA)) { - foreach ($expectA as $ev) { - $expectAuids[$ev['uid']] = $ev['uid']; - } - } - - - $nid = $this -> delete_all('resume_expect',array('id'=>array('in',$id)),$limit); - - if ($nid){ - //删除简历时修改默认简历 - $this -> upDefaults($expects['list']); - //删除简历相关其他的表中数据 - $this -> delete_all('company_job_rewardlist',array('eid'=>array('in',$id)),''); - - $this -> delete_all('company_job_rewardlog',array('eid'=>array('in',$id)),''); - - $this -> delete_all('down_resume',array('eid'=>array('in',$id)),''); - - $this -> delete_all('look_resume',array('resume_id'=>array('in',$id)),''); - - $this -> delete_all('resume_city_job_class',array('eid'=>array('in',$id)),''); - - $this -> delete_all('resume_cityclass',array('eid'=>array('in',$id)),''); - - $this -> delete_all('resume_doc',array('eid'=>array('in',$id)),''); - - $this -> delete_all('resume_edu',array('eid'=>array('in',$id)),''); - - $this -> delete_all('resume_jobclass',array('eid'=>array('in',$id)),''); - - $this -> delete_all('resume_other',array('eid'=>array('in',$id)),''); - - $this -> delete_all('resume_project',array('eid'=>array('in',$id)),''); - - $this -> delete_all('resume_show',array('eid'=>array('in',$id)),''); - - $this -> delete_all('resume_skill',array('eid'=>array('in',$id)),''); - - $this -> delete_all('resume_training',array('eid'=>array('in',$id)),''); - - $this -> delete_all('resume_work',array('eid'=>array('in',$id)),''); - - $this -> delete_all('report',array('eid'=>array('in',$id), 'usertype' => 2, 'type' => 0),''); - - $this -> delete_all('talent_pool',array('eid'=>array('in',$id)),''); - - $this -> delete_all('user_entrust',array('eid'=>array('in',$id)),''); - - $this -> delete_all('user_entrust_record',array('eid'=>array('in',$id)),''); - - $this -> delete_all('user_resume',array('eid'=>array('in',$id)),''); - - $this -> delete_all('userid_job',array('eid'=>array('in',$id)),''); - - $this -> delete_all('spview_subscribe', array('eid' => array('in',$id)), ''); - - $this -> delete_all('spview_subscribe_msg', array('eid' => array('in',$id)), ''); - - - if (!empty($expectAuids)){ - - $this -> delete_all('look_job',array('uid' => array('in', pylode(',',$expectAuids))),''); - } - - $return['id'] = $nid; - $return['msg'] = '简历(ID:'.$id.')删除成功'; - $return['errcode'] = '9'; - - }else{ - $return['msg'] = '简历(ID:'.$id.')删除失败'; - $return['errcode'] = '8'; - - } - }else{ - $return['msg'] = '请选择要删除的简历'; - $return['errcode'] = '8'; - - } - - return $return; - } - //删除简历时修改默认简历,并处理与uid相关数据 - private function upDefaults($list = array()){ - - $uids = array(); - foreach ($list as $k=>$v){ - - $uids[] = $v['uid']; - } - if (!empty($uids)){ - //先去除重复的uid - $uids = array_unique($uids); - - $newdef = array();//要修改的默认简历数据 - $newids = array();//要修改的默认简历id - $newuids = array();//还有简历的用户uid - $newrnum = array();//要修改的简历数量数据 - //根据删除简历的uid来查询删除后剩下的相关简历 - $newExpects = $this -> getList(array('uid'=>array('in',pylode(',', $uids)),'groupby'=>'uid'),array('field'=>'id,uid,count(id) as rnum')); - //被删除简历的用户,def_job默认为0 - foreach ($uids as $uk=>$uv){ - $newdef[$uv] = 0; - $newrnum[$uv] = 0; - } - //删除后还有简历的,def_job设置查到的简历id - foreach ($newExpects['list'] as $ek=>$ev){ - - $newids[] = $ev['id']; - $newuids[] = $ev['uid']; - $newdef[$ev['uid']] = $ev['id']; - $newrnum[$ev['uid']] = $ev['rnum']; - } - //修改基本信息中的默认简历数据 - $this -> update_once('resume', array('def_job'=>array('CASE','uid',$newdef)), array('uid'=>array('in',pylode(',', $uids)))); - //修改简历中的默认简历数据 - $this -> update_once('resume_expect', array('defaults'=>1), array('id'=>array('in',pylode(',', $newids)))); - //修改现有简历数量 - $this -> update_once('member_statis',array('resume_num'=>array('CASE','uid',$newrnum)),array('uid'=>array('in',pylode(',', $newuids)))); - //数组去重,取得已经没有简历的用户uid - $noResume = array_diff($uids, $newuids); - if (!empty($noResume)){ - //删除已没有简历用户的关注记录 - $this -> delete_all('atn',array('uid'=>array('in',pylode(',', $noResume))),''); - //删除已没有简历用户的职位浏览记录 - $this -> delete_all('look_job',array('uid'=>array('in',pylode(',', $noResume))),''); - //删除已没有简历用户的邀请面试记录 - $this -> delete_all('userid_msg',array('uid'=>array('in',pylode(',', $noResume))),''); - } - } - } - /** - * 后台个人认证审核 - * @param string $id 格式:单个,如1 ; 批量,如1,2,3 - * @param array $data - */ - public function statusCert($uid,$data = array()){ - - - $uid = @explode(',',$uid); - - if (count($uid) > 1){ - - $return['layertype'] = 1; - }else { - - $return['layertype'] = 0; - } - - foreach($uid as $v){ - - if(!empty($v)){ - - $uids[] = $v; - } - } - if (!empty($uids)){ - - $uidstr = pylode(',', $uids); - - $post = $data['post']; - - $result = $this -> update_once('resume', $post, array('uid'=>array('in',$uidstr))); - - if ($result){ - - $status = $post['idcard_status']; - $this -> update_once('resume_expect', array('idcard_status'=>$status), array('uid'=>array('in',$uidstr))); - if ($status == 1 || $status == 2){ - //通过审核,并后台设置的上传身份验证所加积分大于0,才需要处理加积分 - if ($status == 1 && $this->config['integral_identity'] > 0){ - - $compays = $this -> select_all('company_pay',array('com_id'=>array('in',$uidstr),'pay_remark'=>'上传身份验证'),'com_id'); - - if (!empty($compays)){ - //获取已经获得过验证积分的uid - foreach ($compays as $v){ - - $payed[] = $v['com_id']; - } - //取差集,得到还未获得认证积分的uid - $needs = array_diff($uids, $payed); - }else{ - - $needs = $uids; - } - //发放身份认证积分 - if(!empty($needs)){ - include_once('integral.model.php'); - - $integralM = new integral_model($this->db, $this->def); - - foreach ($needs as $v){ - - $integralM -> invtalCheck($v,1,'integral_identity','上传身份验证'); - } - } - } - - foreach ($uids as $k=>$v){ - - /* 处理审核信息 */ - if ($post['idcard_status'] == 2){ - - $statusInfo = '您的身份证审核未通过 '; - - if($post['statusbody']){ - - $statusInfo .= ', 原因:'.$post['statusbody']; - - } - - $msg = $statusInfo; - - }elseif($post['idcard_status'] == 1){ - - $msg = '您的身份证已审核通过'; - - } - } - - //发送系统通知 - include_once('sysmsg.model.php'); - - $sysmsgM = new sysmsg_model($this->db, $this->def); - - $sysmsgM -> addInfo(array('uid'=>$uids,'usertype'=>1, 'content'=>$msg)); - //发邮件通知 - if ($this->config['sy_email_usercert'] == '1'){ - - $tplData = array( - 'certinfo' => $msg, - 'type' => 'usercert' - ); - include_once('notice.model.php'); - - $noticeM = new notice_model($this->db, $this->def); - - $emailTpl = $noticeM -> getTpl($tplData,'email'); - - $resumes = $this -> select_all('member',array('uid'=>array('in',$uidstr)),'uid,email'); - - foreach($resumes as $v){ - - $edata = array( - 'uid' => $v['uid'], - 'cuid' => 0, - 'certinfo' => $msg, - 'email' => $v['email'], - 'type' => 'usercert' - ); - - $noticeM -> sendEmailType($edata,$emailTpl); - } - } - } - - $return['msg'] = '个人认证审核(ID:'.$uidstr.')设置成功'; - $return['errcode'] = '9'; - }else{ - $return['msg'] = '个人认证审核(ID:'.$uidstr.')设置失败'; - $return['errcode'] = '8'; - } - }else{ - $return['msg'] = '请选择要审核的认证'; - $return['errcode'] = '8'; - } - return $return; - } - /** - * 删除个人身份验证 - * @param string $id 格式:单个,如1 ; 批量,如1,2,3 - * @param array $data - */ - public function delResumeCert($uid){ - - $return['layertype'] = 0; - - if (!empty($uid)){ - - if(is_array($uid)){ - - $uid = pylode(',', $uid); - $return['layertype'] = 1; - } - $cdata = array( - 'idcard_pic' => '', - 'idcard_status' => 0, - 'cert_time' => '', - 'statusbody' => '' - ); - - $nid = $this -> update_once('resume',$cdata,array('uid'=>array('in',$uid))); - if ($nid){ - $return['msg'] = '个人身份认证(ID:'.$uid.')删除成功'; - $return['errcode'] = '9'; - }else{ - $return['msg'] = '个人身份认证(ID:'.$uid.')删除失败'; - $return['errcode'] = '8'; - } - }else{ - $return['msg'] = '请选择要删除的个人身份认证'; - $return['errcode'] = '8'; - } - return $return; - } - /** - * 后台个人头像审核 - * @param string $id 格式:单个,如1 ; 批量,如1,2,3 - * @param array $data - */ - public function statusPhoto($uid,$data = array()){ - - $uid = @explode(',',$uid); - - foreach($uid as $v){ - - if($v){ - - $uids[] = $v; - } - } - if (!empty($uids)){ - - $uidstr = pylode(',', $uids); - - $post = $data['post']; - - if ($post['photo_status'] == 2){ - //审核不通过删除图片 - $post['photo'] =''; - } - - $result = $this -> update_once('resume', $post, array('uid'=>array('in',$uidstr))); - if ($result){ - - if ($post['photo_status'] == 2){ - // 审核不通过,相关表头像删除 - $this -> update_once('resume_expect',array('photo'=>''),array('uid'=>array('in',$uidstr))); - $this -> update_once('answer',array('pic'=>''),array('uid'=>array('in',$uidstr))); - $this -> update_once('question',array('pic'=>''),array('uid'=>array('in',$uidstr))); - - $statusInfo = '您的头像'; - - foreach ($uids as $k=>$v){ - - /* 处理审核信息 */ - if($post['photo_statusbody']){ - - $statusInfo .= ' , 因为'.$post['photo_statusbody'].' , '; - } - - $statusInfo .= '已被管理员删除'; - - $msg[$v] = $statusInfo; - } - - //发送系统通知 - include_once('sysmsg.model.php'); - - $sysmsgM = new sysmsg_model($this->db, $this->def); - - $sysmsgM -> addInfo(array('uid'=>$uids,'usertype'=>1, 'content'=>$msg)); - - }elseif ($post['photo_status'] == 0){ - // 审核通过,修改相关表头像 - $resume = $this -> select_all('resume',array('uid'=>array('in',$uidstr)),'`uid`,`photo`'); - foreach ($resume as $k=>$v){ - - $newphoto[$v['uid']] = $v['photo']; - } - //修改基本信息中的默认简历数据 - $this -> update_once('resume_expect', array('photo'=>array('CASE','uid',$newphoto)), array('uid'=>array('in',$uidstr))); - $this -> update_once('answer',array('pic'=>array('CASE','uid',$newphoto)),array('uid'=>array('in',$uidstr))); - $this -> update_once('question',array('pic'=>array('CASE','uid',$newphoto)),array('uid'=>array('in',$uidstr))); - } - $return['msg'] = '头像审核(ID:'.$uidstr.')设置成功'; - $return['errcode'] = '9'; - }else{ - $return['msg'] = '头像审核(ID:'.$uidstr.')设置失败'; - $return['errcode'] = '8'; - } - }else{ - $return['msg'] = '请选择要审核的头像'; - $return['errcode'] = '8'; - } - return $return; - } - /** - * 后台个人作品审核 - * @param string $id 格式:单个,如1 ; 批量,如1,2,3 - * @param array $data - */ - public function statusShow($id,$data = array()){ - - $id = @explode(',',$id); - - foreach($id as $v){ - - if($v){ - - $ids[] = $v; - } - } - if (!empty($ids)){ - - $idstr = pylode(',', $ids); - - $shows = $this -> getResumeShowList(array('id'=>array('in',$idstr)),array('field'=>'`uid`,`title`')); - - $post = $data['post']; - - if ($post['status'] == 2){ - //审核不通过删除 - $result = $this -> delete_all('resume_show', array('id'=>array('in',$idstr)),''); - }elseif($post['status'] == 0){ - $result = $this -> update_once('resume_show', $post, array('id'=>array('in',$idstr))); - } - - - - if ($result){ - - if ($post['status'] == 0 || $post['status'] == 2){ - - foreach ($shows as $k=>$v){ - $uids[] = $v['uid']; - /* 处理审核信息 */ - if ($post['status'] == 2){ - - if ($v['title'] != ''){ - - $statusInfo = '您的作品案例('.$v['title'].')审核未通过'; - }else{ - - $statusInfo = '您的作品案例审核未通过'; - } - - if($post['statusbody']){ - - $statusInfo .= ', 原因:'.$post['statusbody']; - } - - $msg[$v['uid']][] = $statusInfo; - - }elseif($post['status'] == 0){ - - if ($v['title'] != ''){ - $msg[$v['uid']][] = '您的作品案例('.$v['title'].')已审核通过'; - }else{ - $msg[$v['uid']][] = '您的作品案例已审核通过'; - } - } - } - //发送系统通知 - include_once('sysmsg.model.php'); - - $sysmsgM = new sysmsg_model($this->db, $this->def); - - $sysmsgM -> addInfo(array('uid'=>$uids,'usertype'=>1, 'content'=>$msg)); - - } - - $return['msg'] = '作品案例审核(ID:'.$idstr.')设置成功'; - $return['errcode'] = '9'; - }else{ - $return['msg'] = '作品案例审核(ID:'.$idstr.')设置失败'; - $return['errcode'] = '8'; - } - }else{ - $return['msg'] = '请选择要审核的作品案'; - $return['errcode'] = '8'; - } - return $return; - } - /** - * 修改个人头像 - * @param array $whereData - * @param array $data photo/需上传的图片文件; thumb/已处理好的缩略图; utype/操作的用户类型; base/需上传的base4图片; preview/pc预览即上传 - */ - public function upPhoto($whereData = array(),$data=array('photo'=>null,'thumb'=>null,'utype'=>null,'base'=>null,'preview'=>null)) - { + + /** + * 推荐简历 + * @param string $id 格式:单个,如1 ; 批量,如1,2,3 + * @param array $data + */ + public function recResume($id, $rec) { + $id = @explode(',', $id); - if (!empty($whereData['uid'])){ - - $uid = $whereData['uid']; - // 头像还需上传的 - if ($data['photo']['tmp_name'] || $data['base']){ - - $upArr = array( - 'file' => $data['photo'], - 'dir' => 'user', - 'type' => 'logo', - 'base' => $data['base'], - 'preview' => $data['preview'], - 'watermark'=> 0 - ); - $result = $this -> upload($upArr); - - if (!empty($result['msg'])){ - - $return['msg'] = $result['msg']; - $return['errcode'] = '8'; - return $return; - - }elseif (!empty($result['picurl'])){ - - $photo = $result['picurl']; - } - } - // 已处理好的头像缩略图 - if ($data['thumb']){ - - $photo = str_replace('../data','./data',$data['thumb'][1]); - - } - - if (!empty($photo)){ - // 用户操作,且后台设置用户头像需要审核的 - $rinfo=$this->getResumeInfo(array('uid'=>$uid),array('field'=>'r_status')); - if ($data['utype'] == 'user' && $this -> config['user_photo_status'] == 1){ - - $photo_status = 1; - }else{ - $photo_status = $rinfo['r_status']!=1?1:0; - } - - $resumeData = array('photo'=>$photo,'defphoto'=>1); - - if ($data['utype'] == 'user'){ - - $pass = $this->infoConCheck($resumeData,array('uid'=>$uid,'usertype'=>1,'source'=>$data['source'])); - - if(!$pass){ + foreach ($id as $v) { + + if ($v) { + + $ids[] = $v; + } + } + if (!empty($ids)) { + + $idstr = pylode(',', $ids); + + $post = array('rec_resume' => $rec); + + $result['id'] = $this->update_once('resume_expect', $post, array('id' => array('in', $idstr))); + + if ($result['id']) { + + $msg = array(); + $uids = array(); + //查询出需推荐的简历的名称,为发送系统通知做准备 + $expects = $this->getList(array('id' => array('in', $idstr)), array('field' => 'id,uid,name')); + + foreach ($expects['list'] as $k => $v) { + + $uids[] = $v['uid']; + + if ($rec == 1) { + + $msg[$v['uid']] = '您的简历<a href="resumetpl,' . $v['id'] . '">《' . $v['name'] . '》</a>被管理员设为推荐简历'; + + } elseif ($rec == 0) { + + $msg[$v['uid']] = '您的简历<a href="resumetpl,' . $v['id'] . '">《' . $v['name'] . '》</a>被管理员设为非推荐简历'; + } + } + //发送系统通知 + include_once('sysmsg.model.php'); + + $sysmsgM = new sysmsg_model($this->db, $this->def); + + $sysmsgM->addInfo(array('uid' => $uids, 'usertype' => 1, 'content' => $msg)); + + $return['msg'] = '推荐简历(ID:' . $idstr . ')设置成功'; + $return['errcode'] = '9'; + } else { + $return['msg'] = '推荐简历(ID:' . $idstr . ')设置失败'; + $return['errcode'] = '8'; + } + } else { + $return['msg'] = '请选择要推荐的简历'; + $return['errcode'] = '8'; + } + return $return; + } + + /** + * 置顶简历 + * @param string $id 格式:单个,如1 ; 批量,如1,2,3 + * @param array $data + */ + public function topResume($id, $post) { + + $id = @explode(',', $id); + + foreach ($id as $v) { + + if ($v) { + + $ids[] = $v; + } + } + if (!empty($ids)) { + + $idstr = pylode(',', $ids); + + $result['id'] = $this->update_once('resume_expect', $post, array('id' => array('in', $idstr))); + + if ($result['id']) { + + $msg = array(); + $uids = array(); + //查询出需置顶的简历的名称,为发送系统通知做准备 + $expects = $this->getList(array('id' => array('in', $idstr)), array('field' => 'id,uid,name')); + + foreach ($expects['list'] as $k => $v) { + + $uids[] = $v['uid']; + + if ($post['top'] == 1) { + + $msg[$v['uid']] = '您的简历<a href="resumetpl,' . $v['id'] . '">《' . $v['name'] . '》</a>已置顶'; + + } elseif ($post['top'] == 0) { + + $msg[$v['uid']] = '您的简历<a href="resumetpl,' . $v['id'] . '">《' . $v['name'] . '》</a>被管理员取消置顶'; + } + } + //发送系统通知 + include_once('sysmsg.model.php'); + + $sysmsgM = new sysmsg_model($this->db, $this->def); + + $sysmsgM->addInfo(array('uid' => $uids, 'usertype' => 1, 'content' => $msg)); + + $return['msg'] = '置顶简历(ID:' . $idstr . ')设置成功'; + $return['errcode'] = '9'; + } else { + $return['msg'] = '置顶简历(ID:' . $idstr . ')设置失败'; + $return['errcode'] = '8'; + } + } else { + $return['msg'] = '请选择要置顶的简历'; + $return['errcode'] = '8'; + } + return $return; + } + + /** + * 后台简历备注 + * @param string $id 格式:如1 ; + * @param array $data + */ + public function label($id, $post) { + + if (!empty($id)) { + + $return['id'] = $this->update_once('resume_expect', $post, array('id' => $id)); + $return['msg'] = '简历备注(ID:' . $id . ')'; + $return['msg'] = $return['id'] ? $return['msg'] . '设置成功!' : $return['msg'] . '设置失败!'; + //操作状态 9:成功 8:失败 配合原有提示函数 + $return['errcode'] = $return['id'] ? '9' : '8'; + + return $return; + } + } + + /** + * 删除简历 + * @param string $id 格式:单个,如1 ; 批量,如1,2,3 + * @param array $data utype=admin; delAccount=1, 同步删除账号 + */ + public function delResume($id, $data = array()) { + + $limit = 'limit 1'; + $return['layertype'] = 0; + + if (!empty($id)) { + + if (is_array($id)) { + + $id = pylode(',', $id); + $return['layertype'] = 1; + $limit = ''; + } + + if ($data['utype'] != 'admin') { + //如果不是后台操作 必须传入UID + + $elist = $this->getList(array('id' => array('in', $id)), array('field' => '`id`,`uid`')); + foreach ($elist['list'] as $v) { + + if ($data['uid'] != $v['uid']) { + $return['msg'] = '非法操作!'; + $return['errcode'] = '8'; + return $return; + } + + $resumenum = $this->getExpectNum(array('uid' => array('in', $v['uid']))); + if ($resumenum == 1) { + $return['msg'] = '请至少保留一份简历!'; + $return['errcode'] = '8'; + return $return; + } + } + } else if ($data['utype'] == 'admin' && $data['delAccount'] == '1') { // 同步删除账号,提取账号UID + + $elist = $this->getList(array('id' => array('in', $id)), array('field' => '`id`,`uid`')); + + $euids = array(); + foreach ($elist['list'] as $ek => $ev) { + + $euids[$ev['uid']] = $ev['uid']; + } + + require_once('userinfo.model.php'); + $userinfoM = new userinfo_model($this->db, $this->def); + return $userinfoM->delMember($euids); + } + + //查询删掉的是默认简历的数据 + $expects = $this->getList(array('id' => array('in', $id), 'defaults' => 1), array('field' => '`id`,`uid`')); + + $expectA = $this->select_all('resume_expect', array('id' => array('in', $id)), '`uid`'); + if (!empty($expectA)) { + foreach ($expectA as $ev) { + $expectAuids[$ev['uid']] = $ev['uid']; + } + } + + + $nid = $this->delete_all('resume_expect', array('id' => array('in', $id)), $limit); + + if ($nid) { + //删除简历时修改默认简历 + $this->upDefaults($expects['list']); + //删除简历相关其他的表中数据 + $this->delete_all('company_job_rewardlist', array('eid' => array('in', $id)), ''); + + $this->delete_all('company_job_rewardlog', array('eid' => array('in', $id)), ''); + + $this->delete_all('down_resume', array('eid' => array('in', $id)), ''); + + $this->delete_all('look_resume', array('resume_id' => array('in', $id)), ''); + + $this->delete_all('resume_city_job_class', array('eid' => array('in', $id)), ''); + + $this->delete_all('resume_cityclass', array('eid' => array('in', $id)), ''); + + $this->delete_all('resume_doc', array('eid' => array('in', $id)), ''); + + $this->delete_all('resume_edu', array('eid' => array('in', $id)), ''); + + $this->delete_all('resume_jobclass', array('eid' => array('in', $id)), ''); + + $this->delete_all('resume_other', array('eid' => array('in', $id)), ''); + + $this->delete_all('resume_project', array('eid' => array('in', $id)), ''); + + $this->delete_all('resume_show', array('eid' => array('in', $id)), ''); + + $this->delete_all('resume_skill', array('eid' => array('in', $id)), ''); + + $this->delete_all('resume_training', array('eid' => array('in', $id)), ''); + + $this->delete_all('resume_work', array('eid' => array('in', $id)), ''); + + $this->delete_all('report', array('eid' => array('in', $id), 'usertype' => 2, 'type' => 0), ''); + + $this->delete_all('talent_pool', array('eid' => array('in', $id)), ''); + + $this->delete_all('user_entrust', array('eid' => array('in', $id)), ''); + + $this->delete_all('user_entrust_record', array('eid' => array('in', $id)), ''); + + $this->delete_all('user_resume', array('eid' => array('in', $id)), ''); + + $this->delete_all('userid_job', array('eid' => array('in', $id)), ''); + + $this->delete_all('spview_subscribe', array('eid' => array('in', $id)), ''); + + $this->delete_all('spview_subscribe_msg', array('eid' => array('in', $id)), ''); + + + if (!empty($expectAuids)) { + + $this->delete_all('look_job', array('uid' => array('in', pylode(',', $expectAuids))), ''); + } + + $return['id'] = $nid; + $return['msg'] = '简历(ID:' . $id . ')删除成功'; + $return['errcode'] = '9'; + + } else { + $return['msg'] = '简历(ID:' . $id . ')删除失败'; + $return['errcode'] = '8'; + + } + } else { + $return['msg'] = '请选择要删除的简历'; + $return['errcode'] = '8'; + + } + + return $return; + } + + //删除简历时修改默认简历,并处理与uid相关数据 + private function upDefaults($list = array()) { + + $uids = array(); + foreach ($list as $k => $v) { + + $uids[] = $v['uid']; + } + if (!empty($uids)) { + //先去除重复的uid + $uids = array_unique($uids); + + $newdef = array();//要修改的默认简历数据 + $newids = array();//要修改的默认简历id + $newuids = array();//还有简历的用户uid + $newrnum = array();//要修改的简历数量数据 + //根据删除简历的uid来查询删除后剩下的相关简历 + $newExpects = $this->getList(array('uid' => array('in', pylode(',', $uids)), 'groupby' => 'uid'), array('field' => 'id,uid,count(id) as rnum')); + //被删除简历的用户,def_job默认为0 + foreach ($uids as $uk => $uv) { + $newdef[$uv] = 0; + $newrnum[$uv] = 0; + } + //删除后还有简历的,def_job设置查到的简历id + foreach ($newExpects['list'] as $ek => $ev) { + + $newids[] = $ev['id']; + $newuids[] = $ev['uid']; + $newdef[$ev['uid']] = $ev['id']; + $newrnum[$ev['uid']] = $ev['rnum']; + } + //修改基本信息中的默认简历数据 + $this->update_once('resume', array('def_job' => array('CASE', 'uid', $newdef)), array('uid' => array('in', pylode(',', $uids)))); + //修改简历中的默认简历数据 + $this->update_once('resume_expect', array('defaults' => 1), array('id' => array('in', pylode(',', $newids)))); + //修改现有简历数量 + $this->update_once('member_statis', array('resume_num' => array('CASE', 'uid', $newrnum)), array('uid' => array('in', pylode(',', $newuids)))); + //数组去重,取得已经没有简历的用户uid + $noResume = array_diff($uids, $newuids); + if (!empty($noResume)) { + //删除已没有简历用户的关注记录 + $this->delete_all('atn', array('uid' => array('in', pylode(',', $noResume))), ''); + //删除已没有简历用户的职位浏览记录 + $this->delete_all('look_job', array('uid' => array('in', pylode(',', $noResume))), ''); + //删除已没有简历用户的邀请面试记录 + $this->delete_all('userid_msg', array('uid' => array('in', pylode(',', $noResume))), ''); + } + } + } + + /** + * 后台个人认证审核 + * @param string $id 格式:单个,如1 ; 批量,如1,2,3 + * @param array $data + */ + public function statusCert($uid, $data = array()) { + + + $uid = @explode(',', $uid); + + if (count($uid) > 1) { + + $return['layertype'] = 1; + } else { + + $return['layertype'] = 0; + } + + foreach ($uid as $v) { + + if (!empty($v)) { + + $uids[] = $v; + } + } + if (!empty($uids)) { + + $uidstr = pylode(',', $uids); + + $post = $data['post']; + + $result = $this->update_once('resume', $post, array('uid' => array('in', $uidstr))); + + if ($result) { + + $status = $post['idcard_status']; + $this->update_once('resume_expect', array('idcard_status' => $status), array('uid' => array('in', $uidstr))); + if ($status == 1 || $status == 2) { + //通过审核,并后台设置的上传身份验证所加积分大于0,才需要处理加积分 + if ($status == 1 && $this->config['integral_identity'] > 0) { + + $compays = $this->select_all('company_pay', array('com_id' => array('in', $uidstr), 'pay_remark' => '上传身份验证'), 'com_id'); + + if (!empty($compays)) { + //获取已经获得过验证积分的uid + foreach ($compays as $v) { + + $payed[] = $v['com_id']; + } + //取差集,得到还未获得认证积分的uid + $needs = array_diff($uids, $payed); + } else { + + $needs = $uids; + } + //发放身份认证积分 + if (!empty($needs)) { + include_once('integral.model.php'); + + $integralM = new integral_model($this->db, $this->def); + + foreach ($needs as $v) { + + $integralM->invtalCheck($v, 1, 'integral_identity', '上传身份验证'); + } + } + } + + foreach ($uids as $k => $v) { + + /* 处理审核信息 */ + if ($post['idcard_status'] == 2) { + + $statusInfo = '您的身份证审核未通过 '; + + if ($post['statusbody']) { + + $statusInfo .= ', 原因:' . $post['statusbody']; + + } + + $msg = $statusInfo; + + } elseif ($post['idcard_status'] == 1) { + + $msg = '您的身份证已审核通过'; + + } + } + + //发送系统通知 + include_once('sysmsg.model.php'); + + $sysmsgM = new sysmsg_model($this->db, $this->def); + + $sysmsgM->addInfo(array('uid' => $uids, 'usertype' => 1, 'content' => $msg)); + //发邮件通知 + if ($this->config['sy_email_usercert'] == '1') { + + $tplData = array( + 'certinfo' => $msg, + 'type' => 'usercert' + ); + include_once('notice.model.php'); + + $noticeM = new notice_model($this->db, $this->def); + + $emailTpl = $noticeM->getTpl($tplData, 'email'); + + $resumes = $this->select_all('member', array('uid' => array('in', $uidstr)), 'uid,email'); + + foreach ($resumes as $v) { + + $edata = array( + 'uid' => $v['uid'], + 'cuid' => 0, + 'certinfo' => $msg, + 'email' => $v['email'], + 'type' => 'usercert' + ); + + $noticeM->sendEmailType($edata, $emailTpl); + } + } + } + + $return['msg'] = '个人认证审核(ID:' . $uidstr . ')设置成功'; + $return['errcode'] = '9'; + } else { + $return['msg'] = '个人认证审核(ID:' . $uidstr . ')设置失败'; + $return['errcode'] = '8'; + } + } else { + $return['msg'] = '请选择要审核的认证'; + $return['errcode'] = '8'; + } + return $return; + } + + /** + * 删除个人身份验证 + * @param string $id 格式:单个,如1 ; 批量,如1,2,3 + * @param array $data + */ + public function delResumeCert($uid) { + + $return['layertype'] = 0; + + if (!empty($uid)) { + + if (is_array($uid)) { + + $uid = pylode(',', $uid); + $return['layertype'] = 1; + } + $cdata = array( + 'idcard_pic' => '', + 'idcard_status' => 0, + 'cert_time' => '', + 'statusbody' => '' + ); + + $nid = $this->update_once('resume', $cdata, array('uid' => array('in', $uid))); + if ($nid) { + $return['msg'] = '个人身份认证(ID:' . $uid . ')删除成功'; + $return['errcode'] = '9'; + } else { + $return['msg'] = '个人身份认证(ID:' . $uid . ')删除失败'; + $return['errcode'] = '8'; + } + } else { + $return['msg'] = '请选择要删除的个人身份认证'; + $return['errcode'] = '8'; + } + return $return; + } + + /** + * 后台个人头像审核 + * @param string $id 格式:单个,如1 ; 批量,如1,2,3 + * @param array $data + */ + public function statusPhoto($uid, $data = array()) { + + $uid = @explode(',', $uid); + + foreach ($uid as $v) { + + if ($v) { + + $uids[] = $v; + } + } + if (!empty($uids)) { + + $uidstr = pylode(',', $uids); + + $post = $data['post']; + + if ($post['photo_status'] == 2) { + //审核不通过删除图片 + $post['photo'] = ''; + } + + $result = $this->update_once('resume', $post, array('uid' => array('in', $uidstr))); + if ($result) { + + if ($post['photo_status'] == 2) { + // 审核不通过,相关表头像删除 + $this->update_once('resume_expect', array('photo' => ''), array('uid' => array('in', $uidstr))); + $this->update_once('answer', array('pic' => ''), array('uid' => array('in', $uidstr))); + $this->update_once('question', array('pic' => ''), array('uid' => array('in', $uidstr))); + + $statusInfo = '您的头像'; + + foreach ($uids as $k => $v) { + + /* 处理审核信息 */ + if ($post['photo_statusbody']) { + + $statusInfo .= ' , 因为' . $post['photo_statusbody'] . ' , '; + } + + $statusInfo .= '已被管理员删除'; + + $msg[$v] = $statusInfo; + } + + //发送系统通知 + include_once('sysmsg.model.php'); + + $sysmsgM = new sysmsg_model($this->db, $this->def); + + $sysmsgM->addInfo(array('uid' => $uids, 'usertype' => 1, 'content' => $msg)); + + } elseif ($post['photo_status'] == 0) { + // 审核通过,修改相关表头像 + $resume = $this->select_all('resume', array('uid' => array('in', $uidstr)), '`uid`,`photo`'); + foreach ($resume as $k => $v) { + + $newphoto[$v['uid']] = $v['photo']; + } + //修改基本信息中的默认简历数据 + $this->update_once('resume_expect', array('photo' => array('CASE', 'uid', $newphoto)), array('uid' => array('in', $uidstr))); + $this->update_once('answer', array('pic' => array('CASE', 'uid', $newphoto)), array('uid' => array('in', $uidstr))); + $this->update_once('question', array('pic' => array('CASE', 'uid', $newphoto)), array('uid' => array('in', $uidstr))); + } + $return['msg'] = '头像审核(ID:' . $uidstr . ')设置成功'; + $return['errcode'] = '9'; + } else { + $return['msg'] = '头像审核(ID:' . $uidstr . ')设置失败'; + $return['errcode'] = '8'; + } + } else { + $return['msg'] = '请选择要审核的头像'; + $return['errcode'] = '8'; + } + return $return; + } + + /** + * 后台个人作品审核 + * @param string $id 格式:单个,如1 ; 批量,如1,2,3 + * @param array $data + */ + public function statusShow($id, $data = array()) { + + $id = @explode(',', $id); + + foreach ($id as $v) { + + if ($v) { + + $ids[] = $v; + } + } + if (!empty($ids)) { + + $idstr = pylode(',', $ids); + + $shows = $this->getResumeShowList(array('id' => array('in', $idstr)), array('field' => '`uid`,`title`')); + + $post = $data['post']; + + if ($post['status'] == 2) { + //审核不通过删除 + $result = $this->delete_all('resume_show', array('id' => array('in', $idstr)), ''); + } elseif ($post['status'] == 0) { + $result = $this->update_once('resume_show', $post, array('id' => array('in', $idstr))); + } + + + if ($result) { + + if ($post['status'] == 0 || $post['status'] == 2) { + + foreach ($shows as $k => $v) { + $uids[] = $v['uid']; + /* 处理审核信息 */ + if ($post['status'] == 2) { + + if ($v['title'] != '') { + + $statusInfo = '您的作品案例(' . $v['title'] . ')审核未通过'; + } else { + + $statusInfo = '您的作品案例审核未通过'; + } + + if ($post['statusbody']) { + + $statusInfo .= ', 原因:' . $post['statusbody']; + } + + $msg[$v['uid']][] = $statusInfo; + + } elseif ($post['status'] == 0) { + + if ($v['title'] != '') { + $msg[$v['uid']][] = '您的作品案例(' . $v['title'] . ')已审核通过'; + } else { + $msg[$v['uid']][] = '您的作品案例已审核通过'; + } + } + } + //发送系统通知 + include_once('sysmsg.model.php'); + + $sysmsgM = new sysmsg_model($this->db, $this->def); + + $sysmsgM->addInfo(array('uid' => $uids, 'usertype' => 1, 'content' => $msg)); + + } + + $return['msg'] = '作品案例审核(ID:' . $idstr . ')设置成功'; + $return['errcode'] = '9'; + } else { + $return['msg'] = '作品案例审核(ID:' . $idstr . ')设置失败'; + $return['errcode'] = '8'; + } + } else { + $return['msg'] = '请选择要审核的作品案'; + $return['errcode'] = '8'; + } + return $return; + } + + /** + * 修改个人头像 + * @param array $whereData + * @param array $data photo/需上传的图片文件; thumb/已处理好的缩略图; utype/操作的用户类型; base/需上传的base4图片; preview/pc预览即上传 + */ + public function upPhoto($whereData = array(), $data = array('photo' => null, 'thumb' => null, 'utype' => null, 'base' => null, 'preview' => null)) { + + if (!empty($whereData['uid'])) { + + $uid = $whereData['uid']; + // 头像还需上传的 + if ($data['photo']['tmp_name'] || $data['base']) { + + $upArr = array( + 'file' => $data['photo'], + 'dir' => 'user', + 'type' => 'logo', + 'base' => $data['base'], + 'preview' => $data['preview'], + 'watermark' => 0 + ); + $result = $this->upload($upArr); + + if (!empty($result['msg'])) { + + $return['msg'] = $result['msg']; + $return['errcode'] = '8'; + return $return; + + } elseif (!empty($result['picurl'])) { + + $photo = $result['picurl']; + } + } + // 已处理好的头像缩略图 + if ($data['thumb']) { + + $photo = str_replace('../data', './data', $data['thumb'][1]); + + } + + if (!empty($photo)) { + // 用户操作,且后台设置用户头像需要审核的 + $rinfo = $this->getResumeInfo(array('uid' => $uid), array('field' => 'r_status')); + if ($data['utype'] == 'user' && $this->config['user_photo_status'] == 1) { + + $photo_status = 1; + } else { + $photo_status = $rinfo['r_status'] != 1 ? 1 : 0; + } + + $resumeData = array('photo' => $photo, 'defphoto' => 1); + + if ($data['utype'] == 'user') { + + $pass = $this->infoConCheck($resumeData, array('uid' => $uid, 'usertype' => 1, 'source' => $data['source'])); + + if (!$pass) { $photo_status = 1; } } - + $resumeData['photo_status'] = $photo_status; - - $return['id'] = $this -> update_once('resume',$resumeData,array('uid'=>$uid)); - } - - if (isset($return['id'])) { - // 用户操作的,判断处理头像上传积分 - if ($data['utype'] == 'user'){ - - require_once ('integral.model.php'); - - $IntegralM = new integral_model($this -> db, $this -> def); - $IntegralM -> invtalCheck($uid,1,'integral_avatar','上传头像'); - - $this -> addMemberLog($uid, 1, '上传头像', 16, 1); - - if ($this -> config['user_photo_status'] == 1){ - // 需审核时,简历表,以前的头像要清除 - $this -> update_once('resume_expect',array('photo'=>'', 'defphoto' => 1),array('uid'=>$uid)); - $return['errcode'] = '9'; - $return['msg'] = '上传成功,管理员审核后对其他用户开放显示'; - - }else{ + + $return['id'] = $this->update_once('resume', $resumeData, array('uid' => $uid)); + } + + if (isset($return['id'])) { + // 用户操作的,判断处理头像上传积分 + if ($data['utype'] == 'user') { + + require_once('integral.model.php'); + + $IntegralM = new integral_model($this->db, $this->def); + $IntegralM->invtalCheck($uid, 1, 'integral_avatar', '上传头像'); + + $this->addMemberLog($uid, 1, '上传头像', 16, 1); + + if ($this->config['user_photo_status'] == 1) { + // 需审核时,简历表,以前的头像要清除 + $this->update_once('resume_expect', array('photo' => '', 'defphoto' => 1), array('uid' => $uid)); + $return['errcode'] = '9'; + $return['msg'] = '上传成功,管理员审核后对其他用户开放显示'; + + } else { $this->update_once('resume_expect', array('photo' => $photo, 'defphoto' => 1), array('uid' => $uid)); - $return['errcode'] = '9'; - $return['msg'] = '上传成功'; - - } - // pc会员中心预览即上传,处理预览图 - if ($data['preview']){ - - $return['picurl'] = checkpic($photo); - } - }else{ - $return['msg'] = '个人头像(ID:'.$uid.')修改成功'; - $return['errcode'] = '9'; - - } - }else{ - - $return['msg'] = '个人头像(ID:'.$uid.')修改失败'; - $return['errcode'] = '8'; - - } - }else{ - - $return['msg'] = '请选择需要修改的用户'; - $return['errcode'] = '8'; - - } - return $return; - } - /** - * 修改个人二维码 - * @param array $whereData - * @param array $data photo/需上传的图片文件; base/需上传的base4图片; preview/pc预览即上传 - */ - public function upEwm($whereData = array(),$data=array('photo'=>null,'base'=>null,'preview'=>null)) - { - if (!empty($whereData['uid'])){ - - $uid = $whereData['uid']; - - if ($data['photo'] || $data['base']){ - - $upArr = array( - 'file' => $data['photo'], - 'dir' => 'user', - 'type' => 'ewm', - 'base' => $data['base'], - 'preview' => $data['preview'] - ); - $result = $this -> upload($upArr); - - if (!empty($result['msg'])){ - - $return['msg'] = $result['msg']; - $return['errcode'] = '8'; - - return $return; - - }elseif (!empty($result['picurl'])){ - - $photo = $result['picurl']; - } - } - - - if (!empty($photo)){ - $resumeData = array('wxewm'=>$photo); + $return['errcode'] = '9'; + $return['msg'] = '上传成功'; + + } + // pc会员中心预览即上传,处理预览图 + if ($data['preview']) { + + $return['picurl'] = checkpic($photo); + } + } else { + $return['msg'] = '个人头像(ID:' . $uid . ')修改成功'; + $return['errcode'] = '9'; + + } + } else { + + $return['msg'] = '个人头像(ID:' . $uid . ')修改失败'; + $return['errcode'] = '8'; + + } + } else { + + $return['msg'] = '请选择需要修改的用户'; + $return['errcode'] = '8'; + + } + return $return; + } + + /** + * 修改个人二维码 + * @param array $whereData + * @param array $data photo/需上传的图片文件; base/需上传的base4图片; preview/pc预览即上传 + */ + public function upEwm($whereData = array(), $data = array('photo' => null, 'base' => null, 'preview' => null)) { + if (!empty($whereData['uid'])) { + + $uid = $whereData['uid']; + + if ($data['photo'] || $data['base']) { + + $upArr = array( + 'file' => $data['photo'], + 'dir' => 'user', + 'type' => 'ewm', + 'base' => $data['base'], + 'preview' => $data['preview'] + ); + $result = $this->upload($upArr); + + if (!empty($result['msg'])) { + + $return['msg'] = $result['msg']; + $return['errcode'] = '8'; + + return $return; + + } elseif (!empty($result['picurl'])) { + + $photo = $result['picurl']; + } + } + + + if (!empty($photo)) { + $resumeData = array('wxewm' => $photo); //内容检测 - if ($data['utype'] == 'user'){ - - $pass = $this->infoConCheck($resumeData,array('uid'=>$uid,'usertype'=>1,'source'=>$data['source'])); - - if(!$pass){ + if ($data['utype'] == 'user') { + + $pass = $this->infoConCheck($resumeData, array('uid' => $uid, 'usertype' => 1, 'source' => $data['source'])); + + if (!$pass) { $resumeData['r_status'] = 0; } } - - $return['id'] = $this -> update_once('resume',$resumeData,array('uid'=>$uid)); - - if(isset($resumeData['r_status']) && $resumeData['r_status'] === 0){ - $this->setExpectState(array('r_status'=>0,'state'=>0),array('uid'=>$uid)); + + $return['id'] = $this->update_once('resume', $resumeData, array('uid' => $uid)); + + if (isset($resumeData['r_status']) && $resumeData['r_status'] === 0) { + $this->setExpectState(array('r_status' => 0, 'state' => 0), array('uid' => $uid)); } - } - - if (isset($return['id'])) { - - $this -> addMemberLog($uid, 1, '上传二维码', 16, 1); - + } + + if (isset($return['id'])) { + + $this->addMemberLog($uid, 1, '上传二维码', 16, 1); + // 处理预览图 - if ($data['preview']){ - - $return['picurl'] = checkpic($photo); + if ($data['preview']) { + + $return['picurl'] = checkpic($photo); } - - $return['msg'] = '个人二维码修改成功'; - $return['errcode'] = '9'; - }else{ - - $return['msg'] = '个人二维码修改失败'; - $return['errcode'] = '8'; - } - }else{ - - $return['msg'] = '请选择需要修改的用户'; - $return['errcode'] = '8'; - } - return $return; - } - /** - * 内容检测 - */ - function resumeConCheck($reusmeData,$data){ - - $expect = isset($reusmeData['expect'])?$reusmeData['expect']:array(); - $workData = isset($reusmeData['workData'])?$reusmeData['workData']:array(); - $eduData = isset($reusmeData['eduData'])?$reusmeData['eduData']:array(); - $proData = isset($reusmeData['projectData'])?$reusmeData['projectData']:array(); - $trainData = isset($reusmeData['trainingData'])?$reusmeData['trainingData']:array(); - $skillData = isset($reusmeData['skillData'])?$reusmeData['skillData']:array(); - $otherData = isset($reusmeData['otherData'])?$reusmeData['otherData']:array(); - $showData = isset($reusmeData['showData'])?$reusmeData['showData']:array(); - $docData = isset($reusmeData['docData'])?$reusmeData['docData']:array(); - + + $return['msg'] = '个人二维码修改成功'; + $return['errcode'] = '9'; + } else { + + $return['msg'] = '个人二维码修改失败'; + $return['errcode'] = '8'; + } + } else { + + $return['msg'] = '请选择需要修改的用户'; + $return['errcode'] = '8'; + } + return $return; + } + + /** + * 内容检测 + */ + function resumeConCheck($reusmeData, $data) { + + $expect = isset($reusmeData['expect']) ? $reusmeData['expect'] : array(); + $workData = isset($reusmeData['workData']) ? $reusmeData['workData'] : array(); + $eduData = isset($reusmeData['eduData']) ? $reusmeData['eduData'] : array(); + $proData = isset($reusmeData['projectData']) ? $reusmeData['projectData'] : array(); + $trainData = isset($reusmeData['trainingData']) ? $reusmeData['trainingData'] : array(); + $skillData = isset($reusmeData['skillData']) ? $reusmeData['skillData'] : array(); + $otherData = isset($reusmeData['otherData']) ? $reusmeData['otherData'] : array(); + $showData = isset($reusmeData['showData']) ? $reusmeData['showData'] : array(); + $docData = isset($reusmeData['docData']) ? $reusmeData['docData'] : array(); + require_once('concheck.model.php'); - $concheckM = new concheck_model($this->db,$this->def); - - $check_con = array(); - $check_pic = array(); - $pass = true; - - if(!empty($expect)){ - if(isset($expect['name']) && $expect['name']!=''){ + $concheckM = new concheck_model($this->db, $this->def); + + $check_con = array(); + $check_pic = array(); + $pass = true; + + if (!empty($expect)) { + if (isset($expect['name']) && $expect['name'] != '') { $check_con['expect_name'] = strip_tags($expect['name']); } } - if(!empty($workData)){ + if (!empty($workData)) { foreach ($workData as $wk => $wv) { - - $wkey = $wk>0 ? '_'.$wk:''; - if(isset($wv['name']) && $wv['name']!=''){ - $check_con['work_name'.$wkey] = strip_tags($wv['name']); + $wkey = $wk > 0 ? '_' . $wk : ''; + + if (isset($wv['name']) && $wv['name'] != '') { + $check_con['work_name' . $wkey] = strip_tags($wv['name']); } - if(isset($wv['title']) && $wv['title']!=''){ - $check_con['work_title_'.$wkey] = strip_tags($wv['title']); + if (isset($wv['title']) && $wv['title'] != '') { + $check_con['work_title_' . $wkey] = strip_tags($wv['title']); } - if(isset($wv['content']) && $wv['content']!=''){ - $check_con['work_content_'.$wkey] = strip_tags($wv['content']); + if (isset($wv['content']) && $wv['content'] != '') { + $check_con['work_content_' . $wkey] = strip_tags($wv['content']); } } } - if(!empty($eduData)){ + if (!empty($eduData)) { foreach ($eduData as $ek => $ev) { - - $ekey = $ek>0 ? '_'.$ek:''; - - if(isset($ev['name']) && $ev['name']!=''){ - $check_con['edu_name'.$ekey] = strip_tags($ev['name']); + + $ekey = $ek > 0 ? '_' . $ek : ''; + + if (isset($ev['name']) && $ev['name'] != '') { + $check_con['edu_name' . $ekey] = strip_tags($ev['name']); } - if(isset($ev['specialty']) && $ev['specialty']!=''){ - $check_con['edu_specialty'.$ekey] = strip_tags($ev['specialty']); + if (isset($ev['specialty']) && $ev['specialty'] != '') { + $check_con['edu_specialty' . $ekey] = strip_tags($ev['specialty']); } } } - if(!empty($proData)){ + if (!empty($proData)) { foreach ($proData as $pk => $pv) { - - $pkey = $pk>0 ? '_'.$pk:''; - - if(isset($pv['name']) && $pv['name']!=''){ - $check_con['project_name'.$pkey] = strip_tags($pv['name']); - } - if(isset($pv['title']) && $pv['title']!=''){ - $check_con['project_title'.$pkey] = strip_tags($pv['title']); - } - if(isset($pv['content']) && $pv['content']!=''){ - $check_con['project_content'.$pkey] = strip_tags($pv['content']); - } - } - - } - - if(!empty($trainData)){ - foreach ($trainData as $tk => $tv) { - - $tkey = $tk>0 ? '_'.$tk:''; - - if(isset($tv['name']) && $tv['name']!=''){ - $check_con['train_name'.$tkey] = strip_tags($tv['name']); - } - if(isset($tv['title']) && $tv['title']!=''){ - $check_con['train_title'.$tkey] = strip_tags($tv['title']); - } - if(isset($tv['content']) && $tv['content']!=''){ - $check_con['train_content'.$tkey] = strip_tags($tv['content']); - } - } - - } - if(!empty($skillData)){ - foreach ($skillData as $sk => $sv) { - - $skey = $sk>0 ? '_'.$sk:''; - - if(isset($sv['name']) && $sv['name']!=''){ - $check_con['skill_name'.$skey] = strip_tags($sv['name']); - } - } - - } - if(!empty($otherData)){ - foreach ($otherData as $ok => $ov) { - - $okey = $ok>0 ? '_'.$ok:''; - - if(isset($ov['name']) && $ov['name']!=''){ - $check_con['other_name'.$okey] = strip_tags($ov['name']); + $pkey = $pk > 0 ? '_' . $pk : ''; + + if (isset($pv['name']) && $pv['name'] != '') { + $check_con['project_name' . $pkey] = strip_tags($pv['name']); } - if(isset($ov['content']) && $ov['content']!=''){ - $check_con['other_content'.$okey] = strip_tags($ov['content']); + if (isset($pv['title']) && $pv['title'] != '') { + $check_con['project_title' . $pkey] = strip_tags($pv['title']); + } + if (isset($pv['content']) && $pv['content'] != '') { + $check_con['project_content' . $pkey] = strip_tags($pv['content']); } } } - if(!empty($docData)){ + if (!empty($trainData)) { + foreach ($trainData as $tk => $tv) { + + $tkey = $tk > 0 ? '_' . $tk : ''; + + if (isset($tv['name']) && $tv['name'] != '') { + $check_con['train_name' . $tkey] = strip_tags($tv['name']); + } + if (isset($tv['title']) && $tv['title'] != '') { + $check_con['train_title' . $tkey] = strip_tags($tv['title']); + } + if (isset($tv['content']) && $tv['content'] != '') { + $check_con['train_content' . $tkey] = strip_tags($tv['content']); + } + } + + } + if (!empty($skillData)) { + foreach ($skillData as $sk => $sv) { + + $skey = $sk > 0 ? '_' . $sk : ''; + + if (isset($sv['name']) && $sv['name'] != '') { + $check_con['skill_name' . $skey] = strip_tags($sv['name']); + } + + } + + } + if (!empty($otherData)) { + foreach ($otherData as $ok => $ov) { + + $okey = $ok > 0 ? '_' . $ok : ''; + + if (isset($ov['name']) && $ov['name'] != '') { + $check_con['other_name' . $okey] = strip_tags($ov['name']); + } + if (isset($ov['content']) && $ov['content'] != '') { + $check_con['other_content' . $okey] = strip_tags($ov['content']); + } + } + + } + + if (!empty($docData)) { foreach ($docData as $dock => $docv) { - - $dockey = $dock>0 ? '_'.$dock:''; - - if(isset($docv['doc']) && $docv['doc']!=''){ - $check_con['doc'.$dockey] = strip_tags($docv['doc']); + + $dockey = $dock > 0 ? '_' . $dock : ''; + + if (isset($docv['doc']) && $docv['doc'] != '') { + $check_con['doc' . $dockey] = strip_tags($docv['doc']); } } } $check_con_data = array( - 'type' => 'text', - 'uid' => $data['uid'], - 'usertype' => $data['usertype'], - 'ctype' => 1, - 'cid' => $data['eid'] + 'type' => 'text', + 'uid' => $data['uid'], + 'usertype' => $data['usertype'], + 'ctype' => 1, + 'cid' => $data['eid'] ); - if(isset($data['source'])){ + if (isset($data['source'])) { $check_con_data['source'] = $data['source']; } - if(!empty($check_con)){ - $cresult = $concheckM->checkContent($check_con,$check_con_data); - - $code = isset($cresult['code']) ? $cresult['code'] : 0; + if (!empty($check_con)) { + $cresult = $concheckM->checkContent($check_con, $check_con_data); + + $code = isset($cresult['code']) ? $cresult['code'] : 0; if ($code != 1) { - $pass = false; + $pass = false; } } - return $pass; } - function infoConCheck($userdata,$data){ - + + function infoConCheck($userdata, $data) { + require_once('concheck.model.php'); - $concheckM = new concheck_model($this->db,$this->def); - - $check_con =array(); - $check_pic =array(); - $pass = true; - - if(isset($userdata['name']) && $userdata['name']!=''){ + $concheckM = new concheck_model($this->db, $this->def); + + $check_con = array(); + $check_pic = array(); + $pass = true; + + if (isset($userdata['name']) && $userdata['name'] != '') { $check_con['name'] = strip_tags($userdata['name']); } - if(isset($userdata['living']) && $userdata['living']!=''){ + if (isset($userdata['living']) && $userdata['living'] != '') { $check_con['living'] = strip_tags($userdata['living']); } - if(isset($userdata['address']) && $userdata['address']!=''){ + if (isset($userdata['address']) && $userdata['address'] != '') { $check_con['address'] = strip_tags($userdata['address']); } - if(isset($userdata['nationality']) && $userdata['nationality']!=''){ + if (isset($userdata['nationality']) && $userdata['nationality'] != '') { $check_con['nationality'] = strip_tags($userdata['nationality']); } - if(isset($userdata['domicile']) && $userdata['domicile']!=''){ + if (isset($userdata['domicile']) && $userdata['domicile'] != '') { $check_con['domicile'] = strip_tags($userdata['domicile']); } - if(isset($userdata['description']) && $userdata['description']!=''){ + if (isset($userdata['description']) && $userdata['description'] != '') { $check_con['description'] = strip_tags($userdata['description']); } - if(isset($userdata['tag']) && $userdata['tag']!=''){ + if (isset($userdata['tag']) && $userdata['tag'] != '') { $check_con['tag'] = strip_tags($userdata['tag']); } - $check_con_data = array( - 'type' => 'text', - 'uid' => $data['uid'], - 'usertype' => $data['usertype'], - 'ctype' => 3, - 'cid' => $data['uid'] + 'type' => 'text', + 'uid' => $data['uid'], + 'usertype' => $data['usertype'], + 'ctype' => 3, + 'cid' => $data['uid'] ); - if(isset($data['source'])){ + if (isset($data['source'])) { $check_con_data['source'] = $data['source']; } - if(!empty($check_con)){ - $cresult = $concheckM->checkContent($check_con,$check_con_data); - - $code = isset($cresult['code']) ? $cresult['code'] : 0; + if (!empty($check_con)) { + $cresult = $concheckM->checkContent($check_con, $check_con_data); + + $code = isset($cresult['code']) ? $cresult['code'] : 0; if ($code != 1) { - $pass = false; + $pass = false; } } - - + return $pass; } - /** - * 删除个人头像 - * @param string $id 格式:单个,如1 ; 批量,如1,2,3 - */ - public function delPhoto($uid){ - - $return['layertype'] = 0; - - if (!empty($uid)){ - - if(is_array($uid)){ - - $uid = pylode(',', $uid); - $return['layertype'] = 1; - } - $rdata = array( - 'photo' => '', - 'photo_status' => '', - 'photo_statusbody' => '' - ); - - $return['id'] = $this -> update_once('resume', $rdata, array('uid'=>array('in',$uid))); - - if ($return['id']){ - //删除相关头像 - $this -> update_once('resume_expect',array('photo'=>'','phototype'=>''),array('uid'=>array('in',$uid))); - - $this -> update_once('answer',array('pic'=>''),array('uid'=>array('in',$uid))); - - $this -> update_once('question',array('pic'=>''),array('uid'=>array('in',$uid))); - - $return['msg'] = '个人头像(ID:'.$uid.')删除成功'; - $return['errcode'] = '9'; - }else{ - - $return['msg'] = '个人头像(ID:'.$uid.')删除失败'; - $return['errcode'] = '8'; - } - }else{ - - $return['msg'] = '请选择要删除的个人头像'; - $return['errcode'] = '8'; - } - return $return; - } - - /** - * 个人作品列表(d单条) - * @param string $whereData - * @param array $data - */ - public function getResumeShowInfo($whereData = array(), $data =array()){ - - $data['field'] = empty($data['field']) ? '*' : $data['field']; - - $resumeshow = $this -> select_once('resume_show', $whereData, $data['field']); - - if (!empty($resumeshow)){ - - if ($resumeshow['picurl']){ - - $resumeshow['picurl_n'] = checkpic($resumeshow['picurl']); - } - } - - return $resumeshow; - - } - + + /** + * 删除个人头像 + * @param string $id 格式:单个,如1 ; 批量,如1,2,3 + */ + public function delPhoto($uid) { + + $return['layertype'] = 0; + + if (!empty($uid)) { + + if (is_array($uid)) { + + $uid = pylode(',', $uid); + $return['layertype'] = 1; + } + $rdata = array( + 'photo' => '', + 'photo_status' => '', + 'photo_statusbody' => '' + ); + + $return['id'] = $this->update_once('resume', $rdata, array('uid' => array('in', $uid))); + + if ($return['id']) { + //删除相关头像 + $this->update_once('resume_expect', array('photo' => '', 'phototype' => ''), array('uid' => array('in', $uid))); + + $this->update_once('answer', array('pic' => ''), array('uid' => array('in', $uid))); + + $this->update_once('question', array('pic' => ''), array('uid' => array('in', $uid))); + + $return['msg'] = '个人头像(ID:' . $uid . ')删除成功'; + $return['errcode'] = '9'; + } else { + + $return['msg'] = '个人头像(ID:' . $uid . ')删除失败'; + $return['errcode'] = '8'; + } + } else { + + $return['msg'] = '请选择要删除的个人头像'; + $return['errcode'] = '8'; + } + return $return; + } + + /** + * 个人作品列表(d单条) + * @param string $whereData + * @param array $data + */ + public function getResumeShowInfo($whereData = array(), $data = array()) { + + $data['field'] = empty($data['field']) ? '*' : $data['field']; + + $resumeshow = $this->select_once('resume_show', $whereData, $data['field']); + + if (!empty($resumeshow)) { + + if ($resumeshow['picurl']) { + + $resumeshow['picurl_n'] = checkpic($resumeshow['picurl']); + } + } + + return $resumeshow; + + } + /** * 后台个人作品列表 * @param array $whereData * @param array $data * @return array|bool|false|string|void */ - public function getResumeShowList($whereData = array(), $data = array('field' => null, 'utype' => null)) - { - - $field = $data['field'] ? $data['field'] : '*'; - - $List = $this->select_all('resume_show', $whereData, $field); - + public function getResumeShowList($whereData = array(), $data = array('field' => null, 'utype' => null)) { + + $field = $data['field'] ? $data['field'] : '*'; + + $List = $this->select_all('resume_show', $whereData, $field); + if ($data['utype'] == 'admin') { - - $resumeIds = array(); + + $resumeIds = array(); foreach ($List as $v) { - - $resumeIds[] = $v['eid']; + + $resumeIds[] = $v['eid']; } - $resume = $this->getSimpleList(array('id' => array('in', pylode(',', $resumeIds))), array('field' => '`id`,`name`,`uname`')); + $resume = $this->getSimpleList(array('id' => array('in', pylode(',', $resumeIds))), array('field' => '`id`,`name`,`uname`')); } - + foreach ($List as $k => $v) { if (!empty($resume)) { foreach ($resume as $val) { if ($v['eid'] == $val['id']) { - - $List[$k]['name'] = $val['uname']; - $List[$k]['expect'] = $val['name']; + + $List[$k]['name'] = $val['uname']; + $List[$k]['expect'] = $val['name']; } } } - - $List[$k]['title'] = mb_substr($v['title'], 0, 15); - + + $List[$k]['title'] = mb_substr($v['title'], 0, 15); + if (strpos($v['picurl'], 'http') === false) { - - $List[$k]['picurl'] = checkpic($v['picurl']); + + $List[$k]['picurl'] = checkpic($v['picurl']); } else { - - $List[$k]['picurl'] = ''; + + $List[$k]['picurl'] = ''; } } return $List; } - + /** * 添加简历作品 resume_show * @param array $data * @return bool */ - public function addResumeShow($data = array()) - { - $post = $data['post']; - if(isset($data['file']) && $data['file']['tmp_name']!=''){ - // pc端上传 - $upArr = array( - 'file' => $data['file'], - 'dir' => 'show' - ); - - require_once ('upload.model.php'); - $uploadM = new upload_model($this->db, $this->def); - $pic = $uploadM->newUpload($upArr); - - if (!empty($pic['msg'])){ - - $return['msg'] = $pic['msg']; - $return['errcode'] = 8; - return $return; - - }elseif (!empty($pic['picurl'])){ - - $post['picurl'] = $pic['picurl']; - } - } - - if($data['utype']=='user'){ - $resumeData['showData'] = $post; - if($data['id']){ - $resumeshow = $this -> select_once('resume_show',array('id'=>$data['id'],'uid'=>$data['uid']),'`eid`'); - $eid = $resumeshow['eid']; - }else{ - $eid = $post['eid']; + public function addResumeShow($data = array()) { + $post = $data['post']; + if (isset($data['file']) && $data['file']['tmp_name'] != '') { + // pc端上传 + $upArr = array( + 'file' => $data['file'], + 'dir' => 'show' + ); + + require_once('upload.model.php'); + $uploadM = new upload_model($this->db, $this->def); + $pic = $uploadM->newUpload($upArr); + + if (!empty($pic['msg'])) { + + $return['msg'] = $pic['msg']; + $return['errcode'] = 8; + return $return; + + } elseif (!empty($pic['picurl'])) { + + $post['picurl'] = $pic['picurl']; } - - $pass = $this->resumeConCheck($resumeData,array('uid'=>$data['uid'],'usertype'=>1,'eid'=>$eid)); - - if(!$pass){ + } + + if ($data['utype'] == 'user') { + $resumeData['showData'] = $post; + if ($data['id']) { + $resumeshow = $this->select_once('resume_show', array('id' => $data['id'], 'uid' => $data['uid']), '`eid`'); + $eid = $resumeshow['eid']; + } else { + $eid = $post['eid']; + } + + $pass = $this->resumeConCheck($resumeData, array('uid' => $data['uid'], 'usertype' => 1, 'eid' => $eid)); + + if (!$pass) { $post['status'] = 1; } } - if($data['id']){ - $updateWhere = array('id'=>$data['id']); - if (isset($data['uid']) && $data['uid']) { + if ($data['id']) { + $updateWhere = array('id' => $data['id']); + if (isset($data['uid']) && $data['uid']) { $updateWhere['uid'] = $data['uid']; } - $nid = $this -> update_once('resume_show',$post,$updateWhere); - if ($nid) { - $return['msg'] = '个人作品(ID:'.$data['id'].')修改成功'; - $return['errcode'] = '9'; - }else{ - $return['msg'] = '个人作品(ID:'.$data['id'].')修改失败'; - $return['errcode'] = '8'; - } - return $return; - }else{ - $member = $this->select_once('member',array('uid'=>$data['uid']),'`did`'); - $post['did'] = $member['did']; - - $post['uid'] = $data['uid']; - $post['ctime'] = time(); - $nid = $this->insert_into('resume_show',$post); - if ($nid){ - $this -> addMemberLog($data['uid'], $data['usertype'], '添加作品展示',16,3); - } - return $nid; - } - } - - /** - * 删除个人作品 - * @param string $id 格式:单个,如1 ; 批量,如1,2,3 - */ - public function delShow($id,$data=array()){ - - $return['layertype'] = 0; - $limit = 'limit 1'; - - if (!empty($id)){ - if(is_array($id)){ - - $ids = $id; - - $return['layertype'] = 1; - $limit = ''; - }else{ - - $ids = @explode(',', $id); - $return['layertype'] = 0; - } - $id = pylode(',', $ids); - - if($data['utype'] == 'admin'){ - $delWhere = array('id'=>array('in',$id)); - }else{ - - $delWhere = array('uid'=>$data['uid'],'id'=>array('in',$id)); - } - - $return['id'] = $this -> delete_all('resume_show',$delWhere,$limit); - - if ($return['id']){ - $this -> addMemberLog($data['uid'],$data['usertype'],'删除作品案例',16,3); - $return['msg'] = '个人作品(ID:'.$id.')删除成功'; - $return['errcode'] = '9'; - }else{ - - $return['msg'] = '个人作品(ID:'.$id.')删除失败'; - $return['errcode'] = '8'; - } - }else{ - - $return['msg'] = '请选择要删除的个人作品'; - $return['errcode'] = '8'; - } - return $return; - } - /** - * 处理单个图片上传 - * @param file/需上传文件; dir/上传目录; type/上传图片类型; base/需上传base64; preview/pc预览即上传 - */ - private function upload($data = array('file'=>null,'dir'=>null,'type'=>null,'base'=>null,'preview'=>null)){ - - include_once('upload.model.php'); - - $UploadM = new upload_model($this->db, $this->def); - - $upArr = array( - 'file' => $data['file'], - 'dir' => $data['dir'], - 'type' => $data['type'], - 'base' => $data['base'], - 'preview' => $data['preview'] - ); - - if (isset($data['watermark'])){ - $upArr['watermark'] = $data['watermark']; + $nid = $this->update_once('resume_show', $post, $updateWhere); + if ($nid) { + $return['msg'] = '个人作品(ID:' . $data['id'] . ')修改成功'; + $return['errcode'] = '9'; + } else { + $return['msg'] = '个人作品(ID:' . $data['id'] . ')修改失败'; + $return['errcode'] = '8'; + } + return $return; + } else { + $member = $this->select_once('member', array('uid' => $data['uid']), '`did`'); + $post['did'] = $member['did']; + + $post['uid'] = $data['uid']; + $post['ctime'] = time(); + $nid = $this->insert_into('resume_show', $post); + if ($nid) { + $this->addMemberLog($data['uid'], $data['usertype'], '添加作品展示', 16, 3); + } + return $nid; } - $return = $UploadM -> newUpload($upArr); - - return $return; - } - /** - * 处理搜索用简历多城市、多职位记录 - */ - private function city_job($eid, $uid, $lastupdate, $nowCity, $nowJob, $oldCity = '', $oldJob = '') - { - - $resume_city = $this->addCityclass($eid, $uid, $nowCity); - $resume_job = $this->addJobclass($eid, $uid, $nowJob); - - if (!empty($resume_city) && !empty($resume_job)){ - if (!empty($oldCity) || !empty($oldJob)){ - // 经处理的城市、职位不为空,并且已存在的城市或职位也不为空,说明是修改简历,需要将已存在的记录删除 - $this -> delete_all('resume_city_job_class',array('eid'=>$eid,'uid'=>$uid),''); - } - $ac1 = $ac2 = $ac3 = $aj1 = $aj2 = $aj3 = $rcj = array(); - - foreach ($resume_city as $k=>$v){ - foreach ($resume_job as $key=>$val){ - // 分别统计每个字段出现次数,防止重复 - $c1key = $v['provinceid']; - $c2key = $v['cityid']; - $c3key = $v['three_cityid']; - $j1key = $val['job1']; - $j2key = $val['job1_son']; - $j3key = $val['job_post']; - - $ac1[$c1key] = isset($ac1[$c1key]) ? $ac1[$c1key] + 1 : 1; - $ac2[$c2key] = isset($ac2[$c2key]) ? $ac2[$c2key] + 1 : 1; - $ac3[$c3key] = isset($ac3[$c3key]) ? $ac3[$c3key] + 1 : 1; - $aj1[$j1key] = isset($aj1[$j1key]) ? $aj1[$j1key] + 1 : 1; - $aj2[$j2key] = isset($aj2[$j2key]) ? $aj2[$j2key] + 1 : 1; - $aj3[$j3key] = isset($aj3[$j3key]) ? $aj3[$j3key] + 1 : 1; - - $rcj[] = array( - 'provinceid' => $c1key, - 'provinceid_num' => $ac1[$c1key], - 'cityid' => $c2key, - 'cityid_num' => $ac2[$c2key], - 'three_cityid' => $c3key, - 'three_cityid_num' => $ac3[$c3key], - 'job1' => $j1key, - 'job1_num' => $aj1[$j1key], - 'job1_son' => $j2key, - 'job1_son_num' => $aj2[$j2key], - 'job_post' => !empty($j3key) ? $j3key : 0, - 'job_post_num' => $aj3[$j3key], - ); - } - } - // 处理合并后数量 - if (!empty($rcj)){ - // 统计字段组合出现次数 - $c1j1 = $c1j2 = $c1j3 = $c2j1 = $c2j2 = $c2j3 = $c3j1 = $c3j2 = $c3j3 = array(); - - foreach ($rcj as $k=>$v){ - $c1j1[$v['provinceid'].'_'.$v['job1']][] = $v['provinceid'].'_'.$v['job1']; - $c1j2[$v['provinceid'].'_'.$v['job1_son']][] = $v['provinceid'].'_'.$v['job1_son']; - $c1j3[$v['provinceid'].'_'.$v['job_post']][] = $v['provinceid'].'_'.$v['job_post']; - $c2j1[$v['cityid'].'_'.$v['job1']][] = $v['cityid'].'_'.$v['job1']; - $c2j2[$v['cityid'].'_'.$v['job1_son']][] = $v['cityid'].'_'.$v['job1_son']; - $c2j3[$v['cityid'].'_'.$v['job_post']][] = $v['cityid'].'_'.$v['job_post']; - $c3j1[$v['three_cityid'].'_'.$v['job1']][] = $v['three_cityid'].'_'.$v['job1']; - $c3j2[$v['three_cityid'].'_'.$v['job1_son']][] = $v['three_cityid'].'_'.$v['job1_son']; - $c3j3[$v['three_cityid'].'_'.$v['job_post']][] = $v['three_cityid'].'_'.$v['job_post']; - - - $rcj[$k]['provinceid_job1_num'] = count($c1j1[$v['provinceid'].'_'.$v['job1']]); - $rcj[$k]['provinceid_job1_son_num'] = count($c1j2[$v['provinceid'].'_'.$v['job1_son']]); - $rcj[$k]['provinceid_job_post_num'] = count($c1j3[$v['provinceid'].'_'.$v['job_post']]); - $rcj[$k]['cityid_job1_num'] = count($c2j1[$v['cityid'].'_'.$v['job1']]); - $rcj[$k]['cityid_job1_son_num'] = count($c2j2[$v['cityid'].'_'.$v['job1_son']]); - $rcj[$k]['cityid_job_post_num'] = count($c2j3[$v['cityid'].'_'.$v['job_post']]); - $rcj[$k]['three_cityid_job1_num'] = count($c3j1[$v['three_cityid'].'_'.$v['job1']]); - $rcj[$k]['three_cityid_job1_son_num'] = count($c3j2[$v['three_cityid'].'_'.$v['job1_son']]); - $rcj[$k]['three_cityid_job_post_num'] = count($c3j3[$v['three_cityid'].'_'.$v['job_post']]); - $rcj[$k]['eid'] = $eid; - $rcj[$k]['uid'] = $uid; - $rcj[$k]['lastupdate'] = $lastupdate; - } - $this -> DB_insert_multi('resume_city_job_class',$rcj); - } - } - } - /** - * 获取职位、城市字段出现字数 - */ - private function getNum($id = '', $idarr = array(), $numarr = array()) - { - $num = in_array($id, $idarr) && isset($numarr[$id]) ? $numarr[$id] + 1 : 1; - - return $num; - } - /** - * 处理简历多城市的添加、修改 - */ - private function addCityclass($eid, $uid, $nowCity, $oldCity = '') - { - $resume_city = $city_sort = array(); - if (!empty($eid) && !empty($uid) && !empty($nowCity)){ - $cityArr = @explode(',', $nowCity); - $citynochange = 0; - //修改之前先判断是否需要修改,需要修改,先删除之前保存的 - if ($oldCity != ''){ - $oldArr = @explode(',', $oldCity); - if(array_diff($oldArr,$cityArr) || array_diff($cityArr,$oldArr)){ - $citynochange = 1; - $this -> delete_all('resume_cityclass',array('eid'=>$eid),''); - } - }else{ - $citynochange = 1; - } - if($citynochange == 1){ - include(PLUS_PATH.'cityparent.cache.php'); - foreach ($cityArr as $v){ - //获取当前城市级别,根据级别来处理,获得其他级别的数据 - $lev = getLev($v,$city_parent); - if ($lev == 1){ - $provinceid = $v; - $cityid = 0; - $threecityid = 0; - }elseif ($lev == 2){ - $cityid = $v; - $provinceid = $city_parent[$v]; - $threecityid = 0; - }elseif ($lev == 3){ - $threecityid = $v; - $cityid = $city_parent[$threecityid]; - $provinceid = $city_parent[$cityid]; - } - $resume_city[]=array( - 'provinceid' => $provinceid, - 'cityid' => $cityid, - 'three_cityid' => $threecityid - ); - $city_sort[] = $provinceid; - } - if (!empty($resume_city)){ - $list = array(); - foreach ($resume_city as $k=>$v){ - $list[$k]['eid'] = $eid; - $list[$k]['uid'] = $uid; - $list[$k]['provinceid'] = $v['provinceid']; - $list[$k]['cityid'] = $v['cityid']; - $list[$k]['three_cityid'] = $v['three_cityid']; - } - $this -> DB_insert_multi('resume_cityclass',$list); - array_multisort($city_sort, SORT_ASC, SORT_NUMERIC, $resume_city); - } - } - } - return $resume_city; - } - /** - * 处理简历多职位的添加、修改 - */ - private function addJobclass($eid, $uid, $nowJob, $oldJob = ''){ - $resume_job = $job_sort = array(); - if (!empty($eid) && !empty($uid) && !empty($nowJob)){ - $jobArr = @explode(',', $nowJob); - $jobnochange = 0; - //修改之前先判断是否需要修改,需要修改,先删除之前保存的 - if ($oldJob != ''){ - $oldArr = @explode(',', $oldJob); - if(array_diff($oldArr,$jobArr) || array_diff($jobArr,$oldArr)){ - $jobnochange = 1; - $this -> delete_all('resume_jobclass',array('eid'=>$eid),''); - } - }else{ - $jobnochange=1; - } - if($jobnochange==1){ - include(PLUS_PATH.'jobparent.cache.php'); - foreach ($jobArr as $v){ - //获取当前职位级别,根据级别来处理,获得其他级别的数据 - $lev = getLev($v,$job_parent); - if ($lev == 1){ - $job = $v; - $jobson = 0; - $jobpost = 0; - }elseif ($lev == 2){ - $jobson = $v; - $job = $job_parent[$v]; - $jobpost = 0; - }elseif ($lev == 3){ - $jobpost = $v; - $jobson = $job_parent[$jobpost]; - $job = $job_parent[$jobson]; - } - $resume_job[]=array( - 'job1' => $job, - 'job1_son' => $jobson, - 'job_post' => $jobpost - ); - $job_sort[] = $job; - } - if (!empty($resume_job)){ - $list = array(); - foreach ($resume_job as $k=>$v){ - $list[$k]['eid'] = $eid; - $list[$k]['uid'] = $uid; - $list[$k]['job1'] = $v['job1']; - $list[$k]['job1_son'] = $v['job1_son']; - $list[$k]['job_post'] = $v['job_post']; - } - $this -> DB_insert_multi('resume_jobclass',$list); - array_multisort($job_sort, SORT_ASC, SORT_NUMERIC, $resume_job); - } - } - } - return $resume_job; - } - public function getCityclassList($whereData = array(),$data=array()) - { - $field = !empty($data['field']) ? $data['field'] : '*'; - $rows = $this -> select_all('resume_cityclass',$whereData,$field); - - return $rows; } - - public function getCityJobClass($whereData = array(), $field = '*'){ - $rows = $this -> select_all('resume_city_job_class', $whereData, $field); - - return $rows; - } - - public function getJobclassList($whereData = array()) - { + + /** + * 删除个人作品 + * @param string $id 格式:单个,如1 ; 批量,如1,2,3 + */ + public function delShow($id, $data = array()) { - $rows = $this -> select_all('resume_jobclass',$whereData); + $return['layertype'] = 0; + $limit = 'limit 1'; - return $rows; + if (!empty($id)) { + if (is_array($id)) { + + $ids = $id; + + $return['layertype'] = 1; + $limit = ''; + } else { + + $ids = @explode(',', $id); + $return['layertype'] = 0; + } + $id = pylode(',', $ids); + + if ($data['utype'] == 'admin') { + $delWhere = array('id' => array('in', $id)); + } else { + + $delWhere = array('uid' => $data['uid'], 'id' => array('in', $id)); + } + + $return['id'] = $this->delete_all('resume_show', $delWhere, $limit); + + if ($return['id']) { + $this->addMemberLog($data['uid'], $data['usertype'], '删除作品案例', 16, 3); + $return['msg'] = '个人作品(ID:' . $id . ')删除成功'; + $return['errcode'] = '9'; + } else { + + $return['msg'] = '个人作品(ID:' . $id . ')删除失败'; + $return['errcode'] = '8'; + } + } else { + + $return['msg'] = '请选择要删除的个人作品'; + $return['errcode'] = '8'; + } + return $return; } - private function getClass($options) - { - if (!empty($options)){ - - include_once('cache.model.php'); - - $cacheM = new cache_model($this->db,$this->def); - - $cache = $cacheM -> GetCache($options); - - return $cache; - } - } - - private function getDataUserList($List){ - - if(!empty($List)){ - - $uids = $cids = array(); - - foreach ($List as $val) { - - $uids[] = $val['uid']; - if ($val['crm_uid']) { - - $cids[] = $val['crm_uid']; + + /** + * 处理单个图片上传 + * @param file/需上传文件; dir/上传目录; type/上传图片类型; base/需上传base64; preview/pc预览即上传 + */ + private function upload($data = array('file' => null, 'dir' => null, 'type' => null, 'base' => null, 'preview' => null)) { + + include_once('upload.model.php'); + + $UploadM = new upload_model($this->db, $this->def); + + $upArr = array( + 'file' => $data['file'], + 'dir' => $data['dir'], + 'type' => $data['type'], + 'base' => $data['base'], + 'preview' => $data['preview'] + ); + + if (isset($data['watermark'])) { + $upArr['watermark'] = $data['watermark']; + } + $return = $UploadM->newUpload($upArr); + + return $return; + } + + /** + * 处理搜索用简历多城市、多职位记录 + */ + private function city_job($eid, $uid, $lastupdate, $nowCity, $nowJob, $oldCity = '', $oldJob = '') { + + $resume_city = $this->addCityclass($eid, $uid, $nowCity); + $resume_job = $this->addJobclass($eid, $uid, $nowJob); + + if (!empty($resume_city) && !empty($resume_job)) { + if (!empty($oldCity) || !empty($oldJob)) { + // 经处理的城市、职位不为空,并且已存在的城市或职位也不为空,说明是修改简历,需要将已存在的记录删除 + $this->delete_all('resume_city_job_class', array('eid' => $eid, 'uid' => $uid), ''); + } + $ac1 = $ac2 = $ac3 = $aj1 = $aj2 = $aj3 = $rcj = array(); + + foreach ($resume_city as $k => $v) { + foreach ($resume_job as $key => $val) { + // 分别统计每个字段出现次数,防止重复 + $c1key = $v['provinceid']; + $c2key = $v['cityid']; + $c3key = $v['three_cityid']; + $j1key = $val['job1']; + $j2key = $val['job1_son']; + $j3key = $val['job_post']; + + $ac1[$c1key] = isset($ac1[$c1key]) ? $ac1[$c1key] + 1 : 1; + $ac2[$c2key] = isset($ac2[$c2key]) ? $ac2[$c2key] + 1 : 1; + $ac3[$c3key] = isset($ac3[$c3key]) ? $ac3[$c3key] + 1 : 1; + $aj1[$j1key] = isset($aj1[$j1key]) ? $aj1[$j1key] + 1 : 1; + $aj2[$j2key] = isset($aj2[$j2key]) ? $aj2[$j2key] + 1 : 1; + $aj3[$j3key] = isset($aj3[$j3key]) ? $aj3[$j3key] + 1 : 1; + + $rcj[] = array( + 'provinceid' => $c1key, + 'provinceid_num' => $ac1[$c1key], + 'cityid' => $c2key, + 'cityid_num' => $ac2[$c2key], + 'three_cityid' => $c3key, + 'three_cityid_num' => $ac3[$c3key], + 'job1' => $j1key, + 'job1_num' => $aj1[$j1key], + 'job1_son' => $j2key, + 'job1_son_num' => $aj2[$j2key], + 'job_post' => !empty($j3key) ? $j3key : 0, + 'job_post_num' => $aj3[$j3key], + ); } } - - // 查询admin_user 业务员信息 - $crmList = $this->select_all('admin_user', array('uid' => array('in', pylode(',', $cids))), '`uid`,`name`'); - - $member = $this->select_all('member', array('uid' => array('in', pylode(',', $uids))), '`uid`,`username`,`usertype`,`reg_date`,`login_date`,`source`,`status`,`wxopenid`,`unionid`,`wxid`,`app_wxid`'); - $sqList = $this->select_all('userid_job', array('uid' => array('in', pylode(',', $uids)),'isdel'=>9), '`uid`'); - - foreach($List as $k=>$v){ - - foreach($member as $val){ - - if($v['uid'] == $val['uid']){ - $List[$k] = array_merge($List[$k], $val); - $List[$k]['app_wxid'] = $val['app_wxid']; - $List[$k]['unionid'] = $val['unionid']; - $List[$k]['wxopenid'] = $val['wxopenid']; - $List[$k]['wxid'] = $val['wxid']; - - } - } - // 提取顾问表查询数据 - if (!empty($crmList)) { - - foreach ($crmList as $crm){ - - if($v['crm_uid'] == $crm['uid']){ - - $List[$k]['crm_name'] = $crm['name']; - - } - } - } - - foreach ($sqList as $sk => $sv){ - if ($v['uid'] == $sv['uid']){ + // 处理合并后数量 + if (!empty($rcj)) { + // 统计字段组合出现次数 + $c1j1 = $c1j2 = $c1j3 = $c2j1 = $c2j2 = $c2j3 = $c3j1 = $c3j2 = $c3j3 = array(); + + foreach ($rcj as $k => $v) { + $c1j1[$v['provinceid'] . '_' . $v['job1']][] = $v['provinceid'] . '_' . $v['job1']; + $c1j2[$v['provinceid'] . '_' . $v['job1_son']][] = $v['provinceid'] . '_' . $v['job1_son']; + $c1j3[$v['provinceid'] . '_' . $v['job_post']][] = $v['provinceid'] . '_' . $v['job_post']; + $c2j1[$v['cityid'] . '_' . $v['job1']][] = $v['cityid'] . '_' . $v['job1']; + $c2j2[$v['cityid'] . '_' . $v['job1_son']][] = $v['cityid'] . '_' . $v['job1_son']; + $c2j3[$v['cityid'] . '_' . $v['job_post']][] = $v['cityid'] . '_' . $v['job_post']; + $c3j1[$v['three_cityid'] . '_' . $v['job1']][] = $v['three_cityid'] . '_' . $v['job1']; + $c3j2[$v['three_cityid'] . '_' . $v['job1_son']][] = $v['three_cityid'] . '_' . $v['job1_son']; + $c3j3[$v['three_cityid'] . '_' . $v['job_post']][] = $v['three_cityid'] . '_' . $v['job_post']; + + + $rcj[$k]['provinceid_job1_num'] = count($c1j1[$v['provinceid'] . '_' . $v['job1']]); + $rcj[$k]['provinceid_job1_son_num'] = count($c1j2[$v['provinceid'] . '_' . $v['job1_son']]); + $rcj[$k]['provinceid_job_post_num'] = count($c1j3[$v['provinceid'] . '_' . $v['job_post']]); + $rcj[$k]['cityid_job1_num'] = count($c2j1[$v['cityid'] . '_' . $v['job1']]); + $rcj[$k]['cityid_job1_son_num'] = count($c2j2[$v['cityid'] . '_' . $v['job1_son']]); + $rcj[$k]['cityid_job_post_num'] = count($c2j3[$v['cityid'] . '_' . $v['job_post']]); + $rcj[$k]['three_cityid_job1_num'] = count($c3j1[$v['three_cityid'] . '_' . $v['job1']]); + $rcj[$k]['three_cityid_job1_son_num'] = count($c3j2[$v['three_cityid'] . '_' . $v['job1_son']]); + $rcj[$k]['three_cityid_job_post_num'] = count($c3j3[$v['three_cityid'] . '_' . $v['job_post']]); + $rcj[$k]['eid'] = $eid; + $rcj[$k]['uid'] = $uid; + $rcj[$k]['lastupdate'] = $lastupdate; + } + $this->DB_insert_multi('resume_city_job_class', $rcj); + } + } + } + + /** + * 获取职位、城市字段出现字数 + */ + private function getNum($id = '', $idarr = array(), $numarr = array()) { + $num = in_array($id, $idarr) && isset($numarr[$id]) ? $numarr[$id] + 1 : 1; + + return $num; + } + + /** + * 处理简历多城市的添加、修改 + */ + private function addCityclass($eid, $uid, $nowCity, $oldCity = '') { + $resume_city = $city_sort = array(); + if (!empty($eid) && !empty($uid) && !empty($nowCity)) { + $cityArr = @explode(',', $nowCity); + $citynochange = 0; + //修改之前先判断是否需要修改,需要修改,先删除之前保存的 + if ($oldCity != '') { + $oldArr = @explode(',', $oldCity); + if (array_diff($oldArr, $cityArr) || array_diff($cityArr, $oldArr)) { + $citynochange = 1; + $this->delete_all('resume_cityclass', array('eid' => $eid), ''); + } + } else { + $citynochange = 1; + } + if ($citynochange == 1) { + include(PLUS_PATH . 'cityparent.cache.php'); + foreach ($cityArr as $v) { + //获取当前城市级别,根据级别来处理,获得其他级别的数据 + $lev = getLev($v, $city_parent); + if ($lev == 1) { + $provinceid = $v; + $cityid = 0; + $threecityid = 0; + } elseif ($lev == 2) { + $cityid = $v; + $provinceid = $city_parent[$v]; + $threecityid = 0; + } elseif ($lev == 3) { + $threecityid = $v; + $cityid = $city_parent[$threecityid]; + $provinceid = $city_parent[$cityid]; + } + $resume_city[] = array( + 'provinceid' => $provinceid, + 'cityid' => $cityid, + 'three_cityid' => $threecityid + ); + $city_sort[] = $provinceid; + } + if (!empty($resume_city)) { + $list = array(); + foreach ($resume_city as $k => $v) { + $list[$k]['eid'] = $eid; + $list[$k]['uid'] = $uid; + $list[$k]['provinceid'] = $v['provinceid']; + $list[$k]['cityid'] = $v['cityid']; + $list[$k]['three_cityid'] = $v['three_cityid']; + } + $this->DB_insert_multi('resume_cityclass', $list); + array_multisort($city_sort, SORT_ASC, SORT_NUMERIC, $resume_city); + } + } + } + return $resume_city; + } + + /** + * 处理简历多职位的添加、修改 + */ + private function addJobclass($eid, $uid, $nowJob, $oldJob = '') { + $resume_job = $job_sort = array(); + if (!empty($eid) && !empty($uid) && !empty($nowJob)) { + $jobArr = @explode(',', $nowJob); + $jobnochange = 0; + //修改之前先判断是否需要修改,需要修改,先删除之前保存的 + if ($oldJob != '') { + $oldArr = @explode(',', $oldJob); + if (array_diff($oldArr, $jobArr) || array_diff($jobArr, $oldArr)) { + $jobnochange = 1; + $this->delete_all('resume_jobclass', array('eid' => $eid), ''); + } + } else { + $jobnochange = 1; + } + if ($jobnochange == 1) { + include(PLUS_PATH . 'jobparent.cache.php'); + foreach ($jobArr as $v) { + //获取当前职位级别,根据级别来处理,获得其他级别的数据 + $lev = getLev($v, $job_parent); + if ($lev == 1) { + $job = $v; + $jobson = 0; + $jobpost = 0; + } elseif ($lev == 2) { + $jobson = $v; + $job = $job_parent[$v]; + $jobpost = 0; + } elseif ($lev == 3) { + $jobpost = $v; + $jobson = $job_parent[$jobpost]; + $job = $job_parent[$jobson]; + } + $resume_job[] = array( + 'job1' => $job, + 'job1_son' => $jobson, + 'job_post' => $jobpost + ); + $job_sort[] = $job; + } + if (!empty($resume_job)) { + $list = array(); + foreach ($resume_job as $k => $v) { + $list[$k]['eid'] = $eid; + $list[$k]['uid'] = $uid; + $list[$k]['job1'] = $v['job1']; + $list[$k]['job1_son'] = $v['job1_son']; + $list[$k]['job_post'] = $v['job_post']; + } + $this->DB_insert_multi('resume_jobclass', $list); + array_multisort($job_sort, SORT_ASC, SORT_NUMERIC, $resume_job); + } + } + } + return $resume_job; + } + + public function getCityclassList($whereData = array(), $data = array()) { + $field = !empty($data['field']) ? $data['field'] : '*'; + $rows = $this->select_all('resume_cityclass', $whereData, $field); + + return $rows; + } + + public function getCityJobClass($whereData = array(), $field = '*') { + $rows = $this->select_all('resume_city_job_class', $whereData, $field); + + return $rows; + } + + public function getJobclassList($whereData = array()) { + + $rows = $this->select_all('resume_jobclass', $whereData); + + return $rows; + } + + private function getClass($options) { + if (!empty($options)) { + + include_once('cache.model.php'); + + $cacheM = new cache_model($this->db, $this->def); + + $cache = $cacheM->GetCache($options); + + return $cache; + } + } + + private function getDataUserList($List) { + + if (!empty($List)) { + + $uids = $cids = array(); + + foreach ($List as $val) { + + $uids[] = $val['uid']; + if ($val['crm_uid']) { + + $cids[] = $val['crm_uid']; + } + } + + // 查询admin_user 业务员信息 + $crmList = $this->select_all('admin_user', array('uid' => array('in', pylode(',', $cids))), '`uid`,`name`'); + + $member = $this->select_all('member', array('uid' => array('in', pylode(',', $uids))), '`uid`,`username`,`usertype`,`reg_date`,`login_date`,`source`,`status`,`wxopenid`,`unionid`,`wxid`,`app_wxid`'); + $sqList = $this->select_all('userid_job', array('uid' => array('in', pylode(',', $uids)), 'isdel' => 9), '`uid`'); + + foreach ($List as $k => $v) { + + foreach ($member as $val) { + + if ($v['uid'] == $val['uid']) { + $List[$k] = array_merge($List[$k], $val); + $List[$k]['app_wxid'] = $val['app_wxid']; + $List[$k]['unionid'] = $val['unionid']; + $List[$k]['wxopenid'] = $val['wxopenid']; + $List[$k]['wxid'] = $val['wxid']; + + } + } + // 提取顾问表查询数据 + if (!empty($crmList)) { + + foreach ($crmList as $crm) { + + if ($v['crm_uid'] == $crm['uid']) { + + $List[$k]['crm_name'] = $crm['name']; + + } + } + } + + foreach ($sqList as $sk => $sv) { + if ($v['uid'] == $sv['uid']) { $List[$k]['sq_num']++; } } - } - } - - return $List; - } - //后台列表处理简历多城市/用户名、审核状态 - private function getDataList($List,$cache) - { - foreach ($List as $v) { - - $uids[] = $v['uid']; - $eids[] = $v['id']; + } } - $member = $this->select_all('member',array('uid'=>array('in',pylode(',', $uids))),'uid,username,moblie'); - $resume_city = $this->select_all('resume_cityclass',array('eid'=>array('in',pylode(',', $eids))),'eid,provinceid,cityid,three_cityid'); - $sqList = $this->select_all('userid_job', array('eid' => array('in', pylode(',', $eids))), '`uid`,`eid`'); - - foreach($List as $k=>$v){ - - foreach($member as $val){ - - if($val['uid']==$v['uid']){ - - $List[$k]['username'] = $val['username']; - $List[$k]['moblie'] = $val['moblie']; - } - } - if ($resume_city){ - - $city_classid = explode(',',$v['city_classid']); - - foreach($resume_city as $val){ - - if($v['id'] == $val['eid']){ - - if($val['provinceid'] == $city_classid[0]){ - - $List[$k]['city_n'] = $cache['city_name'][$city_classid[0]]; - - }else if($val['cityid']==$city_classid[0]){ - - $List[$k]['city_n'] = $cache['city_name'][$val['provinceid']].'-'.$cache['city_name'][$city_classid[0]]; - - }else if($val['three_cityid']==$city_classid[0]){ - - $List[$k]['city_n'] = $cache['city_name'][$val['provinceid']].'-'.$cache['city_name'][$val['cityid']].'-'.$cache['city_name'][$city_classid[0]]; - } - } - } - $cityall = array(); - - if(is_array($city_classid)){ - - $i = 0; - - foreach($city_classid as $cv){ - - if($cache['city_name'][$cv]){ - - $i++; - - $cityall[] = $cache['city_name'][$cv]; - } - } - $List[$k]['citynum'] = $i; - - } - $List[$k]['cityall'] = implode('、',$cityall); - } - foreach ($sqList as $sk => $sv){ - if ($v['id'] == $sv['eid'] && $v['uid'] == $sv['uid']){ - $List[$k]['sq_num']++; + + return $List; + } + + //后台列表处理简历多城市/用户名、审核状态 + private function getDataList($List, $cache) { + foreach ($List as $v) { + + $uids[] = $v['uid']; + $eids[] = $v['id']; + } + $member = $this->select_all('member', array('uid' => array('in', pylode(',', $uids))), 'uid,username,moblie'); + $resume_city = $this->select_all('resume_cityclass', array('eid' => array('in', pylode(',', $eids))), 'eid,provinceid,cityid,three_cityid'); + $sqList = $this->select_all('userid_job', array('eid' => array('in', pylode(',', $eids))), '`uid`,`eid`'); + + foreach ($List as $k => $v) { + + foreach ($member as $val) { + + if ($val['uid'] == $v['uid']) { + + $List[$k]['username'] = $val['username']; + $List[$k]['moblie'] = $val['moblie']; } } - } - return $List; - } - - //计算工作经历工作时长 - private function workTime($eid) - { - $workList = $this -> getResumeWorks(array('eid'=>$eid),'sdate,edate'); - $whour = 0; - $hour = array(); - $time = time(); - - foreach($workList as $v){ - //计算每份工作时长(按月) - if ($v['edate']){ - - $workTime = ceil(($v['edate']-$v['sdate'])/(30*86400)); - - }else{ - - $workTime = ceil(($time - $v['sdate'])/(30*86400)); - } - - $hour[] = $workTime; - $whour += $workTime; - } - //更新当前简历时长字段 - $avghour = ceil($whour/count($hour)); - - $post = array( - 'whour' => $whour, - 'avghour' => $avghour - ); - - $this -> update_once('resume_expect', $post, array('id'=>$eid)); - } - - /** - * @desc 简历推送列表 - * - * @param array $whereData - * @param array $data - */ - public function getResTsList($whereData,$data=array()) { - - $select = $data['field'] ? $data['field'] : '*'; - - $List = $this -> select_all('user_entrust_record',$whereData,$select); - - return $List; - - } - - /** - * @desc 收藏人才列表查询 - */ - function getTalentList($whereData = array(), $data = array()) { - - $field = $data['field'] ? $data['field'] : '*'; - - $List = $this -> select_all('talent_pool',$whereData,$field); - - if (!empty($List)) { - - $List = $this -> subTalentInfo($List,$data); - } - - return $List; - - } - /** - * @desc 收藏人才列表信息补充完善 - */ - private function subTalentInfo($List,$data) { - - $utype = isset($data['utype']) ? $data['utype'] : ''; - - foreach ($List as $v) { - - $uids[] = $v['uid']; - $eids[] = $v['eid']; - $cuids[] = $v['cuid']; - - } - - // 查询个人简历名称 - $reWhere['id'] = array('in', pylode(',', $eids)); - $reData['field'] = '`id`,`name`,`job_classid`,`minsalary`,`maxsalary`,`height_status`,`exp`,`edu`,`birthday`,`sex`,`uname`,`photo`'; - - $expect = $this -> getList($reWhere, $reData); - - if ($utype == 'admin'){ - /* 提取企业信息 */ - $cWhere['uid'] = array('in', pylode(',', $cuids)); - $comList = $this -> select_all('company', $cWhere,'`uid`,`name`'); - } - if ($utype == 'pc'){ - - $userid_msg = $this -> select_all('userid_msg',array('fid'=>$data['uid'],'uid'=>array('in',pylode(',',$uids)),'isdel'=>9),'`uid`'); - - $userid_job = $this -> select_all('userid_job',array('com_id'=>$data['uid'],'uid'=>array('in',pylode(',',$uids)),'isdel'=>9),'`uid`,`is_browse`'); + if ($resume_city) { + + $city_classid = explode(',', $v['city_classid']); + + foreach ($resume_city as $val) { + + if ($v['id'] == $val['eid']) { + + if ($val['provinceid'] == $city_classid[0]) { + + $List[$k]['city_n'] = $cache['city_name'][$city_classid[0]]; + + } else if ($val['cityid'] == $city_classid[0]) { + + $List[$k]['city_n'] = $cache['city_name'][$val['provinceid']] . '-' . $cache['city_name'][$city_classid[0]]; + + } else if ($val['three_cityid'] == $city_classid[0]) { + + $List[$k]['city_n'] = $cache['city_name'][$val['provinceid']] . '-' . $cache['city_name'][$val['cityid']] . '-' . $cache['city_name'][$city_classid[0]]; + } + } + } + $cityall = array(); + + if (is_array($city_classid)) { + + $i = 0; + + foreach ($city_classid as $cv) { + + if ($cache['city_name'][$cv]) { + + $i++; + + $cityall[] = $cache['city_name'][$cv]; + } + } + $List[$k]['citynum'] = $i; + + } + $List[$k]['cityall'] = implode('、', $cityall); + } + foreach ($sqList as $sk => $sv) { + if ($v['id'] == $sv['eid'] && $v['uid'] == $sv['uid']) { + $List[$k]['sq_num']++; + } + } } - $downArr = array(); - if(isset($data['isdown']) && $data['isdown'] == 1){ - $downList = $this -> select_all('down_resume', array('comid' => $data['uid'], 'uid'=>array('in',pylode(',', $uids))), '`uid`,`eid`'); - foreach ($downList as $val){ - $downArr[] = $v['uid']; - } - } - - foreach ($List as $k => $v){ - - $List[$k]['wapurl'] = Url('wap', array('c'=>'resume','a'=>'show','id'=>$v['eid'])); - $List[$k]['remark'] = stripslashes($v['remark']); - $List[$k]['ctime_n'] = timeForYear($v['ctime']); - $List[$k]['datetime_n'] = $List[$k]['ctime_n']; - foreach ($expect['list'] as $rv){ - - if ($v['eid'] == $rv['id']) { - $List[$k]['rname'] = $rv['name']; - $List[$k]['exp'] = $rv['exp_n']; - $List[$k]['edu'] = $rv['edu_n']; - $List[$k]['age'] = $rv['age_n']; - $List[$k]['salary'] = $rv['salary']; - $List[$k]['photo'] = $rv['photo_n']; - if ($rv['job_classid'] != '') { - $List[$k]['jobname'] = $rv['job_classname']; - } - if ($utype == 'admin'){ - // 后台直接展示姓名 - $List[$k]['username'] = $rv['uname']; - }else{ - if (in_array($v['uid'], $downArr)){ - $List[$k]['username'] = $rv['uname']; - }else{ - $nameArr = array('nametype'=>$this->config['user_name'], 'name' => $rv['uname'], 'eid' => $rv['id'], 'sex' => $rv['sex']); - $List[$k]['username'] = $this -> setUsernameShow($nameArr); - } - } - } - } - if (!empty($comList)){ - foreach ($comList as $cv){ + return $List; + } + + //计算工作经历工作时长 + private function workTime($eid) { + $workList = $this->getResumeWorks(array('eid' => $eid), 'sdate,edate'); + $whour = 0; + $hour = array(); + $time = time(); + + foreach ($workList as $v) { + //计算每份工作时长(按月) + if ($v['edate']) { + + $workTime = ceil(($v['edate'] - $v['sdate']) / (30 * 86400)); + + } else { + + $workTime = ceil(($time - $v['sdate']) / (30 * 86400)); + } + + $hour[] = $workTime; + $whour += $workTime; + } + //更新当前简历时长字段 + $avghour = ceil($whour / count($hour)); + + $post = array( + 'whour' => $whour, + 'avghour' => $avghour + ); + + $this->update_once('resume_expect', $post, array('id' => $eid)); + } + + /** + * @desc 简历推送列表 + * + * @param array $whereData + * @param array $data + */ + public function getResTsList($whereData, $data = array()) { + + $select = $data['field'] ? $data['field'] : '*'; + + $List = $this->select_all('user_entrust_record', $whereData, $select); + + return $List; + + } + + /** + * @desc 收藏人才列表查询 + */ + function getTalentList($whereData = array(), $data = array()) { + + $field = $data['field'] ? $data['field'] : '*'; + + $List = $this->select_all('talent_pool', $whereData, $field); + + if (!empty($List)) { + + $List = $this->subTalentInfo($List, $data); + } + + return $List; + + } + + /** + * @desc 收藏人才列表信息补充完善 + */ + private function subTalentInfo($List, $data) { + + $utype = isset($data['utype']) ? $data['utype'] : ''; + + foreach ($List as $v) { + + $uids[] = $v['uid']; + $eids[] = $v['eid']; + $cuids[] = $v['cuid']; + + } + + // 查询个人简历名称 + $reWhere['id'] = array('in', pylode(',', $eids)); + $reData['field'] = '`id`,`name`,`job_classid`,`minsalary`,`maxsalary`,`height_status`,`exp`,`edu`,`birthday`,`sex`,`uname`,`photo`'; + + $expect = $this->getList($reWhere, $reData); + + if ($utype == 'admin') { + /* 提取企业信息 */ + $cWhere['uid'] = array('in', pylode(',', $cuids)); + $comList = $this->select_all('company', $cWhere, '`uid`,`name`'); + } + if ($utype == 'pc') { + + $userid_msg = $this->select_all('userid_msg', array('fid' => $data['uid'], 'uid' => array('in', pylode(',', $uids)), 'isdel' => 9), '`uid`'); + + $userid_job = $this->select_all('userid_job', array('com_id' => $data['uid'], 'uid' => array('in', pylode(',', $uids)), 'isdel' => 9), '`uid`,`is_browse`'); + } + $downArr = array(); + if (isset($data['isdown']) && $data['isdown'] == 1) { + $downList = $this->select_all('down_resume', array('comid' => $data['uid'], 'uid' => array('in', pylode(',', $uids))), '`uid`,`eid`'); + foreach ($downList as $val) { + $downArr[] = $v['uid']; + } + } + + foreach ($List as $k => $v) { + + $List[$k]['wapurl'] = Url('wap', array('c' => 'resume', 'a' => 'show', 'id' => $v['eid'])); + $List[$k]['remark'] = stripslashes($v['remark']); + $List[$k]['ctime_n'] = timeForYear($v['ctime']); + $List[$k]['datetime_n'] = $List[$k]['ctime_n']; + foreach ($expect['list'] as $rv) { + + if ($v['eid'] == $rv['id']) { + $List[$k]['rname'] = $rv['name']; + $List[$k]['exp'] = $rv['exp_n']; + $List[$k]['edu'] = $rv['edu_n']; + $List[$k]['age'] = $rv['age_n']; + $List[$k]['salary'] = $rv['salary']; + $List[$k]['photo'] = $rv['photo_n']; + if ($rv['job_classid'] != '') { + $List[$k]['jobname'] = $rv['job_classname']; + } + if ($utype == 'admin') { + // 后台直接展示姓名 + $List[$k]['username'] = $rv['uname']; + } else { + if (in_array($v['uid'], $downArr)) { + $List[$k]['username'] = $rv['uname']; + } else { + $nameArr = array('nametype' => $this->config['user_name'], 'name' => $rv['uname'], 'eid' => $rv['id'], 'sex' => $rv['sex']); + $List[$k]['username'] = $this->setUsernameShow($nameArr); + } + } + } + } + if (!empty($comList)) { + foreach ($comList as $cv) { if ($v['cuid'] == $cv['uid']) { $List[$k]['com_name'] = $cv['name']; } } } - if (!empty($userid_msg)){ - foreach($userid_msg as $val){ + if (!empty($userid_msg)) { + foreach ($userid_msg as $val) { - if($v['uid']==$val['uid']){ - $List[$k]['userid_msg'] = 1; + if ($v['uid'] == $val['uid']) { + $List[$k]['userid_msg'] = 1; } } } - if (!empty($userid_msg)){ - foreach($userid_job as $val){ + if (!empty($userid_msg)) { + foreach ($userid_job as $val) { - if($v['uid']==$val['uid']){ - $List[$k]['is_browse'] = $val['is_browse']; + if ($v['uid'] == $val['uid']) { + $List[$k]['is_browse'] = $val['is_browse']; } } } - if (!empty($downList)){ - foreach($downList as $dv){ + if (!empty($downList)) { + foreach ($downList as $dv) { - if($v['uid']==$dv['uid'] && $v['eid'] == $dv['eid']){ - $List[$k]['down'] = 1; + if ($v['uid'] == $dv['uid'] && $v['eid'] == $dv['eid']) { + $List[$k]['down'] = 1; } } } - } - - return $List; - - } - - /** - * @desc 删除收藏人才 - */ - function delTalentPool($id = null , $data = array()){ - - if(!empty($id)){ - - if(is_array($id)){ - - $ids = $id; - - $return['layertype'] = 1; - - }else{ - - $ids = @explode(',', $id); - $return['layertype'] = 0; - - } - - $id = pylode(',', $ids); - if($data['utype'] !='admin'){ - - $delWhere = array('cuid'=>$data['uid'],'id' => array('in',$id)); - }else{ - $delWhere = array('id' => array('in',$id)); - } - - $return['id'] = $this -> delete_all('talent_pool',$delWhere,''); - - $this -> addMemberLog($data['uid'],$data['usertype'],'删除收藏简历人才',5,3); - - $return['msg'] = '收藏人才记录(ID:'.$id.')'; - - $return['errcode'] = $return['id'] ? '9' :'8'; - $return['msg'] = $return['id'] ? $return['msg'].'删除成功!' : $return['msg'].'删除失败!'; - }elseif($data['where']){ - - $where = $data['where']; - - if($data['norecycle'] == '1'){ // 数据库清理,不插入回收站 - - $nid = $this -> delete_all('talent_pool', $where, '', '', '1'); - - }else{ - - $nid = $this -> delete_all('talent_pool', $where, ''); - - } - return $nid; - }else{ - - $return['msg'] = '请选择您要删除的数据!'; - $return['errcode'] = 8; - } - - return $return; - } - /** - * @desc 收藏人才列表数量 - */ - function getTalentNum($whereData = array()) { - - return $this -> select_num('talent_pool',$whereData); - - } - /** - * 收藏简历 - */ - public function addTalent($data = array()){ - - $return = array(); - - if($data['cuid']==''){ - - $return['msg'] = '您还未登录企业账号,是否登录?'; - $return['errcode'] = 8; - $return['state'] = 3; - return $return; - } - - if($data['usertype'] != "2"){ - - $return['msg'] = '只有企业用户,才可以操作!'; - $return['errcode'] = 8; - $return['state'] = 0; - return $return; - } - - $row = $this -> select_once('talent_pool',array('eid' => $data['eid'], 'cuid' => $data['cuid'])); - - if(empty($row)){ - - $tdata=array( - 'eid' => $data['eid'], - 'cuid' => $data['cuid'], - 'uid' => (int)$data['uid'], - 'remark' => $data['remark'], - 'ctime' => time(), - ); - - $this -> insert_into('talent_pool',$tdata); - - //加入收藏信息 - $company = $this -> select_once('company', array('uid' => $data['cuid']), '`name`'); - - require_once ('sysmsg.model.php'); - $sysmsgM = new sysmsg_model($this->db, $this->def); - $sysmsgM -> addInfo(array('uid' => $data['uid'],'usertype'=>1, 'content' => '企业<a href="comtpl,'.$data['cuid'].'"> '.$company['name'].'</a> 收藏您的简历')); - - require_once ('history.model.php'); - $historyM = new history_model($this->db, $this->def); - $historyM->addHistory('talentpool',$data['eid']); - - $return['msg'] = '收藏成功!'; - $return['errcode'] = 9; - $return['state'] = 1; - }else{ - // $return['msg'] = '该简历已加入到人才库!'; - // $return['errcode'] = 8; - // $return['state'] = 2; - - $this -> delete_all('talent_pool', array('id' => $row['id'])); - - $this -> addMemberLog($data['cuid'],$data['usertype'],'取消收藏简历',5,3); - - $return['msg'] = '取消收藏!'; - $return['errcode'] = 9; - $return['state'] = 1; - } - return $return; - } - /** - * 添加收藏简历备注 - */ - public function RemarkTalent($data = array()){ - if($data['remark']==''){ - $return['msg'] = '备注内容不能为空!'; - $return['errcode'] = 8; - } - $id = $this -> update_once('talent_pool',array('remark'=>$data['remark']),array('id'=>intval($data['id']),'cuid'=>$data['uid'])); - if ($id){ - $this -> addMemberLog($data['uid'],$data['usertype'],'收藏备注'.$data['rname'],5,1); - $return['msg'] = '备注成功!'; - $return['errcode'] = '9'; - }else{ - $return['msg'] = '备注失败!'; - $return['errcode'] = '8'; - } - return $return; - } - /** - * 添加收到简历备注 - */ - public function RemarkHr($data = array()){ - if($data['remark']==''){ - $return['msg'] = '备注内容不能为空!'; - $return['errcode'] = 8; } - $id = $this -> update_once('userid_job',array('remark'=>$data['remark']),array('id'=>intval($data['id']),'com_id'=>$data['uid'])); - if ($id){ - $this -> addMemberLog($data['uid'],$data['usertype'],'收到简历备注'.$data['rname'],5,1); - $return['msg'] = '备注成功!'; - $return['errcode'] = '9'; - }else{ - $return['msg'] = '备注失败!'; - $return['errcode'] = '8'; + + return $List; + + } + + /** + * @desc 删除收藏人才 + */ + function delTalentPool($id = null, $data = array()) { + + if (!empty($id)) { + + if (is_array($id)) { + + $ids = $id; + + $return['layertype'] = 1; + + } else { + + $ids = @explode(',', $id); + $return['layertype'] = 0; + + } + + $id = pylode(',', $ids); + if ($data['utype'] != 'admin') { + + $delWhere = array('cuid' => $data['uid'], 'id' => array('in', $id)); + } else { + $delWhere = array('id' => array('in', $id)); + } + + $return['id'] = $this->delete_all('talent_pool', $delWhere, ''); + + $this->addMemberLog($data['uid'], $data['usertype'], '删除收藏简历人才', 5, 3); + + $return['msg'] = '收藏人才记录(ID:' . $id . ')'; + + $return['errcode'] = $return['id'] ? '9' : '8'; + $return['msg'] = $return['id'] ? $return['msg'] . '删除成功!' : $return['msg'] . '删除失败!'; + } elseif ($data['where']) { + + $where = $data['where']; + + if ($data['norecycle'] == '1') { // 数据库清理,不插入回收站 + + $nid = $this->delete_all('talent_pool', $where, '', '', '1'); + + } else { + + $nid = $this->delete_all('talent_pool', $where, ''); + + } + return $nid; + } else { + + $return['msg'] = '请选择您要删除的数据!'; + $return['errcode'] = 8; + } + + return $return; + } + + /** + * @desc 收藏人才列表数量 + */ + function getTalentNum($whereData = array()) { + + return $this->select_num('talent_pool', $whereData); + + } + + /** + * 收藏简历 + */ + public function addTalent($data = array()) { + + $return = array(); + + if ($data['cuid'] == '') { + + $return['msg'] = '您还未登录企业账号,是否登录?'; + $return['errcode'] = 8; + $return['state'] = 3; + return $return; + } + + if ($data['usertype'] != "2") { + + $return['msg'] = '只有企业用户,才可以操作!'; + $return['errcode'] = 8; + $return['state'] = 0; + return $return; + } + + $row = $this->select_once('talent_pool', array('eid' => $data['eid'], 'cuid' => $data['cuid'])); + + if (empty($row)) { + + $tdata = array( + 'eid' => $data['eid'], + 'cuid' => $data['cuid'], + 'uid' => (int)$data['uid'], + 'remark' => $data['remark'], + 'ctime' => time(), + ); + + $this->insert_into('talent_pool', $tdata); + + //加入收藏信息 + $company = $this->select_once('company', array('uid' => $data['cuid']), '`name`'); + + require_once('sysmsg.model.php'); + $sysmsgM = new sysmsg_model($this->db, $this->def); + $sysmsgM->addInfo(array('uid' => $data['uid'], 'usertype' => 1, 'content' => '企业<a href="comtpl,' . $data['cuid'] . '"> ' . $company['name'] . '</a> 收藏您的简历')); + + require_once('history.model.php'); + $historyM = new history_model($this->db, $this->def); + $historyM->addHistory('talentpool', $data['eid']); + + $return['msg'] = '收藏成功!'; + $return['errcode'] = 9; + $return['state'] = 1; + } else { + // $return['msg'] = '该简历已加入到人才库!'; + // $return['errcode'] = 8; + // $return['state'] = 2; + + $this->delete_all('talent_pool', array('id' => $row['id'])); + + $this->addMemberLog($data['cuid'], $data['usertype'], '取消收藏简历', 5, 3); + + $return['msg'] = '取消收藏!'; + $return['errcode'] = 9; + $return['state'] = 1; } return $return; } - - /** - * 设置姓名展示 - */ - public function setUsernameShow($data = array()) - { - $resUserName = ''; - if(empty($this -> config['user_name']) || $this -> config['user_name'] == 1){ - - if($data['nametype'] == 1 && !empty($data['name'])){ - - if(CheckMobile($data['name'])){ - - $resUserName = mb_substr($data['name'], 0, 3)."****". mb_substr($data['name'], 7); - - }else{ - - $resUserName = $data['name']; - } - }else if($data['nametype'] == 2 && !empty($data['eid'])){ - - $resUserName = 'NO.'. $data['eid']; - - }elseif($data['nametype'] == 3 && !empty($data['name'])){ - - if($data['sex'] == 1){ - - $resUserName = mb_substr($data['name'], 0, 1, 'utf-8').'先生'; - }else{ - - $resUserName = mb_substr($data['name'], 0, 1, 'utf-8').'女士'; - } - } - }elseif($this -> config['user_name'] == 2 && !empty($data['eid'])){ - - $resUserName = 'NO.'. $data['eid']; - }elseif($this -> config['user_name'] == 3 && !empty($data['name'])){ - - if($data['sex'] == 1){ - - $resUserName = mb_substr($data['name'], 0, 1, 'utf-8').'先生'; - }else{ - - $resUserName = mb_substr($data['name'], 0, 1, 'utf-8').'女士'; - } - }elseif($this -> config['user_name'] == 4 && !empty($data['name'])){ - - $resUserName = $data['name']; - } - - if(empty($resUserName)){ - - $resUserName = $data['name']; - } - return $resUserName; - } - - /** - * 设置简历头像展示 - */ - public function setResumePhotoShow($data = array()) - { - $resumePhoto = ''; - $maleUrl = checkpic('',$this -> config['sy_member_icon']); - $femaleUrl = checkpic('',$this -> config['sy_member_iconv']); - $sexArr = array(1, 152); - if($data['defphoto']==2){ - $resumePhoto = checkpic($data['photo']); - }else{ - if(empty($this -> config['user_pic']) || $this -> config['user_pic'] == 1){ - if($data['photo'] && $data['photo_status'] == 0 && $data['phototype'] != 1){ - $resumePhoto = checkpic($data['photo']); - }else{ - if(in_array($data['sex'], $sexArr)){ - $resumePhoto = $maleUrl; - }else{ - $resumePhoto = $femaleUrl; - } - } - }elseif($this -> config['user_pic'] == 2){ - if($data['photo'] && $data['photo_status'] == 0){ - $resumePhoto = checkpic($data['photo']); - }else{ - if(in_array($data['sex'], $sexArr)){ - $resumePhoto = $maleUrl; - }else{ - $resumePhoto = $femaleUrl; - } - } - }elseif($this -> config['user_pic'] == 3){ - if(in_array($data['sex'], $sexArr)){ - $resumePhoto = $maleUrl; - }else{ - $resumePhoto = $femaleUrl; - } - } + + /** + * 添加收藏简历备注 + */ + public function RemarkTalent($data = array()) { + if ($data['remark'] == '') { + $return['msg'] = '备注内容不能为空!'; + $return['errcode'] = 8; } - return $resumePhoto; - } - //更新职位点击率 - function addExpectHits($id){ - if($this -> config['sy_job_hits'] > 100 || !$this -> config['sy_job_hits']){ - $hits = 1; - }else{ - $hits = mt_rand(1, $this->config['sy_job_hits']); - } - $this -> update_once('resume_expect', array('hits' => array('+', $hits)), array('id' => $id)); - } - + $id = $this->update_once('talent_pool', array('remark' => $data['remark']), array('id' => intval($data['id']), 'cuid' => $data['uid'])); + if ($id) { + $this->addMemberLog($data['uid'], $data['usertype'], '收藏备注' . $data['rname'], 5, 1); + $return['msg'] = '备注成功!'; + $return['errcode'] = '9'; + } else { + $return['msg'] = '备注失败!'; + $return['errcode'] = '8'; + } + return $return; + } + + /** + * 添加收到简历备注 + */ + public function RemarkHr($data = array()) { + if ($data['remark'] == '') { + $return['msg'] = '备注内容不能为空!'; + $return['errcode'] = 8; + } + $id = $this->update_once('userid_job', array('remark' => $data['remark']), array('id' => intval($data['id']), 'com_id' => $data['uid'])); + if ($id) { + $this->addMemberLog($data['uid'], $data['usertype'], '收到简历备注' . $data['rname'], 5, 1); + $return['msg'] = '备注成功!'; + $return['errcode'] = '9'; + } else { + $return['msg'] = '备注失败!'; + $return['errcode'] = '8'; + } + return $return; + } + + /** + * 设置姓名展示 + */ + public function setUsernameShow($data = array()) { + $resUserName = ''; + if (empty($this->config['user_name']) || $this->config['user_name'] == 1) { + + if ($data['nametype'] == 1 && !empty($data['name'])) { + + if (CheckMobile($data['name'])) { + + $resUserName = mb_substr($data['name'], 0, 3) . "****" . mb_substr($data['name'], 7); + + } else { + + $resUserName = $data['name']; + } + } else if ($data['nametype'] == 2 && !empty($data['eid'])) { + + $resUserName = 'NO.' . $data['eid']; + + } elseif ($data['nametype'] == 3 && !empty($data['name'])) { + + if ($data['sex'] == 1) { + + $resUserName = mb_substr($data['name'], 0, 1, 'utf-8') . '先生'; + } else { + + $resUserName = mb_substr($data['name'], 0, 1, 'utf-8') . '女士'; + } + } + } elseif ($this->config['user_name'] == 2 && !empty($data['eid'])) { + + $resUserName = 'NO.' . $data['eid']; + } elseif ($this->config['user_name'] == 3 && !empty($data['name'])) { + + if ($data['sex'] == 1) { + + $resUserName = mb_substr($data['name'], 0, 1, 'utf-8') . '先生'; + } else { + + $resUserName = mb_substr($data['name'], 0, 1, 'utf-8') . '女士'; + } + } elseif ($this->config['user_name'] == 4 && !empty($data['name'])) { + + $resUserName = $data['name']; + } + + if (empty($resUserName)) { + + $resUserName = $data['name']; + } + return $resUserName; + } + + /** + * 设置简历头像展示 + */ + public function setResumePhotoShow($data = array()) { + $resumePhoto = ''; + $maleUrl = checkpic('', $this->config['sy_member_icon']); + $femaleUrl = checkpic('', $this->config['sy_member_iconv']); + $sexArr = array(1, 152); + if ($data['defphoto'] == 2) { + $resumePhoto = checkpic($data['photo']); + } else { + if (empty($this->config['user_pic']) || $this->config['user_pic'] == 1) { + if ($data['photo'] && $data['photo_status'] == 0 && $data['phototype'] != 1) { + $resumePhoto = checkpic($data['photo']); + } else { + if (in_array($data['sex'], $sexArr)) { + $resumePhoto = $maleUrl; + } else { + $resumePhoto = $femaleUrl; + } + } + } elseif ($this->config['user_pic'] == 2) { + if ($data['photo'] && $data['photo_status'] == 0) { + $resumePhoto = checkpic($data['photo']); + } else { + if (in_array($data['sex'], $sexArr)) { + $resumePhoto = $maleUrl; + } else { + $resumePhoto = $femaleUrl; + } + } + } elseif ($this->config['user_pic'] == 3) { + if (in_array($data['sex'], $sexArr)) { + $resumePhoto = $maleUrl; + } else { + $resumePhoto = $femaleUrl; + } + } + } + return $resumePhoto; + } + + //更新职位点击率 + function addExpectHits($id) { + if ($this->config['sy_job_hits'] > 100 || !$this->config['sy_job_hits']) { + $hits = 1; + } else { + $hits = mt_rand(1, $this->config['sy_job_hits']); + } + $this->update_once('resume_expect', array('hits' => array('+', $hits)), array('id' => $id)); + } + /** * @desc 更新简历相关字段$table 比如:resume_edu,exp,other等 * @param $table @@ -5489,1139 +5552,1149 @@ * @param array $odata * @return bool */ - function upResumeTable($table, $whereData, $data, $odata = array()) - { - + function upResumeTable($table, $whereData, $data, $odata = array()) { + if (!empty($whereData)) { - - $nid = $this->update_once($table, $data, $whereData); - + + $nid = $this->update_once($table, $data, $whereData); + } else { if ($data['eid'] && $data['uid']) { - - $eptNum = $this->select_num('resume_expect', array('id' => intval($data['eid']), 'uid' => intval($data['uid']))); - + + $eptNum = $this->select_num('resume_expect', array('id' => intval($data['eid']), 'uid' => intval($data['uid']))); + if ($eptNum > 0) { - - $nid= $this->insert_into($table, $data); + + $nid = $this->insert_into($table, $data); } - - + + } } - $state = $this->config['user_revise_state']; - - $expect = $this->select_once('resume_expect', array('id' => $data['eid']), 'state'); - if ($expect['state'] == 3){ - $state = 0; + $state = $this->config['user_revise_state']; + + $expect = $this->select_once('resume_expect', array('id' => $data['eid']), 'state'); + if ($expect['state'] == 3) { + $state = 0; } - + if ($table != 'resume_show') { if ($state == '0') { - + $this->setExpectState(array('state' => 0), array('id' => intval($data['eid']))); } } return $nid; } - - /** - * @desc 简历外发列表查询 - */ - function getResumeOutList($whereData = array(), $data = array()) { - - $field = $data['field'] ? $data['field'] : '*'; - - $List = $this -> select_all('resumeout',$whereData,$field); - - return $List; - - } - /** - * 添加简历外发 - */ - public function addResumeOut($data,$param){ - + + /** + * @desc 简历外发列表查询 + */ + function getResumeOutList($whereData = array(), $data = array()) { + + $field = $data['field'] ? $data['field'] : '*'; + + $List = $this->select_all('resumeout', $whereData, $field); + + return $List; + + } + + /** + * 添加简历外发 + */ + public function addResumeOut($data, $param) { + include_once('recommend.model.php'); - $recomM = new recommend_model($this->db, $this->def); - - if(isset($this->config['sy_resumeout_day_num']) && $this->config['sy_resumeout_day_num'] > 0){ - $rnwhere=array('uid'=>$param['uid'],'rec_type'=>3,'addtime'=>array('>',strtotime('today'))); - $num = $recomM -> getRecommendNum($rnwhere); - if($num >= $this->config['sy_resumeout_day_num']){ - return array('msg'=>'每天最多外发'.$this->config['sy_resumeout_day_num'].'次简历!','errcode'=>8); + $recomM = new recommend_model($this->db, $this->def); + + if (isset($this->config['sy_resumeout_day_num']) && $this->config['sy_resumeout_day_num'] > 0) { + $rnwhere = array('uid' => $param['uid'], 'rec_type' => 3, 'addtime' => array('>', strtotime('today'))); + $num = $recomM->getRecommendNum($rnwhere); + if ($num >= $this->config['sy_resumeout_day_num']) { + return array('msg' => '每天最多外发' . $this->config['sy_resumeout_day_num'] . '次简历!', 'errcode' => 8); } - }else{ - return array('msg'=>'外发简历功能已关闭!','errcode'=>8); + } else { + return array('msg' => '外发简历功能已关闭!', 'errcode' => 8); } //判断上一次外发的时间间隔 - if(isset($this->config['sy_resumeout_interval']) && $this->config['sy_resumeout_interval'] > 0){ - $row = $recomM -> getInfo(array('uid' =>$param['uid'],'rec_type'=>3, 'orderby' => 'addtime')); - if(!empty($row['addtime']) && (time() - $row['addtime']) < $this->config['sy_resumeout_interval']){ + if (isset($this->config['sy_resumeout_interval']) && $this->config['sy_resumeout_interval'] > 0) { + $row = $recomM->getInfo(array('uid' => $param['uid'], 'rec_type' => 3, 'orderby' => 'addtime')); + if (!empty($row['addtime']) && (time() - $row['addtime']) < $this->config['sy_resumeout_interval']) { $needTime = $this->config['sy_resumeout_interval'] - (time() - $row['addtime']); - if($needTime > 60){ - $h = floor(($needTime % (3600*24)) / 3600); - $m = floor((($needTime % (3600*24)) % 3600) / 60); - $s = floor((($needTime % (3600*24)) % 3600 % 60)); - if($h != 0){ - $needTime = $h.'时'; - }else if($m != 0){ - $needTime = $m.'分'; + if ($needTime > 60) { + $h = floor(($needTime % (3600 * 24)) / 3600); + $m = floor((($needTime % (3600 * 24)) % 3600) / 60); + $s = floor((($needTime % (3600 * 24)) % 3600 % 60)); + if ($h != 0) { + $needTime = $h . '时'; + } else if ($m != 0) { + $needTime = $m . '分'; } - }else{ - $needTime = $needTime.'秒'; + } else { + $needTime = $needTime . '秒'; } - - $recs = $this->config['sy_resumeout_interval']; - if($recs>60){ - $h = floor(($recs % (3600*24)) / 3600); - $m = floor((($recs % (3600*24)) % 3600) / 60); - $s = floor((($recs % (3600*24)) % 3600 % 60)); - if($h != 0){ - $recs = $h.'时'; - }else if($m != 0){ - $recs = $m.'分'; + + $recs = $this->config['sy_resumeout_interval']; + if ($recs > 60) { + $h = floor(($recs % (3600 * 24)) / 3600); + $m = floor((($recs % (3600 * 24)) % 3600) / 60); + $s = floor((($recs % (3600 * 24)) % 3600 % 60)); + if ($h != 0) { + $recs = $h . '时'; + } else if ($m != 0) { + $recs = $m . '分'; } - }else{ - $recs = $recs.'秒'; + } else { + $recs = $recs . '秒'; } - return array('msg'=>'外发简历间隔不得少于'.$recs.',请'.$needTime.'后再外发!','errcode'=>8); + return array('msg' => '外发简历间隔不得少于' . $recs . ',请' . $needTime . '后再外发!', 'errcode' => 8); } } - - if (!empty($data)){ - if($data['resume']==''){ - return array('msg'=>'请选择简历','errcode'=>8); + + if (!empty($data)) { + if ($data['resume'] == '') { + return array('msg' => '请选择简历', 'errcode' => 8); } - $email=$data['email']; - if($email==''){ - return array('msg'=>'请输入邮箱','errcode'=>8); - }elseif (CheckRegEmail($email)==false){ - return array('msg'=>'邮箱格式错误','errcode'=>8); + $email = $data['email']; + if ($email == '') { + return array('msg' => '请输入邮箱', 'errcode' => 8); + } elseif (CheckRegEmail($email) == false) { + return array('msg' => '邮箱格式错误', 'errcode' => 8); } - if($data['comname']==''){ - return array('msg'=>'请输入企业名称','errcode'=>8); + if ($data['comname'] == '') { + return array('msg' => '请输入企业名称', 'errcode' => 8); } - if ($data['jobname']==''){ - return array('msg'=>'请输入职位名称','errcode'=>8); + if ($data['jobname'] == '') { + return array('msg' => '请输入职位名称', 'errcode' => 8); } - if($this->config['sy_email_set']!='1'){ - return array('msg'=>'网站邮件服务器不可用','errcode'=>8); + if ($this->config['sy_email_set'] != '1') { + return array('msg' => '网站邮件服务器不可用', 'errcode' => 8); } - $today = strtotime('today'); - $outnum = $this->select_num('resumeout', array('uid'=>$data['uid'],'datetime'=>array('>', $today))); + $today = strtotime('today'); + $outnum = $this->select_num('resumeout', array('uid' => $data['uid'], 'datetime' => array('>', $today))); - if(!empty($this->config['sy_recommend_day_num']) && $outnum > $this->config['sy_recommend_day_num']){ - return array('msg'=>'简历每天只能推荐'.$this->config['sy_recommend_day_num'].'次','errcode'=>8); - }elseif(!$this->config['sy_recommend_day_num'] || $this->config['sy_recommend_day_num']<=0){ - return array('msg'=>'推荐功能已关闭','errcode'=>8); - }elseif(isset($_COOKIE['resumeout']) && $_COOKIE['resumeout'] == $data['resume']){ - return array('msg'=>'请不要频繁发送邮件!同一简历发送间隔为两分钟!','errcode'=>8); + if (!empty($this->config['sy_recommend_day_num']) && $outnum > $this->config['sy_recommend_day_num']) { + return array('msg' => '简历每天只能推荐' . $this->config['sy_recommend_day_num'] . '次', 'errcode' => 8); + } elseif (!$this->config['sy_recommend_day_num'] || $this->config['sy_recommend_day_num'] <= 0) { + return array('msg' => '推荐功能已关闭', 'errcode' => 8); + } elseif (isset($_COOKIE['resumeout']) && $_COOKIE['resumeout'] == $data['resume']) { + return array('msg' => '请不要频繁发送邮件!同一简历发送间隔为两分钟!', 'errcode' => 8); } - - $Info = $this->getInfoByEid(array('eid' => $data['resume'])); + + $Info = $this->getInfoByEid(array('eid' => $data['resume'])); // 简历模糊化 - $resumeCheck = $this->config['resume_open_check'] == 1 ? 1 : 2; + $resumeCheck = $this->config['resume_open_check'] == 1 ? 1 : 2; global $phpyun; - $phpyun -> assign('Info',$Info); - $phpyun -> assign('resumeCheck',$resumeCheck); - - $contents = $phpyun -> fetch(TPL_PATH.'resume/sendresume.htm',time()); - //发送邮件并记录入库 - - $emailData=array( - 'email' => $email, - 'subject' => '我看到贵公司在招收'.$data['jobname'].',向您自荐一份简历!', - 'content' => $contents, - 'uid' => '', - 'name' => $data['recipient'], - 'cuid' => $Info['uid'], - 'cname' => $Info['name'] - ); - include_once('notice.model.php'); - $noticeM = new notice_model($this->db, $this->def); - $sendid = $noticeM -> sendEmail($emailData); - if($sendid['status'] != -1){ - $arr = array( - 'uid' => $Info['uid'], - 'comname' => $data['comname'], - 'jobname' => $data['jobname'], - 'recipient' => $data['comname'], - 'email' => $email, - 'datetime' => time(), - 'resume' => $data['resumename'] - ); - $this -> insert_into('resumeout',$arr); - - require_once ('cookie.model.php'); - $cookieM = new cookie_model($this->db, $this->def); - $cookieM -> SetCookie('resumeout', $data['resume'], time() + 120); - - $recommend = array( - 'uid' => $Info['uid'], - 'rec_type' => 3, - 'rec_id' => $data['resume'], - 'email' => $email, - 'addtime' => time() + $phpyun->assign('Info', $Info); + $phpyun->assign('resumeCheck', $resumeCheck); + + $contents = $phpyun->fetch(TPL_PATH . 'resume/sendresume.htm', time()); + //发送邮件并记录入库 + + $emailData = array( + 'email' => $email, + 'subject' => '我看到贵公司在招收' . $data['jobname'] . ',向您自荐一份简历!', + 'content' => $contents, + 'uid' => '', + 'name' => $data['recipient'], + 'cuid' => $Info['uid'], + 'cname' => $Info['name'] + ); + include_once('notice.model.php'); + $noticeM = new notice_model($this->db, $this->def); + $sendid = $noticeM->sendEmail($emailData); + if ($sendid['status'] != -1) { + $arr = array( + 'uid' => $Info['uid'], + 'comname' => $data['comname'], + 'jobname' => $data['jobname'], + 'recipient' => $data['comname'], + 'email' => $email, + 'datetime' => time(), + 'resume' => $data['resumename'] ); - $result = $recomM -> addRecommendInfo($recommend); - - return array('msg'=>'发送成功','errcode'=>9); - }else{ - return array('msg'=>'邮件发送错误 原因:' . $sendid['msg'],'errcode'=>8); - } - } - } - /** - * 删除简历外发记录 - * @param string $id 格式:单个,如1 ; 批量,如1,2,3 - */ - public function delResumeOut($id,$data=array()){ - - $return['layertype'] = 0; - $limit = 'limit 1'; - - if (!empty($id)){ - - if(is_array($id)){ - - $id = pylode(',', $id); - $return['layertype'] = 1; - $limit = ''; - } - - $return['id'] = $this -> delete_all('resumeout',array('uid'=>$data['uid'],'id'=>array('in',$id)),$limit); - - if ($return['id']){ - $this->addMemberLog($data['uid'],$data['usertype'],'删除简历外发记录',2,3); - $return['msg'] = '删除成功'; - $return['errcode'] = '9'; - }else{ - - $return['msg'] = '删除失败'; - $return['errcode'] = '8'; - } - }else{ - - $return['msg'] = '请选择要删除的记录'; - $return['errcode'] = '8'; - } - return $return; - } - //简历分布定价,按照时间分别定价 - function setDayprice($eid,$data=array()){ - - $rinfo = $this -> select_once('resume_expect',array('id'=>$eid),'lastupdate'); - - $conlist = $this -> select_once('admin_config',array('name'=>'integral_down_resume_dayprice')); - - $marr = explode(':',$conlist['config']); - - foreach($marr as $v){ - $narr = explode('_',$v); - $days[] = $narr[0]; - $data[$narr[0]] = $narr[1]; - } - - $ryear = intval(date('Y',time()-$rinfo['lastupdate'])); - $rday = intval(date('d', time() - $rinfo['lastupdate'])); - - if ($ryear != 0) { - - $rday = $ryear * 365 + $rday; - } - - if(in_array($rday,$days)){ - - $rdayprice=$data[$rday]; - }else{ - - foreach($days as $val){ - if($rday<$val){ - $rdayprice=$data[$val]; - break; - } - } - } - if(!$rdayprice){ - if($data['integral']&&$data['integral']=='yes'){ - - $newdayprice = $this->config['integral_down_resume'] * $this->config['integral_proportion'];// 购买简历下载所需积分 - }else{ - - $newdayprice = $this->config['integral_down_resume']; // 购买简历下载所需金额 - } - }else{ - - if($data['integral']&&$data['integral']=='yes'){ - - $newdayprice = $rdayprice*$this->config['integral_proportion']; - }else{ - - $newdayprice = $rdayprice; - } - } - return $newdayprice; - } - - /** - * 简历开放状态检查 - * @param array $data - */ - function openResumeCheck($data){ - - $type = 2; - if(isset($data['from']) && $data['from']=='reward'){ - $type = 1; - }else{ - /* 个人查看自己 */ - if(isset($data['ruid']) && $data['uid']==$data['ruid']){ - - $type = 1; - - }else{ - /* 开放状态 */ - if($this->config['resume_open_check'] == 1){ - $type = 1; - } - /* 企业登录状态 */ - if($this->config['resume_open_check'] == 2){ - if($data['uid'] && $data['usertype']==2 || $data['usertype'] == 3){ - $type = 1; - } - } - /* 发布职位状态 */ - if($this->config['resume_open_check'] == 3){ - - if($data['uid'] && $data['usertype']==2){ - $where['r_status'] = 1; - $where['status'] = '0'; - $where['state'] = '1'; - $where['uid'] = $data['uid']; - $jobNum = $this->select_num('company_job',$where); - if($jobNum>0){ - $type = 1; - } - } - - } - /* 下载简历状态(包括企业可以免费查看投递简历) */ - if($this->config['resume_open_check'] == 4){ - - if($data['uid']){ - $where['comid'] = $data['uid']; - $where['eid'] = $data['eid']; - $where['usertype'] = $data['usertype']; - $downNum = $this->select_num('down_resume', $where); - if($downNum>0){ - $type = 1; - } - if($data['usertype'] == 2){ - $userid_job = $this->select_once('userid_job',array('com_id' => $data['uid'], 'eid' => $data['eid'],'isdel'=>9),'`id`'); - $comstatis = $this->select_once('company_statis',array('uid'=>$data['uid']),'`rating`'); - //已投递简历并且免费查看联系方式 - if(!empty($userid_job) && in_array($comstatis['rating'], @explode(',', $this->config['com_look']))){ - $type = 1; - } - } - } - } - } - } - - return $type; - } - /** - * 用户设置默认简历 - */ - public function defaults($data = array()){ - - $return = array('errcode'=>'2','msg'=>'设置失败!'); - - if (!empty($data)){ - - $row = $this -> select_once('resume_expect',array('id'=>$data['id']), '`id`,`uid`,`topdate`,`top`'); - - if (!empty($row['id'])){ - - $id = $this->update_once('resume', array('def_job'=>$row['id']), array('uid'=>$data['uid'])); - // 如原默认简历有置顶记录,且已过期,将置顶记录清空 - if($row['topdate'] < time()){ - - $redata = array( - 'defaults' => 0, - 'topdate' => '', - 'top' => '' - ); - }else{ - - $redata = array( - 'defaults' => 0 - ); - } - $this->update_once('resume_expect', $redata, array('uid'=>$row['uid'])); - - $this->update_once('resume_expect', array('defaults'=>1), array('id'=>$row['id'])); - - $this->addMemberLog($row['uid'], 1, '设置默认简历', 2, 2); - - - $return = $id ? array('errcode'=>'1','msg'=>'设置成功!') : array('errcode'=>'2','msg'=>'设置失败!'); - + $this->insert_into('resumeout', $arr); + + require_once('cookie.model.php'); + $cookieM = new cookie_model($this->db, $this->def); + $cookieM->SetCookie('resumeout', $data['resume'], time() + 120); + + $recommend = array( + 'uid' => $Info['uid'], + 'rec_type' => 3, + 'rec_id' => $data['resume'], + 'email' => $email, + 'addtime' => time() + ); + $result = $recomM->addRecommendInfo($recommend); + + return array('msg' => '发送成功', 'errcode' => 9); + } else { + return array('msg' => '邮件发送错误 原因:' . $sendid['msg'], 'errcode' => 8); } } - + } + + /** + * 删除简历外发记录 + * @param string $id 格式:单个,如1 ; 批量,如1,2,3 + */ + public function delResumeOut($id, $data = array()) { + + $return['layertype'] = 0; + $limit = 'limit 1'; + + if (!empty($id)) { + + if (is_array($id)) { + + $id = pylode(',', $id); + $return['layertype'] = 1; + $limit = ''; + } + + $return['id'] = $this->delete_all('resumeout', array('uid' => $data['uid'], 'id' => array('in', $id)), $limit); + + if ($return['id']) { + $this->addMemberLog($data['uid'], $data['usertype'], '删除简历外发记录', 2, 3); + $return['msg'] = '删除成功'; + $return['errcode'] = '9'; + } else { + + $return['msg'] = '删除失败'; + $return['errcode'] = '8'; + } + } else { + + $return['msg'] = '请选择要删除的记录'; + $return['errcode'] = '8'; + } return $return; } - - /** - * 简历模糊字段 - */ - public function getTj($data){ - - if (!empty($data)){ - /*教育经历*/ - $eduList = $data['edu']; - if($eduList){ - $edumin = 0; - $edumax = 0; - foreach($eduList as $v){ - if($v['sdate']>0 && $edumin==0){ - $edumin = $v['sdate']; - }elseif($edumin>$v['sdate']){ - $edumin = $v['sdate']; - } - if($v['edate']==0 ){ - $edumax = 0; - }elseif($edumax<$v['edate']){ - $edumax = $v['edate']; - } - - $education[] = $v['education_n']; - - $edutitle[] = $v['title']; - } - - $return['edumin'] = date('Y.m',$edumin); - $return['edumax'] = $edumax == 0 ? '至今': date('Y.m',$edumax); - $return['education'] = @implode(',',$education); - $return['edutit'] = @implode(',',$edutitle); - - $return['edu_time'] = $return['edumin'].'-'.$return['edumax']; - $return['edu_content'] = '已完成'.$return['education'].'段学业'; - } - - /*工作经历*/ - $workList = $data['work']; - if($workList){ - $whour = 0; - $hour = array(); - $time = time(); - $workmin = 0; - $workmax = 0; - $worknum = count($workList); - - foreach($workList as $v){ - /* 计算每份工作时长(按月) */ - if ($v['edate']){ - $workTime = ceil(($v['edate']-$v['sdate'])/(30*86400)); - }else{ - $workTime = ceil(($time - $v['sdate'])/(30*86400)); - } - - if($v['sdate']>0 && $workmin==0){ - $workmin = $v['sdate']; - }elseif($workmin>$v['sdate']){ - $workmin = $v['sdate']; - } - - if($v['edate']==0 ){ - $workmax = 0; - }elseif($workmax<$v['edate']){ - $workmax = $v['edate']; - } - - $wtitle[] = $v['title']; - - $hour[] = $workTime; - $whour += $workTime; - } - - $workavg = ceil($whour/count($hour)); - - $return['worknum'] = $worknum > 0 ? $worknum:0; - - $return['workavg'] = $workavg > 11 ? avgToYm($workavg) : $workavg; - - $return['workmin'] = date('Y.m',$workmin); - $return['workmax'] = $workmax == 0 ? '至今': date('Y.m',$workmax); - $return['worktit'] = @implode(',',$wtitle); - - $return['work_time'] = $return['workmin'].'-'.$return['workmax']; - if($return['workavg']>0){ - if($return['worktit']!=''){ - $return['work_content'] = '参加过'.$return['worknum'].'份工作 , 平均工作时长'.$return['workavg'].'个月,涉及'.$return['worktit'].'等岗位'; - }else{ - $return['work_content'] = '参加过'.$return['worknum'].'份工作 , 平均工作时长'.$return['workavg'].'个月'; - } - } - } - - /*项目经历*/ - $xmList = $data['xm']; - if($xmList){ - $xmmin = 0; - $xmmax = 0; - $xmnum = count($xmList); - foreach($xmList as $v){ - if($v['sdate']>0 && $xmmin==0){ - $xmmin = $v['sdate']; - }elseif($xmmin>$v['sdate']){ - $xmmin = $v['sdate']; - } - - if($v['edate']==0 ){ - $xmmax = 0; - }elseif($xmmax<$v['edate']){ - $xmmax = $v['edate']; - } - - $xmtitle[] = $v['title']; - } - - $return['xmnum'] = $xmnum > 0 ? $xmnum:0; - $return['xmmin'] = date('Y.m',$xmmin); - $return['xmmax'] = $xmmax == 0 ? '至今':date('Y.m',$xmmax); - $return['xmtit'] = @implode(',',$xmtitle); - - $return['xm_time'] = $return['xmmin'].'-'.$return['xmmax']; - if($return['xmtit']!=''){ - $return['xm_content'] = '独自完成或参与过'.$return['xmnum'].'个项目,并在其中担任过'.$return['xmtit'].'等职务'; - }else{ - $return['xm_content'] = '独自完成或参与过'.$return['xmnum'].'个项目'; - } - } - - /*培训经历*/ - $trainList = $data['train']; - if($trainList){ - $trainmin = 0; - $trainmax = 0; - $trainnum = count($trainList); - foreach($trainList as $v){ - if($v['sdate']>0 && $trainmin==0){ - $trainmin = $v['sdate']; - }elseif($xmmin>$v['sdate']){ - $trainmin = $v['sdate']; - } - - if($v['edate']==0 ){ - $trainmax = 0; - }elseif($xmmax<$v['edate']){ - $trainmax = $v['edate']; - } - } - - $return['trainnum'] = $trainnum > 0 ? $trainnum:0; - $return['trainmin'] = date('Y.m',$trainmin); - $return['trainmax'] = $trainmax == 0 ? '至今':date('Y.m',$trainmax); - - $return['train_time'] = $return['trainmin'].'-'.$return['trainmax']; - $return['train_content']= '参加过'.$return['trainnum'].'次培训,进行自我充电,能力提升'; - } - - /*专业技能*/ - $skillList = $data['skill']; - if($skillList){ - $skillpic = 0; - $skillnum = count($skillList); - foreach($skillList as $v){ - if($v['pic']){ - $skillpic += 1; - } - } - $return['skillnum'] = $skillnum > 0 ? $skillnum:0; - $return['skillpic'] = $skillpic > 0 ? $skillpic:0; - - $return['skill_content']= '目前已掌握'.$return['skillnum'].'项技能,其中'.$return['skillpic'].'项拥有技能证书'; - } - - /*作品案例*/ - $showList = $data['show']; - if($showList){ - $shownum = 0; - $shownum = count($showList); - $return['shownum'] = $shownum > 0 ? $shownum:0; - - $return['show_content']= '已上传'.$return['shownum'].'份作品案例给招聘企业提前预览'; - } - } - - return $return; - } - /** + + //简历分布定价,按照时间分别定价 + function setDayprice($eid, $data = array()) { + + $rinfo = $this->select_once('resume_expect', array('id' => $eid), 'lastupdate'); + + $conlist = $this->select_once('admin_config', array('name' => 'integral_down_resume_dayprice')); + + $marr = explode(':', $conlist['config']); + + foreach ($marr as $v) { + $narr = explode('_', $v); + $days[] = $narr[0]; + $data[$narr[0]] = $narr[1]; + } + + $ryear = intval(date('Y', time() - $rinfo['lastupdate'])); + $rday = intval(date('d', time() - $rinfo['lastupdate'])); + + if ($ryear != 0) { + + $rday = $ryear * 365 + $rday; + } + + if (in_array($rday, $days)) { + + $rdayprice = $data[$rday]; + } else { + + foreach ($days as $val) { + if ($rday < $val) { + $rdayprice = $data[$val]; + break; + } + } + } + if (!$rdayprice) { + if ($data['integral'] && $data['integral'] == 'yes') { + + $newdayprice = $this->config['integral_down_resume'] * $this->config['integral_proportion'];// 购买简历下载所需积分 + } else { + + $newdayprice = $this->config['integral_down_resume']; // 购买简历下载所需金额 + } + } else { + + if ($data['integral'] && $data['integral'] == 'yes') { + + $newdayprice = $rdayprice * $this->config['integral_proportion']; + } else { + + $newdayprice = $rdayprice; + } + } + return $newdayprice; + } + + /** + * 简历开放状态检查 + * @param array $data + */ + function openResumeCheck($data) { + + $type = 2; + if (isset($data['from']) && $data['from'] == 'reward') { + $type = 1; + } else { + /* 个人查看自己 */ + if (isset($data['ruid']) && $data['uid'] == $data['ruid']) { + + $type = 1; + + } else { + /* 开放状态 */ + if ($this->config['resume_open_check'] == 1) { + $type = 1; + } + /* 企业登录状态 */ + if ($this->config['resume_open_check'] == 2) { + if ($data['uid'] && $data['usertype'] == 2 || $data['usertype'] == 3) { + $type = 1; + } + } + /* 发布职位状态 */ + if ($this->config['resume_open_check'] == 3) { + + if ($data['uid'] && $data['usertype'] == 2) { + $where['r_status'] = 1; + $where['status'] = '0'; + $where['state'] = '1'; + $where['uid'] = $data['uid']; + $jobNum = $this->select_num('company_job', $where); + if ($jobNum > 0) { + $type = 1; + } + } + + } + /* 下载简历状态(包括企业可以免费查看投递简历) */ + if ($this->config['resume_open_check'] == 4) { + + if ($data['uid']) { + $where['comid'] = $data['uid']; + $where['eid'] = $data['eid']; + $where['usertype'] = $data['usertype']; + $downNum = $this->select_num('down_resume', $where); + if ($downNum > 0) { + $type = 1; + } + if ($data['usertype'] == 2) { + $userid_job = $this->select_once('userid_job', array('com_id' => $data['uid'], 'eid' => $data['eid'], 'isdel' => 9), '`id`'); + $comstatis = $this->select_once('company_statis', array('uid' => $data['uid']), '`rating`'); + //已投递简历并且免费查看联系方式 + if (!empty($userid_job) && in_array($comstatis['rating'], @explode(',', $this->config['com_look']))) { + $type = 1; + } + } + } + } + } + } + + return $type; + } + + /** + * 用户设置默认简历 + */ + public function defaults($data = array()) { + + $return = array('errcode' => '2', 'msg' => '设置失败!'); + + if (!empty($data)) { + + $row = $this->select_once('resume_expect', array('id' => $data['id']), '`id`,`uid`,`topdate`,`top`'); + + if (!empty($row['id'])) { + + $id = $this->update_once('resume', array('def_job' => $row['id']), array('uid' => $data['uid'])); + // 如原默认简历有置顶记录,且已过期,将置顶记录清空 + if ($row['topdate'] < time()) { + + $redata = array( + 'defaults' => 0, + 'topdate' => '', + 'top' => '' + ); + } else { + + $redata = array( + 'defaults' => 0 + ); + } + $this->update_once('resume_expect', $redata, array('uid' => $row['uid'])); + + $this->update_once('resume_expect', array('defaults' => 1), array('id' => $row['id'])); + + $this->addMemberLog($row['uid'], 1, '设置默认简历', 2, 2); + + + $return = $id ? array('errcode' => '1', 'msg' => '设置成功!') : array('errcode' => '2', 'msg' => '设置失败!'); + + } + } + + return $return; + } + + /** + * 简历模糊字段 + */ + public function getTj($data) { + + if (!empty($data)) { + /*教育经历*/ + $eduList = $data['edu']; + if ($eduList) { + $edumin = 0; + $edumax = 0; + foreach ($eduList as $v) { + if ($v['sdate'] > 0 && $edumin == 0) { + $edumin = $v['sdate']; + } elseif ($edumin > $v['sdate']) { + $edumin = $v['sdate']; + } + if ($v['edate'] == 0) { + $edumax = 0; + } elseif ($edumax < $v['edate']) { + $edumax = $v['edate']; + } + + $education[] = $v['education_n']; + + $edutitle[] = $v['title']; + } + + $return['edumin'] = date('Y.m', $edumin); + $return['edumax'] = $edumax == 0 ? '至今' : date('Y.m', $edumax); + $return['education'] = @implode(',', $education); + $return['edutit'] = @implode(',', $edutitle); + + $return['edu_time'] = $return['edumin'] . '-' . $return['edumax']; + $return['edu_content'] = '已完成' . $return['education'] . '段学业'; + } + + /*工作经历*/ + $workList = $data['work']; + if ($workList) { + $whour = 0; + $hour = array(); + $time = time(); + $workmin = 0; + $workmax = 0; + $worknum = count($workList); + + foreach ($workList as $v) { + /* 计算每份工作时长(按月) */ + if ($v['edate']) { + $workTime = ceil(($v['edate'] - $v['sdate']) / (30 * 86400)); + } else { + $workTime = ceil(($time - $v['sdate']) / (30 * 86400)); + } + + if ($v['sdate'] > 0 && $workmin == 0) { + $workmin = $v['sdate']; + } elseif ($workmin > $v['sdate']) { + $workmin = $v['sdate']; + } + + if ($v['edate'] == 0) { + $workmax = 0; + } elseif ($workmax < $v['edate']) { + $workmax = $v['edate']; + } + + $wtitle[] = $v['title']; + + $hour[] = $workTime; + $whour += $workTime; + } + + $workavg = ceil($whour / count($hour)); + + $return['worknum'] = $worknum > 0 ? $worknum : 0; + + $return['workavg'] = $workavg > 11 ? avgToYm($workavg) : $workavg; + + $return['workmin'] = date('Y.m', $workmin); + $return['workmax'] = $workmax == 0 ? '至今' : date('Y.m', $workmax); + $return['worktit'] = @implode(',', $wtitle); + + $return['work_time'] = $return['workmin'] . '-' . $return['workmax']; + if ($return['workavg'] > 0) { + if ($return['worktit'] != '') { + $return['work_content'] = '参加过' . $return['worknum'] . '份工作 , 平均工作时长' . $return['workavg'] . '个月,涉及' . $return['worktit'] . '等岗位'; + } else { + $return['work_content'] = '参加过' . $return['worknum'] . '份工作 , 平均工作时长' . $return['workavg'] . '个月'; + } + } + } + + /*项目经历*/ + $xmList = $data['xm']; + if ($xmList) { + $xmmin = 0; + $xmmax = 0; + $xmnum = count($xmList); + foreach ($xmList as $v) { + if ($v['sdate'] > 0 && $xmmin == 0) { + $xmmin = $v['sdate']; + } elseif ($xmmin > $v['sdate']) { + $xmmin = $v['sdate']; + } + + if ($v['edate'] == 0) { + $xmmax = 0; + } elseif ($xmmax < $v['edate']) { + $xmmax = $v['edate']; + } + + $xmtitle[] = $v['title']; + } + + $return['xmnum'] = $xmnum > 0 ? $xmnum : 0; + $return['xmmin'] = date('Y.m', $xmmin); + $return['xmmax'] = $xmmax == 0 ? '至今' : date('Y.m', $xmmax); + $return['xmtit'] = @implode(',', $xmtitle); + + $return['xm_time'] = $return['xmmin'] . '-' . $return['xmmax']; + if ($return['xmtit'] != '') { + $return['xm_content'] = '独自完成或参与过' . $return['xmnum'] . '个项目,并在其中担任过' . $return['xmtit'] . '等职务'; + } else { + $return['xm_content'] = '独自完成或参与过' . $return['xmnum'] . '个项目'; + } + } + + /*培训经历*/ + $trainList = $data['train']; + if ($trainList) { + $trainmin = 0; + $trainmax = 0; + $trainnum = count($trainList); + foreach ($trainList as $v) { + if ($v['sdate'] > 0 && $trainmin == 0) { + $trainmin = $v['sdate']; + } elseif ($xmmin > $v['sdate']) { + $trainmin = $v['sdate']; + } + + if ($v['edate'] == 0) { + $trainmax = 0; + } elseif ($xmmax < $v['edate']) { + $trainmax = $v['edate']; + } + } + + $return['trainnum'] = $trainnum > 0 ? $trainnum : 0; + $return['trainmin'] = date('Y.m', $trainmin); + $return['trainmax'] = $trainmax == 0 ? '至今' : date('Y.m', $trainmax); + + $return['train_time'] = $return['trainmin'] . '-' . $return['trainmax']; + $return['train_content'] = '参加过' . $return['trainnum'] . '次培训,进行自我充电,能力提升'; + } + + /*专业技能*/ + $skillList = $data['skill']; + if ($skillList) { + $skillpic = 0; + $skillnum = count($skillList); + foreach ($skillList as $v) { + if ($v['pic']) { + $skillpic += 1; + } + } + $return['skillnum'] = $skillnum > 0 ? $skillnum : 0; + $return['skillpic'] = $skillpic > 0 ? $skillpic : 0; + + $return['skill_content'] = '目前已掌握' . $return['skillnum'] . '项技能,其中' . $return['skillpic'] . '项拥有技能证书'; + } + + /*作品案例*/ + $showList = $data['show']; + if ($showList) { + $shownum = 0; + $shownum = count($showList); + $return['shownum'] = $shownum > 0 ? $shownum : 0; + + $return['show_content'] = '已上传' . $return['shownum'] . '份作品案例给招聘企业提前预览'; + } + } + + return $return; + } + + /** * 获取temporary_resume 详情 - * $whereData 查询条件 - * $data 自定义处理数组 scene 场景值,定制不同场景返回的数据 + * $whereData 查询条件 + * $data 自定义处理数组 scene 场景值,定制不同场景返回的数据 */ public function getTempResumeInfo($whereData, $data = array()) { - $Info = array(); - $data['field'] = empty($data['field']) ? '*' : $data['field']; - $Info = $this -> select_once('temporary_resume', $whereData, $data['field']); - if(!empty($Info)){ - //定制不同场景展示的内容 - if(isset($data['scene']) && $data['scene'] == 'detail'){ - //获取缓存数据 - include_once('cache.model.php'); - $cacheM = new cache_model($this->db, $this->def); - $CacheList = $cacheM -> GetCache(array('user','hy','job','city')); - - //处理性别 - if(isset($CacheList['user_sex'][$Info['sex']])){ - $Info['sex'] = $CacheList['user_sex'][$Info['sex']]; - }else{ - $Info['sex'] = ''; - } - //处理职位类别 - if(!empty($Info['job_classid'])){ - $jobids = @explode(',', $Info['job_classid']); - foreach($jobids as $val){ - $jobname[] = $CacheList['job_name'][$val]; - } - $Info['jobname'] = @implode('、',$jobname); - } - //处理省份城市 - if(!empty($Info['provinceid'])){ - $Info['city'] = $CacheList['city_name'][$Info['provinceid']]; - } - if(isset($CacheList['city_name'][$Info['cityid']])){ - $Info['city'] .= '-'.$CacheList['city_name'][$Info['cityid']]; - } - if(isset($CacheList['city_name'][$Info['three_cityid']])){ - $Info['city'] .= '-'.$CacheList['city_name'][$Info['three_cityid']]; - } - //处理薪资 - if(!empty($Info['minsalary'])){ - if($Info['maxsalary']){ - $Info['rsalary'] = $Info['minsalary'].'-'.$Info['maxsalary']; - }else{ - $Info['rsalary'] = $Info['minsalary']; - } - }else{ - $Info['rsalary'] = '面议'; - } - //处理学历 - if(isset($CacheList['userclass_name'][$Info['edu']])){ - $Info['job_edu'] = $CacheList['userclass_name'][$Info['edu']]; - }else{ - $Info['job_edu'] = ''; - } - //处理工作经验 - if(isset($CacheList['userclass_name'][$Info['exp']])){ - $Info['job_exp'] = $CacheList['userclass_name'][$Info['exp']]; - }else{ - $Info['job_exp'] = ''; - } - //处理工作性质 - if(isset($CacheList['userclass_name'][$Info['type']])){ - $Info['job_type'] = $CacheList['userclass_name'][$Info['type']]; - }else{ - $Info['job_type'] = ''; - } - //处理到岗时间 - if(isset($CacheList['userclass_name'][$Info['report']])){ - $Info['job_report'] = $CacheList['userclass_name'][$Info['report']]; - }else{ - $Info['job_report'] = ''; - } - //处理从事行业 - if(isset($CacheList['industry_name'][$Info['hy']])){ - $Info['job_hy'] = $CacheList['industry_name'][$Info['hy']]; - }else{ - $Info['job_hy'] = ''; - } - } - } + $Info = array(); + $data['field'] = empty($data['field']) ? '*' : $data['field']; + $Info = $this->select_once('temporary_resume', $whereData, $data['field']); + if (!empty($Info)) { + //定制不同场景展示的内容 + if (isset($data['scene']) && $data['scene'] == 'detail') { + //获取缓存数据 + include_once('cache.model.php'); + $cacheM = new cache_model($this->db, $this->def); + $CacheList = $cacheM->GetCache(array('user', 'hy', 'job', 'city')); + + //处理性别 + if (isset($CacheList['user_sex'][$Info['sex']])) { + $Info['sex'] = $CacheList['user_sex'][$Info['sex']]; + } else { + $Info['sex'] = ''; + } + //处理职位类别 + if (!empty($Info['job_classid'])) { + $jobids = @explode(',', $Info['job_classid']); + foreach ($jobids as $val) { + $jobname[] = $CacheList['job_name'][$val]; + } + $Info['jobname'] = @implode('、', $jobname); + } + //处理省份城市 + if (!empty($Info['provinceid'])) { + $Info['city'] = $CacheList['city_name'][$Info['provinceid']]; + } + if (isset($CacheList['city_name'][$Info['cityid']])) { + $Info['city'] .= '-' . $CacheList['city_name'][$Info['cityid']]; + } + if (isset($CacheList['city_name'][$Info['three_cityid']])) { + $Info['city'] .= '-' . $CacheList['city_name'][$Info['three_cityid']]; + } + //处理薪资 + if (!empty($Info['minsalary'])) { + if ($Info['maxsalary']) { + $Info['rsalary'] = $Info['minsalary'] . '-' . $Info['maxsalary']; + } else { + $Info['rsalary'] = $Info['minsalary']; + } + } else { + $Info['rsalary'] = '面议'; + } + //处理学历 + if (isset($CacheList['userclass_name'][$Info['edu']])) { + $Info['job_edu'] = $CacheList['userclass_name'][$Info['edu']]; + } else { + $Info['job_edu'] = ''; + } + //处理工作经验 + if (isset($CacheList['userclass_name'][$Info['exp']])) { + $Info['job_exp'] = $CacheList['userclass_name'][$Info['exp']]; + } else { + $Info['job_exp'] = ''; + } + //处理工作性质 + if (isset($CacheList['userclass_name'][$Info['type']])) { + $Info['job_type'] = $CacheList['userclass_name'][$Info['type']]; + } else { + $Info['job_type'] = ''; + } + //处理到岗时间 + if (isset($CacheList['userclass_name'][$Info['report']])) { + $Info['job_report'] = $CacheList['userclass_name'][$Info['report']]; + } else { + $Info['job_report'] = ''; + } + //处理从事行业 + if (isset($CacheList['industry_name'][$Info['hy']])) { + $Info['job_hy'] = $CacheList['industry_name'][$Info['hy']]; + } else { + $Info['job_hy'] = ''; + } + } + } return $Info; - } - /** + } + + /** * 删除temporary_resume 详情 * $whereData 查询条件 */ public function delTempResumeInfo($whereData) { - $nid = $this -> delete_all('temporary_resume', $whereData, ''); + $nid = $this->delete_all('temporary_resume', $whereData, ''); return $nid; } + /** * 添加temporary_resume - * $data 插入数据 + * $data 插入数据 */ - public function addTempResumeInfo($data=array()) { - - $nid = $this -> insert_into('temporary_resume',$data); + public function addTempResumeInfo($data = array()) { + + $nid = $this->insert_into('temporary_resume', $data); return $nid; } + // 简历置顶检测 - public function topResumeCheck($data = array('eid'=>null,'uid'=>null)){ - - $return = array(); - - $expect = $this->select_once('resume_expect',array('id'=>$data['eid'],'uid'=>$data['uid']),'`doc`,`state`'); - $work = $this->select_num('resume_work',array('eid'=>$data['eid'],'uid'=>$data['uid'])); - $edu = $this->select_num('resume_edu',array('eid'=>$data['eid'],'uid'=>$data['uid'])); - $project = $this->select_num('resume_project',array('eid'=>$data['eid'],'uid'=>$data['uid'])); - - if(empty($expect)){ - $return['msg'] = '请先创建简历!'; - }else if($expect['state']!=1){ - $return['msg'] = '您的简历尚未审核,无法置顶操作!'; - }else{ - if($expect['doc'] == 0){ - if($this->config['user_work_regiser']==1){ - if($work < 1){ - - $return['msg'] = '你的简历没有工作经历,请填写工作经历'; + public function topResumeCheck($data = array('eid' => null, 'uid' => null)) { + + $return = array(); + + $expect = $this->select_once('resume_expect', array('id' => $data['eid'], 'uid' => $data['uid']), '`doc`,`state`'); + $work = $this->select_num('resume_work', array('eid' => $data['eid'], 'uid' => $data['uid'])); + $edu = $this->select_num('resume_edu', array('eid' => $data['eid'], 'uid' => $data['uid'])); + $project = $this->select_num('resume_project', array('eid' => $data['eid'], 'uid' => $data['uid'])); + + if (empty($expect)) { + $return['msg'] = '请先创建简历!'; + } else if ($expect['state'] != 1) { + $return['msg'] = '您的简历尚未审核,无法置顶操作!'; + } else { + if ($expect['doc'] == 0) { + if ($this->config['user_work_regiser'] == 1) { + if ($work < 1) { + + $return['msg'] = '你的简历没有工作经历,请填写工作经历'; } } - if($this->config['user_edu_regiser']==1){ - if($edu < 1){ - - $return['msg'] = '你的简历没有教育经历,请填写教育经历'; + if ($this->config['user_edu_regiser'] == 1) { + if ($edu < 1) { + + $return['msg'] = '你的简历没有教育经历,请填写教育经历'; } } - if($this->config['user_project_regiser']==1){ - if($project < 1){ - - $return['msg'] = '你的简历没有项目经历,请填写项目经历'; + if ($this->config['user_project_regiser'] == 1) { + if ($project < 1) { + + $return['msg'] = '你的简历没有项目经历,请填写项目经历'; } } } } - + return $return; } + /** * @desc 简历匹配职位 * @param array $data */ - public function likeJob($data=array('id'=>null,'uid'=>null,'limit'=>16)){ - $job = array(); - if($data['id']){ - $id = $data['id']; - $uid = $data['uid']; - - $resume = $this->getInfoByEid(array('eid'=>$id,'uid'=>$uid)); - - $where['r_status'] = 1; - $where['status'] = 0; - $where['state'] = 1; - if($resume['job_classid']!=""){ - $where['PHPYUNBTWSTART_A']=''; - $where['job_post'] = array('in',$resume['job_classid']); - $where['job1_son'] = array('in',$resume['job_classid'],'OR'); - $where['PHPYUNBTWEND_A']=''; + public function likeJob($data = array('id' => null, 'uid' => null, 'limit' => 16)) { + $job = array(); + if ($data['id']) { + $id = $data['id']; + $uid = $data['uid']; + + $resume = $this->getInfoByEid(array('eid' => $id, 'uid' => $uid)); + + $where['r_status'] = 1; + $where['status'] = 0; + $where['state'] = 1; + if ($resume['job_classid'] != "") { + $where['PHPYUNBTWSTART_A'] = ''; + $where['job_post'] = array('in', $resume['job_classid']); + $where['job1_son'] = array('in', $resume['job_classid'], 'OR'); + $where['PHPYUNBTWEND_A'] = ''; } - if($resume['city_classid']!=""){ - $where['PHPYUNBTWSTART_B'] = ''; - $where['provinceid'] = array('in',$resume['city_classid']); - $where['cityid'] = array('in',$resume['city_classid'],'OR'); - $where['three_cityid'] = array('in',$resume['city_classid'],'OR'); - $where['PHPYUNBTWEND_B'] = ''; + if ($resume['city_classid'] != "") { + $where['PHPYUNBTWSTART_B'] = ''; + $where['provinceid'] = array('in', $resume['city_classid']); + $where['cityid'] = array('in', $resume['city_classid'], 'OR'); + $where['three_cityid'] = array('in', $resume['city_classid'], 'OR'); + $where['PHPYUNBTWEND_B'] = ''; } - $where['orderby'] = 'id,desc'; - $where['limit'] = is_numeric($data['limit']) && $data['limit']>0 ? $data['limit'] : 16; - $cdata['field'] = 'id,uid,name,cityid,three_cityid,edu,sex,marriage,report,exp,minsalary,maxsalary,lastupdate,com_name,com_logo'; - - require_once ('job.model.php'); - $jobM = new job_model($this->db, $this->def); - $List = $jobM -> getList($where,$cdata); - $job = $List['list']; - if(is_array($resume)){ - - foreach($job as $k=>$v){ - - $pre = 60; - $city_classname = @explode(',',$resume['city_classid']); - if(in_array($v['cityid'],$city_classname) || in_array($v['three_cityid'],$city_classname)){//地区 - $pre = $pre+10; + $where['orderby'] = 'id,desc'; + $where['limit'] = is_numeric($data['limit']) && $data['limit'] > 0 ? $data['limit'] : 16; + $cdata['field'] = 'id,uid,name,cityid,three_cityid,edu,sex,marriage,report,exp,minsalary,maxsalary,lastupdate,com_name,com_logo'; + + require_once('job.model.php'); + $jobM = new job_model($this->db, $this->def); + $List = $jobM->getList($where, $cdata); + $job = $List['list']; + if (is_array($resume)) { + + foreach ($job as $k => $v) { + + $pre = 60; + $city_classname = @explode(',', $resume['city_classid']); + if (in_array($v['cityid'], $city_classname) || in_array($v['three_cityid'], $city_classname)) {//地区 + $pre = $pre + 10; } - if($resume['useredu']==$v['job_edu'] || $v['job_edu']=="不限"){//学历 - $pre = $pre+5; + if ($resume['useredu'] == $v['job_edu'] || $v['job_edu'] == "不限") {//学历 + $pre = $pre + 5; } - if($resume['user_marriage']==$v['job_marriage'] || $v['job_marriage']=="不限"){//婚姻 - $pre = $pre+5; + if ($resume['user_marriage'] == $v['job_marriage'] || $v['job_marriage'] == "不限") {//婚姻 + $pre = $pre + 5; } - if($resume['sex']==$v['job_sex'] || $v['job_sex']=='不限'){ - $pre = $pre+5; + if ($resume['sex'] == $v['job_sex'] || $v['job_sex'] == '不限') { + $pre = $pre + 5; } - if($resume['report']==$v['job_report'] || $v['job_report']=="不限"){//到岗时间 - $pre = $pre+5; + if ($resume['report'] == $v['job_report'] || $v['job_report'] == "不限") {//到岗时间 + $pre = $pre + 5; } - if($resume['user_exp']==$v['job_exp'] || $v['job_exp']=="不限"){//工作经验 - $pre = $pre+5; + if ($resume['user_exp'] == $v['job_exp'] || $v['job_exp'] == "不限") {//工作经验 + $pre = $pre + 5; } - $job[$k]['pre'] = $pre; - if(empty($v['job_sex'])){ - $job[$k]['job_sex'] = '保密'; - } - $job[$k]['wapjob_url'] = Url('wap',array('c'=>'job','a'=>'comapply','id'=>$v['id'])); - $job[$k]['wapcom_url'] = Url('wap',array('c'=>'company','a'=>'show','id'=>$v['uid'])); + $job[$k]['pre'] = $pre; + if (empty($v['job_sex'])) { + $job[$k]['job_sex'] = '保密'; + } + $job[$k]['wapjob_url'] = Url('wap', array('c' => 'job', 'a' => 'comapply', 'id' => $v['id'])); + $job[$k]['wapcom_url'] = Url('wap', array('c' => 'company', 'a' => 'show', 'id' => $v['uid'])); } $sort = array( 'direction' => 'SORT_DESC', //排序顺序标志 SORT_DESC 降序;SORT_ASC 升序 'field' => 'pre', //排序字段 ); - $arrSort = array(); - foreach($job AS $uniqid => $row){ - - foreach($row AS $key=>$value){ - - $arrSort[$key][$uniqid] = $value; + $arrSort = array(); + foreach ($job as $uniqid => $row) { + + foreach ($row as $key => $value) { + + $arrSort[$key][$uniqid] = $value; } } - if($sort['direction']){ - + if ($sort['direction']) { + array_multisort($arrSort[$sort['field']], constant($sort['direction']), $job); } - + } } return $job; } + /*会员添加简历页面,添加前检查是否满足各项条件,例如简历数,并返回部分基本信息 needcache:是否需要缓存,$from:默认pc:为pc端,wap:wap端,wxapp:小程序端 **/ - public function addResumeRequireCheck($data=array('uid'=>null,'needcache'=>null), $from='pc'){ - $error['err'] = 0; - if($data['uid']){ - - $uid = $data['uid']; - - $num = $this -> getExpectNum(array('uid'=>$uid)); - - if($this->config['user_number']!='' && $num >= $this->config['user_number']){ - - $error['err'] = 1; - $error['msg'] = '您最多可以拥有'.$this->config['user_number'].'份简历'; - $error['url'] = 'index.php?c=resume'; - } - - return $error; - - } - + public function addResumeRequireCheck($data = array('uid' => null, 'needcache' => null), $from = 'pc') { + $error['err'] = 0; + if ($data['uid']) { + + $uid = $data['uid']; + + $num = $this->getExpectNum(array('uid' => $uid)); + + if ($this->config['user_number'] != '' && $num >= $this->config['user_number']) { + + $error['err'] = 1; + $error['msg'] = '您最多可以拥有' . $this->config['user_number'] . '份简历'; + $error['url'] = 'index.php?c=resume'; + } + + return $error; + + } + } + /*会员添加简历页面,添加前检查是否满足各项条件,例如身份认证和简历数,并返回部分基本信息 needcache:是否需要缓存,$from:默认pc:pc端,wap:wap端,wxapp:小程序端 **/ - public function addResumePage($data=array('uid'=>null,'needcache'=>null), $from='pc'){ - $return = array(); - if($data['uid']){ - - $uid = $data['uid']; - - $resume = $this -> getResumeInfo(array('uid'=>$uid)); - if(empty($resume)){ - $member=$this->select_once('member',array('uid'=>$uid),'`moblie`,`email`'); - $resume['telphone'] = $member['moblie']; - $resume['email'] = $member['email']; - } - //验证是否满足条件 - $error = $this->addResumeRequireCheck($data, $from); - $return['error'] = $error; - //验证结束 - if($return['error']['err']==0){ - - $return['setarr'] = array(); - - switch ($from) { - - case 'pc': - $setarr = array( - 'resume' => $resume, - 'layerv' => 5, - 'js_def' => 2 - ); - break; - - case 'wap': - $setarr = array( - 'resume' => $resume, - 'headertitle' => '创建简历' - ); - break; - - case 'wxapp': - - $resume['resume_create_exp'] = $this->config['resume_create_exp']; - $resume['resume_create_edu'] = $this->config['resume_create_edu']; - $resume['resume_create_project']= $this->config['resume_create_project']; - $resume['expcreate'] = $this->config['expcreate']; - $resume['educreate'] = $this->config['educreate']; - $setarr = array('resume' => $resume); - break; - } - if(!empty($data['needcache'])){ - //是否需要缓存 - require_once ('cache.model.php'); - $cacheM = new cache_model($this->db, $this->def); - $cache = $cacheM->GetCache(array('city','user','hy','job')); - $return['cache'] = $cache; - - $setarr['user_sex'] = $cache['user_sex']; - $setarr['userdata'] = $cache['userdata']; - $setarr['userclass_name'] = $cache['userclass_name']; - $setarr['industry_index'] = $cache['industry_index']; - $setarr['industry_name'] = $cache['industry_name']; - if(empty($cache['city_type'])){ - $setarr['cionly'] = 1; - } - if(empty($cache['job_type'])){ - $setarr['jionly'] = 1; - } - } - $return['setarr'] = $setarr; - - } - } - return $return; + public function addResumePage($data = array('uid' => null, 'needcache' => null), $from = 'pc') { + $return = array(); + if ($data['uid']) { + + $uid = $data['uid']; + + $resume = $this->getResumeInfo(array('uid' => $uid)); + if (empty($resume)) { + $member = $this->select_once('member', array('uid' => $uid), '`moblie`,`email`'); + $resume['telphone'] = $member['moblie']; + $resume['email'] = $member['email']; + } + //验证是否满足条件 + $error = $this->addResumeRequireCheck($data, $from); + $return['error'] = $error; + //验证结束 + if ($return['error']['err'] == 0) { + + $return['setarr'] = array(); + + switch ($from) { + + case 'pc': + $setarr = array( + 'resume' => $resume, + 'layerv' => 5, + 'js_def' => 2 + ); + break; + + case 'wap': + $setarr = array( + 'resume' => $resume, + 'headertitle' => '创建简历' + ); + break; + + case 'wxapp': + + $resume['resume_create_exp'] = $this->config['resume_create_exp']; + $resume['resume_create_edu'] = $this->config['resume_create_edu']; + $resume['resume_create_project'] = $this->config['resume_create_project']; + $resume['expcreate'] = $this->config['expcreate']; + $resume['educreate'] = $this->config['educreate']; + $setarr = array('resume' => $resume); + break; + } + if (!empty($data['needcache'])) { + //是否需要缓存 + require_once('cache.model.php'); + $cacheM = new cache_model($this->db, $this->def); + $cache = $cacheM->GetCache(array('city', 'user', 'hy', 'job')); + $return['cache'] = $cache; + + $setarr['user_sex'] = $cache['user_sex']; + $setarr['userdata'] = $cache['userdata']; + $setarr['userclass_name'] = $cache['userclass_name']; + $setarr['industry_index'] = $cache['industry_index']; + $setarr['industry_name'] = $cache['industry_name']; + if (empty($cache['city_type'])) { + $setarr['cionly'] = 1; + } + if (empty($cache['job_type'])) { + $setarr['jionly'] = 1; + } + } + $return['setarr'] = $setarr; + + } + } + return $return; } - - function upExpectHeight($data=array()){ - - $nid = 0; - - if(!empty($data)){ - $eid = $data['eid']; - $expect = $this->select_once('resume_expect',array('id'=>$eid)); - if($expect['height_status']!=0){ - $nid = $this->update_once('resume_expect',array('height_status'=>1),array('id'=>$eid)); - } - - } - return $nid; - } - - /** - * 网络招聘会大厅简历列表、浏览简历列表类查询个人姓名使用 - */ - private function getJlData($List){ - - foreach ($List as $v){ - - $uids[] = $v['uid']; - } - $resume = $this->select_all('resume',array('uid'=>array('in',pylode(',', $uids))),'`uid`,`name`,`nametype`,`photo`,`phototype`,`defphoto`,`photo_status`'); - - foreach ($List as $k=>$v){ - $List[$k]['wapurl'] = Url('wap',array('c'=>'resume','a'=>'show','id'=>$v['id'])); - foreach ($resume as $val){ - - if ($v['uid'] == $val['uid']){ - - $List[$k]['photo_n'] = $this->setResumePhotoShow(array('photo'=>$val['photo'],'defphoto'=>$val['defphoto'],'phototype'=>$val['phototype'],'photo_status'=>$val['photo_status'],'sex'=>$v['sex'])); - $List[$k]['uname_n'] = $this->setUsernameShow(array('nametype'=>$val['nametype'],'name'=>$val['name'],'eid'=>$v['id'],'sex'=>$v['sex'])); - } - } - } - return $List; - } - /* + + function upExpectHeight($data = array()) { + + $nid = 0; + + if (!empty($data)) { + $eid = $data['eid']; + $expect = $this->select_once('resume_expect', array('id' => $eid)); + if ($expect['height_status'] != 0) { + $nid = $this->update_once('resume_expect', array('height_status' => 1), array('id' => $eid)); + } + + } + return $nid; + } + + /** + * 网络招聘会大厅简历列表、浏览简历列表类查询个人姓名使用 + */ + private function getJlData($List) { + + foreach ($List as $v) { + + $uids[] = $v['uid']; + } + $resume = $this->select_all('resume', array('uid' => array('in', pylode(',', $uids))), '`uid`,`name`,`nametype`,`photo`,`phototype`,`defphoto`,`photo_status`'); + + foreach ($List as $k => $v) { + $List[$k]['wapurl'] = Url('wap', array('c' => 'resume', 'a' => 'show', 'id' => $v['id'])); + foreach ($resume as $val) { + + if ($v['uid'] == $val['uid']) { + + $List[$k]['photo_n'] = $this->setResumePhotoShow(array('photo' => $val['photo'], 'defphoto' => $val['defphoto'], 'phototype' => $val['phototype'], 'photo_status' => $val['photo_status'], 'sex' => $v['sex'])); + $List[$k]['uname_n'] = $this->setUsernameShow(array('nametype' => $val['nametype'], 'name' => $val['name'], 'eid' => $v['id'], 'sex' => $v['sex'])); + } + } + } + return $List; + } + + /* * 获取简历的原始数据,类别汉字化处理,$data中定义获取哪些表,all=1为全部 */ - function getResumeRaw($Where=array(),$data=array('all'=>0)){ - + function getResumeRaw($Where = array(), $data = array('all' => 0)) { + $return = array(); - $resume = $this->select_once('resume',$Where); - - if(!empty($resume)){ - - $cache = $this -> getClass(array('user','city','job','hy','introduce')); - - $userclass_name = $cache['userclass_name']; - - $resume['sex'] = $resume['sex'] == 1?'男':'女'; - - if($resume['edu']){ - $resume['edu'] = $userclass_name[$resume['edu']]; + $resume = $this->select_once('resume', $Where); + + if (!empty($resume)) { + + $cache = $this->getClass(array('user', 'city', 'job', 'hy', 'introduce')); + + $userclass_name = $cache['userclass_name']; + + $resume['sex'] = $resume['sex'] == 1 ? '男' : '女'; + + if ($resume['edu']) { + $resume['edu'] = $userclass_name[$resume['edu']]; } - if($resume['exp']){ - $resume['exp'] = $userclass_name[$resume['exp']]; + if ($resume['exp']) { + $resume['exp'] = $userclass_name[$resume['exp']]; } - if($resume['marriage']){ - $resume['marriage'] = $userclass_name[$resume['marriage']]; + if ($resume['marriage']) { + $resume['marriage'] = $userclass_name[$resume['marriage']]; } - //联系方式不同步,删除操作 + //联系方式不同步,删除操作 unset($resume['telphone']); unset($resume['telhome']); unset($resume['qq']); unset($resume['email']); unset($resume['address']); - $return['resume'] = $resume; - - $fbwhere = array('uid'=>$resume['uid'],'eid'=>$resume['def_job']); - - if($data['all']=='1' || $data['expect']=='1'){ - - $resume_expect = $this->select_once('resume_expect',array('uid'=>$resume['uid'],'defaults'=>1)); - - if(!empty($resume_expect)){ - $resume_expect['sex'] = $resume_expect['sex'] == 1?'男':'女'; - $resume_expect['exp'] = $cache['userclass_name'][$resume_expect['exp']]; - $resume_expect['edu'] = $cache['userclass_name'][$resume_expect['edu']]; - $resume_expect['hy'] = $cache['industry_name'][$resume_expect['hy']] ? $cache['industry_name'][$resume_expect['hy']] : '不限'; - $resume_expect['report'] = $cache['userclass_name'][$resume_expect['report']]; - $resume_expect['type'] = $cache['userclass_name'][$resume_expect['type']]; - $resume_expect['jobstatus'] = $cache['userclass_name'][$resume_expect['jobstatus']]; + $return['resume'] = $resume; + + $fbwhere = array('uid' => $resume['uid'], 'eid' => $resume['def_job']); + + if ($data['all'] == '1' || $data['expect'] == '1') { + + $resume_expect = $this->select_once('resume_expect', array('uid' => $resume['uid'], 'defaults' => 1)); + + if (!empty($resume_expect)) { + $resume_expect['sex'] = $resume_expect['sex'] == 1 ? '男' : '女'; + $resume_expect['exp'] = $cache['userclass_name'][$resume_expect['exp']]; + $resume_expect['edu'] = $cache['userclass_name'][$resume_expect['edu']]; + $resume_expect['hy'] = $cache['industry_name'][$resume_expect['hy']] ? $cache['industry_name'][$resume_expect['hy']] : '不限'; + $resume_expect['report'] = $cache['userclass_name'][$resume_expect['report']]; + $resume_expect['type'] = $cache['userclass_name'][$resume_expect['type']]; + $resume_expect['jobstatus'] = $cache['userclass_name'][$resume_expect['jobstatus']]; //处理职位类别id - if ($resume_expect['job_classid'] ){ - - $job_classid = @explode(',',$resume_expect['job_classid']); - - if(is_array($job_classid)){ - - foreach($job_classid as $v){ - - if($cache['job_name'][$v]){ - - $job_classname[] = $cache['job_name'][$v]; - + if ($resume_expect['job_classid']) { + + $job_classid = @explode(',', $resume_expect['job_classid']); + + if (is_array($job_classid)) { + + foreach ($job_classid as $v) { + + if ($cache['job_name'][$v]) { + + $job_classname[] = $cache['job_name'][$v]; + } } - $resume_expect['job_classid'] = @implode(',',$job_classname); + $resume_expect['job_classid'] = @implode(',', $job_classname); } } //处理城市类别id - if ($resume_expect['city_classid']){ - - $city_classid = @explode(',',$resume_expect['city_classid']); - - if(is_array($city_classid)){ - - foreach($city_classid as $v){ - - if($cache['city_name'][$v]){ - - $city_classname[] = $cache['city_name'][$v]; - + if ($resume_expect['city_classid']) { + + $city_classid = @explode(',', $resume_expect['city_classid']); + + if (is_array($city_classid)) { + + foreach ($city_classid as $v) { + + if ($cache['city_name'][$v]) { + + $city_classname[] = $cache['city_name'][$v]; + } } - $resume_expect['city_classid'] = @implode(',',$city_classname); + $resume_expect['city_classid'] = @implode(',', $city_classname); } } } - - $return['resume_expect']= !empty($resume_expect) ? $resume_expect : array(); - + + $return['resume_expect'] = !empty($resume_expect) ? $resume_expect : array(); + } - if($data['all']=='1' || $data['work']=='1'){ - - $resume_work = $this->select_all('resume_work', $fbwhere); - $return['resume_work'] = !empty($resume_work) ? $resume_work : array(); - + if ($data['all'] == '1' || $data['work'] == '1') { + + $resume_work = $this->select_all('resume_work', $fbwhere); + $return['resume_work'] = !empty($resume_work) ? $resume_work : array(); + } - if($data['all']=='1' || $data['edu']=='1'){ - - $resume_edu = $this->select_all('resume_edu', $fbwhere); - if(!empty($resume_edu)){ - foreach($resume_edu as $ek=>$ev){ - $resume_edu[$ek]['education'] = $userclass_name[$ev['education']]; + if ($data['all'] == '1' || $data['edu'] == '1') { + + $resume_edu = $this->select_all('resume_edu', $fbwhere); + if (!empty($resume_edu)) { + foreach ($resume_edu as $ek => $ev) { + $resume_edu[$ek]['education'] = $userclass_name[$ev['education']]; } - + } - $return['resume_edu'] = !empty($resume_edu) ? $resume_edu : array(); - + $return['resume_edu'] = !empty($resume_edu) ? $resume_edu : array(); + } - + } - + return $return; } - public function getResumeCityClassList($whereData,$data=array()){ - $field = $data['field'] ? $data['field'] : '*'; - $List = $this -> select_all('resume_cityclass',$whereData,$field); - - return $List; - } - + + public function getResumeCityClassList($whereData, $data = array()) { + $field = $data['field'] ? $data['field'] : '*'; + $List = $this->select_all('resume_cityclass', $whereData, $field); + + return $List; + } + //发布工具搜索 - public function Getresume($where = array(),$data = array()) - { - - $lists = $this->select_all('resume_expect',$where,'`id`'); - + public function Getresume($where = array(), $data = array()) { + + $lists = $this->select_all('resume_expect', $where, '`id`'); + foreach ($lists as $k => $v) { - + $list = $this->getInfoByEid(array('eid' => $v['id'])); - - if($list['age']==0){ - - $list['age']='保密'; - }else{ - $list['age']=$list['age'].'岁'; + + if ($list['age'] == 0) { + + $list['age'] = '保密'; + } else { + $list['age'] = $list['age'] . '岁'; } - - if($list['user_exp']){ - - $list['user_exp']=$list['user_exp'].'经验'; + + if ($list['user_exp']) { + + $list['user_exp'] = $list['user_exp'] . '经验'; } - - if($list['useredu']){ - - $list['useredu']=$list['useredu'].'学历'; + + if ($list['useredu']) { + + $list['useredu'] = $list['useredu'] . '学历'; } - - if($list['tj']['worknum']>0){ - - $list['resume_workjj'] = $list['tj']['workmin'].'-'.$list['tj']['workmax'].'参加过'.$list['tj']['worknum'].'份工作,平均工作时长'.$list['tj']['workavg'].'个月,涉及'.$list['tj']['worktit'].'等岗位。'; + + if ($list['tj']['worknum'] > 0) { + + $list['resume_workjj'] = $list['tj']['workmin'] . '-' . $list['tj']['workmax'] . '参加过' . $list['tj']['worknum'] . '份工作,平均工作时长' . $list['tj']['workavg'] . '个月,涉及' . $list['tj']['worktit'] . '等岗位。'; } - - if($list['tj']['education']){ - - $list['resume_edujj'] = $list['tj']['edumin'].'-'.$list['tj']['edumax'].'已完成'.$list['tj']['education'].'段学业。'; + + if ($list['tj']['education']) { + + $list['resume_edujj'] = $list['tj']['edumin'] . '-' . $list['tj']['edumax'] . '已完成' . $list['tj']['education'] . '段学业。'; } - + $lists[$k]['list'] = $list; } return $lists; } - - public function updateExpect($data = array(), $where = array()) - { - + + public function updateExpect($data = array(), $where = array()) { + if (!empty($where)) { $this->update_once('resume_expect', $data, $where); } } - - public function setExpectState($data = array(), $where = array()) - { - + + public function setExpectState($data = array(), $where = array()) { + if (!empty($where)) { - - $expect_all = $this->select_all('resume_expect', $where, '`id`,`uid`'); - - $eid_arr = array(); - + + $expect_all = $this->select_all('resume_expect', $where, '`id`,`uid`'); + + $eid_arr = array(); + foreach ($expect_all as $k => $v) { if (!in_array($v['id'], $eid_arr)) { - - $eid_arr[] = $v['id']; + + $eid_arr[] = $v['id']; } } - - $nid = $this->update_once('resume_expect', $data, $where); - + + $nid = $this->update_once('resume_expect', $data, $where); + if (isset($data['state']) && !empty($eid_arr)) { - + $this->update_once('userid_job', array('resume_state' => $data['state']), array('eid' => array('in', pylode(',', $eid_arr)))); } - + return $nid; } } } + ?> \ No newline at end of file -- Gitblit v1.9.0