|
@@ -14,6 +14,7 @@ namespace app\api\model;
|
|
|
use app\common\library\helper;
|
|
use app\common\library\helper;
|
|
|
use app\common\model\Region;
|
|
use app\common\model\Region;
|
|
|
use app\common\model\School as SchoolModel;
|
|
use app\common\model\School as SchoolModel;
|
|
|
|
|
+use think\facade\Db;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 学校模型类
|
|
* 学校模型类
|
|
@@ -191,5 +192,45 @@ class School extends SchoolModel
|
|
|
return $model->userSchool($userId, $field??'id, school_name');
|
|
return $model->userSchool($userId, $field??'id, school_name');
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 获取对比学校数据
|
|
|
|
|
+ * @param $ids
|
|
|
|
|
+ * @param int $listRows
|
|
|
|
|
+ * @return array
|
|
|
|
|
+ * @throws \think\db\exception\DataNotFoundException
|
|
|
|
|
+ * @throws \think\db\exception\DbException
|
|
|
|
|
+ * @throws \think\db\exception\ModelNotFoundException
|
|
|
|
|
+ */
|
|
|
|
|
+ public function getComparisonList($ids, $listRows = 3)
|
|
|
|
|
+ {
|
|
|
|
|
+ $list = self::whereIn('id',$ids)
|
|
|
|
|
+ ->where(['audit_status'=> 1])
|
|
|
|
|
+ ->field('school_name,logo,stablish_time,property,education_levels,type,level,area,students,city_id,region_id,views,labels')
|
|
|
|
|
+ ->limit($listRows)
|
|
|
|
|
+ ->order(Db::raw("field(id,".implode(',', $ids).")"))
|
|
|
|
|
+ ->select();
|
|
|
|
|
|
|
|
|
|
+ $datas = [];
|
|
|
|
|
+ $list = $list? $list->toArray() : [];
|
|
|
|
|
+ if($list){
|
|
|
|
|
+ foreach ($list as $v){
|
|
|
|
|
+ $datas['school_name'][] = $v['school_name'];
|
|
|
|
|
+ $datas['logo'][] = $v['logo']? getPreview($v['logo']) : '';
|
|
|
|
|
+ $datas['stablish_time'][] = $v['stablish_time'];
|
|
|
|
|
+ $datas['property'][] = $v['property'];
|
|
|
|
|
+ $datas['type'][] = $v['type'];
|
|
|
|
|
+ $datas['education_levels'][] = $v['education_levels']? ($v['education_levels']==1? '中职':'高职'):'';
|
|
|
|
|
+ $datas['level'][] = $v['level'];
|
|
|
|
|
+ $datas['area'][] = $v['area'];
|
|
|
|
|
+ $datas['students'][] = $v['students'];
|
|
|
|
|
+ $cityName = $v['city_id']? Region::getNameById($v['city_id']) : '';
|
|
|
|
|
+ $regionName = $v['region_id']? Region::getNameById($v['region_id']) : '';
|
|
|
|
|
+ $datas['address'][] = "{$cityName}{$regionName}";
|
|
|
|
|
+ $datas['views'][] = $v['views']? ($v['views']<10000? "{$v['views']}" : round($v['views']/10000,1).'w') :'';
|
|
|
|
|
+ $datas['labels'][] = $v['labels']? str_replace(',','、', $v['labels']) : '';
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ return $datas;
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|