164 lines
5.5 KiB
Markdown
164 lines
5.5 KiB
Markdown
# 学校模块接口与字段说明(给前端)
|
||
|
||
## 1. 数据字段一览
|
||
|
||
### 1.1 school(art_school)
|
||
用于学校基础信息展示与编辑。
|
||
- `school_id` 学校主键ID
|
||
- `main_code` 学校编码(国标代码)
|
||
- `main_name` 官方全称
|
||
- `short_name` 简称
|
||
- `province` 省份
|
||
- `city` 城市
|
||
- `district` 区县
|
||
- `university_type` 院校类型(综合/工科/艺术/财经等)
|
||
- `education_level` 学历层次(本科/专科)
|
||
- `school_nature` 办学性质(公办/民办/中外合作)
|
||
- `supervisor_dept` 主管部门
|
||
- `remark` 备注
|
||
|
||
### 1.2 school_detail(art_school_detail)
|
||
用于学校详情展示与编辑(JSONB 字段不直接返回)。
|
||
|
||
基础展示字段:
|
||
- `detail_id` 详情主键ID
|
||
- `school_id` 学校ID
|
||
- `introduction` 学校介绍(富文本)
|
||
- `school_icon` 校徽
|
||
- `back_ground` 背景图
|
||
- `address` 地址
|
||
- `contact` 联系方式
|
||
- `email` 邮箱
|
||
- `website` 官网
|
||
- `postcode` 邮编
|
||
- `establish_year` 建校年份
|
||
- `campus_area_mu` 占地面积(亩)
|
||
- `library_collection` 图书馆藏书量
|
||
- `male_ratio` 男生比例
|
||
- `female_ratio` 女生比例
|
||
- `is_985` 是否985
|
||
- `is_211` 是否211
|
||
- `is_double_first_class` 是否双一流
|
||
- `is_key_university` 是否省重点
|
||
- `is_public` 是否公办
|
||
- `tags` 学校标签数组
|
||
- `student_count` 在校学生数
|
||
- `teacher_count` 教职工人数
|
||
- `master_point` 硕士点数量
|
||
- `doctor_point` 博士点数量
|
||
- `key_major_count` 国家级重点专业数
|
||
- `employment_rate` 就业率
|
||
- `satisfaction_rate` 院校满意度
|
||
- `univ_id` 外部院校ID
|
||
- `master_proportion_rate` 考研率
|
||
- `abroad_proportion_rate` 出国率
|
||
- `has_regular` 是否有普通本科
|
||
- `has_junior` 是否有专科
|
||
- `has_master` 是否有硕士点
|
||
- `is_double_high_plan` 是否双高计划
|
||
- `is_strong_plan` 是否强基计划
|
||
- `twsdl_rank` 泰晤士中国排名
|
||
- `xyh_rank` 校友会排名
|
||
- `wsl_rank` 武书连排名
|
||
- `usdalu_rank` US中国排名
|
||
- `qsdalu_rank` QS排名
|
||
- `combined_score` 综合评分
|
||
- `overall_rank` 综合排名
|
||
- `env_satisfaction` 环境满意度
|
||
- `env_vote` 环境满意度投票数
|
||
- `live_satisfaction` 生活满意度
|
||
- `live_vote` 生活满意度投票数
|
||
- `combined_satisfaction` 综合满意度(原始分)
|
||
- `combined_vote` 综合满意度投票数
|
||
- `teachers` 师资力量描述
|
||
- `scholarship` 奖学金说明
|
||
- `grant_desc` 助学金说明
|
||
- `canteen` 食堂说明
|
||
- `dormitory` 宿舍说明
|
||
- `master_explain` 硕士点说明
|
||
- `doctor_explain` 博士点说明
|
||
|
||
隐藏字段(仅通过单独接口获取):
|
||
- `satisfaction_json` 满意度明细(JSONB)
|
||
- `scholarship_json` 奖学金数组(JSONB)
|
||
- `special_major_json` 特色专业(JSONB)
|
||
- `employment_report_json` 就业报告(JSONB)
|
||
- `photo_json` 图片(JSONB)
|
||
- `accommodation_json` 建筑/配套(JSONB)
|
||
- `subject_reviews_json` 学科评估(JSONB)
|
||
- `research_json` 科研信息(JSONB)
|
||
- `univ_majors_json` 专业标签(JSONB)
|
||
- `univ_postgraduate_json` 保研信息(JSONB)
|
||
|
||
## 2. 接口说明
|
||
|
||
### 2.1 基础信息接口(已存在)
|
||
- 学校列表:`GET /art/school/list`
|
||
- 学校详情:`GET /art/school/{schoolId}`
|
||
- 新增学校:`POST /art/school`
|
||
- 修改学校:`PUT /art/school`
|
||
|
||
- 详情列表:`GET /art/schoolDetail/list`
|
||
- 详情详情:`GET /art/schoolDetail/{detailId}`
|
||
- 新增详情:`POST /art/schoolDetail`
|
||
- 修改详情:`PUT /art/schoolDetail`
|
||
|
||
说明:上述 school_detail 的返回默认不包含 JSONB 隐藏字段。
|
||
|
||
### 2.2 JSONB 单独接口(需新增)
|
||
以下接口用于前端按需加载/编辑 JSONB 字段:
|
||
|
||
1. 满意度明细
|
||
- `GET /art/schoolDetail/json/satisfaction?schoolId=`
|
||
- `PUT /art/schoolDetail/json/satisfaction`
|
||
- 请求体:`{ "schoolId": 1, "satisfactionJson": {...} }`
|
||
|
||
2. 奖学金数组
|
||
- `GET /art/schoolDetail/json/scholarship?schoolId=`
|
||
- `PUT /art/schoolDetail/json/scholarship`
|
||
- 请求体:`{ "schoolId": 1, "scholarshipJson": [...] }`
|
||
|
||
3. 特色专业
|
||
- `GET /art/schoolDetail/json/specialMajor?schoolId=`
|
||
- `PUT /art/schoolDetail/json/specialMajor`
|
||
- 请求体:`{ "schoolId": 1, "specialMajorJson": [...] }`
|
||
|
||
4. 就业报告
|
||
- `GET /art/schoolDetail/json/employmentReport?schoolId=`
|
||
- `PUT /art/schoolDetail/json/employmentReport`
|
||
- 请求体:`{ "schoolId": 1, "employmentReportJson": [...] }`
|
||
|
||
5. 学校图片
|
||
- `GET /art/schoolDetail/json/photo?schoolId=`
|
||
- `PUT /art/schoolDetail/json/photo`
|
||
- 请求体:`{ "schoolId": 1, "photoJson": {...} }`
|
||
|
||
6. 建筑/配套
|
||
- `GET /art/schoolDetail/json/accommodation?schoolId=`
|
||
- `PUT /art/schoolDetail/json/accommodation`
|
||
- 请求体:`{ "schoolId": 1, "accommodationJson": [...] }`
|
||
|
||
7. 学科评估
|
||
- `GET /art/schoolDetail/json/subjectReviews?schoolId=`
|
||
- `PUT /art/schoolDetail/json/subjectReviews`
|
||
- 请求体:`{ "schoolId": 1, "subjectReviewsJson": [...] }`
|
||
|
||
8. 科研信息
|
||
- `GET /art/schoolDetail/json/research?schoolId=`
|
||
- `PUT /art/schoolDetail/json/research`
|
||
- 请求体:`{ "schoolId": 1, "researchJson": {...} }`
|
||
|
||
9. 专业标签
|
||
- `GET /art/schoolDetail/json/univMajors?schoolId=`
|
||
- `PUT /art/schoolDetail/json/univMajors`
|
||
- 请求体:`{ "schoolId": 1, "univMajorsJson": [...] }`
|
||
|
||
10. 保研信息
|
||
- `GET /art/schoolDetail/json/univPostgraduate?schoolId=`
|
||
- `PUT /art/schoolDetail/json/univPostgraduate`
|
||
- 请求体:`{ "schoolId": 1, "univPostgraduateJson": [...] }`
|
||
|
||
## 3. 前端展示建议
|
||
- 详情主页面展示“基础字段 + 文本说明字段”即可。
|
||
- JSONB 字段按需加载,独立页/弹窗编辑更清晰。
|