148 lines
3.7 KiB
Markdown
148 lines
3.7 KiB
Markdown
|
|
# API 文档 - 描述标签页
|
|||
|
|
|
|||
|
|
## 元数据
|
|||
|
|
- 需求编号:001
|
|||
|
|
- 子需求编号:001-01
|
|||
|
|
- 接口编号:005
|
|||
|
|
- 创建时间:2026-02-02
|
|||
|
|
- 创建人:AI Assistant
|
|||
|
|
- 状态:已完成
|
|||
|
|
|
|||
|
|
## 接口概述
|
|||
|
|
获取 Salesforce 中的所有标签页信息。
|
|||
|
|
|
|||
|
|
## 基本信息
|
|||
|
|
|
|||
|
|
- **功能描述**:获取 Salesforce 中的所有标签页信息
|
|||
|
|
- **请求方式**:GET
|
|||
|
|
- **请求路径**:`/partner/describe/tabs`
|
|||
|
|
- **权限要求**:`@PreAuthorize("@ss.hasPermi('partner:describe:tabs')")`
|
|||
|
|
|
|||
|
|
## 请求参数
|
|||
|
|
|
|||
|
|
无
|
|||
|
|
|
|||
|
|
## 响应参数
|
|||
|
|
|
|||
|
|
| 参数名 | 类型 | 说明 |
|
|||
|
|
|--------|------|------|
|
|||
|
|
| code | Integer | 状态码(200 成功,其他失败) |
|
|||
|
|
| msg | String | 提示信息 |
|
|||
|
|
| data | Object | 响应数据 |
|
|||
|
|
| data.tabs | Array | 标签页描述列表 |
|
|||
|
|
| data.tabs[].id | String | 标签页 ID |
|
|||
|
|
| data.tabs[].label | String | 标签页标签 |
|
|||
|
|
| data.tabs[].name | String | 标签页名称 |
|
|||
|
|
| data.tabs[].sobjectName | String | 关联的对象名称 |
|
|||
|
|
| data.tabs[].url | String | 标签页 URL |
|
|||
|
|
| data.tabs[].iconUrl | String | 图标 URL |
|
|||
|
|
| data.tabs[].custom | Boolean | 是否为自定义标签页 |
|
|||
|
|
| data.tabs[].visible | Boolean | 是否可见 |
|
|||
|
|
| data.success | Boolean | 是否成功 |
|
|||
|
|
| data.errors | Array | 错误信息列表 |
|
|||
|
|
|
|||
|
|
### 成功响应示例
|
|||
|
|
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"code": 200,
|
|||
|
|
"msg": "操作成功",
|
|||
|
|
"data": {
|
|||
|
|
"tabs": [
|
|||
|
|
{
|
|||
|
|
"id": "01rxx0000000001AAA",
|
|||
|
|
"label": "Home",
|
|||
|
|
"name": "home",
|
|||
|
|
"sobjectName": null,
|
|||
|
|
"url": "/home/home.jsp",
|
|||
|
|
"iconUrl": "/img/icon/home16.png",
|
|||
|
|
"custom": false,
|
|||
|
|
"visible": true
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"id": "01rxx0000000002AAA",
|
|||
|
|
"label": "Accounts",
|
|||
|
|
"name": "Account",
|
|||
|
|
"sobjectName": "Account",
|
|||
|
|
"url": "/001",
|
|||
|
|
"iconUrl": "/img/icon/account16.png",
|
|||
|
|
"custom": false,
|
|||
|
|
"visible": true
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"id": "01rxx0000000003AAA",
|
|||
|
|
"label": "Contacts",
|
|||
|
|
"name": "Contact",
|
|||
|
|
"sobjectName": "Contact",
|
|||
|
|
"url": "/003",
|
|||
|
|
"iconUrl": "/img/icon/contact16.png",
|
|||
|
|
"custom": false,
|
|||
|
|
"visible": true
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"id": "01rxx0000000004AAA",
|
|||
|
|
"label": "Opportunities",
|
|||
|
|
"name": "Opportunity",
|
|||
|
|
"sobjectName": "Opportunity",
|
|||
|
|
"url": "/006",
|
|||
|
|
"iconUrl": "/img/icon/opportunity16.png",
|
|||
|
|
"custom": false,
|
|||
|
|
"visible": true
|
|||
|
|
}
|
|||
|
|
],
|
|||
|
|
"success": true,
|
|||
|
|
"errors": null
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 失败响应示例
|
|||
|
|
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"code": 500,
|
|||
|
|
"msg": "描述标签页失败",
|
|||
|
|
"data": {
|
|||
|
|
"tabs": null,
|
|||
|
|
"success": false,
|
|||
|
|
"errors": [
|
|||
|
|
{
|
|||
|
|
"statusCode": "UNKNOWN_EXCEPTION",
|
|||
|
|
"message": "Failed to retrieve tab descriptions"
|
|||
|
|
}
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 错误码
|
|||
|
|
|
|||
|
|
| 错误码 | 说明 | 处理建议 |
|
|||
|
|
|--------|------|----------|
|
|||
|
|
| 200 | 操作成功 | - |
|
|||
|
|
| 401 | 未登录或登录已过期 | 请重新登录 |
|
|||
|
|
| 403 | 无权限访问 | 请检查用户权限 |
|
|||
|
|
| 500 | 服务器内部错误 | 请联系管理员或稍后重试 |
|
|||
|
|
|
|||
|
|
## 注意事项
|
|||
|
|
|
|||
|
|
1. 返回的标签页列表包含当前用户有权限访问的所有标签页
|
|||
|
|
2. 自定义标签页的 custom 字段为 true
|
|||
|
|
3. visible 字段表示标签页是否对用户可见
|
|||
|
|
4. sobjectName 为 null 表示标签页不是对象标签页
|
|||
|
|
5. 某些标签页可能因为权限限制不可访问
|
|||
|
|
6. 标签页列表可能很大,建议缓存结果
|
|||
|
|
|
|||
|
|
## 使用场景
|
|||
|
|
|
|||
|
|
- 获取所有可用标签页
|
|||
|
|
- 动态生成导航菜单
|
|||
|
|
- 验证标签页是否存在
|
|||
|
|
- 构建自定义导航
|
|||
|
|
- 权限检查和验证
|
|||
|
|
|
|||
|
|
## 相关文档
|
|||
|
|
- [需求文档](../../requirements/2026-01-28-001-PartnerAPI源org实现.md)
|
|||
|
|
- [设计文档](../../design/2026-01-29-001-01-认证和会话管理-设计.md)
|
|||
|
|
- [决策记录](../../decisions/2026-01-29-001-01-ADR-认证和会话管理技术选型.md)
|