项目第十天
项目需求
进行权限控制以及图形报表的生成
权限控制使用spring-security框架进行完成,图形及报表使用ECharts完成
1、权限设置
- pop文件中导入spring-security-web、spring-security-config坐标
<security:frame-options policy="SAMEORIGIN"></security:frame-options>
<!--设置在页面可以通过iframe访问受保护的页面,默认为不允许访问-->
- 进行注解设置 @PreAuthorize("hasAuthority('CHECKITEM_DELETE')")//权限校验
- 解决页面对无权限不提示的问题,在axios发送ajax的后面增加 catch方法,表示请求返回失败时,权限不足导致
2、登录成功后再页面显示用户名与登出操作
- 登录后跳转至main.html页面,触发钩子函数,发送ajax请求,获取用户的账号,用户的登录信息会保存到内存对象中,(Spring security完成认证后,会将当前用户信息保存到框架提供的上下文对象
User user = (User) SecurityContextHolder.getContext().getAuthentication().getPrincipal();)通过获取这个user对象来查找用户的姓名返回至前端显示在页面上
- 为登出按钮绑定 点击事件,点击后触发logout.do的方法(这个方法是定义在logout标签中的),就可以登出返回至登录页面
3、ECharts 商业级数据图标,百度开源可视化工具
- 分析需要什么样的图标,找到合适的图表,复制源码 导入html页面,导入echarts.js文件 引入资源
- 分析页面需要的数据 一个是月份 一个是每个月份对应的数据,这两个值要保持意义对应
- 页面加载触发事件,异步从后端获取月份的数据,通过calindar来操作时间,获取当前的一年的所有月份,以及每个月份的会员信息量,将数据封装到map集合中返回给前端展示