西藏巴青项目

畜牧资源接口说明.md 7.2KB

畜牧资源 — 接口说明

数据视图:v_livestock_resource(DDL 见 sql/biz_v_livestock_resource.sql)。
后端包:com.ruoyi.web.modules.news;接口:BizAppLivestockResourceController
医疗资源类型编码与 biz_medical_resource.resource_type(资讯类别 parentCode=004categoryType=6);科技资源与 biz_tech_resource.resource_typecategoryType=7)一致。


1. 视图 v_livestock_resource

仅聚合 publish_status = 1(已发布) 记录,字段统一如下:

视图列 说明
id 源表主键(biz_medical_resource.idbiz_tech_resource.id
source_type 来源表:1 = 医疗资源,2 = 科技资源
title 资源名称
introduction 简介
type 资源类型编码(resource_type
cover_file_url 封面/主图访问 URL
content_file_url 视频/附件访问 URL(可为 null
publish_time 发布时间

唯一标识:列表项以 source_type + id 组合区分(两源表主键可能重复)。

1.1 数据来源(UNION)

来源表 source_type type 说明
biz_medical_resource 1 004002 专家团队
biz_tech_resource 2 004006 技术成果
biz_tech_resource 2 004008 视频课程
biz_tech_resource 2 004007 共享仪器

1.2 移动端 Tab 与 type

畜牧资源页 4 个 Tab 与类型编码一一对应:

Tab type
专家团队 004002
技术成果 004006
共享仪器 004007
视频课程 004008

2. 列表接口

2.1 请求

Method GET
URI /app/livestockResource/list
鉴权 移动端登录态(与 /app/* 其它接口一致)

Query 参数

参数 类型 必填 说明
type string 资源类型编码,须为 §1.2 中四种之一
title string 标题关键字,对 title 列模糊匹配
pageNum int 页码,默认 1;小于 1 时按 1 处理
pageSize int 每页条数,默认 10;小于 1 时按 10 处理;最大 50

示例:

GET /app/livestockResource/list?type=004006&pageNum=1&pageSize=10
GET /app/livestockResource/list?type=004008&title=养殖

2.2 响应

RuoYi 分页 TableDataInfocodemsgrows(当前页数据)、total(符合条件的总条数)。排序固定为 publish_time 降序。

rows[] 单条字段(驼峰)

字段 类型 说明
id long 源表主键
sourceType int 1 医疗 / 2 科技
title string 标题
introduction string 简介
type string 资源类型编码
coverFileUrl string 封面 URL,可空
contentFileUrl string 视频/附件 URL,可空
publishTime string 发布日期,yyyy-MM-dd

示例

{
  "code": 200,
  "msg": "查询成功",
  "total": 1,
  "rows": [
    {
      "id": 101,
      "sourceType": 2,
      "title": "高原牦牛繁育技术成果",
      "introduction": "成果简介示例",
      "type": "004006",
      "coverFileUrl": "/profile/upload/cover.png",
      "contentFileUrl": "/profile/upload/demo.mp4",
      "publishTime": "2026-05-10"
    }
  ]
}

2.3 业务校验

场景 结果
type 为空 「资源类型不能为空」
type 非视图涵盖的四种编码 「资源类型无效,请选择畜牧资源支持的类型」

校验实现:LivestockResourceTypeValidatorLivestockResourceRules004002004006004007004008)。


3. 详情接口

3.1 请求

Method GET
URI /app/livestockResource/{id}
鉴权 移动端登录态

路径 / Query 参数

参数 类型 必填 说明
id long 源表主键(与列表项 id 一致)
type int 来源表:1 = biz_medical_resource2 = biz_tech_resource(与列表项 sourceType 一致)

注意:详情接口的 type 表示来源表(1/2);列表接口的 type 表示资源类型编码(如 004006),二者含义不同。

示例:

GET /app/livestockResource/101?type=2
GET /app/livestockResource/11?type=1

3.2 响应

标准 AjaxResultcodemsgdata

type data 类型 说明
1 BizMedicalResource biz_medical_resource 全部字段(驼峰 JSON)
2 BizTechResource biz_tech_resource 全部字段(驼峰 JSON;不含 expertRating

仅返回 已发布publish_status=1)、未删除且纳入 v_livestock_resource 的资源:

  • 医疗:resource_type = 004002
  • 科技:resource_type ∈ {004006, 004007, 004008}

医疗实体含 consultModes / consultModesListserviceWeekdays / serviceWeekdaysList 等;科技实体含 serviceWeekdays / serviceWeekdaysList 等,字段定义见管理端「畜牧医疗资源」「畜牧科技资源」模块。

示例(type=2,节选)

{
  "code": 200,
  "msg": "操作成功",
  "data": {
    "id": 101,
    "resourceType": "004006",
    "resourceName": "高原牦牛繁育技术成果",
    "introduction": "成果简介示例",
    "coverFileUrl": "/profile/upload/cover.png",
    "videoFileUrl": "/profile/upload/demo.mp4",
    "publishStatus": 1,
    "publishTime": "2026-05-10 08:00:00"
  }
}

3.3 业务校验

场景 结果
type 为空 「来源类型不能为空」
type 非 1/2 「来源类型无效,请使用 1(医疗)或 2(科技)」
记录不存在 / 未发布 / 非视图范围 「该资源已下线或不存在」

4. 前端(小程序)对接要点

能力 说明
列表唯一键 优先 sourceType + '-' + id;虚拟列表 key-field="id" 使用合成键
列表缩略图 coverFileUrl
视频/附件 contentFileUrl(为空则不展示;专家团队 004002 视图侧 content_file_urlnull
分类筛选 请求参数 type = Tab 对应编码
分类名称展示 医疗:GET /category/informationCategory/children?parentCode=004&categoryType=6004001004004);科技:categoryType=7004005004008)取 name
分页 / 上拉加载 首屏 pageNum=1;加载更多时 pageNum++,当 rows.length < pageSize 或已加载条数 ≥ total 时无更多数据
详情跳转 GET /app/livestockResource/{id}?type={sourceType} 拉取源表全字段;列表项 sourceType+id 传参

页面参考:ruoyi-ui-app/package-a/livestock-resources/index.vue


5. 修订记录

日期 说明
2026-05-20 初版:GET /app/livestockResource/list;视图 v_livestock_resource 与四类 Tab
2026-06-09 视图新增 idsource_type;列表响应增加 idsourceType
2026-06-09 新增 GET /app/livestockResource/{id}?type=1\|2 详情,按源表返回全字段