wz-management-backend/docs/art_school_api_for_frontend.md

5.5 KiB
Raw Permalink Blame History

学校模块接口与字段说明(给前端)

1. 数据字段一览

1.1 schoolart_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_detailart_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 字段按需加载,独立页/弹窗编辑更清晰。