1、前言
AI时代的到来,推动着各行各业的革新与重新洗牌,那么对软件开发行业来说,AI的出现也带来了全新的机遇与挑战,那些不会借助于AI工具提高开发效率的程序员终会给时代淘汰。
2、接口开发
提示词:
js
请根据提供的表结构和接口文档,基于SpringBoot+MybatisPlus技术帮我完成部门管理功能的接口开发 (使用JDK1.8之后新语法)。
1. 表结构如下:
-- 创建部门表(无外键约束)
CREATE TABLE `dept` (
`department_id` INT NOT NULL AUTO_INCREMENT COMMENT '部门ID',
`department_name` VARCHAR(100) NOT NULL COMMENT '部门名称',
`parent_id` INT DEFAULT NULL COMMENT '父部门ID(顶级部门为NULL)',
PRIMARY KEY (`department_id`),
UNIQUE KEY `uniq_dept_name_parent` (`department_name`, `parent_id`) -- 同一父部门下名称唯一
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='部门信息表';
-- 创建用户表(无外键约束)
CREATE TABLE `user` (
`user_id` INT NOT NULL AUTO_INCREMENT COMMENT '用户ID',
`username` VARCHAR(50) NOT NULL COMMENT '用户名',
`nickname` VARCHAR(50) DEFAULT NULL COMMENT '用户昵称',
`department_id` INT NOT NULL COMMENT '所属部门ID',
`phone` VARCHAR(20) NOT NULL COMMENT '手机号码',
`status` ENUM('active', 'inactive') NOT NULL DEFAULT 'active' COMMENT '状态(active=启用, inactive=禁用)',
`created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (`user_id`),
UNIQUE KEY `uniq_username` (`username`), -- 用户名唯一
UNIQUE KEY `uniq_phone` (`phone`) -- 手机号唯一
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户信息表';
2. 要操作的数据库的主机地址: dbconn.sealoshzh.site, 端口号: 3306, 用户名: root , 密码: bvn8487d, 数据库名: zxyf
3. 具体的接口信息如下:
### 用户管理系统 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"
}
]
}
}
3、接口测试
用户分页查询:
部门树形结构查询:
导出用户: