【计算机专业毕业设计】基于springboot的在线预约厨师上门服务系统

大家可以帮忙点赞、收藏、关注、评论啦

精彩专栏推荐订阅:在 下方专栏

JAVA实战项目

一、项目介绍

本文介绍了一种基于互联网的在线预约厨师上门服务系统。该系统主要包括管理员、厨师和用户三个角色,每个角色都有不同的功能和操作权限。管理员可以进行用户管理、厨师管理、菜品管理和公告管理等操作,厨师可以进行菜品管理、个人资料和预约评价等操作,而用户则可以进行注册、登录、个人资料修改、浏览筛选厨师进行预约上门服务以及公告查看等操作。该系统的实现可以为用户提供更加便捷、高效和优质的厨师上门服务体验。

二、功能介绍

管理员角色概述:

个人中心:管理员可以进入个人中心,查看和编辑个人信息,以及进行权限管理。
用户管理:管理员可以查看、搜索、添加、编辑和删除用户信息,以及进行权限管理。
厨师管理:管理员可以查看、搜索、添加、编辑和删除厨师信息,以及进行权限管理。
厨师预约评价管理:管理员可以查看、搜索、添加、编辑和删除厨师预约评价信息,以及进行权限管理。
菜品管理:管理员可以查看、搜索、添加、编辑和删除菜品信息,以及进行权限管理。
公告管理:管理员可以发布、编辑、删除公告信息,还可以查看和编辑公告的回复信息。
基础数据管理:管理员可以进行基础数据的维护和管理,例如汇率、税率等。

厨师角色概述:

个人中心:厨师可以进入个人中心,查看和编辑个人信息,以及查看预约评价信息。
菜品管理:厨师可以添加、编辑和删除自己可以提供的菜品信息,还可以查看其他厨师提供的菜品信息。
厨师管理:厨师可以搜索其他厨师的信息,并预约其他厨师上门服务。
厨师预约评价管理:厨师可以查看自己的预约评价信息,并回复评价信息。
公告管理:厨师可以查看公告信息,但不能进行编辑和删除。

用户角色概述:

注册和登录:用户需要进行注册和登录才能使用系统提供的服务。
个人中心:用户可以查看和编辑个人信息,还可以查看自己预约的厨师信息和评价信息。
菜品信息浏览筛选:用户可以浏览和筛选菜品信息,并选择预约相应的厨师上门服务。
4.公告信息浏览:用户可以查看公告信息,但不能进行编辑和删除。

三、开发环境

  • 开发语言:Java
  • 数据库:MySQL
  • 系统架构:B/S
  • 后端:Springboot
  • 前端:vue
  • 工具:IDEA或者Eclipse、JDK1.8、Maven

四、项目展示

登录页面:在这里插入图片描述首页模块:
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
管理员模块:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
厨师模块:
在这里插入图片描述
在这里插入图片描述

五、代码展示

public class CategoryDAOImpl implements CategoryDAO {

    private JdbcTemplate template =new JdbcTemplate(Global.getDataSource());
    @Override
    public List<Category> findCombo() {
        String sql = "select id,name from category where type = 1";
        List<Category> categories = template.query(sql,new BeanPropertyRowMapper<>(Category.class));
        return categories;
    }

    @Override
    public List<Category> findAll(CategorySearchBean csb, PaginateInfo pi) {
        String countSql = "select count(0) from category";
        String sql = "select id,type,name,sort,create_time,update_time from category";

        StringBuilder whereSql = new StringBuilder();
        List<Object> args = new ArrayList<>();

        if (csb != null) {
            whereSql.append(" where 1=1");
            if (csb.getId() != null) {
                whereSql.append(" and id = ?");
                args.add(csb.getId());
            }

            if (StringUtils.hasText(csb.getName())) {
                whereSql.append(" and name like ?");
                args.add("%" + csb.getName() + "%");
            }

            if (csb.getType() != null) {
                whereSql.append(" and type = ?");
                args.add(csb.getType());
            }

            if (csb.getCreateFrom() != null) {
                whereSql.append(" and create_time >= ?");
                args.add(csb.getCreateFrom());
            }
            if (csb.getCreateTo() != null) {
                whereSql.append(" and create_time < ?");
                args.add(csb.getCreateTo());
            }

        }

        countSql += whereSql.toString();
        //查询总数
        Long count = template.queryForObject(countSql, Long.class,args.toArray());
        pi.setCount(count);

        whereSql.append(" limit ?,?");
        args.add(pi.getOffset());
        args.add(pi.getLimit());

        sql += whereSql.toString();
        List<Category> categoryList = template.query(sql,new BeanPropertyRowMapper<>(Category.class),args.toArray());

        return categoryList;
    }

    @Override
    public int save(Category category) {
        String sql = "insert into category (id,type,name,create_time,update_time) values(?,?,?,?,?)";

        int rows = template.update(sql,category.getId(),category.getType(),category.getName(),category.getCreateTime(),category.getUpdateTime());

        return rows;
    }

    @Override
    public boolean deleteById(Long id) {
        String sql = "delete from category where id = ?";

        int rows = template.update(sql,id);
        if (rows > 0){
            String dishSql = "update dish set category_id = 555 where category_id = ?";
            template.update(dishSql,id);
        }


        return rows > 0;
    }

    @Override
    public int update(Category category) {
        String sql = "update category set `type`=?,`name`=?,update_time=? where id = ?";
        int rows = template.update(sql, category.getType(), category.getName(), category.getUpdateTime(), category.getId());

        return rows;
    }


}

六、项目总结

在线预约厨师上门服务系统是一种新颖的餐饮模式,它运用互联网技术来连接用户和厨师,使用户能够轻松享受个性化的餐饮服务。管理员负责监督系统的正常运行,管理用户和厨师的信息,发布重要公告以及维护系统的基础数据。因此,管理员的职责确保了系统的稳定和安全。厨师是提供食物制备服务的核心,他们在系统中管理着自己的菜品和自我介绍。此外,他们还能够查看其他厨师的信息并给予相应的预约评价。厨师通过系统上载和管理自己的菜品信息,并能够及时查看自己的预约信息和评价反馈。用户则是系统的最终使用者,他们在系统中注册并登录,从而能够浏览和筛选菜品信息进行预约。此外,他们还能够查看厨师的预约信息和公告信息。

大家点赞、收藏、关注、有问题都可留言交流👇🏻👇🏻👇🏻

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值