pull/2/head
wang ziting 3 months ago
parent 28f99910d6
commit ecaa541e38

@ -4,20 +4,29 @@
Date: 2020/2/10
Time: 10:32
To change this template use File | Settings | File Templates.
这部分是JSP页面头部的注释主要说明了该文件创建时相关信息例如创建者、创建日期、时间以及提示如何修改模板等内容方便后续对代码来源及修改情况进行追溯。
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<!-- 引入自定义的用于用户登录页面的CSS样式文件路径通过JSP表达式语言${pageContext.request.contextPath})获取当前页面上下文请求路径后拼接而成,目的是为登录页面设置特定的样式风格,使其符合设计要求。 -->
<link rel="stylesheet" href="${pageContext.request.contextPath}/css/usersLogin.css">
<!-- 引入页面图标文件指定图标大小为32x32像素用于在浏览器的标签页等位置显示特定的图标增强页面的辨识度和品牌性如果是对应特定项目的话。 -->
<link rel="icon" href="${pageContext.request.contextPath}/images/favicon.ico" sizes="32x32" />
<!-- 引入自定义的通用样式文件根据media属性中指定的“screen”可知主要用于屏幕显示相关的样式设置同样通过页面请求路径拼接来获取样式文件位置用于页面整体通用样式的规范和美化。 -->
<link rel="stylesheet" media="screen" href="${pageContext.request.contextPath}/css/style.css">
<!-- 引入用于重置页面默认样式的CSS文件类型声明为“text/css”路径也是基于请求路径拼接它能清除浏览器自带的一些默认样式让页面在不同浏览器下展示效果更趋一致。 -->
<link rel="stylesheet" type="text/css" href="${pageContext.request.contextPath}/css/reset.css"/>
<!-- 引入jQuery库的JavaScript文件jQuery是一个广泛使用的JavaScript库能极大地简化DOM操作、事件处理等常见的前端开发任务方便后续编写交互逻辑。 -->
<script src="${pageContext.request.contextPath}/js/jquery-3.1.1.js"></script>
<!-- 引入layer组件的JavaScript文件layer组件常用于在页面中弹出提示框、模态框等交互效果这里引入是为了后续展示如登录验证提示等相关信息。 -->
<script src="${pageContext.request.contextPath}/layer/layer.js" type="text/javascript"></script>
<!-- 引入自定义的与登录相关的JavaScript文件可能包含一些登录业务特有的逻辑处理代码等通过请求路径拼接来定位文件辅助实现登录页面的各种功能。 -->
<script src="${pageContext.request.contextPath}/js/login.js"></script>
<title>登录页面--LOGIN</title>
<%--<script type="text/javascript">
<%-- 以下这段JavaScript代码被注释掉了原本的功能是在页面加载完成通过$(function () {...}) 这种jQuery的就绪函数来确保DOM加载完毕监听用户名输入框id为“username”的内容变化事件change事件。当用户名输入框的值改变时会获取输入框的值通过$(this).val()获取然后发起一个GET类型的Ajax异步请求到服务器端的“checkUserName”接口路径通过表达式语言拼接而成传递用户名参数{"u_name":u_name}并根据服务器返回的消息msg进行判断如果消息不是“账号可用”就弹出提示“账号不存在”的信息框。不过当前处于注释状态未生效。 --%>
<%--<script type="text/javascript">
$(function () {
//ajax校验用户名是否存在
$("#username").change(function () {
@ -26,62 +35,86 @@
//ajax异步请求
$.get("${pageContext.request.contextPath}/checkUserName",{"u_name":u_name},function (msg) {
//$(".error").html(msg);
if (msg != "账号可用") {
if (msg!= "账号可用") {
layer.msg('账号不存在');
}
});
});
});
</script>--%>
</script>--%>
</head>
<body>
<!-- 创建一个HTML表单通过action属性指定表单提交的目标URL这里使用表达式语言拼接出指向登录处理的后端接口路径设置表单名称为“myform”提交方法为“post”用于将用户输入的登录信息发送到服务器端进行验证处理。 -->
<form action="${pageContext.request.contextPath}/login" name="myform" method="post">
<div id="particles-js">
<div class="login">
<div class="login-top">
后台登录
</div>
<div class="login-center clearfix">
<div class="login-center-img"><img src="${pageContext.request.contextPath}/images/name.png"/></div>
<div class="login-center-input">
<input type="text" id="username" name="username" placeholder="请输入您的用户名" onfocus="this.placeholder=''" onblur="this.placeholder='请输入您的用户名'"/>
<div class="login-center-input-text">用户名</div>
<!-- 创建一个具有特定效果可能与粒子特效相关需结合引入的js文件进一步确定一般用于页面背景装饰等的容器id为“particles-js”作为登录相关元素的父容器营造出独特的页面视觉效果。 -->
<div id="particles-js">
<!-- 创建一个登录框相关的容器应用了“login”类推测在对应的CSS文件中有对这个类定义的样式规则用于包裹登录框内的各个部分如标题、输入框、按钮等来实现登录框整体的布局和样式呈现。 -->
<div class="login">
<!-- 登录框顶部区域的容器,用于显示如“后台登录”这样的标题文本,给用户明确提示当前登录的是后台系统。 -->
<div class="login-top">
后台登录
</div>
</div>
<div class="login-center clearfix">
<div class="login-center-img"><img src="${pageContext.request.contextPath}/images/password.png"/></div>
<div class="login-center-input">
<input type="password" id="password" name="password" placeholder="请输入您的密码" onfocus="this.placeholder=''" onblur="this.placeholder='请输入您的密码'"/>
<div class="login-center-input-text">密码</div>
<!-- 创建登录框中间区域的容器并应用“clearfix”类用于清除浮动在CSS中通过这个类设置相关样式确保内部的浮动元素布局正常避免出现排版混乱问题用于放置用户名相关的输入框等元素使其在水平方向上合理排列。 -->
<div class="login-center clearfix">
<!-- 创建一个用于放置用户名图标的容器,里面嵌入一个图片元素,通过指定的路径(使用表达式语言拼接获取)加载用户名对应的图标图片,用于在视觉上标识这是用户名输入的区域。 -->
<div class="login-center-img"><img src="${pageContext.request.contextPath}/images/name.png"/></div>
<!-- 创建一个用于放置用户名输入框的容器,包含实际的输入框元素和相关提示文本元素,用于用户输入用户名以及显示相应提示信息。 -->
<div class="login-center-input">
<!-- 创建一个文本输入框设置id为“username”方便后续通过JavaScript代码获取其值和操作设置name属性为“username”用于在表单提交时作为参数名传递给服务器添加占位提示文字“请输入您的用户名”并且通过onfocus和onblur事件来控制当输入框获取焦点用户点击输入框准备输入时和失去焦点用户鼠标离开输入框后时占位文字的显示和隐藏提升用户体验。 -->
<input type="text" id="username" name="username" placeholder="请输入您的用户名" onfocus="this.placeholder=''" onblur="this.placeholder='请输入您的用户名'"/>
<!-- 创建一个用于显示用户名提示文本的容器初始显示“用户名”字样可能通过后续的JavaScript交互逻辑比如输入框获取焦点时隐藏等来改变其显示状态进一步辅助用户了解该输入框的用途。 -->
<div class="login-center-input-text">用户名</div>
</div>
</div>
<!-- 再次创建登录框中间区域的容器(结构与上面用户名部分类似),用于放置密码相关的输入框等元素,将密码相关的输入和提示信息组织在一起,方便用户操作和查看。 -->
<div class="login-center clearfix">
<!-- 创建一个用于放置密码图标的容器,嵌入对应的密码图标图片,从指定路径(通过表达式语言获取)加载,用于直观地提示用户此处是输入密码的地方。 -->
<div class="login-center-img"><img src="${pageContext.request.contextPath}/images/password.png"/></div>
<!-- 创建一个用于放置密码输入框的容器,同样包含实际输入框和提示文本元素,用于密码的输入及相关提示展示。 -->
<div class="login-center-input">
<!-- 创建一个密码输入框设置id为“password”方便操作name为“password”用于表单提交传参添加占位提示文字“请输入您的密码”通过onfocus和onblur事件控制占位文字的显示和隐藏与用户名输入框的交互方式类似符合常规的用户输入习惯。 -->
<input type="password" id="password" name="password" placeholder="请输入您的密码" onfocus="this.placeholder=''" onblur="this.placeholder='请输入您的密码'"/>
<!-- 创建一个用于显示密码提示文本的容器,初始显示“密码”字样,后续可根据交互逻辑改变显示状态,辅助用户识别该输入框功能。 -->
<div class="login-center-input-text">密码</div>
</div>
</div>
<!-- 创建一个登录按钮相关的容器应用“login-button”类在CSS中有对应的样式定义用于设置按钮的外观样式如颜色、大小、边框等设置点击事件点击时调用“check()”函数,通过这个函数来进行登录前的输入信息验证等操作,决定是否能提交表单。 -->
<div class="login-button" onclick="check()">
登录
</div>
<!-- 创建一个用于显示提示信息的文本元素设置文本居中对齐、颜色为红色通过表达式语言获取并显示“msg”变量的值推测是后端传递过来的错误提示等信息比如登录失败原因等并且添加一些空格用于排版让提示信息在页面上展示更清晰美观方便用户查看。 -->
<span style="text-align: center;color: red;"><br>&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;${msg}</span>
</div>
<div class="login-button" onclick="check()">
登录
</div>
<span style="text-align: center;color: red;"><br>&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;${msg}</span>
<!-- 创建一个用于显示特定动画效果的元素比如旋转平面动画效果需结合相关CSS和JavaScript代码来看具体效果可能是作为页面的一个加载动画或者装饰性动画元素目前为空的div其具体显示内容和动画效果由对应的样式和脚本控制。 -->
<div class="sk-rotating-plane"></div>
</div>
<div class="sk-rotating-plane"></div>
</div>
</form>
<!-- 引入用于实现粒子效果的JavaScript库文件路径通过表达式语言获取当前页面上下文请求路径拼接而成它负责在页面中展示出粒子相关的特效为登录页面营造出独特的视觉氛围增强页面的观赏性和交互感。 -->
<script src="${pageContext.request.contextPath}/js/particles.min.js"></script>
<!-- 引入用于初始化页面相关功能可能与粒子效果以及登录页面整体功能结合相关比如初始化粒子效果的参数、绑定页面元素的一些交互事件等的JavaScript文件同样通过请求路径拼接来定位文件保障页面各项功能正常运行。 -->
<script src="${pageContext.request.contextPath}/js/app.js"></script>
<script type="text/javascript">
function check() {
// 获取用户名输入框id为“username”中的值并使用trim()方法去除前后空格,确保获取到的用户名数据干净、规范,便于后续验证和使用。
var username = $("#username").val().trim();
// 获取密码输入框id为“password”中的值同样使用trim()方法去除前后空格,得到准确的密码输入内容,准备进行密码相关的格式等验证。
var password = $("#password").val().trim();
// 判断用户名是否为空null、空字符串或者长度为0都视为空如果是这种情况就使用layer组件弹出提示信息“请输入用户帐号”并且终止后续表单提交操作通过返回false来阻止表单提交提醒用户必须输入用户名才能进行登录。
if (username == null || username == "" || username.length == 0) {
layer.msg('请输入用户帐号');
return false;
}
// 判断密码是否为空如果为空同样使用layer组件弹出提示“请输入登录密码”并终止表单提交要求用户输入密码才能继续登录流程。
if (password == null || password == "" || password.length == 0) {
layer.msg('请输入登录密码');
return false;
}
// 判断密码长度是否小于4或者大于20如果满足这个条件说明密码格式不符合要求这里限定密码长度在4 - 20位字符之间则使用layer组件弹出提示信息“密码格式有误4 - 20位字符同时终止表单提交引导用户输入符合格式规范的密码。
if (password.length < 4 || password.length > 20) {
layer.msg('密码格式有误4-20位字符');
layer.msg('密码格式有误4 - 20位字符');
return false;
}
// 如果前面的所有验证都通过用户名和密码都不为空且密码长度符合要求就提交表单通过表单对象的submit()方法将用户在表单中输入的用户名和密码等数据发送到后端的登录处理接口由表单的action属性指定的路径进行后续的登录验证操作。
document.myform.submit();
}
</script>

@ -5,32 +5,44 @@
Date: 2020/2/10
Time: 15:58
To change this template use File | Settings | File Templates.
这部分是JSP页面头部的注释说明了该文件创建时的相关信息如创建者、创建日期、时间以及提示如何修改模板等内容。
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
<!doctype html>
<html>
<head>
<title>管理员端平台</title>
<!-- 引入字体相关的CSS样式文件路径通过表达式语言获取当前页面上下文请求路径拼接而成用于页面中字体的显示样式设置。 -->
<link rel="stylesheet" href="${pageContext.request.contextPath}/css/font.css">
<!-- 引入xadmin框架的CSS样式文件用于实现该框架下特定的页面布局和样式效果。 -->
<link rel="stylesheet" href="${pageContext.request.contextPath}/css/xadmin.css">
<!-- 引入特定的灰色管理员主题的CSS样式文件从文件名推测是主题相关样式用于设置页面整体的主题风格使其呈现出灰色调的管理员界面风格这是一条注释对引入的这个文件作用做了简单说明。 -->
<link rel="stylesheet" href="${pageContext.request.contextPath}/css/theme2571.min.css"><%--灰色管理员主题 --%>
<!-- 引入jQuery库的JavaScript文件这是一个常用的JavaScript库用于简化DOM操作、事件处理等功能。 -->
<script type="text/javascript" src="${pageContext.request.contextPath}/js/jquery-3.1.1.js"></script>
<!-- 引入layui框架的JavaScript核心文件layui是一个用于构建页面交互界面的前端框架。 -->
<script src="${pageContext.request.contextPath}/lib/layui/layui.js" charset="utf-8"></script>
<!-- 引入xadmin框架的JavaScript文件用于实现该框架相关的功能和交互效果。 -->
<script type="text/javascript" src="${pageContext.request.contextPath}/js/xadmin.js"></script>
<script>
// 是否开启刷新记忆tab功能
// var is_remember = false;
// 上面这行代码定义了一个变量is_remember用于控制是否开启刷新记忆tab的功能但目前被注释掉了可能后续根据需求决定是否启用这个功能若启用则需要去掉注释并进行相应的逻辑实现。
</script>
</head>
<body class="index">
<!-- 顶部开始 -->
<div class="container">
<!-- 页面左上角的logo部分点击链接可以跳转到指定的网址这里是"http://ppdxzz.cn"),显示的文本是"皮皮的小猪仔",用于品牌展示或者作为返回首页等功能的入口(取决于具体业务逻辑)。 -->
<div class="logo">
<a href="http://ppdxzz.cn">皮皮的小猪仔</a></div>
<!-- 用于展开左侧栏的按钮部分,点击按钮(<a>标签包裹),图标(<i>标签应用特定的图标字体类,这里是"iconfont"并通过Unicode编码指定具体图标样式"&#xe699;"来显示展开图标会触发相应的展开左侧栏的操作具体操作可能在相关的JavaScript代码中实现比如显示隐藏左侧菜单的DOM元素等标题属性"展开左侧栏"用于鼠标悬停时提示用户该按钮的功能。 -->
<div class="left_open">
<a><i title="展开左侧栏" class="iconfont">&#xe699;</i></a>
</div>
<!-- 页面右上角的导航栏部分使用layui的导航组件layui-nav类lay-filter属性用于后续对导航栏进行一些筛选、事件绑定等操作虽然这里为空字符串但按照layui框架规范预留了该属性里面包含多个菜单项<li>标签表示一个菜单项)。 -->
<ul class="layui-nav right" lay-filter="">
<!-- 第一个菜单项,显示文本为"我的消息",点击后会展开二级菜单(通过<dl>和<dd>标签构建二级菜单结构),用于展示不同类型的消息相关选项。 -->
<li class="layui-nav-item">
<a href="javascript:;">我的消息</a>
<dl class="layui-nav-child">
@ -46,6 +58,7 @@
</dd>
</dl>
</li>
<!-- 第二个菜单项显示当前登录管理员的姓名通过表达式语言从会话范围获取adminInfo对象的name属性来展示点击后同样展开二级菜单提供个人信息查看、切换帐号、退出等功能选项。 -->
<li class="layui-nav-item">
<a href="javascript:;">${sessionScope.adminInfo.name}</a>
<dl class="layui-nav-child">
@ -58,6 +71,7 @@
<a href="${pageContext.request.contextPath}/loginOut">退出</a></dd>
</dl>
</li>
<!-- 第三个菜单项显示文本包含一个友情链接的图标通过layui-icon类以及特定的Unicode编码"&#xe64c;"来显示图标样式)和"友情链接"文字,点击后可跳转到指定的网址(这里是"http://ppdxzz.cn"),用于引导用户访问相关的友情链接页面。 -->
<li class="layui-nav-item to-index">
<a href="http://ppdxzz.cn"><i class="layui-icon">&#xe64c;</i>友情链接</a>
</li>
@ -69,22 +83,26 @@
<div class="left-nav">
<div id="side-nav">
<ul id="nav">
<!-- 使用JSTL的标签进行条件判断如果管理员的权限通过表达式语言从会话范围获取adminInfo对象的power属性大于2推测权限值越大权限越高大于2表示有较高权限比如超级管理员等则显示以下菜单项用于学生管理相关功能入口。 -->
<c:if test="${sessionScope.adminInfo.power > 2}">
<li>
<a href="javascript:;">
<i class="iconfont left-nav-li" lay-tips="学生管理">&#xe6b8;</i>
<cite>学生管理</cite>
<i class="iconfont nav_right">&#xe697;</i>
</a>
<ul class="sub-menu">
<li>
<a onclick="xadmin.add_tab('学生信息','${pageContext.request.contextPath}/student/findAll')">
<i class="iconfont">&#xe6a7;</i>
<cite>学生信息</cite></a>
</li>
</ul>
</li>
<li>
<a href="javascript:;">
<!-- 使用特定的图标字体类iconfont并通过Unicode编码指定图标样式"&#xe6b8;"来显示一个图标lay-tips属性用于鼠标悬停时提示用户该菜单项对应的功能是"学生管理"<cite>标签内显示菜单项的文本名称"学生管理",另一个图标("&#xe697;")可能用于表示展开收起子菜单等操作(具体由样式控制)。 -->
<i class="iconfont left-nav-li" lay-tips="学生管理">&#xe6b8;</i>
<cite>学生管理</cite>
<i class="iconfont nav_right">&#xe697;</i>
</a>
<ul class="sub-menu">
<li>
<!-- 通过调用xadmin框架提供的add_tab函数在xadmin.js中应该有定义添加一个名为"学生信息"的tab页点击该菜单项后会跳转到对应的URL通过表达式语言拼接出查找所有学生信息的接口路径"${pageContext.request.contextPath}/student/findAll"),用于展示学生信息列表等相关功能。 -->
<a onclick="xadmin.add_tab('学生信息','${pageContext.request.contextPath}/student/findAll')">
<i class="iconfont">&#xe6a7;</i>
<cite>学生信息</cite></a>
</li>
</ul>
</li>
</c:if>
<!-- 再次使用标签判断如果管理员权限等于2推测是普通管理员之类的角色则显示以下不同的学生管理相关菜单项其URL拼接了根据当前管理员姓名查找学生信息的参数可能用于普通管理员查看其负责管理的学生信息。 -->
<c:if test="${sessionScope.adminInfo.power == 2}">
<li>
<a href="javascript:;">
@ -101,25 +119,26 @@
</ul>
</li>
</c:if>
<!-- 类似前面的权限判断如果管理员权限大于2显示以下管理员管理相关的菜单项包含管理员列表查看以及权限管理目前权限管理点击调用power函数从后面定义的函数来看是提示功能暂未开放等功能入口。 -->
<c:if test="${sessionScope.adminInfo.power > 2}">
<li>
<a href="javascript:;">
<i class="iconfont left-nav-li" lay-tips="管理员管理">&#xe726;</i>
<cite>管理员管理</cite>
<i class="iconfont nav_right">&#xe697;</i></a>
<ul class="sub-menu">
<li>
<a onclick="xadmin.add_tab('管理员列表','${pageContext.request.contextPath}/findAllAdmin')">
<i class="iconfont">&#xe6a7;</i>
<cite>管理员列表</cite></a>
</li>
<li>
<a onclick="power()">
<i class="iconfont">&#xe6a7;</i>
<cite>权限管理</cite></a>
</li>
</ul>
</li>
<li>
<a href="javascript:;">
<i class="iconfont left-nav-li" lay-tips="管理员管理">&#xe726;</i>
<cite>管理员管理</cite>
<i class="iconfont nav_right">&#xe697;</i></a>
<ul class="sub-menu">
<li>
<a onclick="xadmin.add_tab('管理员列表','${pageContext.request.contextPath}/findAllAdmin')">
<i class="iconfont">&#xe6a7;</i>
<cite>管理员列表</cite></a>
</li>
<li>
<a onclick="power()">
<i class="iconfont">&#xe6a7;</i>
<cite>权限管理</cite></a>
</li>
</ul>
</li>
</c:if>
<li>
<a href="javascript:;">
@ -127,6 +146,7 @@
<cite>宿舍管理</cite>
<i class="iconfont nav_right">&#xe697;</i></a>
<ul class="sub-menu">
<!-- 根据不同的管理员权限显示不同的宿舍管理相关菜单项。如果权限大于2高权限可以查看所有宿舍列表点击后通过xadmin框架的add_tab函数添加名为"宿舍列表"的tab页并跳转到查找所有宿舍信息的接口路径。 -->
<c:if test="${sessionScope.adminInfo.power > 2}">
<li>
<a onclick="xadmin.add_tab('宿舍列表','${pageContext.request.contextPath}/dorm/findAll')">
@ -134,7 +154,8 @@
<cite>宿舍列表</cite></a>
</li>
</c:if>
<%--普通管理员只能看到自己所带宿舍的人员信息--%>
<!-- 如果权限等于2普通管理员则查看自己所带宿舍的人员信息URL中拼接了根据当前管理员的唯一标识uid查找宿舍信息的参数通过add_tab函数添加tab页来展示相关信息。 -->
<%--普通管理员只能看到自己所带宿舍的人员信息--%>
<c:if test="${sessionScope.adminInfo.power == 2}">
<li>
<a onclick="xadmin.add_tab('宿舍列表','${pageContext.request.contextPath}/dorm/byTeacher?uid=${sessionScope.adminInfo.uid}')">
@ -142,7 +163,8 @@
<cite>宿舍列表</cite></a>
</li>
</c:if>
<%--宿舍长只能看到自己所在宿舍的人员信息--%>
<!-- 如果权限等于1宿舍长则只能看到自己所在宿舍的人员信息以及宿舍信息分别通过不同的URL拼接了管理员的uid参数和add_tab函数来添加相应的tab页展示对应信息。 -->
<%--宿舍长只能看到自己所在宿舍的人员信息--%>
<c:if test="${sessionScope.adminInfo.power == 1}">
<li>
<a onclick="xadmin.add_tab('宿舍信息','${pageContext.request.contextPath}/dorm/look?uid=${sessionScope.adminInfo.uid}')">
@ -157,51 +179,52 @@
</c:if>
</ul>
</li>
<!-- 如果管理员权限大于2显示以下访客管理相关的菜单项包含访客信息查看、来访登记目前点击提示暂不支持网页端登记通过tip函数实现提示功能、访客日志查看等功能入口每个功能通过add_tab函数添加相应的tab页并跳转到对应的接口路径有的还拼接了分页等参数。 -->
<c:if test="${sessionScope.adminInfo.power > 2}">
<li>
<a href="javascript:;">
<i class="iconfont left-nav-li" lay-tips="访客管理">&#xe6f5;</i>
<cite>访客管理</cite>
<i class="iconfont nav_right">&#xe6f5;</i></a>
<ul class="sub-menu">
<li>
<a onclick="xadmin.add_tab('访客信息','${pageContext.request.contextPath}/visitor/findAll')">
<i class="iconfont">&#xe6a7;</i>
<cite>访客信息</cite>
</a>
</li>
<li>
<a onclick="tip()" href="javascript:;">
<i class="iconfont">&#xe6a7;</i>
<cite>来访登记(手机端)</cite>
</a>
</li>
<li>
<a onclick="xadmin.add_tab('访客日志','${pageContext.request.contextPath}/visitor/log?page=1&size=10')">
<i class="iconfont">&#xe6a7;</i>
<cite>访客日志</cite>
</a>
</li>
</ul>
</li>
<li>
<a href="javascript:;">
<i class="iconfont left-nav-li" lay-tips="系统统计">&#xe6ce;</i>
<cite>系统统计</cite>
<i class="iconfont nav_right">&#xe697;</i></a>
<ul class="sub-menu">
<li>
<a onclick="power()">
<i class="iconfont">&#xe6a7;</i>
<cite>曲线统计</cite></a>
</li>
<li>
<a onclick="power()">
<i class="iconfont">&#xe6a7;</i>
<cite>实时流量统计</cite></a>
</li>
</ul>
</li>
<li>
<a href="javascript:;">
<i class="iconfont left-nav-li" lay-tips="访客管理">&#xe6f5;</i>
<cite>访客管理</cite>
<i class="iconfont nav_right">&#xe6f5;</i></a>
<ul class="sub-menu">
<li>
<a onclick="xadmin.add_tab('访客信息','${pageContext.request.contextPath}/visitor/findAll')">
<i class="iconfont">&#xe6a7;</i>
<cite>访客信息</cite>
</a>
</li>
<li>
<a onclick="tip()" href="javascript:;">
<i class="iconfont">&#xe6a7;</i>
<cite>来访登记(手机端)</cite>
</a>
</li>
<li>
<a onclick="xadmin.add_tab('访客日志','${pageContext.request.contextPath}/visitor/log?page=1&size=10')">
<i class="iconfont">&#xe6a7;</i>
<cite>访客日志</cite>
</a>
</li>
</ul>
</li>
<li>
<a href="javascript:;">
<i class="iconfont left-nav-li" lay-tips="系统统计">&#xe6ce;</i>
<cite>系统统计</cite>
<i class="iconfont nav_right">&#xe697;</i></a>
<ul class="sub-menu">
<li>
<a onclick="power()">
<i class="iconfont">&#xe6a7;</i>
<cite>曲线统计</cite></a>
</li>
<li>
<a onclick="power()">
<i class="iconfont">&#xe6a7;</i>
<cite>实时流量统计</cite></a>
</li>
</ul>
</li>
</c:if>
</ul>
</div>
@ -218,6 +241,7 @@
</ul>
<div class="layui-tab-content"><%--中间的空白面板--%>
<div class="layui-tab-item layui-show o_div" >
<!-- 根据管理员权限判断如果权限大于2通过>标签引入名为"welcome.jsp"的页面,可能用于展示高权限管理员登录后的欢迎页面或者一些重要信息等内容,具体取决于"welcome.jsp"页面的实现。 -->
<c:if test="${sessionScope.adminInfo.power > 2}">
<jsp:include page="welcome.jsp"></jsp:include>
</c:if>
@ -234,13 +258,5 @@
<!-- 底部结束 -->
</body>
<script>
function tip() {
layer.msg('目前暂不支持网页端登记');
return false;
}
function power() {
layer.msg('该功能暂未开放');
return false;
}
function tip() {}
</script>
</html>

Loading…
Cancel
Save