基于springboot的私房菜定制上门服务系统的设计与实现-爱代码爱编程
收藏关注不迷路,源码文章末
一、项目介绍
私房菜定制上门服务系统管理系统按照操作主体分为管理员和用户。管理员的功能包括管理员工,管理私房菜定制上门服务系统信息,包括菜品管理,厨师管理,公告管理。用户的功能包括管理菜品信息,厨师信息,等。该系统采用了Mysql数据库,Java语言,Spring Boot框架等技术进行编程实现。
私房菜定制上门服务系统管理系统可以提高私房菜定制上门服务系统信息管理问题的解决效率,优化私房菜定制上门服务系统信息处理流程,保证私房菜定制上门服务系统信息数据的安全,它是一个非常可靠,非常安全的应用程序。
关键词:私房菜定制上门服务系统管理系统;Mysql数据库;Java语言
二、开发环境
开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven
————————————————
三、功能介绍
私房菜定制上门服务系统管理系统根据使用权限的角度进行功能分析,并运用用例图来展示各个权限需要操作的功能。
图3.5即为管理员用例图,管理员权限操作的功能包括管理员工,管理私房菜定制上门服务系统信息,包括菜品管理,厨师管理,公告管理,公告管理等,可以管理厨师。
图3.5 管理员用例图
图4.1即为设计的管理员功能结构,管理员权限操作的功能包括管理员工,管理私房菜定制上门服务系统信息,包括菜品管理,厨师管理,公告管理,公告管理等,可以管理厨师。
图4.1 管理员功能结构
四、核心代码
部分代码:
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();
}
}
五、效果图
六、文章目录
目 录
摘 要 I
Abstract II
目 录 III
第1章 绪论 1
1.1 课题背景 1
1.2 课题意义 1
1.3 研究内容 1
第2章 开发环境与技术 3
2.1 Java语言 3
2.2 MYSQL数据库 3
2.3 IDEA开发工具 4
2.4 Spring Boot框架 4
第3章 系统分析 5
3.1 可行性分析 5
3.1.1 技术可行性 5
3.1.2 经济可行性 5
3.1.3 操作可行性 5
3.2 系统流程 5
3.2.1 操作流程 6
3.2.2 登录流程 6
3.2.3 删除信息流程 7
3.2.4 添加信息流程 7
3.3 性能需求 8
3.4 功能需求 9
第4章 系统设计 11
4.1 系统设计思想 11
4.2 功能结构设计 12
4.3 数据库设计 12
4.3.1 数据库概念设计 12
4.3.2 数据库物理设计 15
第5章 系统实现 17
5.1 管理员功能实现 17
5.1.1 菜品管理 17
5.1.2 公告管理 18
5.1.3 厨师管理 18
5.2 用户功能实现 19
5.2.1 菜品 19
5.2.2 厨师管理 19
5.2.3 公告管理 20
第6章 系统测试 21
6.1 功能测试 21
6.1.1 登录功能测试 21
6.2 系统测试结果 21
结 论 23
致 谢 25