作者主页:源码空间站2022
简介:Java领域优质创作者、Java项目、学习资料、技术互助
文末获取源码
Express-System
使用 spring boot,基于 ssm 框架和 shiro 安全框架,开发的一个物流管理系统。前端使用的是 H-ui 开源框架,运用了 Bootstrap table、zTree、PageHelper、jQuery validate 等插件。
特点
1. 基于 spring boot、maven 构建;
2. 运用了 spring、spring mvc、mybatis 和 shiro 框架;
3. 采用了 RBAC 的思路设计系统,采用了 Mysql 作为数据库支持;
4. 不同的角色登录系统会有不同的菜单列表,且会根据角色返回特定的数据;
5. 拥有基础数据管理模块,管理员管理模块,角色管理模块,权限管理模块,客户管理模块,订单管理模块和业务处理模块;
6. 能够实现完整的业务流程:添加客户、添加订单、订单处理、财务报表。
细节介绍
1. 业务员访问时,只能访问客户管理、订单管理、业务处理菜单,且只有添加的权力,没有修改和删除的权力;
2. 业务员添加订单时,只能基于自己拥有的客户添加;
3. 业务经理拥有客户管理、订单管理、业务处理的所有功能,可以查看所有业务员的客户和订单;
4. 总经理角色可以查看所有数据,但是没有修改的权力;
5. 仓管员只有业务处理中,测量物品信息和入库的功能,其他数据不可修改;
6. 财务可以查看审核订单价格详情并导出为 excel 表格。
运行环境:
1. JDK 1.8;
2. Maven;
3. Tomcat 8;
4. Mysql 8.0/Mysql 5.7均可。
使用前修改 application.properties 里的数据库的连接信息即可。可以通过 dataBase 目录下的 sql 文件创建所需要的表,数据库名字为 logistic_system。
测试账号
> username:admin
> password:123456
运行截图
代码相关
IndexController
@Controller
public class IndexController {
@RequiresPermissions("system:index")
@RequestMapping(value = {"/index", ""})
public String index() {
return "index";
}
@RequestMapping("/welcome")
@RequiresPermissions("system:index")
public String welcome() {
return "welcome";
}
@RequestMapping("/login")
public String login(HttpServletRequest request, Model m) {
//获取认证失败的错误信息,在Shiro框架的 FormAuthenticationFilter 过滤器中共享
//共享的属性名称 shiroLoginFailure , 通过 request 获取共享的 shiro 异常的字节码
String shiroLoginFailure = String.valueOf(request.getAttribute("shiroLoginFailure"));
if (UnknownAccountException.class.getName().equals(shiroLoginFailure)) {
m.addAttribute("errorMsg", "账户不存在");
} else if (IncorrectCredentialsException.class.getName().equals(shiroLoginFailure)) {
m.addAttribute("errorMsg", "密码错误");
}
return "login";
}
@RequestMapping("/checkVerifyCode")
@ResponseBody
public Boolean checkVerifyCode(String verifyCode, HttpSession session) {
String randCode = String.valueOf(session.getAttribute("rand"));
if (randCode.compareToIgnoreCase(verifyCode) == 0) {
return true;
}
return false;
}
@RequestMapping("/unauthorized")
public String unauthorized() {
return "unauthorized";
}
}
如果也想学习本系统,下面领取。回复:015springboot