DeepSeek-接口设计

1、前言

AI时代的到来,推动着各行各业的革新与重新洗牌,那么对软件开发行业来说,AI的出现也带来了全新的机遇与挑战,那些不会借助于AI工具提高开发效率的程序员终会给时代淘汰。

2、接口设计

用户管理系统 RESTful 接口文档(完整版)


1. 用户管理接口

1.1 用户分页查询

GET /api/users
请求参数

参数名 类型 是否必须 示例 说明
department_id integer 1 部门ID
username string admin 用户名(模糊查询)
phone string 15888888888 手机号(精确匹配)
status string active 状态(active/inactive)
start_time string 2024-06-01 00:00:00 创建时间起始
end_time string 2024-06-30 23:59:59 创建时间截止
page integer 1 当前页码(默认1)
page_size integer 10 每页条数(默认10)

响应示例

json 复制代码
{
  "code": 200,
  "data": {
    "total": 2,
    "rows": [
      {
        "user_id": 1,
        "username": "admin",
        "nickname": "若依",
        "department_name": "研发部门",
        "phone": "15888888888",
        "status": "active",
        "created_at": "2024-06-30 11:27:11"
      },
      {
        "user_id": 2,
        "username": "ry",
        "nickname": "若依",
        "department_name": "测试部门",
        "phone": "15666666666",
        "status": "active",
        "created_at": "2024-06-30 11:27:11"
      }
    ]
  }
}

1.2 创建用户

POST /api/users
请求体

json 复制代码
{
  "username": "new_user",
  "nickname": "新用户",
  "department_id": 1,
  "phone": "13123456789",
  "status": "active"
}

校验规则

  • 用户名唯一(冲突返回 HTTP 409)
  • 手机号唯一(冲突返回 HTTP 409)

1.3 修改用户

PUT /api/users/{user_id}
请求体

json 复制代码
{
  "nickname": "修改后的昵称",
  "department_id": 2,
  "phone": "13123456789",
  "status": "inactive"
}

1.4 删除用户

DELETE /api/users/{user_id}


1.5 用户详情查询

GET /api/users/{user_id}
响应示例

json 复制代码
{
  "code": 200,
  "data": {
    "user_id": 1,
    "username": "admin",
    "nickname": "若依",
    "department_id": 1,
    "department_name": "研发部门",
    "phone": "15888888888",
    "status": "active",
    "created_at": "2024-06-30 11:27:11"
  }
}

1.6 导出用户

GET /api/users/export
参数 :同分页查询接口
响应:直接返回 Excel 文件流


2. 部门管理接口

2.1 部门树形结构查询

GET /api/depts/tree
响应示例

json 复制代码
{
  "code": 200,
  "data": [
    {
      "department_id": 1,
      "department_name": "深圳总公司",
      "children": [
        {
          "department_id": 2,
          "department_name": "研发部门"
        },
        {
          "department_id": 3,
          "department_name": "市场部门"
        }
      ]
    }
  ]
}

2.2 创建部门

POST /api/depts
请求体

json 复制代码
{
  "department_name": "新部门",
  "parent_id": 1  // 可为 null(顶级部门)
}

2.3 修改部门

PUT /api/depts/{department_id}
请求体

json 复制代码
{
  "department_name": "更新后的部门名称"
}

2.4 删除部门

DELETE /api/depts/{department_id}
校验规则

  • 若部门下存在子部门或用户,禁止删除(返回 HTTP 400)

3. 数据字典

  • 状态枚举active(启用)、inactive(禁用)
  • HTTP 状态码
    • 200:操作成功
    • 400:请求参数错误
    • 404:资源不存在
    • 409:唯一性冲突(用户名/手机号/部门名称)
    • 500:服务器内部错误

接口设计说明

  1. RESTful 资源命名
    • 用户资源:/api/users
    • 部门资源:/api/depts
  2. 关联查询 :用户列表返回 department_name 字段,需关联部门表查询
  3. 分页标准化 :分页参数统一命名为 pagepage_size
  4. 文件操作 :导出接口直接返回文件流,前端通过 Content-Disposition 处理文件名

本接口文档严格遵循原型功能及数据库设计,确保与用户管理系统的业务逻辑和数据结构完全一致。

相关推荐
南讯股份Nascent1 小时前
洽洽全域会员项目启动会圆满召开
大数据·人工智能
大郭鹏宇1 小时前
基于 LangGraph 构建智能分诊系统(一):项目概述与环境搭建
大数据·人工智能·microsoft·langchain
小林ixn2 小时前
大模型的“高考成绩单”:读懂Benchmark,选对真·生产力模型
人工智能·llm·测试
冬奇Lab2 小时前
AI 评测系列(04):RAG 评测——RAGAS 四指标实战与一个反直觉发现
人工智能·llm·agent
三声三视2 小时前
uni-app 鸿蒙端传参变成 [object Object]?顺着源码追到 ArkTS router 底层才搞明白
人工智能·ai·uni-app·aigc·ai编程·harmonyos
fthux2 小时前
“装闭”,让装修套路“装”不下去
人工智能·ai·开源·github·open source
andxe2 小时前
安科士 AndXe 技术博客:400G QSFP112 SR4 光模块|AI 算力与超算短距互联最优方案
网络·人工智能·光模块·光通信
计算机魔术师3 小时前
Karpathy:用语音与LLM长谈可提升理解效率
人工智能·ai编程
甲维斯4 小时前
我要开始吹牛逼了!Kimi K3 “宇宙无敌”!
前端·人工智能
周末程序猿4 小时前
图解 120 个大语言模型(LLM)核心概念(61-90)
人工智能