跳到主要内容

获取菜单数据列表接口

接口

HttpPost:api/FrontEnd/GetListData

根据指定用户和菜单编码查询业务数据列表。接口会先校验请求用户与登录令牌用户一致、用户是否有该菜单访问权限,再按平台原有数据范围权限过滤数据。

请求参数

参数名参数位置类型是否必填说明
AuthorizationHeaderstring调用者身份凭据,传入已获取的 token。
UserIdHeaderstring调用者用户 ID。必须与请求体中的 UserId 及令牌解析出的当前用户一致。
TnCodeHeaderstring租户编码。
UserIdBodystring要按其权限查询数据的用户 ID。仅允许查询当前登录用户。
MenuIdBodystring功能菜单编码,即列表的 AppItemCode
ReturnColumnsBodystring[]返回字段的业务数据表字段名,例如 ObjectIDCreatedTimeTitle。不传或传空数组时,返回该列表配置中全部可查询字段。
SearchConditionBodyarray筛选条件集合。多个条件通过每个条件的 QueryType 组合。
PageIndexBodyint页码,从 1 开始;不传时默认 1
PageSizeBodyint每页条数,必须大于 0;不传时默认 20
IncludeButtonsBodyboolean是否返回按当前用户权限过滤后的每行按钮;默认 false

SearchCondition 条件对象

参数名类型是否必填说明
ComponentKeystring字段组件类型;普通文本字段可传 Text
Namestring要筛选的业务数据表字段名。
Operationstring比较操作,例如:EqualNotEqualContainAboveNotBelowBelowNotAboveIsNoneNotNone
ValueTypestring值类型,通常传 Custom
Valuestring用于比较的字段值;空值判断操作可不传。
QueryTypestring与下一条件的逻辑关系:AndOr;默认 And

请求示例

指定返回字段并查询

{
"UserId": "18f923a7-5a5e-426d-94ae-a55ad1a4b239",
"MenuId": "46b97a76f61338bd",
"ReturnColumns": [
"ObjectID",
"Title",
"CreatedTime"
],
"PageIndex": 1,
"PageSize": 20,
"IncludeButtons": true,
"SearchCondition": [
{
"ComponentKey": "Text",
"Name": "Title",
"Operation": "Contain",
"ValueType": "Custom",
"Value": "篮球",
"QueryType": "And"
}
]
}

返回全部字段

{
"UserId": "18f923a7-5a5e-426d-94ae-a55ad1a4b239",
"MenuId": "46b97a76f61338bd"
}

返回结果

参数名类型说明
Codeint业务状态码;200 表示成功。
Messagestring错误信息;成功时为空字符串。
Resultobject列表查询结果。
Result.AppItemCodestring菜单编码。
Result.AppItemNamestring菜单名称。
Result.Datasarray数据行集合;每一行的键为业务数据表字段名。
Result.PagingInfoobject分页信息,包含 PageIndexPageSizePageCountDataCount
Result.RowButtonsobjectIncludeButtons=true 时返回。以数据行 ObjectID 为键、行按钮编码数组为值;按钮已按当前用户权限和移动端类型过滤。
Result.RowButtonDefinitionsarrayIncludeButtons=true 时返回。行按钮定义目录,使用 BtnCodeRowButtons 中的编码对应,包含标题、图标、功能类型和关联配置。
Statusint业务状态:1 表示成功,3 表示服务端错误。

返回示例(成功)

{
"Code": 200,
"Message": "",
"ExceptionSeqNo": null,
"Result": {
"AppItemCode": "46b97a76f61338bd",
"AppItemName": "示例表单",
"Datas": [
{
"ObjectID": "205e4ed8-db1f-40c7-9e2d-bf656d53c2cd",
"Title": "篮球活动",
"CreatedTime": "2026-08-07 10:30:00"
}
],
"PagingInfo": {
"PageIndex": 1,
"PageSize": 20,
"PageCount": 1,
"DataCount": 1
},
"RowButtons": {
"205e4ed8-db1f-40c7-9e2d-bf656d53c2cd": ["07", "00"]
},
"RowButtonDefinitions": [
{
"Title": "查看",
"BtnCode": "07",
"Icon": "View_div_icon",
"FunctionType": "View",
"ViewType": "MobileShow"
},
{
"Title": "编辑",
"BtnCode": "00",
"Icon": "Edit_div_icon",
"FunctionType": "Edit",
"ViewType": "MobileShow"
}
]
},
"Status": 1,
"MessageShowType": null
}

返回示例(失败)

{
"Code": 500,
"Message": "当前用户无权访问该菜单",
"ExceptionSeqNo": null,
"Result": null,
"Status": 3,
"MessageShowType": null
}

调用说明

  • UserId 必须与 Authorization 令牌解析出的当前用户一致,否则返回:只能查询当前登录用户的数据

  • 用户没有目标菜单的访问权限时,返回:当前用户无权访问该菜单

  • ReturnColumnsSearchCondition.Name 均使用业务数据表字段名,不使用页面显示名称。

  • 当前接口复用平台列表查询服务,数据范围、逻辑删除、工作流及列表配置规则与平台原列表查询保持一致。

  • PageIndexPageSize 均须大于 0;仅传其中一项时,另一项使用默认值。

  • 未传分页参数时,普通列表默认返回第 1 页、每页 20 条;文件列表和树列表遵循平台原有列表行为。

  • IncludeButtons=true 时返回每行 ObjectID 对应的按钮编码。当前覆盖平台标准行按钮:00 编辑、02 删除、07 查看,并按移动端展示类型及当前用户按钮权限过滤;不返回未授权按钮。

  • 使用 RowButtonDefinitions 建立按钮目录:以 BtnCode 为键读取 TitleIconFunctionTypeRelObject 等配置,再根据当前行 RowButtons[ObjectID] 决定是否显示。

  • 工作流状态、按钮显示条件和自定义行按钮可能还需要结合具体列表场景处理;客户端不得仅凭按钮编码绕过服务端权限校验。

  • 按钮仅用于界面展示,执行按钮时仍必须调用对应服务端接口,由服务端再次校验权限。

  • UserId 必须与 Authorization 令牌解析出的当前用户一致,否则返回:只能查询当前登录用户的数据

  • 用户没有目标菜单的访问权限时,返回:当前用户无权访问该菜单

  • ReturnColumnsSearchCondition.Name 均使用业务数据表字段名,不使用页面显示名称。

  • 当前接口复用平台列表查询服务,数据范围、逻辑删除、工作流及列表配置规则与平台原列表查询保持一致。

  • PageIndexPageSize 均须大于 0;仅传其中一项时,另一项使用默认值。

  • 未传分页参数时,普通列表默认返回第 1 页、每页 20 条;文件列表和树列表遵循平台原有列表行为