main
tamguo 7 years ago
parent 0458f4c24f
commit f4e7d0a4d8

@ -76,11 +76,6 @@
<artifactId>shiro-ehcache</artifactId>
<version>1.2.5</version>
</dependency>
<dependency>
<groupId>com.github.theborakompanioni</groupId>
<artifactId>thymeleaf-extras-shiro</artifactId>
<version>1.2.1</version>
</dependency>
<dependency>
<groupId>cn.songxinqiang</groupId>
<artifactId>com.baidu.ueditor</artifactId>
@ -138,6 +133,11 @@
<artifactId>commons-email</artifactId>
<version>1.5</version>
</dependency>
<dependency>
<groupId>com.github.theborakompanioni</groupId>
<artifactId>thymeleaf-extras-shiro</artifactId>
<version>1.2.1</version>
</dependency>
</dependencies>
<dependencyManagement>

@ -1,7 +1,6 @@
package com.tamguo.common;
import java.util.Properties;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@ -28,8 +27,9 @@ public class WebConfig implements WebMvcConfigurer {
// properties.setProperty("kaptcha.border.color", "105,179,90");
properties.setProperty("kaptcha.border", "no");
properties.setProperty("kaptcha.image.width", "125");
properties.setProperty("kaptcha.image.height", "38");
properties.setProperty("kaptcha.image.height", "40");
properties.setProperty("kaptcha.session.key", "code");
properties.setProperty("kaptcha.textproducer.char.space", "4");
properties.setProperty("kaptcha.textproducer.char.length", "4");
properties.setProperty("kaptcha.textproducer.font.names", "宋体,楷体,微软雅黑");
Config config=new Config(properties);

@ -59,8 +59,8 @@ public class ShiroConfiguration {
public ShiroFilterFactoryBean getShiroFilterFactoryBean() {
ShiroFilterFactoryBean shiroFilterFactoryBean = new ShiroFilterFactoryBean();
shiroFilterFactoryBean.setSecurityManager(getDefaultWebSecurityManager());
shiroFilterFactoryBean.setLoginUrl("/login");
shiroFilterFactoryBean.setSuccessUrl("/index");
shiroFilterFactoryBean.setLoginUrl("/sysLogin");
shiroFilterFactoryBean.setSuccessUrl("/sysIndex");
filterChainDefinitionMap.put("/jquery/**", "anon");
filterChainDefinitionMap.put("/adminlte/**", "anon");
filterChainDefinitionMap.put("/bootstrap/**", "anon");
@ -79,7 +79,8 @@ public class ShiroConfiguration {
filterChainDefinitionMap.put("/modules/**", "anon");
filterChainDefinitionMap.put("/my97/**", "anon");
filterChainDefinitionMap.put("/select2/**", "anon");
filterChainDefinitionMap.put("/login/**", "anon");
filterChainDefinitionMap.put("/sysLogin/**", "anon");
filterChainDefinitionMap.put("/sysIndex/**", "anon");
filterChainDefinitionMap.put("/validCode", "anon");
filterChainDefinitionMap.put("/**", "authc");
shiroFilterFactoryBean.setFilterChainDefinitionMap(filterChainDefinitionMap);

@ -0,0 +1,15 @@
package com.tamguo.modules.sys.web;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
@Controller
public class IndexController {
@RequestMapping(path="sysIndex")
public String sysLogin(ModelAndView model) {
return "sysIndex.html";
}
}

@ -14,6 +14,7 @@ import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView;
import com.google.code.kaptcha.Constants;
import com.tamguo.common.utils.ExceptionSupport;
@ -23,9 +24,9 @@ import com.tamguo.common.utils.ShiroUtils;
@Controller
public class LoginController {
@RequestMapping(path="login")
public String helloWorld() {
return "login";
@RequestMapping(path="sysLogin")
public String sysLogin(ModelAndView model) {
return "sysLogin.html";
}
@ResponseBody

@ -0,0 +1,5 @@
/*!
* 消息推送实现
* @author ThinkGem
*/
$(function(){unreadMsg()});function unreadMsg(){$.get(ctx+"/msg/unreadMsg?__notUpdateSession=true&__t="+new Date().getTime(),function(d){var b=$("#msgList").empty();var a=d.count||0,c=d.list||[];for(i=0;i<c.length;i++){b.append(js.template("msgListTpl",c[i]))}$("#msgNum, #msgNum2").text(a);$(".timeago").timeago();pullPoolMsg();if(window.ppmInt){clearInterval(window.ppmInt)}window.ppmInt=setInterval(pullPoolMsg,60*1000)})}function pullPoolMsg(){var a=$("#msgList");var b=a.attr("data-mergeMsgLimit");$.get(ctx+"/msg/pullPoolMsg?__notUpdateSession=true&__t="+new Date().getTime(),function(e){for(i=0;i<e.length;i++){if(!(e.length>b)){var g=js.template("msgTipTpl",e[i]);js.showMessage(g,e[i].msgContentEntity.title,"info",1000*60)}if(e[i].id&&e[i].id!=""){a.prepend(js.template("msgListTpl",e[i]))}doFlashTitle()}if(e.length>b){var f={msgContentEntity:{title:a.attr("data-mergeMsgTitle"),content:js.text(a.attr("data-mergeMsgContent"),e.length)},sendDate:"",sendUserName:"",id:""};var g=js.template("msgTipTpl",f);js.showMessage(g,null,"info",1000*60)}var c=parseInt($("#msgNum").text());if(!isNaN(c)){c+=e.length||0}else{c=a.find("li").length}$("#msgNum, #msgNum2").text(c);$(".timeago").timeago()})}function readMsg(c,d,e){var a=$(c).data("href");if(e==""){a=ctx+"/msg/list"}var b=js.addTabPage($(c),d,a,true,false);if(b){$("#"+b+"-frame").on("load",function(){setTimeout(unreadMsg,1000)})}}var isWindowFocus=true;if("onfocusin" in document){document.onfocusin=function(){isWindowFocus=true};document.onfocusout=function(){isWindowFocus=false}}else{window.onfocus=function(){isWindowFocus=true};window.onblur=function(){isWindowFocus=false}}var flashStep=0;var flashTitleRun=false;var normalTitle=document.title;var flashTitle=function(){if(isWindowFocus){document.title=normalTitle;flashTitleRun=false;return}flashTitleRun=true;flashStep++;if(flashStep==3){flashStep=1}if(flashStep==1){document.title="【✉】"+normalTitle}if(flashStep==2){document.title="【 】"+normalTitle}setTimeout("flashTitle()",500)};function doFlashTitle(){if(!flashTitleRun){flashTitle()}};

@ -0,0 +1 @@
.fixed .main-header{position:relative;max-height:none}.fixed .content-wrapper,.fixed .right-side{padding-top:0}.fixed .main-header .navbar,.fixed .right-side{margin-left:0}.fixed .main-sidebar{top:auto;padding-top:0;position:relative;height:0}.main-header .logo small{font-size:17px}.main-header .navbar .dropdow-menu{border-top:0}.main-header .navbar .dropdown-menu li a{color:#555;padding:5px 15px 5px 25px}.main-header .navbar .dropdown-menu li a:hover{background:#e1e3e9;color:#555}.main-header .navbar .dropdown-menu li.divider{background-color:#ddd}.navbar-nav>.user-menu>.dropdown-menu{width:auto}.navbar-nav>.messages-menu i.img-circle{margin:auto 10px auto auto;display:block;width:33px;height:33px;padding:9px;font-weight:bold}.navbar-nav>.messages-menu>.dropdown-menu>li.header{border-radius:0;background-color:#f9f9f9}.user-panel>.image>img{width:45px;height:45px;background:#fff}.sidebar-collapse .user-panel>.image>img{width:27px;height:27px}.user-panel>.info{padding-left:11px}.sidebar-menu>li a{overflow:hidden;text-overflow:ellipsis}.sidebar-menu>li>a{padding:12px 15px 12px 12px;font-size:15px}.sidebar-menu>li>.treeview-menu{margin:0}.sidebar-menu>.treeview>.treeview-menu{padding-left:0}.sidebar-menu .treeview-menu>li>a{padding:7px 5px 8px 20px}.main-sidebar,.left-side{width:200px}.main-header .navbar,.content-wrapper,.right-side,.main-footer{margin-left:200px}@media(max-width:767px){.main-header .logo{width:100%}.main-header .navbar,.content-wrapper,.right-side,.main-footer{margin-left:0}.sidebar-open .content-wrapper,.sidebar-open .main-footer{-webkit-transform:translate(200px,0);-ms-transform:translate(200px,0);-o-transform:translate(200px,0);transform:translate(200px,0)}}.main-header .logo{width:auto;min-width:200px}@media(min-width:768px){.sidebar-mini.sidebar-collapse .main-header .logo{width:auto}.sidebar-mini.sidebar-collapse .main-header .navbar{margin-left:0}}

File diff suppressed because one or more lines are too long

@ -12,11 +12,6 @@ $("#loginForm").validate({
var d = $("#username").val()
, a = $("#password").val()
, b = $("#validCode").val();
if (secretKey != "") {
$("#username").val(DesUtils.encode(d, secretKey));
$("#password").val(DesUtils.encode(a, secretKey));
$("#validCode").val(DesUtils.encode(b, secretKey))
}
js.ajaxSubmitForm($(c), function(f, e, g) {
if (f.isValidCodeLogin == true) {
$("#isValidCodeLogin").show();

@ -0,0 +1 @@
.profile-user-img{width:150px;height:150px}#inputFormPwd .form-group{margin-top:5px}#inputFormPwd .strength .button_strength{padding-top:40px}

@ -1,115 +0,0 @@
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<meta content="webkit" name="renderer"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate"/>
<meta http-equiv="Pragma" content="no-cache"/>
<meta http-equiv="Expires" content="0"/>
<meta content="width=device-width, initial-scale=1, user-scalable=1" name="viewport"/>
<meta content="Tamguo V1.0 - Powered By Tamguo V1.0" name="description"/>
<meta content="Tamguo, http://www.tamguo.com" name="author"/>
<meta content="Powered By Tamguo V1.0" name="keywords"/>
<title>登录 - Tamguo V1.0</title>
<script src="/jquery/jquery-1.12.4.min.js"></script>
<script src="/jquery/jquery-migrate-1.4.1.min.js"></script>
<link rel="stylesheet" href="/fonts/font-icons.min.css">
<link rel="stylesheet" href="/bootstrap/css/bootstrap.min.css">
<link rel="stylesheet" href="/select2/4.0/select2.css?V4.0-07171341">
<link rel="stylesheet" href="/icheck/1.0/minimal/grey.css?V4.0-07171341">
<link rel="stylesheet" href="/adminlte/css/AdminLTE.min.css?V4.0-07171341">
<link rel="stylesheet" href="/common/jeesite.css?V4.0-07171341">
<link rel="stylesheet" href="/common/common.css?V4.0-07171341">
<link rel="stylesheet" href="/icheck/1.0/square/blue.css?V4.0-07171341"/>
<link rel="stylesheet" href="/jquery-toastr/2.0/toastr.min.css?V4.0-07171341"/>
<link rel="stylesheet" href="/modules/sys/sysLogin.css?V4.0-07171341"/>
</head>
<body class="hold-transition login-page">
<div class="wrapper">
<div class="login-box">
<div class="login-logo" title="JeeSite Demo">
<a href="/js/a/login"><b>TAMGUO OMS</b> <small>V1.0</small></a>
</div>
<div class="login-box-body">
<form id="loginForm" action="/login" method="post">
<div class="form-group has-feedback">
<span class="glyphicon glyphicon-user form-control-feedback" title="登录账号"></span>
<input type="text" id="username" name="username" value="" class="form-control required" data-msg-required="请填写登录账号." placeholder="登录账号"/>
</div>
<div class="form-group has-feedback">
<span class="glyphicon glyphicon-lock form-control-feedback"
title="登录密码,鼠标按下显示密码"
onmousedown="$('#password').attr('type','text')"
onmouseup="$('#password').attr('type','password')"></span>
<input type="password" id="password" name="password" value="" class="form-control required" data-msg-required="请填写登录密码." placeholder="登录密码" autocomplete="off"/>
</div>
<div class="form-group has-feedback" id="isValidCodeLogin">
<div class="input-group">
<span class="input-group-addon">验证码:</span>
<input type="text" id="validCode" name="validCode" class="form-control" required="true" data-msg-required="请填写验证码" remote="/validCode" data-msg-remote="验证码不正确."/>
<span class="input-group-addon p0">
<img id="validCodeImg" class="validCodeImg" title="看不清,点击图片刷新" src="" alt="" style="width:100px;"/>
</span>
</div>
<script>
$('#validCodeImg').click(function(){
var src = '/validCode?'+new Date().getTime();
$('#validCodeImg').attr('src',src).removeClass('hide');
$('#validCode').val('').focus();
});
$('#validCode').focus(function(){
if($('#validCodeImg').attr('src')==''){
$('#validCodeImg').click();
}
});
setTimeout(function(){
$('#validCodeImg').click();
}, 1000);
</script>
</div>
<div class="form-group">
<div class="mt5 icheck">
<label title="公共场所慎用,下次不需要再填写帐号"><input type="checkbox"
name="rememberUserCode"
class="form-control" data-style="square-blue"> 记住账号</label> &nbsp;
<label title="公共场所慎用,下次不需要再填写帐号和密码"><input type="checkbox"
name="rememberMe"
class="form-control" data-style="square-blue"> 记住密码</label>
</div>
</div>
<div class="form-group">
<button type="submit" class="btn btn-primary btn-block btn-flat"
id="btnSubmit" data-loading="登录验证成功,正在进入..."
data-login-valid="正在验证登录,请稍后...">立即登录</button>
</div>
</form>
<div class="row">
<div class="col-xs-12">
<a href="/js/account/forgetPwd" class="pull-left">忘记密码</a>
</div>
</div>
</div>
<div class="login-copyright">
&copy; 2018 Tamguo 题库 - Powered By <a href="http://www.tamguo.com">Tamguo</a>.
</div>
</div>
</div>
<a id="scroll-up" href="#" class="btn btn-sm"><i class="fa fa-angle-double-up"></i></a>
<script src="/bootstrap/js/bootstrap.min.js"></script>
<script src="/select2/4.0/select2.js?V4.0-07171341"></script>
<script src="/select2/4.0/i18n/zh_CN.js?V4.0-07171341"></script>
<script src="/layer/3.1/layer.js?V4.0-07171341"></script>
<script src="/my97/WdatePicker.js?V4.0-07171341"></script>
<script src="/jquery-validation/1.16/jquery.validate.js?V4.0-07171341"></script>
<script src="/jquery-validation/1.16/localization/messages_zh_CN.js?V4.0-07171341"></script>
<script src="/jquery-validation/1.16/jquery.validate.extend.js?V4.0-07171341"></script>
<script src="/common/jeesite.js?V4.0-07171341"></script>
<script src="/common/i18n/jeesite_zh_CN.js?V4.0-07171341"></script>
<script src="/common/common.js?V4.0-07171341"></script>
<script>var secretKey = 'tamguo,tamguo,com';</script>
<script src="/jquery-toastr/2.0/toastr.min.js?V4.0-07171341"></script>
<script src="/common/des.js?V4.0-07171341"></script>
<script src="/modules/sys/sysLogin.js?V4.0-07171341"></script>

@ -0,0 +1,45 @@
<!DOCTYPE html><html><head><meta charset="utf-8"><meta content="webkit" name="renderer"/><meta http-equiv="X-UA-Compatible"
content="IE=edge"><meta name="keywords" content="PoweredByJeeSiteV4.0"/><meta http-equiv="Cache-Control"
content="no-cache, no-store, must-revalidate"/><meta name="description" content="PoweredByJeeSiteV4.0"/><meta
content="no-cache" http-equiv="Pragma"/><meta http-equiv="Expires" content="0"/><meta
content="width=device-width, initial-scale=1, user-scalable=1" name="viewport"/>
<title>JeeSite Demo</title>
<script src="/js/global.min.js?ctx=/js/a"></script>
<script src="/js/static/jquery/jquery-1.12.4.min.js"></script>
<script src="/js/static/jquery/jquery-migrate-1.4.1.min.js"></script>
<!--[if lt IE 9]><script src="/js/static/common/h5fix.min.js"></script><![endif]-->
<link rel="stylesheet" href="/js/static/fonts/font-icons.min.css">
<link rel="stylesheet" href="/js/static/bootstrap/css/bootstrap.min.css">
<link rel="stylesheet" href="/js/static/select2/4.0/select2.css?V4.0-07191853">
<link rel="stylesheet" href="/js/static/icheck/1.0/minimal/grey.css?V4.0-07191853">
<link rel="stylesheet" href="/js/static/wdScrollTab/css/TabPanel.css?V4.0-07191853">
<link rel="stylesheet" href="/js/static/adminlte/css/AdminLTE.min.css?V4.0-07191853">
<link rel="stylesheet" href="/js/static/common/jeesite.css?V4.0-07191853">
<link rel="stylesheet" href="/js/static/common/common.css?V4.0-07191853">
</head><body class="hold-transition fixed noscroll2 sidebar-mini ">
<div class="wrapper"><!--[if lte IE 9]><a style="position:absolute;top:0;left:0;z-index:100000;display:block;width:100%;font-size:14px;color:#F00;text-decoration:none;background-color:#faffb3;text-align:center;"
href="/js/static/upbw/index.html" target="_blank">您的浏览器版本过低或在兼容模式下,导致打开速度过慢,提升速度您可以切换到极速模式或升级为最新版,点击此处查看详情。</a><![endif]-->
<!--[if lte IE 8]><script>window.location.href='/js/static/upbw/index.html?url='+location.href;</script><![endif]-->
<link rel="stylesheet" href="/js/static/jquery-toastr/2.0/toastr.min.css?V4.0-07191853">
<link rel="stylesheet" href="/js/static/adminlte/css/skins/skin-blue-light.css?V4.0-07191853">
<link rel="stylesheet" href="/js/static/modules/sys/sysIndex.css?V4.0-07191853">
<header class="main-header">
<% include('sysIndex/topMenu.html'){} %>
</header>
<script src="/js/static/bootstrap/js/bootstrap.min.js"></script>
<script src="/js/static/select2/4.0/select2.js?V4.0-07191853"></script>
<script src="/js/static/select2/4.0/i18n/zh_CN.js?V4.0-07191853"></script>
<script src="/js/static/layer/3.1/layer.js?V4.0-07191853"></script>
<script src="/js/static/my97/WdatePicker.js?V4.0-07191853"></script>
<script src="/js/static/wdScrollTab/js/TabPanel.js?V4.0-07191853"></script>
<script src="/js/static/wdScrollTab/js/TabPanel.extend.js?V4.0-07191853"></script>
<script src="/js/static/common/jeesite.js?V4.0-07191853"></script>
<script src="/js/static/common/i18n/jeesite_zh_CN.js?V4.0-07191853"></script>
<script src="/js/static/common/common.js?V4.0-07191853"></script>
<div class="hide" id="desktopTabPage" data-title="仪表盘"
data-url="/js/a/desktop"></div>
<div class="hide" id="modifyPasswordTip" data-message=""></div>
<script src="/js/static/jquery-toastr/2.0/toastr.min.js?V4.0-07191853"></script>
<script src="/js/static/jquery-plugins/jquery.slimscroll.js"></script>
<script src="/js/static/modules/sys/sysIndex.js?V4.0-07191853"></script>

@ -0,0 +1,137 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta content="webkit" name="renderer" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="keywords" content="PoweredByJeeSiteV4.0" />
<meta http-equiv="Cache-Control"
content="no-cache, no-store, must-revalidate" />
<meta name="description" content="PoweredByJeeSiteV4.0" />
<meta content="no-cache" http-equiv="Pragma" />
<meta http-equiv="Expires" content="0" />
<meta content="width=device-width, initial-scale=1, user-scalable=1"
name="viewport" />
<title>登录 - Tamguo OMS</title>
<script src="jquery/jquery-1.12.4.min.js"></script>
<script src="jquery/jquery-migrate-1.4.1.min.js"></script>
<!--[if lt IE 9]><script src="common/h5fix.min.js"></script><![endif]-->
<link rel="stylesheet" href="fonts/font-icons.min.css">
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css">
<link rel="stylesheet" href="select2/4.0/select2.css">
<link rel="stylesheet" href="icheck/1.0/minimal/grey.css">
<link rel="stylesheet" href="adminlte/css/AdminLTE.min.css">
<link rel="stylesheet" href="common/jeesite.css">
<link rel="stylesheet" href="common/common.css">
</head>
<body class="hold-transition login-page">
<div class="wrapper">
<!--[if lte IE 9]><a style="position:absolute;top:0;left:0;z-index:100000;display:block;width:100%;font-size:14px;color:#F00;text-decoration:none;background-color:#faffb3;text-align:center;"
href="upbw/index.html" target="_blank">您的浏览器版本过低或在兼容模式下,导致打开速度过慢,提升速度您可以切换到极速模式或升级为最新版,点击此处查看详情。</a><![endif]-->
<!--[if lte IE 8]><script>window.location.href='upbw/index.html?url='+location.href;</script><![endif]-->
<link rel="stylesheet" href="icheck/1.0/square/blue.css">
<link rel="stylesheet"
href="jquery-toastr/2.0/toastr.min.css">
<link rel="stylesheet" href="modules/sys/sysLogin.css">
<div class="login-box">
<div class="login-logo">
<a href="/a/login"><b>JeeSite Demo</b> <small>V4.0</small></a>
</div>
<div class="login-box-body">
<form id="loginForm" action="/a/login" method="post">
<div class="form-group has-feedback">
<span class="glyphicon glyphicon-user form-control-feedback"
title="登录账号"></span> <input type="text" id="username"
name="username" value="" class="form-control required"
data-msg-required="请填写登录账号." placeholder="登录账号" />
</div>
<div class="form-group has-feedback">
<span class="glyphicon glyphicon-lock form-control-feedback"
title="登录密码,鼠标按下显示密码"
onmousedown="$('#password').attr('type','text')"
onmouseup="$('#password').attr('type','password')"></span> <input
type="password" id="password" name="password" value=""
class="form-control required" data-msg-required="请填写登录密码."
placeholder="登录密码" autocomplete="off" />
</div>
<div class="form-group has-feedback" id="isValidCodeLogin">
<div class="input-group">
<span class="input-group-addon">验证码:</span> <input type="text"
id="validCode" name="validCode" class="form-control"
required="true" data-msg-required="请填写验证码"
remote="/validCode" data-msg-remote="验证码不正确." /> <span
class="input-group-addon p0"> <img id="validCodeImg"
class="validCodeImg" title="看不清,点击图片刷新" src="" alt="验证码"
style="width: 100px;" />
</span>
</div>
<script>
var validCodeImgRefresh = function() {
var src = '/validCode?'
+ new Date().getTime();
$('#validCodeImg').attr('src', src)
.removeClass('hide');
}
$('#validCodeImg').click(function() {
validCodeImgRefresh();
$('#validCode').val('').focus();
});
$('#validCode').focus(function() {
if ($('#validCodeImg').attr('src') == '') {
$('#validCodeImg').click();
}
});
setTimeout(function() {
validCodeImgRefresh();
}, 1000);
</script>
</div>
<div class="form-group">
<div class="mt5 icheck">
<label title="公共场所慎用,下次不需要再填写帐号"><input type="checkbox"
name="rememberUserCode" class="form-control"
data-style="square-blue"> 记住账号</label> &nbsp; <label
title="公共场所慎用,下次不需要再填写帐号和密码"><input type="checkbox"
name="rememberMe" class="form-control" data-style="square-blue">
记住密码</label>
</div>
</div>
<div class="form-group">
<button type="submit" class="btn btn-primary btn-block btn-flat"
id="btnSubmit" data-loading="登录验证成功,正在进入..."
data-login-valid="正在验证登录,请稍后...">立即登录</button>
</div>
</form>
<div class="row">
<div class="col-xs-12">
<a href="/account/forgetPwd" class="pull-left">[ 忘记密码 ]</a>
</div>
</div>
</div>
<div class="login-copyright">
&copy; 2018 JeeSite Demo - Powered By <a href="http://jeesite.com">JeeSite
V4.0.5</a>
</div>
</div>
</div>
<a id="scroll-up" href="#" class="btn btn-sm"><i
class="fa fa-angle-double-up"></i></a>
<script src="bootstrap/js/bootstrap.min.js"></script>
<script src="select2/4.0/select2.js"></script>
<script src="select2/4.0/i18n/zh_CN.js"></script>
<script src="layer/3.1/layer.js"></script>
<script src="my97/WdatePicker.js"></script>
<script src="jquery-validation/1.16/jquery.validate.js"></script>
<script
src="jquery-validation/1.16/localization/messages_zh_CN.js"></script>
<script
src="jquery-validation/1.16/jquery.validate.extend.js"></script>
<script src="common/jeesite.js"></script>
<script src="common/i18n/jeesite_zh_CN.js"></script>
<script src="common/common.js"></script>
<script>var secretKey = 'thinkgem,jeesite,com';</script>
<script src="jquery-toastr/2.0/toastr.min.js"></script>
<script src="common/des.js"></script>
<script src="modules/sys/sysLogin.js"></script>
Loading…
Cancel
Save