Source code acquisition : Blog home page " resources " Download in !

Project description :

This is based on SpringBoot+Vue Online ordering system developed by framework . first , This is a front and rear end separation project . It has all the functions of an online ordering system .

Project function :

This project is divided into two roles : Ordinary users and administrators . Ordinary users have login and registration , Browse product information , Add shopping cart , Settlement order , View personal information , Functions such as viewing individual order details . The administrator has the right to manage all product information , Manage all order information , Manage all user information , View revenue data chart and other functions .

applied technology :SpringBoot + VueCli + MySQL + MyBatis + Redis + ElementUI

Operating environment :IntelliJ IDEA2019.3.5 + MySQL5.7+ Redis5.0.5 + JDK1.8 + Maven3.6.3+






administrators controller:
/** * administrators 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());// Paging query List<User> us=
userService.list(); int total = (int) new PageInfo<>(us).getTotal();// Total number
page.setTotal(total); model.addAttribute("us", us);// All users
model.addAttribute("total",total); Map<User,List<Role>> user_roles = new
HashMap<>(); // Corresponding permissions of each user 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"; }
/** * Modify administrator role * @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); // Currently owned roles 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 the password is not set at the time of modification , It means that the password will not be changed
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();// Generate random number 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"; } }

Administrator role controler:
/** * Administrator role 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());// Paging query List<Role> rs=
roleService.list(); int total = (int) new PageInfo<>(rs).getTotal();// Total number
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); // All permissions List<Permission> ps = permissionService.list();
model.addAttribute("ps", ps); // Permissions of the current administrator 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"; } }

Order module controller: 
/** * Order module controller */ @Controller @RequestMapping("/order") public class
OrderController { @Autowired OrderService orderService; @Autowired
OrderItemService orderItemService; /** * All orders * @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); // Add order item data for order orderItemService.fill(os);
model.addAttribute("os", os); model.addAttribute("page", page);
model.addAttribute("totals", total); return "ordermodule/order-list"; } /** *
Order shipment * @param o * @return */ @RequestMapping("/orderDelivery") public String
delivery(Order o){ o.setStatus(2); orderService.update(o); return
"redirect:list"; } /** * View the order items of the current order * @param oid * @param model * @return */
@RequestMapping("/seeOrderItem") public String seeOrderItem(int oid,Model
model){ Order o = orderService.get(oid); orderItemService.fill(o);
model.addAttribute("totalPrice",o.getTotal()); return
"ordermodule/orderItem-list"; } }
  Source code acquisition : Blog home page " resources " Download in !