count(); $num = 100;//每次导入条数 $limit = ceil($count/$num); for($i=1;$i<=$limit;$i++) { $offet = ($i-1)*$num; $result = Db::table('rec_js')->field('id,mykemu')->limit($offet,$num)->select(); $level = config('setsub.levelArr'); foreach ($result as $key => $val) { $val['mykemu'] = $result = explode(',',$val['mykemu']); $res = ''; foreach($val['mykemu'] as $k=>$v){ $res .= $level[$v]; } Db::table('rec_js')->where('id','=',$val['id'])->update(['mykemu'=>$res]); } } echo ok;die; } /* * 修改rec_zhejiang_majors表,将classify中文转换成数字 * */ public function updateCollegeType(){ $result = Db::table('rec_zhejiang_schs')->field('id,classify')->select(); $cate = config('setsub.cateArr'); foreach ($result as $key => $val) { $cateid = $cate[$val['classify']]; Db::table('rec_zhejiang_schs')->where('id','=',$val['id'])->update(['collegeType'=>$cateid]); } } /* * 最低分和位次迁移 * */ public function updateMajor(){ $result = Db::table('rec_wen_major')->select(); foreach($result as $key=>$val){ $res = json_decode($val['professions']); foreach($res as $k => $v){ $data['rec_id'] = $result[$key]['rec_id']; $data['title'] = $v->alias; $data['code'] = $v->majorCode; $resRank = json_decode($v->extended); $data['lowestRank'] = $resRank[0]->ls; $data['minScore'] = $resRank[0]->ms; $data['scoreLineYear'] = $v->scoreLineYear; $data['year'] = $v->year; $data['enterNum'] = $v->enterNum; $data['planNum'] = $v->planNum; $data['probability'] = $v->probability; Db::table('rec_majors')->insert($data); } } } /* * 新高考 * 数据迁移yzy_zj_major_score 新增字段 sch_cate rankOfCn * */ public function updateMajorScore(){ $result = Db::table('yzy_zj_major_score')->field("id,sch_id")->select(); $cate = config('setsub.cateName'); foreach ($result as $key =>$val){ $resClass = Db::table('yzy_school')->field('cate_id')->where('sch_id','=',$val['sch_id'])->find(); $cateName = $cate[$resClass['cate_id']]; $resRank = Db::table("yzy_school_exts")->field('rankOfCn')->where("sch_id",'=',$val['sch_id'])->find(); Db::table('yzy_zj_major_score')->where([['id','=',$val['id']],['sch_id','=',$val['sch_id']]])->update(['classify'=>$cateName,'rankOfCn'=>$resRank['rankOfCn']]); } } /* * school表排名更新 * */ public function updateSchoolRank(){ $result = Db::table('yzy_school')->field("id,sch_id")->select(); foreach ($result as $key =>$val){ $resRank = Db::table("yzy_school_exts")->field('rankOfCn')->where("sch_id",'=',$val['sch_id'])->find(); Db::table('yzy_school')->where([['id','=',$val['id']],['sch_id','=',$val['sch_id']]])->update(['rankOfCn'=>$resRank['rankOfCn']]); } } /* * 新高考 * 专业数量同步到院校表 * */ public function majorCountToSch(){ set_time_limit(0); $count = Db::table('rec_zhejiang_majors')->count(); $num = 100;//每次导入条数 $limit = ceil($count/$num); for($i=1;$i<=$limit;$i++) { $offet = ($i - 1) * $num; $result = Db::table('rec_zhejiang_schs')->field("id")->limit($offet, $num)->select(); foreach ($result as $key => $val) { $resMajor = Db::table('rec_zhejiang_schs_majors')->field('professions')->where('rec_id', '=', $val['id'])->find(); $count = count(json_decode($resMajor['professions'])); Db::table('rec_zhejiang_schs')->where('id', '=', $val['id'])->update(['majorNum' => $count]); } } } /* * 院校logo地址查询 * */ public function getSchoolLogos(){ $result = Db::table('yzy_school')->field("sch_id,logo")->select(); return api_return('ok',$result); } /* * 新高考院校表同步is_yldx,is_ylxk * */ public function ylxkyldxToNewSch(){ set_time_limit(0); $count = Db::table('rec_zhejiang_schs')->count(); $num = 1000;//每次导入条数 $limit = ceil($count/$num); for($i=1;$i<=$limit;$i++) { $offet = ($i - 1) * $num; $result = Db::table('rec_zhejiang_schs')->field("id,collegeId")->limit($offet, $num)->select(); foreach ($result as $key => $val) { $resSch = Db::table('yzy_school')->field("is_yldx,is_ylxk")->where('sch_id', '=', $val['collegeId'])->find(); Db::table('rec_zhejiang_schs')->where([['id', '=', $val['id']], ['collegeId', '=', $val['collegeId']]])->update(['is_yldx' => $resSch['is_yldx'], 'is_ylxk' => $resSch['is_ylxk']]); } } } /* * 新高考專業表同步is_yldx,is_ylxk * */ public function ylxkyldxToNewSchMajor(){ ignore_user_abort(true); ini_set('max_execution_time', '0'); set_time_limit(0); $id = Cache::store('redis')->get('NewSchMajorID'); if(empty($id)){ $id = 3589199; } $count = Db::table('rec_zhejiang_majors')->where('id','>',$id)->count(); $num = 1000;//每次导入条数 $limit = ceil($count/$num); for($i=1;$i<=$limit;$i++) { $offet = ($i - 1) * $num; $result = Db::table('rec_zhejiang_majors')->field("id,collegeId")->where('id','>',$id)->limit($offet, $num)->select(); try { foreach ($result as $key => $val) { $resSch = Db::table('yzy_school')->field("is_yldx,is_ylxk")->where('sch_id', '=', $val['collegeId'])->find(); Db::table('rec_zhejiang_majors')->where([['id', '=', $val['id']], ['collegeId', '=', $val['collegeId']]])->update(['is_yldx' => $resSch['is_yldx'], 'is_ylxk' => $resSch['is_ylxk']]); Cache::store('redis')->set("NewSchMajorID",$val['id'],72000); } }catch (\Exception $exception){ \think\facade\Log::error($exception); } } } }