Files
brapi-java/docs/dev/01-core/04-location.md
2026-05-28 11:56:17 +08:00

4.1 KiB
Raw Blame History

01 Core - location 表录入说明

来源:docs/requirements/01-core-data-entry-requirements.md

录入目标

location 记录试验实施地点,可作为公共地点,也可绑定 program 和 crop。study 创建时必须选择实施地点。

前置依赖和下游引用

类型 内容
location
前置依赖 可选 cropprogram、父级 location、坐标
下游引用 studyseed_lot

页面入口

页面 录入要求
Location 列表页 支持 crop、program、location_type、country、关键词筛选新增、编辑、查看详情、停用、地图查看
Location 新增/编辑页 包含基本信息、行政区、坐标、父级地点
Location 详情页 展示该地点下的 study 和 seed lot

列表页支持地图/表格两种视图。列表页表格字段:location_name、location_type、country、program、crop、父级地点。

字段录入

字段 类型 控件 录入说明 校验/来源
id varchar(255) 隐藏/只读 地点主键 必填、唯一
auth_user_id varchar(255) 隐藏 数据所属用户 登录上下文自动写入
abbreviation varchar(255) 文本框 地点缩写 可选
coordinate_description varchar(255) 多行文本 坐标描述 可选
coordinate_uncertainty varchar(255) 文本框 坐标不确定性 可选
country_code varchar(255) 国家代码选择器 国家代码 可选,建议 ISO 代码
country_name varchar(255) 文本框 国家名称 可选,可由国家代码带出
documentationurl varchar(255) URL 输入框 地点文档链接 URL 格式校验
environment_type varchar(255) 下拉框/文本框 环境类型 可选
exposure varchar(255) 文本框 暴露条件 可选
institute_address varchar(255) 多行文本 机构地址 可选
institute_name varchar(255) 文本框 机构名称 可选
location_name varchar(255) 文本框 地点名称 必填
location_type varchar(255) 下拉框 地点类型,如 field、greenhouse、storage 可选
site_status varchar(255) 下拉框 地点状态 可选
slope varchar(255) 文本框 坡度 可选
topography varchar(255) 文本框 地形 可选
coordinates_id varchar(255) 坐标选择器/地图取点 坐标对象 可选,来源 geojson/coordinate
crop_id varchar(255) 作物选择器 关联作物 可选,来源 crop.id
parent_location_id varchar(255) 地点选择器 父级地点 可选,不能选择自己
program_id varchar(255) 项目选择器 所属项目 可选,来源 program.id

校验规则

  1. location_name 必填。
  2. 坐标字段格式合法。
  3. parent_location_id 不能选择自己。
  4. 选择 program 后可自动带出 crop但允许地点作为公共地点不绑定 program。
  5. documentationurl 需要做 URL 格式校验。

接口能力

接口 用途
GET /locations location 分页查询
POST /locations 新增 location
GET /locations/{id} location 详情
PUT /locations/{id} 编辑 location
GET /selectors/locations location 搜索下拉,参数 keywordprogramIdcropIdlocationType

导入导出

  1. 支持通过 Core 导入流程导入 location
  2. 导入时如果 parent_location_id 指向自己,应报错并指出行号。
  3. 外键列支持填写 ID可额外支持名称匹配但名称重复时必须报错。
  4. 列表页支持导出当前筛选结果,导出文件应包含 ID 和展示名称。

删除/停用

location 已被 studyseed_lot 引用时,不允许物理删除。后端需要返回引用对象类型和数量,前端展示后引导用户停用。

验收点

  1. Location 列表页支持表格视图和地图查看。
  2. 父级地点不能选择自己。
  3. Study 新增时 location 选择器可按 program/crop 过滤。