SpringBoot+Vue 在线拍卖系统 | 毕业设计完整源码 | 前后端分离
博主介绍 诚邀关注作者专注于 Java、Python、前端开发的技术博主 | 全网粉丝 30 万 在校期间协助导师完成毕业设计课题分类、论文格式初审及代码整理工作工作后持续分享毕设思路助力毕业生顺利完成课题。 欢迎订阅我的专栏获取完整源码、论文框架和部署文档一起学习共同进步精品项目推荐 需要源码文末有作者联系方式以下是精选毕业设计题目后续会逐步更新对应项目的源码和论文框架# SpringBootVue 在线拍卖系统 | 毕业设计完整源码 | 前后端分离摘要这个项目是一个基于SpringBoot和Vue的在线拍卖系统适合做毕业设计或者课程设计。系统分管理员和普通用户两个角色主要功能包括商品管理、拍卖管理、用户管理、订单管理等。前端用Vue写后端用SpringBoot数据库是MySQL。整个项目代码完整可以直接跑起来用。一、项目介绍在线拍卖系统说白了就是让用户能在网站上买东西但不是直接买而是像拍卖会一样谁出价高谁拿到。管理员在后台发布拍卖商品设置起拍价、加价幅度、拍卖时间这些参数。普通用户登录后可以浏览正在拍卖的商品看到喜欢的就出价系统会记录每次出价的时间和金额。拍卖结束后最高出价者中标然后生成订单用户付款完成交易。这个项目用了前后端分离的架构前端用Vue开发页面后端用SpringBoot提供接口数据存储在MySQL里。开发工具方面后端用的IDEA前端用的VSCode数据库用的Navicat。二、技术栈技术说明SpringBoot后端框架提供RESTful APIMyBatis数据持久层框架操作数据库MySQL关系型数据库存储数据Vue前端框架构建用户界面Element UI前端UI组件库快速搭建页面Maven项目构建工具管理依赖TomcatWeb服务器三、功能展示管理员模块登录页面管理员通过后台登录入口进入输入账号密码登录系统用户管理查看所有注册用户的信息包括用户名、角色、注册时间等支持搜索和删除操作商品管理管理拍卖商品包括发布新商品填写商品名称、描述、起拍价、加价幅度、拍卖开始和结束时间、编辑商品信息、下架商品拍卖管理查看所有商品的拍卖状态正在拍卖、已结束、未开始可以手动结束拍卖查看每个商品的出价记录订单管理查看拍卖成交后的订单信息包括商品名称、买家、成交价、订单状态待付款、已付款、已完成支持订单状态修改公告管理发布系统公告管理员可以编辑公告内容并发布到前台用户模块注册登录新用户注册账号已有账号直接登录商品浏览查看所有正在拍卖的商品列表显示商品图片、名称、当前价格、剩余时间商品详情点击商品进入详情页查看商品完整信息、出价记录出价按钮出价操作在详情页输入出价金额系统验证金额是否高于当前价格和加价幅度要求个人中心查看个人信息、修改密码我的拍卖查看自己参与过的拍卖记录包括出价历史、中标记录我的订单查看自己中标后的订单可以进行付款操作四、数据库设计系统主要包含以下几张核心表用户表 (user)字段名类型说明idint主键IDusernamevarchar(50)用户名passwordvarchar(100)密码rolevarchar(20)角色(admin/user)phonevarchar(20)手机号emailvarchar(50)邮箱create_timedatetime创建时间商品表 (goods)字段名类型说明idint主键IDnamevarchar(100)商品名称descriptiontext商品描述imagevarchar(200)商品图片start_pricedecimal(10,2)起拍价bid_incrementdecimal(10,2)加价幅度start_timedatetime拍卖开始时间end_timedatetime拍卖结束时间statusint状态(0未开始 1进行中 2已结束)user_idint发布者ID出价记录表 (bid_record)字段名类型说明idint主键IDgoods_idint商品IDuser_idint出价用户IDpricedecimal(10,2)出价金额create_timedatetime出价时间订单表 (order)字段名类型说明idint主键IDgoods_idint商品IDbuyer_idint买家IDfinal_pricedecimal(10,2)成交价statusint状态(0待付款 1已付款 2已完成)create_timedatetime创建时间五、核心代码展示后端Controller - 商品管理接口RestControllerRequestMapping(/goods)publicclassGoodsController{AutowiredprivateGoodsServicegoodsService;// 获取所有在拍商品GetMapping(/list)publicResultlist(){ListGoodsgoodsListgoodsService.getActiveGoods();returnResult.success(goodsList);}// 发布新商品PostMapping(/add)publicResultadd(RequestBodyGoodsgoods){goodsService.addGoods(goods);returnResult.success(发布成功);}// 更新商品信息PutMapping(/update)publicResultupdate(RequestBodyGoodsgoods){goodsService.updateGoods(goods);returnResult.success(更新成功);}// 下架商品DeleteMapping(/delete/{id})publicResultdelete(PathVariableIntegerid){goodsService.deleteGoods(id);returnResult.success(下架成功);}}前端Vue - 商品列表页面template div classgoods-list el-table :datagoodsList stylewidth: 100% el-table-column propname label商品名称 width180/el-table-column el-table-column propstartPrice label起拍价 width120/el-table-column el-table-column propcurrentPrice label当前价 width120/el-table-column el-table-column propendTime label结束时间 width180/el-table-column el-table-column label操作 template slot-scopescope el-button typeprimary sizesmall clickviewDetail(scope.row)详情/el-button el-button typedanger sizesmall clickdeleteGoods(scope.row.id)下架/el-button /template /el-table-column /el-table /div /template script export default { data() { return { goodsList: [] } }, methods: { viewDetail(row) { this.$router.push({ path: /goods/detail, query: { id: row.id }}) }, deleteGoods(id) { this.$confirm(确定下架该商品, 提示, { confirmButtonText: 确定, cancelButtonText: 取消 }).then(() { this.$http.delete(/goods/delete/${id}).then(res { if (res.data.code 200) { this.$message.success(下架成功) this.getGoodsList() } }) }) } }, created() { this.getGoodsList() } } /script六、运行效果登录页面页面中间是一个登录表单包含用户名输入框、密码输入框和角色选择下拉框。右上角有注册按钮点击跳转到注册页。后台管理页面登录后左侧是功能菜单包含用户管理、商品管理、拍卖管理、订单管理、公告管理五个模块。右侧是内容区域默认显示商品管理页面。商品管理页面是一个表格显示商品名称、起拍价、当前价、结束时间、状态等字段表格上方有发布商品按钮每行数据后面有详情和下架操作按钮。前台用户页面顶部是导航栏包含首页、商品列表、个人中心等链接。首页以卡片形式展示正在拍卖的商品每个卡片显示商品图片、名称、当前价格和剩余时间。点击卡片进入详情页详情页左侧是商品图片右侧是商品信息包括起拍价、加价幅度、当前价格、剩余时间下面有出价输入框和出价按钮再下面是出价记录列表。我的订单页面表格形式展示订单信息包含商品名称、成交价、订单状态、操作时间等字段状态列有待付款、“已付款”、已完成三种状态待付款状态后面有去付款按钮。七、适合场景这个项目适合计算机相关专业的学生做毕业设计或者课程设计。如果你正在学SpringBoot和Vue这个项目能帮你巩固前后端分离的开发模式。代码结构清晰注释完整可以直接拿来用也可以在此基础上加功能比如增加支付接口、聊天功能、消息通知等。八、获取方式有同学问怎么跑起来文末有联系方式。支持远程部署、代码讲解有问题随时问保证帮你把项目跑通。其他定制服务、商务合作可通过下方联系卡片或私信作者。