前言

学习这几个ai工具的动机是这样的: 🙌敲完了外卖,点评,博主就去找实习嘛,HR当时跟我聊问我会不会ai工具,博主当时一脸懵🤯🤯🤯🤯🤯🤯🤯,原话是这样的:" 有ai工具使用经验吗? 比如cursor, trea ",于是博主立马去学习, 在B站找了一个靠谱视频, 还是黑马程序员(不得不说真的很全面鸭😎) 视频讲的很好, 可以去学习呦 黑马程序员DeepSeek+Cursor+Devbox+Sealos带你零代码搞定实战项目

注: 这次的小项目主要是学习cursor的, 等我学完这个, 会再写一个基于trea的微信小程序🎉🥰

实现项目介绍:

就是一个非常简单的员工管理系统(部门, 班级, 员工, 学生), 看看前端的界面大致就了解了, 很简单的一个小项目, 就不多介绍了
在这里插入图片描述

一. 数据库设计分析(deepSeek)

要创建一个项目首先, 要先结合这个项目的页面原型需求文档来创建一个数据库, 存储数据.

数据库设计流程(以部门,员工为例子):

在这里插入图片描述
下面来根据流程图来逐步用ai实现整个流程:

1. 确定数据库主体(要建哪些表)

( 1 ). 直接把页面原型照片抛给ai

在这里插入图片描述

在这里插入图片描述

( 2 ). 并向DeepSeek说出自己的需求

提问模板:

请根据提供的页面原型和需求说明, 帮我分析一下部门管理涉及到的几张表, 具体是什么表, 只需要给出设计到的几张表即可, 不需要具体的字段和见表语句.(请严格按照页面原型和需求文档分析);

请根据提供的页面原型和需求说明, 再帮我分析一下员工管理涉及到的几张表, 具体是什么表, 只需要给出设计到的几张表即可, 不需要具体的字段和见表语句.(请严格按照页面原型和需求文档分析);

2. 确定数据主体之间的关系(表之间是: 一对一? 一对多? 多对多?)

在这里插入图片描述

提问模板:

好的, 我知道了部门管理及员工管理模块, 共涉及三张表, 分别是: 部门表, 员工表, 员工工作经历表, 请帮我分析一下这三张表之间的关系. (一对一, 一对多, 多对多)

3. 确定每个数据主体设计的字段, 类型, 约束等

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

提问模板:

那接下来根据提供的部门管理的页面原型和需求文档, 帮我设计一下部门表的表结构, 注意: 目前只考虑部门表, 请参考提供的需求说明, 为部门表的每个字段设置合适的字段类型和约束 (严格根据页面原型和需求文档设计). 最终给出mysql数据库的建表语句

部门表 dept 的表结构已经确定了, 那接下来, 请根据提供的员工管理模板和需求文档的截图, 帮我生成员工表emp, 以及员工工作经历表 emp_exp的见表语句. (注意: 一定要结合页面原型, 分析具体的字段, 字段类型, 约束)

OK了,这个就是最终用ai写好的SQL语句

CREATE TABLE dept (
    department_id INT PRIMARY KEY AUTO_INCREMENT COMMENT '部门ID(主键,自增)',
    name VARCHAR(20) NOT NULL UNIQUE COMMENT '部门名称(必填,唯一,长度2-20位)',
    create_time DATETIME NOT NULL COMMENT '部门创建时间',
    update_time DATETIME NOT NULL COMMENT '最后修改时间(根据修改时间倒序排序)'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT '部门信息表';


CREATE TABLE emp (
    id INT PRIMARY KEY AUTO_INCREMENT COMMENT '员工ID(主键,自增)',
    username VARCHAR(20) NOT NULL UNIQUE COMMENT '用户名(必填,唯一,长度2-20位,字母/数字/下划线)',
    name VARCHAR(20) NOT NULL COMMENT '姓名(必填,长度2-10位)',
    gender TINYINT NOT NULL COMMENT '性别: 1: 女 2: 男',
    dept_id INT NOT NULL COMMENT '所属部门ID',
    position TINYINT NOT NULL COMMENT '职位, 1: 班主任, 2: 讲师, 3: 员工主管, 4: 校验主管, 5: 咨询师',
    phone VARCHAR(11) NOT NULL UNIQUE COMMENT '手机号(必填,11位数字,唯一)',
    salary INT COMMENT '薪资(整数)',
    entry_date DATE COMMENT '入职日期',
    image VARCHAR(255) COMMENT '头像URL(存储图片路径,可选)',
    password VARCHAR(64) DEFAULT '123456' COMMENT '密码(默认123456)',
    create_time DATETIME COMMENT '创建时间',
    update_time DATETIME NOT NULL COMMENT '更新时间'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT '员工信息表';

CREATE TABLE emp_exp (
    id INT PRIMARY KEY AUTO_INCREMENT COMMENT '经历ID(主键,自增)',
    emp_id INT  COMMENT '员工ID(外键关联emp表)',
    company VARCHAR(50)  COMMENT '公司名称',
    position VARCHAR(20)  COMMENT '职位',
    start_date DATE NOT NULL COMMENT '开始日期(必填)',
    end_date DATE COMMENT '结束日期(可选,为空表示至今)'
    
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT '员工工作经历表';

4. 生成测试数据:

提问模板:
最终的表结构如下: 请帮我为这三张表的每一张都添加一批测试数据, 每张表添加15条, 表结构如下

INSERT INTO dept (name, create_time, update_time) VALUES
('人力资源部', '2022-01-01 09:00:00', '2022-01-01 09:00:00'),
('财务部', '2022-01-02 09:00:00', '2022-01-02 09:00:00'),
('技术研发部', '2022-01-03 09:00:00', '2022-06-15 10:30:00'),
('市场部', '2022-01-04 09:00:00', '2022-07-20 14:15:00'),
('销售部', '2022-01-05 09:00:00', '2022-08-10 16:45:00'),
('客户服务部', '2022-01-06 09:00:00', '2022-09-05 11:20:00'),
('产品部', '2022-01-07 09:00:00', '2022-10-12 13:40:00'),
('行政部', '2022-01-08 09:00:00', '2022-11-18 15:10:00'),
('设计部', '2022-01-09 09:00:00', '2022-12-22 10:50:00'),
('质量保障部', '2022-01-10 09:00:00', '2023-01-05 09:30:00'),
('运营部', '2022-01-11 09:00:00', '2023-02-14 14:20:00'),
('培训部', '2022-01-12 09:00:00', '2023-03-08 16:00:00'),
('法务部', '2022-01-13 09:00:00', '2023-04-19 11:45:00'),
('采购部', '2022-01-14 09:00:00', '2023-05-23 13:15:00'),
('国际业务部', '2022-01-15 09:00:00', '2023-06-30 15:50:00');
INSERT INTO emp (username, name, gender, dept_id, position, phone, salary, entry_date, image, password, create_time, update_time) VALUES
('zhangsan', '张三', 2, 1, 1, '13800138001', 8000, '2021-03-15', NULL, '123456', '2021-03-15 09:00:00', '2023-01-10 10:00:00'),
('lisi', '李四', 2, 2, 2, '13800138002', 10000, '2021-04-20', NULL, '123456', '2021-04-20 09:00:00', '2023-02-15 11:00:00'),
('wangwu', '王五', 2, 3, 3, '13800138003', 15000, '2021-05-10', NULL, '123456', '2021-05-10 09:00:00', '2023-03-20 12:00:00'),
('zhaoliu', '赵六', 1, 4, 4, '13800138004', 12000, '2021-06-05', NULL, '123456', '2021-06-05 09:00:00', '2023-04-25 13:00:00'),
('qianqi', '钱七', 1, 5, 5, '13800138005', 9000, '2021-07-12', NULL, '123456', '2021-07-12 09:00:00', '2023-05-30 14:00:00'),
('sunba', '孙八', 2, 6, 1, '13800138006', 8500, '2021-08-18', NULL, '123456', '2021-08-18 09:00:00', '2023-06-05 15:00:00'),
('zhoujiu', '周九', 1, 7, 2, '13800138007', 11000, '2021-09-22', NULL, '123456', '2021-09-22 09:00:00', '2023-07-10 16:00:00'),
('wushi', '吴十', 2, 8, 3, '13800138008', 13000, '2021-10-30', NULL, '123456', '2021-10-30 09:00:00', '2023-08-15 17:00:00'),
('zhengshiyi', '郑十一', 1, 9, 4, '13800138009', 9500, '2021-11-05', NULL, '123456', '2021-11-05 09:00:00', '2023-09-20 18:00:00'),
('wangshier', '王十二', 2, 10, 5, '13800138010', 10500, '2021-12-10', NULL, '123456', '2021-12-10 09:00:00', '2023-10-25 19:00:00'),
('linshisan', '林十三', 1, 11, 1, '13800138011', 7500, '2022-01-15', NULL, '123456', '2022-01-15 09:00:00', '2023-11-30 20:00:00'),
('zhoushisi', '周十四', 2, 12, 2, '13800138012', 12500, '2022-02-20', NULL, '123456', '2022-02-20 09:00:00', '2023-12-05 21:00:00'),
('wushiwu', '吴十五', 1, 13, 3, '13800138013', 14000, '2022-03-25', NULL, '123456', '2022-03-25 09:00:00', '2024-01-10 22:00:00'),
('zhengshiliu', '郑十六', 2, 14, 4, '13800138014', 8800, '2022-04-30', NULL, '123456', '2022-04-30 09:00:00', '2024-02-15 23:00:00'),
('wangshiqi', '王十七', 1, 15, 5, '13800138015', 11500, '2022-05-05', NULL, '123456', '2022-05-05 09:00:00', '2024-03-20 08:00:00');
INSERT INTO emp_exp (emp_id, company, position, start_date, end_date) VALUES
(1, '阿里巴巴', '前端开发', '2018-01-10', '2020-12-31'),
(1, '腾讯科技', '高级前端', '2021-01-05', NULL),
(2, '百度在线', 'Java开发', '2017-06-15', '2019-05-20'),
(2, '字节跳动', '高级Java', '2019-06-01', '2021-03-10'),
(3, '美团点评', '产品经理', '2016-03-01', '2018-02-28'),
(3, '滴滴出行', '高级产品', '2018-03-15', '2021-04-05'),
(4, '京东商城', '测试工程师', '2019-07-10', '2020-12-31'),
(4, '拼多多', '测试主管', '2021-01-15', NULL),
(5, '华为技术', '硬件工程师', '2018-09-01', '2020-08-31'),
(5, '小米科技', '高级硬件', '2020-09-15', '2021-06-10'),
(6, 'OPPO', 'UI设计师', '2017-04-10', '2019-03-31'),
(6, 'VIVO', '设计主管', '2019-04-15', '2021-07-20'),
(7, '联想集团', '运维工程师', '2018-11-01', '2020-10-31'),
(7, '戴尔科技', '高级运维', '2020-11-15', NULL),
(8, '微软中国', '数据分析师', '2019-02-05', '2020-12-31');
⚠️ 注意:一定要看看ai生成的语句, 结合实际进行修改, ai不一定全对哦

二 .创建数据库 ( sealos )

🔹 Sealos 简介

Sealos 是一个基于 Kubernetes 的云操作系统发行版,旨在简化云原生应用的部署与管理。它由 Go 语言开发,具有以下核心特点:

一键部署数据库:支持 MySQL、PostgreSQL、MongoDB、Redis、CockroachDB 等,30 秒内完成高可用部署。

开箱即用的 Devbox 开发环境:提供预装常用开发工具(如 Node.js、Python、Docker)的云端一体化开发环境。

自动 HTTPS 与域名管理:无需手动配置 SSL,自动生成公网访问地址

🔹 注册步骤

  • 访问官网
    打开: https://cloud.sealos.run

  • 点击右上角「注册」
    支持邮箱注册或 GitHub 快捷登录。

  • 完成实名认证(这可以加5块钱的使用额度)

    需完成手机号 + 实名认证。(注意⚠️:这个红色圈圈里加号+后面要填: 86 哦 (+ 86(中国大陆的区号)))
    在这里插入图片描述

  • 进入控制台,开始使用

  1. 点击数据库新建数据库
    在这里插入图片描述

在这里插入图片描述

关掉备份, 这个不需要

在这里插入图片描述
2. 在本地连接你在Sealos新建的数据库

Host: 填外网地址

Port: 填外网的
在这里插入图片描述

在这里插入图片描述
3. 然后再新建数据库
在这里插入图片描述

在这里插入图片描述

⚠️这里注意: 新建的数据库不用的时候一定关掉, 记得注意查看扣费标准

到这里我大概花了2毛钱左右,哈哈哈哈还好

  1. 创建表结构
    在这里插入图片描述

三. 接口设计(DeepSeek)

在这里插入图片描述

(1). 把接口的模板pdf和页面图片ai
接口模板和图片都在我网盘里:
通过网盘分享的文件:ai开发工具: https://pan.baidu.com/s/1BETJys_lamS8QeudUWUU5g?pwd=0627 提取码: 0627

(2). 提问模板:

请严格按照提供的部门管理的页面原型和需求说明, 以及提供的接口文档的模板, 参照提供的部门表dept的表结构, 基于Restful风格, 帮我设计部门管理模块设计到的接口文档. dept部门表的表结构如下:

CREATE TABLE dept (
department_id INT PRIMARY KEY AUTO_INCREMENT COMMENT ‘部门ID(主键,自增)’,
name VARCHAR(20) NOT NULL UNIQUE COMMENT ‘部门名称(必填,唯一,长度2-20位)’,
create_time DATETIME NOT NULL COMMENT ‘部门创建时间’,
update_time DATETIME NOT NULL COMMENT ‘最后修改时间(根据修改时间倒序排序)’
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT ‘部门信息表’;

员工表的就不再举例了

四. 项目开发(Devbox, Cursor)

(一). 服务端(后端)

基于ai的服务端开发主要分为两步:

  1. 先在sealos上创建一个SpringBoot项目(这个就超方便, 它啥都给你配好了, 内网地址,外网地址啥的, 就是要钱这点不太好🤪)
  2. 在Cursor上打开我们创建好的SpringBoot项目,进行开发

1. 项目创建(Devbox)

1.1. 在sealos上打开DevBox, 点击新建DevBox
在这里插入图片描述
1.2. 选择Springboot
在这里插入图片描述
1.3. 输个名字直接创建就好

在这里插入图片描述
1.4 创建好后直接, 选择cursor打开就好

在这里插入图片描述

⚠️注意: 这个收费是按小时收费的(不用的时候删掉)

在这里插入图片描述

2. 服务端部门管理开发(Cursor)

2.1 Cursor的安装配置:

⚠️注意: Cursor每个月都有固定得使用额度

2.2.1 安装时出现的问题:

黑马程序员提供的这个版本的Cursor, 我安装还有打开项目的时候出现了好多问题🤯🤯🤯, 像安装的时候老是安装出错, 之后打开项目的时候插件Remote-SSH有链接不上, 我在这上面花了好多时间, 最后下载新版本的Cursor解决了,旧版本感觉不能用了.

这个新版的我也发我网盘里了: 通过网盘分享的文件:ai开发工具: https://pan.baidu.com/s/1BETJys_lamS8QeudUWUU5g?pwd=0627 提取码: 0627

在这里插入图片描述

在这里插入图片描述

2.2.2 下载后, 安装插件

在这里插入图片描述

  1. Vue - Official
    一个专门为 Vue 3 构建的语言支持插件
  2. Devbox
    Devbox是一个远程开发和生产环境,可帮助您开发和部署项目。此插件支持Devbox的连接和管理。
  3. Material Icon Theme
    icon 图标主题插件,为我们提供了非常丰富的icon,美化开发工具使用。
  4. Remote - SSH
    Remote-SSH扩展插件允许您使用任何具有SSH服务器的远程机器作为您的开发环境。这可以大大简化各种情况下的开发和故障排除。
  5. Extension Pack for Java
    该插件可以帮助在Visual Studio Code中编写、测试和调试Java应用程序。

2.2 在Cursor打开项目, 启动项目

打开后界面就是这样的, 左边chat区域我们可以跟对话,( 直接把文件拉进去问它就行, 很简单方便 )

在这里插入图片描述

启动项目: 它这个软件和VS-code有点像, 之前一直用的idea, 刚开始可难受用着, 项目的启动也不一样
2.2.1. 右键点开pom文件, 选择Open in intergrated Teminal 打开终端

在这里插入图片描述
2.2.2. 在终端输入: mvn spring-boot:run
在这里插入图片描述

2.2.3. 然后根据ai的提示根据公网外网地址访问就可以了

在这里插入图片描述

2.3 部门管理开发提问模板

请根据提供的部门表的表结构和接口文档,基于SpringBoot+Mybatis+PageHelper技术帮我完成部门管理功能的接口开发 (使用JDK1.8之后新语法)1. 要操作的表是 dept 部门表, 表结构如下: 
CREATE TABLE dept (
    id INT AUTO_INCREMENT PRIMARY KEY COMMENT '部门ID(唯一标识,自增主键)',
    name VARCHAR(10) NOT NULL UNIQUE COMMENT '部门名称',
    create_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    update_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后操作时间'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='部门信息表';

2. 要操作的数据库的主机地址: test-zxyf-mysql.ns-w6hasfpj.svc, 端口号: 3306, 用户名: root , 密码: 6vqgnq5k, 数据库名: zxyf
3. 部门管理中一共有5个接口, 具体的接口信息如下: 
    3.1 部门列表查询
            请求路径:/depts
            请求方式:GET
            请求参数: 无
            响应数据: 
                    {
                      "code": 1,
                      "msg": "success",
                      "data": [
                        {
                          "id": 1,
                          "name": "学工部",
                          "createTime": "2022-09-01T23:06:29",
                          "updateTime": "2022-09-01T23:06:29"
                        },
                        {
                          "id": 2,
                          "name": "教研部",
                          "createTime": "2022-09-01T23:06:29",
                          "updateTime": "2022-09-01T23:06:29"
                        }
                      ]
                    }
            备注: 响应效果中 code 代表是否操作成功, 1: 成功, 0: 失败; msg: 提示信息; data: 返回的数据

        3.2 删除部门
        请求路径:/depts/{id}
        请求方式:DELETE
        请求参数:id ,为路径参数
        请求样例:/depts/1, /depts/2
        响应数据格式:
                {
                    "code":1,
                    "msg":"success",
                    "data":null
                }

        3.3 添加部门
            请求路径:/depts
            请求方式:POST
            请求样例:{"name": "教研部"}
            响应数据格式:
                    {
                        "code":1,
                        "msg":"success",
                        "data":null
                    }

        3.4 根据ID查询
            请求路径:/depts/{id}
            请求方式:GET
            请求参数:id ,为路径参数
            请求样例:/depts/1, /depts/2
            响应数据格式:
                    {
                      "code": 1,
                      "msg": "success",
                      "data": {
                        "id": 1,
                        "name": "学工部",
                        "createTime": "2022-09-01T23:06:29",
                        "updateTime": "2022-09-01T23:06:29"
                      }
                    }

        3.5 修改部门
            请求路径:/depts
            请求方式:PUT
            请求样例:
                    {
                        "id": 1,
                        "name": "教研部"
                    }
            响应数据格式:
                    {
                        "code":1,
                        "msg":"success",
                        "data":null
                    }

这里注意配置好自己的数据库的主机地址, 端口号, 用户名, 密码, 数据库名, 改好后粘贴到对话框就可以自动新建好对应得类和包
在这里插入图片描述
还有员工管理和文件上传就不一 一举例了
员工管理提问词:

请提供的表结构、接口文档 以及页面原型和需求说明,基于 SpringBoot+Mybatis+PageHelper 帮我完成员工管理的功能接口开发(使用JDK1.8之后的新语法)。

1. 要操作的是员工表emp 以及员工的工作经历表 emp_expr,具体的表结构如下:
CREATE TABLE emp (
    id INT AUTO_INCREMENT PRIMARY KEY COMMENT '员工ID',
    username VARCHAR(20) NOT NULL UNIQUE COMMENT '用户名(2-20位)',
    password VARCHAR(64) DEFAULT '123456' COMMENT '登录密码',
    name VARCHAR(10) NOT NULL COMMENT '姓名(2-10位)',
    gender TINYINT COMMENT '性别, 1: 男, 2: 女',
    phone CHAR(11) NOT NULL UNIQUE COMMENT '手机号(11位)',
    position TINYINT COMMENT '职位, 1: 班主任, 2: 讲师, 3: 学工主管, 4: 教研主管, 5: 咨询师',
    salary INT COMMENT '薪资(整数存储)',
    image VARCHAR(255) COMMENT '头像路径',
    hire_date DATE COMMENT '入职日期',
    dept_id INT COMMENT '所属部门ID',
    create_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    update_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后操作时间'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='员工信息表';


CREATE TABLE emp_expr (
    id INT AUTO_INCREMENT PRIMARY KEY COMMENT '经历ID',
    emp_id INT COMMENT '关联员工的ID',
    company VARCHAR(50) COMMENT '公司名称',
    position VARCHAR(50) COMMENT '担任职位',
    start_date DATE COMMENT '开始日期',
    end_date DATE COMMENT '结束日期'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='员工工作经历表';


2. 员工管理中一共包含6个接口,具体的接口信息如下:
     2.1 员工列表查询
         请求路径:/emps
         请求方式:GET
         请求参数:
             name: 姓名,可选
             gender: 性别,可选
             begin: 入职日期的开始时间,可选
             end: 入职日期的结束时间,可选
             page: 页码,默认1
             pageSize: 每页展示记录数,默认10
         请求样例:
             /emps?page=1&pageSize=10
             /emps?name=&page=1&pageSize=10
             /emps?gender=1&page=1&pageSize=10
             /emps?name=&gender=1&page=1&pageSize=10
             /emps?name=&gender=1&begin=2007-09-01&end=2022-09-01&page=1&pageSize=10
         响应数据格式:
             {
               "code": 1,
               "msg": "success",
               "data": {
                 "total": 2,
                 "rows": [
                    {
                     "id": 1,
                     "username": "jinyong",
                     "name": "金庸",
                     "gender": 1,
                     "image": "https://web-framework.oss-cn-hangzhou.aliyuncs.com/2022-09-02-00-27-53B.jpg",
                     "position": 2,
                     "salary": 8000,
                     "hireDate": "2015-01-01",
                     "deptId": 2,
                     "deptName": "教研部",
                     "createTime": "2022-09-01T23:06:30",
                     "updateTime": "2022-09-02T00:29:04"
                   },
                   {
                     "id": 2,
                     "username": "zhangwuji",
                     "name": "张无忌",
                     "gender": 1,
                     "image": "https://web-framework.oss-cn-hangzhou.aliyuncs.com/2022-09-02-00-27-53B.jpg",
                     "position": 2,
                     "salary": 6000,
                     "hireDate": "2015-01-01",
                     "deptId": 2,
                     "deptName": "教研部",
                     "createTime": "2022-09-01T23:06:30",
                     "updateTime": "2022-09-02T00:29:04"
                   }
                 ]
               }
             }

        2.2 删除员工
            请求路径:/emps
            请求方式:DELETE
            请求参数:ids ,为路径参数
            请求样例:/emps?ids=1,2,3
            响应数据格式:
                {
                    "code":1,
                    "msg":"success",
                    "data":null
                }
    
        2.3 添加员工
            请求路径:/emps
            请求方式:POST
            请求样例:
                {
                  "image": "https://web-framework.oss-cn-hangzhou.aliyuncs.com/2022-09-03-07-37-38222.jpg",
                  "username": "linpingzhi",
                  "name": "林平之",
                  "gender": 1,
                  "position": 1,
                  "hireDate": "2022-09-18",
                  "deptId": 1,
                  "phone": "18809091234",
                  "salary": 8000,
                  "exprList": [
                      {
                         "company": "百度科技股份有限公司",
                         "position": "java开发",
                         "startDate": "2012-07-01",
                         "endDate": "2019-03-03"
                      },
                      {
                         "company": "阿里巴巴科技股份有限公司",
                         "position": "架构师",
                         "startDate": "2019-03-15",
                         "endDate": "2023-03-01"
                      }
                   ]
                }
            响应数据格式:
                {
                    "code":1,
                    "msg":"success",
                    "data":null
                }

        2.4 根据ID查询
            请求路径:/emps/{id}
            请求方式:GET
            请求参数:id ,为路径参数
            请求样例:/emps/1, /emps/2
            响应数据格式:
                {
                  "code": 1,
                  "msg": "success",
                  "data": {
                    "id": 2,
                    "username": "zhangwuji",
                    "name": "张无忌",
                    "gender": 1,
                    "image": "https://web-framework.oss-cn-hangzhou.aliyuncs.com/2022-09-02-00-27-53B.jpg",
                    "position": 2,
                    "salary": 8000,
                    "hireDate": "2015-01-01",
                    "deptId": 2,
                    "createTime": "2022-09-01T23:06:30",
                    "updateTime": "2022-09-02T00:29:04",
                    "exprList": [
                      {
                        "id": 1,
                        "startDate": "2012-07-01",
                        "endDate": "2019-03-03"
                        "company": "百度科技股份有限公司"
                        "position": "java开发",
                        "empId": 2
                      },
                      {
                        "id": 2,
                        "startDate": "2019-3-15",
                        "endDate": "2023-03-01"
                        "company": "阿里巴巴科技股份有限公司"
                        "position": "架构师",
                        "empId": 2
                      }
                    ]
                  }
                }

        2.5 修改员工
            请求路径:/emps
            请求方式:PUT
            请求样例:
                {
                    "id": 2,
                    "username": "zhangwuji",
                    "password": "123456",
                    "name": "张无忌",
                    "gender": 1,
                    "image": "https://web-framework.oss-cn-hangzhou.aliyuncs.com/2022-09-02-00-27-53B.jpg",
                    "position": 2,
                    "salary": 8000,
                    "hireDate": "2015-01-01",
                    "deptId": 2,
                    "createTime": "2022-09-01T23:06:30",
                    "updateTime": "2022-09-02T00:29:04",
                    "exprList": [
                      {
                        "id": 1,
                        "startDate": "2012-07-01",
                        "endDate": "2015-06-20"
                        "company": "中软国际股份有限公司"
                        "position": "java开发",
                        "empId": 2
                      },
                      {
                        "id": 2,
                        "startDate": "2015-07-01",
                        "endDate": "2019-03-03"
                        "company": "百度科技股份有限公司"
                        "position": "java开发",
                        "empId": 2
                      },
                      {
                        "id": 3,
                        "startDate": "2019-3-15",
                        "endDate": "2023-03-01"
                        "company": "阿里巴巴科技股份有限公司"
                        "position": "架构师",
                        "empId": 2
                      }
                    ]
                  }
            响应数据格式:
                {
                    "code":1,
                    "msg":"success",
                    "data":null
                }

        2.6 查询全部员工
            请求路径:/emps/list
            请求方式:GET
            请求参数:无
            响应数据格式:
                {
                  "code": 1,
                  "msg": "success",
                  "data": [
                    {
                      "id": 21,
                      "username": "zcc",
                      "password": "123456",
                      "name": "周星驰",
                      "gender": 1,
                      "image": "https://web-65.oss-cn-beijing.aliyuncs.com/99c143e9-0241-41f3-bc55-dd5e4e0824f4.jpg",
                      "position": 1,
                      "salary": 8000,
                      "hireDate": "2023-04-23",
                      "deptId": 2,
                      "createTime": "2023-05-26T17:25:01",
                      "updateTime": "2023-06-04T19:25:15"
                    },
                    {
                      "id": 6,
                      "username": "xiaozhao",
                      "password": "123456",
                      "name": "小昭",
                      "gender": 2,
                      "image": "https://web-65.oss-cn-beijing.aliyuncs.com/da94dc38-f165-480c-b8b7-0b3f4bcd1602.jpg",
                      "position": 3,
                      "salary": 8000,
                      "hireDate": "2013-09-05",
                      "deptId": 1,
                      "createTime": "2023-04-07T11:16:00",
                      "updateTime": "2023-04-14T08:22:41"
                    }
                  ]
                }

文件上传

根据如下接口信息,完成文件上传的功能。
1. 文件上传的接口信息如下:
     1.1 请求路径: /upload
     1.2 请求方式: POST
     1.3 请求参数名: file
     1.4 响应结果样例(data: 表示文件的访问路径):
         {
           "code": 1,
           "msg": "success",
           "data": "http://aliyun.oss.com/1.jpg"
          }

2. 文件使用对象存储服务存储,对象存储服务的信息:
     Access Key:w6hasfpj
     Secret Key:r674prz8pjjpbbnq
     Internal:object-storage.objectstorage-system.svc.cluster.local
     External:objectstorageapi.hzh.sealos.run

     存储桶名: w6hasfpj-zxyf

对象存储服务操作指南:https://sealos.run/docs/guides/object-storage

(二). 前端

基于ai的前端开发主要分为两步:

  1. 先在sealos上创建一个Vue.js项目
  2. 在Cursor上打开我们创建好的Vue项目,进行开发

1. 项目创建(Devbox)

在这里插入图片描述

在这里插入图片描述

2. 前端部门管理开发(Cursor)

2.1 在Cursor中打开Vue.js项目
在这里插入图片描述

2.2 页面布局提问词

请根据提供的页面原型的截图,基于Vue3 + ElementPlus帮我制作 “智学云帆-教学管理系统” 的页面,首先先完成页面的基本布局 。 具体要求如下:
1. 页面的顶部,要展示系统的标题,标题内容:“智学云帆-教学管理系统”,字体类型:楷体,字体大小:30,居左对齐。 在顶部标题栏的右侧,要展示 “退出登录【张三】” 的超链接,这里的张三,将来要展示的当前登录员工,目前可以先写死。
2. 左侧的侧边栏,展示出这个管理系统的菜单,具体的菜单结构为:
   1. 首页
   2. 班级学员管理
      2.1 班级管理
      2.2 学员管理
   3. 系统信息管理
      3.1 部门管理
      3.2 员工管理
3. 右侧为核心展示区域,点击左侧菜单,在右侧要展示出对应的页面,比如点击 "首页",右侧核心展示区域就要展示首页的页面 。

2.3 部门管理提问词

请根据提供的部门管理的页面原型图,和接口文档完成部门管理的功能开发,包括:增加、修改、删除、查询部门的功能。
1. 具体的接口信息如下:
 1.1 部门列表查询
     请求路径:/depts
     请求方式:GET
     请求参数:无
     响应数据格式:
         {
           "code": 1,
           "msg": "success",
           "data": [
             {
               "id": 1,
               "name": "学工部",
               "createTime": "2022-09-01T23:06:29",
               "updateTime": "2022-09-01T23:06:29"
             },
             {
               "id": 2,
               "name": "教研部",
               "createTime": "2022-09-01T23:06:29",
               "updateTime": "2022-09-01T23:06:29"
             }
           ]
         }

    1.2 删除部门
        请求路径:/depts/{id}
        请求方式:DELETE
        请求参数:id ,为路径参数
        请求样例:/depts/1, /depts/2
        响应数据格式:
            {
                "code":1,
                "msg":"success",
                "data":null
            }

    1.3 添加部门
        请求路径:/depts
        请求方式:POST
        请求样例:{"name": "教研部"}
        响应数据格式:
            {
                "code":1,
                "msg":"success",
                "data":null
            }

    1.4 根据ID查询
        请求路径:/depts/{id}
        请求方式:GET
        请求参数:id ,为路径参数
        请求样例:/depts/1, /depts/2
        响应数据格式:
            {
              "code": 1,
              "msg": "success",
              "data": {
                "id": 1,
                "name": "学工部",
                "createTime": "2022-09-01T23:06:29",
                "updateTime": "2022-09-01T23:06:29"
              }
            }

    1.5 修改部门
        请求路径:/depts
        请求方式:PUT
        请求样例:
            {
                "id": 1,
                "name": "教研部"
            }
        响应数据格式:
            {
                "code":1,
                "msg":"success",
                "data":null
            }
        
2. 前端要访问的服务端的访问地址为: http://zxyf-management.ns-w6hasfpj.svc.cluster.local:8080

博主其实就开发到了这里, 因为博主Crusor这个月得免费额度用光了🤪🤪🤪
在这里插入图片描述

在这里插入图片描述

其实主要还是我真的不会前端, Vue, elementplus没咋学, 用这个ai软件, 最大的感受就是: 还是得会!!! 写后端得时候, 因为我会嘛, 特别顺, 就算ai错的我自己都能改好, 前端就很困难, 我一直在告诉他把界面做的大一点, 美观一点, 它都听不懂😭😭😭, 然后通过我的不屑努力, 把Crusor这个月免费额度用光了

之后要努力学前端喽, 小白啊!!!写的不好轻喷啊🤯如果觉得写的不好,点个赞吧🤪(批评是我写作的动力)

…。。。。。。。。。。。…请添加图片描述
…。。。。。。。。。。。…

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐