超腾开源平台工作模块

2026-01-07 超腾开源 472 次阅读 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)

请 登录 后发表评论

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