Files
CompanyProject/芳林公司项目/www.zhiyuanhelp.com/application/api/model/NewMajor.php
2024-09-27 01:32:49 +08:00

103 lines
3.3 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2020/4/30
* Time: 0:28
*/
namespace app\api\model;
use think\Db;
use think\Model;
class NewMajor extends Model
{
/*
* 新高考向本省招收的专业学校
* */
public static function getNewMajorSch($array,$user_id,$page = 1, $limit = 10){
$where = [];
//搜索条件
unset($array['page']);
unset($array['type']);
unset($array['reType']);
unset($array['userPro']);
foreach ($array as $key => $value) {
if (!empty($value)) {
switch ($key) {
case 'code':
$where[] = ['majorCode', '=', ($value)];
break;
case 'score':
$where[] = ['myscore', '=', $value];
break;
case 'mySub':
$where[] = ['mykemu', '=', $value];
$val = preg_split('//', $value, -1, PREG_SPLIT_NO_EMPTY);
$where[] = ['chooseNums', 'in', ($val[0].','.$val[1].','.$val[2].','.$val[0].$val[1].','.$val[0].$val[2].','.$val[1].$val[2].','.$val[0].$val[1].$val[2].',999')];
break;
}
}
}
//计算总数
$count = Db::table('rec_zhejiang_majors')
->where($where)
->count();
//查询数据
$result = Db::table('rec_zhejiang_majors')
->field('collegeName,probability,rankOfCn,professionCode,is985,is211,issyl,provinceName,estimatedRanking,minScore,collegeId,id,batch,planNum,chooseCns,classify,professionName,majorCode')
->where($where)
->page($page, $limit)
->select();
empty($result) ? $msg = '暂无数据!' : $msg = '查询成功!';
//查询用户收藏的专业
$resCollect = [];
if($user_id){
$resCollect = CollectNewMajor::getUserNewMajor($user_id);
}
//查询位次和院校排名
foreach ($result as $key =>$val) {
$result[$key]['tags'] = $val['provinceName']." ".$val['classify'];
//判断211,985双一流是否是1
if($val['is985'])
$result[$key]['tags'] = $result[$key]['tags']." "."985";
if($val['is211'])
$result[$key]['tags'] = $result[$key]['tags']." "."211";
if($val['issyl'])
$result[$key]['tags'] = $result[$key]['tags']." "."双一流";
//收藏赋值
$result[$key]['is_collect'] = 0;
if(is_array($resCollect)){
if(in_array($val['id']."_".$val['majorCode']."_".$val['professionCode'],$resCollect)){
$result[$key]['is_collect'] = 1;
}
}
$result[$key]['lowestRank'] = $result[$key]['estimatedRanking'];
}
//分页数据
$info = [
'limit' => $limit,
'page_current' => $page,
'page_sum' => ceil($count / $limit),
];
//组合返回
$list = [
'msg' => $msg,
'count' => $count,
'info' => $info,
'res' => $result
];
return $list;
}
}