超腾开源平台工作模块

2026-01-07 超腾开源 36 次阅读 0 次点赞
本文档详细介绍了工作模块的API接口,该模块主要提供消息通知和工作计划管理两大核心功能。消息通知部分支持通知的创建、查询详情与列表、分页获取、标记已读(支持单条与批量操作)、更新、删除以及数量统计。工作计划部分则支持计划的创建、查询详情与列表、分页获取、更新、删除、状态更新以及按类型筛选。文档明确了各接口的请求地址、参数、认证要求和响应格式,并提供了Python和JavaScript的调用示例。此外,还列出了相关的枚举类型定义、使用注意事项和权限控制说明。

工作模块提供消息通知和工作计划管理功能,支持通知的创建、标记已读、批量操作,以及工作计划的创建、状态更新等功能。

目录


消息通知

消息通知模块提供通知的创建、查询、标记已读等功能。

获取通知详情

接口地址: GET /api/work/notifications/detail

需要认证: 是

请求参数:

参数 类型 必填 说明
id int 通知 ID

响应示例:

{
  "success": true,
  "code": 200,
  "msg": "操作成功",
  "data": {
    "id": 1,
    "title": "系统通知",
    "content": "这是一条系统通知",
    "type": "system",
    "user_id": "1",
    "sender_id": "0",
    "is_read": false,
    "status": "active",
    "priority": "normal",
    "read_time": null,
    "create_time": "2026-01-01T00:00:00Z"
  }
}

获取通知列表

获取通知列表,支持多条件筛选。

接口地址: GET /api/work/notifications/list

需要认证: 是

请求参数:

参数 类型 必填 说明
title string 通知标题
type string 通知类型(system/message/task)
user_id string 接收用户 ID
sender_id string 发送者 ID
is_read boolean 是否已读
status string 状态
priority string 优先级(high/normal/low)
order string 排序字段

响应示例:

{
  "success": true,
  "code": 200,
  "msg": "操作成功",
  "data": [
    {
      "id": 1,
      "title": "系统通知",
      "content": "这是一条系统通知",
      "type": "system",
      "is_read": false
    }
  ]
}

获取通知分页

获取通知分页数据。

接口地址: GET /api/work/notifications/page

需要认证: 是

请求参数:

参数 类型 必填 说明 默认值
page int 页码 1
page_size int 每页条数 10
title string 通知标题 -
type string 通知类型 -
user_id string 接收用户 ID -
sender_id string 发送者 ID -
is_read boolean 是否已读 -
status string 状态 -
priority string 优先级 -
order string 排序字段 -

响应示例:

{
  "success": true,
  "code": 200,
  "msg": "操作成功",
  "data": {
    "total": 100,
    "size": 10,
    "pages": 10,
    "current": 1,
    "records": [
      {
        "id": 1,
        "title": "系统通知",
        "type": "system"
      }
    ],
    "orders": []
  }
}

创建通知

创建新的通知。

接口地址: POST /api/work/notifications/create

需要认证: 是

请求体:

{
  "title": "任务通知",
  "content": "您有一个新任务需要处理",
  "type": "task",
  "user_id": "1",
  "sender_id": "2",
  "priority": "high"
}

请求字段说明:

字段 类型 必填 说明
title string 通知标题
content string 通知内容
type string 通知类型(system/message/task)
user_id string 接收用户 ID
sender_id string 发送者 ID
priority string 优先级(high/normal/low)

响应示例:

{
  "success": true,
  "code": 200,
  "msg": "创建成功",
  "data": {
    "id": 1,
    "title": "任务通知",
    "content": "您有一个新任务需要处理",
    "type": "task",
    "is_read": false,
    "create_time": "2026-01-01T00:00:00Z"
  }
}

更新通知

更新通知信息。

接口地址: POST /api/work/notifications/update

需要认证: 是

请求体: 同创建通知,需包含 id 字段。

删除通知

删除通知。

接口地址: POST /api/work/notifications/delete

需要认证: 是

请求参数:

参数 类型 必填 说明
id int 通知 ID

标记通知为已读

将指定通知标记为已读。

接口地址: POST /api/work/notifications/mark-read

需要认证: 是

请求参数:

参数 类型 必填 说明
id int 通知 ID

响应示例:

{
  "success": true,
  "code": 200,
  "msg": "标记成功",
  "data": {
    "id": 1,
    "title": "任务通知",
    "is_read": true,
    "read_time": "2026-01-01T00:00:00Z"
  }
}

批量标记通知为已读

批量将多个通知标记为已读。

接口地址: POST /api/work/notifications/mark-batch-read

需要认证: 是

请求体:

{
  "ids": [1, 2, 3, 4, 5]
}

请求字段说明:

字段 类型 必填 说明
ids int[] 通知 ID 列表

响应示例:

{
  "success": true,
  "code": 200,
  "msg": "批量标记成功",
  "data": [
    {
      "id": 1,
      "is_read": true,
      "read_time": "2026-01-01T00:00:00Z"
    },
    {
      "id": 2,
      "is_read": true,
      "read_time": "2026-01-01T00:00:00Z"
    }
  ]
}

获取通知数量统计

获取当前用户的通知数量统计。

接口地址: GET /api/work/notifications/count

需要认证: 是

响应示例:

{
  "success": true,
  "code": 200,
  "msg": "操作成功",
  "data": {
    "total": 100,
    "unread": 20,
    "system": 30,
    "message": 40,
    "task": 30,
    "high_priority": 5
  }
}

工作计划

工作计划模块提供计划的创建、更新、状态管理等功能。

获取工作计划详情

接口地址: GET /api/work/work-plans/detail

需要认证: 是

请求参数:

参数 类型 必填 说明
id int 计划 ID

响应示例:

{
  "success": true,
  "code": 200,
  "msg": "操作成功",
  "data": {
    "id": 1,
    "name": "Q1开发计划",
    "description": "第一季度开发工作计划",
    "plan_type": "quarterly",
    "status": "in_progress",
    "creator_id": "1",
    "start_date": "2026-01-01",
    "end_date": "2026-03-31",
    "progress": 60,
    "create_time": "2026-01-01T00:00:00Z",
    "update_time": "2026-01-15T00:00:00Z"
  }
}

获取工作计划列表

获取工作计划列表,支持多条件筛选。

接口地址: GET /api/work/work-plans/list

需要认证: 是

请求参数:

参数 类型 必填 说明
name string 计划名称
plan_type string 计划类型(daily/weekly/monthly/quarterly/yearly)
status string 计划状态(draft/in_progress/completed/cancelled)
creator_id string 创建人 ID
start_date datetime 开始日期
end_date datetime 结束日期
order string 排序字段

响应示例:

{
  "success": true,
  "code": 200,
  "msg": "操作成功",
  "data": [
    {
      "id": 1,
      "name": "Q1开发计划",
      "plan_type": "quarterly",
      "status": "in_progress",
      "progress": 60
    }
  ]
}

获取工作计划分页

获取工作计划分页数据。

接口地址: GET /api/work/work-plans/page

需要认证: 是

请求参数:

参数 类型 必填 说明 默认值
page int 页码 1
page_size int 每页条数 10
name string 计划名称 -
plan_type string 计划类型 -
status string 计划状态 -
creator_id string 创建人 ID -
start_date datetime 开始日期 -
end_date datetime 结束日期 -
order string 排序字段 -

创建工作计划

创建新的工作计划。

接口地址: POST /api/work/work-plans/create

需要认证: 是

请求体:

{
  "name": "Q2开发计划",
  "description": "第二季度开发工作计划",
  "plan_type": "quarterly",
  "start_date": "2026-04-01",
  "end_date": "2026-06-30"
}

请求字段说明:

字段 类型 必填 说明
name string 计划名称
description string 计划描述
plan_type string 计划类型(daily/weekly/monthly/quarterly/yearly)
start_date date 开始日期
end_date date 结束日期

响应示例:

{
  "success": true,
  "code": 200,
  "msg": "创建成功",
  "data": {
    "id": 2,
    "name": "Q2开发计划",
    "plan_type": "quarterly",
    "status": "draft",
    "progress": 0,
    "create_time": "2026-01-01T00:00:00Z"
  }
}

更新工作计划

更新工作计划信息。

接口地址: POST /api/work/work-plans/update

需要认证: 是

请求体: 同创建工作计划,需包含 id 字段。

删除工作计划

删除工作计划。

接口地址: POST /api/work/work-plans/delete

需要认证: 是

请求参数:

参数 类型 必填 说明
id int 计划 ID

更新计划状态

更新工作计划的状态。

接口地址: POST /api/work/work-plans/update-status

需要认证: 是

请求体:

{
  "id": 1,
  "status": "completed"
}

请求字段说明:

字段 类型 必填 说明
id int 计划 ID
status string 计划状态(draft/in_progress/completed/cancelled)

响应示例:

{
  "success": true,
  "code": 200,
  "msg": "状态更新成功",
  "data": {
    "id": 1,
    "name": "Q1开发计划",
    "status": "completed",
    "progress": 100,
    "update_time": "2026-01-01T00:00:00Z"
  }
}

根据类型获取计划列表

根据计划类型获取计划列表。

接口地址: GET /api/work/work-plans/by-type/{plan_type}

需要认证: 是

路径参数:

参数 类型 必填 说明
plan_type string 计划类型(daily/weekly/monthly/quarterly/yearly)

请求参数:

参数 类型 必填 说明
status string 计划状态
creator_id string 创建人 ID

响应示例:

{
  "success": true,
  "code": 200,
  "msg": "操作成功",
  "data": [
    {
      "id": 1,
      "name": "Q1开发计划",
      "plan_type": "quarterly",
      "status": "in_progress",
      "progress": 60
    },
    {
      "id": 2,
      "name": "Q2开发计划",
      "plan_type": "quarterly",
      "status": "draft",
      "progress": 0
    }
  ]
}

枚举类型说明

通知类型 (NotificationType)

说明
system 系统通知
message 消息通知
task 任务通知

通知状态 (NotificationStatus)

说明
active 激活
inactive 未激活
deleted 已删除

通知优先级 (NotificationPriority)

说明
high 高优先级
normal 普通优先级
low 低优先级

计划类型 (PlanType)

说明
daily 日计划
weekly 周计划
monthly 月计划
quarterly 季度计划
yearly 年计划

计划状态 (PlanStatus)

说明
draft 草稿
in_progress 进行中
completed 已完成
cancelled 已取消

使用示例

Python 示例

import requests

base_url = 'http://localhost:8000/api/work'
token = 'your_access_token'
headers = {'Authorization': f'Bearer {token}'}

# 获取通知列表
response = requests.get(
    f'{base_url}/notifications/list',
    headers=headers,
    params={'is_read': False}
)
print(response.json())

# 创建工作计划
response = requests.post(
    f'{base_url}/work-plans/create',
    headers=headers,
    json={
        'name': 'Q2开发计划',
        'plan_type': 'quarterly',
        'start_date': '2026-04-01',
        'end_date': '2026-06-30'
    }
)
print(response.json())

# 标记通知为已读
response = requests.post(
    f'{base_url}/notifications/mark-read',
    headers=headers,
    params={'id': 1}
)
print(response.json())

JavaScript 示例

// 获取通知列表
async function getNotifications(token) {
  const response = await fetch(
    "http://localhost:8000/api/work/notifications/list?is_read=false",
    {
      headers: { Authorization: `Bearer ${token}` },
    }
  );
  return await response.json();
}

// 创建工作计划
async function createWorkPlan(token, planData) {
  const response = await fetch(
    "http://localhost:8000/api/work/work-plans/create",
    {
      method: "POST",
      headers: {
        Authorization: `Bearer ${token}`,
        "Content-Type": "application/json",
      },
      body: JSON.stringify(planData),
    }
  );
  return await response.json();
}

// 批量标记通知为已读
async function markNotificationsAsRead(token, ids) {
  const response = await fetch(
    "http://localhost:8000/api/work/notifications/mark-batch-read",
    {
      method: "POST",
      headers: {
        Authorization: `Bearer ${token}`,
        "Content-Type": "application/json",
      },
      body: JSON.stringify({ ids }),
    }
  );
  return await response.json();
}

注意事项

  1. 权限控制: 通知只能被接收用户查看,工作计划只能被创建人或相关用户查看。
  2. 批量操作: 批量标记已读时,确保所有通知都属于当前用户。
  3. 计划状态更新: 计划状态从草稿到进行中、到完成的流转需要符合业务逻辑。
  4. 日期处理: 所有日期字段使用 ISO 8601 格式(YYYY-MM-DD)。
  5. 进度管理: 计划进度应手动或根据任务完成情况自动更新。

相关文档

本文由人工编写,AI优化,转载请注明原文地址: 超腾开源平台工作模块

评论 (0)

发表评论

昵称:加载中...

暂无评论,快来发表第一条评论吧!