首页 > 编程语言 >java毕业设计基于springboot+vue的奶茶店线下点餐管理系统

java毕业设计基于springboot+vue的奶茶店线下点餐管理系统

时间:2024-11-02 18:18:58浏览次数:7  
标签:vue java caiwuService 奶茶 return Result 毕业设计 import caiwu

一、项目介绍

  
本系统旨在通过Web技术,实现奶茶店线下点餐流程的自动化与智能化。主要功能包括品信息、餐品信息、桌台信息、开台信息、点餐信息、桌台更换、餐具更换、商品库存、商品采购等;此外,系统还能对销售数据进行统计分析,为奶茶店的经营决策提供有力支持。
本系统采用B/S架构,前端使用HTML、CSS和JavaScript进行页面设计,后端则采用Java等语言进行业务逻辑处理。数据库方面,采用MySQL关系型数据库,确保数据的稳定性与安全性。在系统开发过程中,注重用户体验与界面设计,力求使系统操作简便、直观易懂。
通过本系统的实施,奶茶店将能够实现点餐流程的标准化与规范化,提高服务效率与顾客满意度;同时,通过数据统计分析,奶茶店能够更好地了解市场需求与顾客偏好,为产品优化与市场推广提供有力依据。总之,基于Web的奶茶店线下点餐管理系统将为奶茶店带来显著的运营效益与市场竞争力。
关键词:奶茶店线下点餐管理系统;网站管理系统;B/S模式;软件架构

二、开发环境

开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven
————————————————

三、功能介绍

本系统设计时,确定详细功能,这些功能主要通过需求阶段的调研分析得来的,具体功能模块如下图,如图4-2,4-3所示。

请添加图片描述

图4-2 奶茶店线下点餐管理系统网站管理员功能结构设计
请添加图片描述

图4-3奶茶店线下点餐管理系统网站用户功能结构设计

四、核心代码

部分代码:

package com.example.controller;

import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import com.example.common.Result;
import com.example.common.ResultCode;
import com.example.entity.Caiwu;
import com.example.exception.CustomException;
import com.example.service.CaiwuService;
import com.example.utils.MapWrapperUtils;
import com.example.utils.jwt.JwtUtil;
import com.example.vo.CaiwuVo;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@RestController
@RequestMapping(value = "/caiwu")
public class CaiwuController {

    @Resource
    private CaiwuService caiwuService;

    @PostMapping
    public Result<Caiwu> add(@RequestBody CaiwuVo caiwu) {
        caiwuService.add(caiwu);
           return Result.success(caiwu);
    }
	
	

    @PostMapping("/deleteList")
    public Result<Caiwu> deleteList(@RequestBody CaiwuVo caiwu) {
        caiwuService.deleteList(caiwu.getList());
        return Result.success();
    }

    @DeleteMapping("/{id}")
    public Result delete(@PathVariable Long id) {
        caiwuService.delete(id);
        return Result.success();
    }

    @PutMapping
    public Result update(@RequestBody CaiwuVo caiwu) {
        caiwuService.update(caiwu);
        return Result.success();
    }

    @GetMapping("/{id}")
    public Result<Caiwu> detail(@PathVariable Integer id) {
        Caiwu caiwu = caiwuService.findById(id);
        return Result.success(caiwu);
    }

    @GetMapping
    public Result<List<Caiwu>> all() {
        return Result.success(caiwuService.list());
    }

    @PostMapping("/page")
    public Result<CaiwuVo> page(@RequestBody CaiwuVo caiwuVo) {
        return Result.success(caiwuService.findPage(caiwuVo));
    }
	    @PostMapping("/login")
    public Result login(@RequestBody Caiwu caiwu, HttpServletRequest request) {
        if (StrUtil.isBlank(caiwu.getZhanghao()) || StrUtil.isBlank(caiwu.getMima())) {
            throw new CustomException(ResultCode.PARAM_LOST_ERROR);
        }
        Caiwu login = caiwuService.login(caiwu);
//        if(!login.getStatus()){
//            return Result.error("1001","状态限制,无法登录系统");
//        }
        if(login != null) {
            HashMap hashMap = new HashMap();
            hashMap.put("user", login);
            Map<String, Object> map = MapWrapperUtils.builder(MapWrapperUtils.KEY_USER_ID,caiwu.getId());
            String token = JwtUtil.creatToken(map);
            hashMap.put("token", token);
            return Result.success(hashMap);
        }else {
            return Result.error();
        }
    }
    @PutMapping("/updatePassword")
    public Result updatePassword(@RequestBody Caiwu info, HttpServletRequest request) {
        Caiwu caiwu = caiwuService.findById(info.getId());
        String oldPassword = SecureUtil.md5(info.getMima());
        if (!oldPassword.equals(caiwu.getMima())) {
            return Result.error(ResultCode.PARAM_PASSWORD_ERROR.code, ResultCode.PARAM_PASSWORD_ERROR.msg);
        }
        info.setMima(SecureUtil.md5(info.getNewPassword()));
        Caiwu caiwu1 = new Caiwu();
        BeanUtils.copyProperties(info, caiwu1);
        caiwuService.update(caiwu1);
        return Result.success();
    }
}

五、效果图

请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

六、文章目录

目  录

摘 要 1
Abstract 2
第1章 绪论 3
1.1 项目研究的背景 3
1.2开发目的和意义 3
1.3国内外研究现状 4
第2章 系统开发工具 4
2.1 SpringBoot编程语言 4
2.2 B/S模式 5
2.3 MySQL数据库 5
2.4 SpringBoot框架介绍 6
2.5 HTML技术技术 6
2.6 web框架介绍 7
第3章 系统分析 9
3.1 概述 9
3.2 功能需求 9
3.3 非功能性需求 11
3.4 系统特色 12
3.5 可行性研究 12
3.5.1经济上的可行性 12
3.5.2技术上的可行性 12
3.5.3操作的可能性 12
第4章 系统总体设计 13
4.1 系统架构设计 13
4.1.1体系结构 13
4.1.2 系统功能结构设计 13
4.2 系统数据库设计 16
4.2.1 数据库设计概述 16
4.2.2 数据库表的设计 17
第5章 系统功能实现 23
5.1登录模块的实现 23
5.2管理员管理模块 23
5.3用户管理模块 24
5.4奶茶景点管理管理模块 24
5.5酒店信息管理管理模块 25
5.6奶茶路线管理模块 25
第6章 系统测试 27
6.1 测试定义 27
6.2 测试目的 27
6.3 测试方案 27
6.4 系统分析 29
第7章 总结 30
参考文献 31
致谢 32

标签:vue,java,caiwuService,奶茶,return,Result,毕业设计,import,caiwu
From: https://blog.csdn.net/q_1262330535/article/details/143454149

相关文章

  • javaScript 和 Java 的语法区别(有前端基础)
    目录一、语法风格1.变量声明2.代码块3.分号二、面向对象编程1. 类和对象的定义2. 方法和属性的访问修饰符3.继承方式 三、数据类型和类型转换1.数据类型 2.类型转换四、异常处理1.语法结构2.异常类型五、开发工具和生态系统1.开发工具2.运行环境各......
  • JavaScript。—关于语法基础的理解—
    一、程序控制语句JavaScript提供了if、if else 和 switch 3种条件语句,条件语句也可以嵌套。(一)、条件语句1、单向判断: if...(1)概述<if>元素用于在判断该语句是否满足特定条件。如果条件不成立,<if>元素内的语句不会被执行。(2)语法格式if(条件){......
  • Java 虚拟线程:高并发编程的新纪元(Java 21)
    Java虚拟线程:高并发编程的新纪元前言在现代软件开发中,高并发编程一直是一个具有挑战性的问题。传统的线程模型虽然强大,但在高并发场景下会引发性能瓶颈和资源耗尽等问题。为了应对这些挑战,Java引入了虚拟线程(VirtualThreads),它为高并发编程带来了全新的解决方案。虚拟......
  • Java 继承机制的笔记 1
    Java继承机制的笔记_1笔记的来源:CS61B-2024春季的课程课程主要内容:数据结构与算法分析课程运用语言:Java这个课有6个Homework,10个Lab,9个Project。其中第一个project是一个完整的2024游戏的实现,很有意思。此文章对应的是课程8-9节的内容。由于内容较多......
  • java.数据流.study
         (紧接输出流代码,需要与输入流代码中类型对应)  对象字节输入流与对象字节输出流:     可以使用transient可以实现变量不会序列化:  ......
  • java.IO打印流.study
            ......
  • java.IO转换流.study
            ......
  • Java.IO流.study
       IO流的体系结构: FileInputStream(文件字节输入流): 方法:   文件字节输入流(一次读取多个数据):   注意事项:  使用文件字节输入流一次读取完文件的全部字节。    文件字节输出流:     ......
  • java.file文件与IO流.study
     但断电后后数据消失。 而IO流就是对数据进行读写File创建对象: 绝对路径与相对路径:  File提供的判断文件类型,获取文件信息功能:   File创建和删除文件相关方法:   File遍历文件夹的方法:  代码实现: 文件搜索,实现遍历文件夹下的多级目录:......
  • Java中“=”克隆理解
    在Java中,对于基本类型可以使用“="来进行克隆,此时两个变量除了相等是没有任何关系的。而对于引用类型却不能简单地使用”=“进行克隆,这与java的内存空间使用有关。Java将内存空间分成两块,即栈和堆。在栈中保存基本类型和引用变量;在堆中保存对象。对于引用变量而言,使用”=“......