Java项目:在线点餐系统(java+Springboot+Maven+mybatis+Vue+mysql+Redis)
2022/1/11 19:08:24
本文主要是介绍Java项目:在线点餐系统(java+Springboot+Maven+mybatis+Vue+mysql+Redis),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
项目描述:
这是一个基于SpringBoot+Vue框架开发的在线点餐系统。首先,这是一个前后端分离的项目。具有一个在线点餐系统该有的所有功能。
项目功能:
此项目分为两个角色:普通用户和管理员。普通用户有登录注册、浏览商品信息、添加购物车、结算订单、查看个人信息、查看个人订单详情等等功能。管理员有管理所有商品信息、管理所有订单信息、管理所有用户信息、查看收益数据图表等等功能。
应用技术:SpringBoot + VueCli + MySQL + MyBatis + Redis + ElementUI
运行环境:IntelliJ IDEA2019.3.5 + MySQL5.7+ Redis5.0.5 + JDK1.8 + Maven3.6.3+ Node14.16.1
管理员controller:
/** * 管理员controller */ @Controller @RequestMapping("/config") public class UserController { @Autowired UserRoleService userRoleService; @Autowired UserService userService; @Autowired RoleService roleService; @RequestMapping("/enableStatus") @ResponseBody public String enableStatus(@RequestParam(value = "name") String name){ return userService.enableStatus(name); } @RequestMapping("/stopStatus") @ResponseBody public String stopStatus(@RequestParam(value = "name") String name){ return userService.stopStatus(name); } @RequestMapping("/adminAdd") public String adminadd(Model model){ List<Role> list = roleService.list(); model.addAttribute("rolelist",list); return "syspage/admin-add"; } @RequestMapping("/listUser") public String list(Model model, Page page){ PageHelper.offsetPage(page.getStart(),page.getCount());//分页查询 List<User> us= userService.list(); int total = (int) new PageInfo<>(us).getTotal();//总条数 page.setTotal(total); model.addAttribute("us", us);//所有用户 model.addAttribute("total",total); Map<User,List<Role>> user_roles = new HashMap<>(); //每个用户对应的权限 for (User user : us) { List<Role> roles=roleService.listRoles(user); user_roles.put(user, roles); } model.addAttribute("user_roles", user_roles); return "syspage/admin-list"; } /** * 修改管理员角色 * @param model * @param id * @return */ @RequestMapping("/editUser") public String edit(Model model,Long id){ List<Role> rs = roleService.list(); model.addAttribute("rs", rs); User user =userService.get(id); model.addAttribute("user", user); //当前拥有的角色 List<Role> roles =roleService.listRoles(user); model.addAttribute("currentRoles", roles); return "syspage/admin-edit"; } @RequestMapping("deleteUser") public String delete(Model model,long id){ userService.delete(id); return "redirect:listUser"; } @RequestMapping("updateUser") public String update(User user, long[] roleIds){ userRoleService.setRoles(user,roleIds); String password=user.getPassword(); //如果在修改的时候没有设置密码,就表示不改动密码 if(user.getPassword().length()!=0) { String salt = new SecureRandomNumberGenerator().nextBytes().toString(); int times = 2; String algorithmName = "md5"; String encodedPassword = new SimpleHash(algorithmName,password,salt,times).toString(); user.setSalt(salt); user.setPassword(encodedPassword); } else user.setPassword(null); userService.update(user); return "redirect:listUser"; } @RequestMapping("addUser") public String add(User user,long[] roleIds){ String salt = new SecureRandomNumberGenerator().nextBytes().toString();//生成随机数 int times = 2; String algorithmName = "md5"; String encodedPassword = new SimpleHash(algorithmName,user.getPassword(),salt,times).toString(); User u = new User(); u.setName(user.getName()); u.setPassword(encodedPassword); u.setSalt(salt); u.setStatus(1); u.setAddress(user.getAddress()); u.setPhone(user.getPhone()); userService.add(u); userRoleService.setRoles(u,roleIds); return "redirect:listUser"; } }
管理员角色controler:
/** * 管理员角色controler */ @Controller @RequestMapping("/config") public class RoleController { @Autowired RoleService roleService; @Autowired RolePermissionService rolePermissionService; @Autowired PermissionService permissionService; @RequestMapping("/addRoleUI") public String addRole(){ return "syspage/admin-role-add"; } @RequestMapping("/listRole") public String list(Model model, Page page){ PageHelper.offsetPage(page.getStart(),page.getCount());//分页查询 List<Role> rs= roleService.list(); int total = (int) new PageInfo<>(rs).getTotal();//总条数 page.setTotal(total); model.addAttribute("rs", rs); model.addAttribute("roleSize",total); Map<Role,List<Permission>> role_permissions = new HashMap<>(); for (Role role : rs) { List<Permission> ps = permissionService.list(role); role_permissions.put(role, ps); } model.addAttribute("role_permissions", role_permissions); return "syspage/admin-role"; } @RequestMapping("/editRole") public String list(Model model,long id){ Role role =roleService.get(id); model.addAttribute("role", role); //所有权限 List<Permission> ps = permissionService.list(); model.addAttribute("ps", ps); //当前管理员拥有的权限 List<Permission> currentPermissions = permissionService.list(role); model.addAttribute("currentPermissions", currentPermissions); return "syspage/admin-role-edit"; } @RequestMapping("/updateRole") public String update(Role role,long[] permissionIds){ rolePermissionService.setPermissions(role, permissionIds); roleService.update(role); return "redirect:listRole"; } @RequestMapping("/addRole") public String list(Model model,Role role){ roleService.add(role); return "redirect:listRole"; } @RequestMapping("/deleteRole") public String delete(Model model,long id){ roleService.delete(id); return "redirect:listRole"; } }
订单模块controller:
/** * 订单模块controller */ @Controller @RequestMapping("/order") public class OrderController { @Autowired OrderService orderService; @Autowired OrderItemService orderItemService; /** * 所有订单 * @param model * @param page * @return */ @RequestMapping("/list") public String list(Model model, Page page){ PageHelper.offsetPage(page.getStart(),page.getCount()); List<Order> os= orderService.list(); int total = (int) new PageInfo<>(os).getTotal(); page.setTotal(total); //为订单添加订单项数据 orderItemService.fill(os); model.addAttribute("os", os); model.addAttribute("page", page); model.addAttribute("totals", total); return "ordermodule/order-list"; } /** * 订单发货 * @param o * @return */ @RequestMapping("/orderDelivery") public String delivery(Order o){ o.setStatus(2); orderService.update(o); return "redirect:list"; } /** * 查看当前订单的订单项 * @param oid * @param model * @return */ @RequestMapping("/seeOrderItem") public String seeOrderItem(int oid,Model model){ Order o = orderService.get(oid); orderItemService.fill(o); model.addAttribute("orderItems",o.getOrderItems()); model.addAttribute("total",o.getOrderItems().size()); model.addAttribute("totalPrice",o.getTotal()); return "ordermodule/orderItem-list"; } }
这篇关于Java项目:在线点餐系统(java+Springboot+Maven+mybatis+Vue+mysql+Redis)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-10百万架构师第十三课:源码分析:Spring 源码分析:Spring核心IOC容器及依赖注入原理|JavaGuide
- 2025-01-10便捷好用的电商API工具合集
- 2025-01-09必试!帮 J 人团队解决物流错发漏发的软件神器!
- 2025-01-09不容小觑!助力 J 人物流客服安抚情绪的软件!
- 2025-01-09为什么医疗团队协作离不开智能文档工具?
- 2025-01-09惊叹:J 人团队用啥软件让物流服务快又准?
- 2025-01-09如何利用数据分析工具优化项目资源分配?4种工具推荐
- 2025-01-09多学科协作难?这款文档工具可以帮你省心省力
- 2025-01-09团队中的技术项目经理TPM:工作内容与资源优化策略
- 2025-01-09JIT生产管理法:优化流程,提升竞争力的秘诀