From a1e90c3da21d88f994bac9c1feb91bf40e53a44d Mon Sep 17 00:00:00 2001
From: 李宇 <986321569@qq.com>
Date: Wed, 18 Aug 2021 13:01:21 +0800
Subject: [PATCH] 耗材无供应商也显示,申购管理试剂库、申请履历、收藏不显示无效试剂和无供应商试剂 可显示无供应商的耗材
---
src/main/java/com/nanometer/smartlab/controller/LoginController.java | 21 +++++++++++++++++++++
1 files changed, 21 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/nanometer/smartlab/controller/LoginController.java b/src/main/java/com/nanometer/smartlab/controller/LoginController.java
index c5626bc..b5a72da 100644
--- a/src/main/java/com/nanometer/smartlab/controller/LoginController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/LoginController.java
@@ -6,6 +6,7 @@
import com.nanometer.smartlab.util.FacesUtils;
import org.apache.log4j.Logger;
import org.apache.shiro.authc.DisabledAccountException;
+import org.apache.shiro.authc.ExcessiveAttemptsException;
import org.apache.shiro.authc.UnknownAccountException;
import org.apache.shiro.authc.UsernamePasswordToken;
import org.apache.shiro.subject.Subject;
@@ -30,6 +31,7 @@
private String loginAcct;
private String loginPwd;
+ private static Byte ischange = 0;
public String login() {
UsernamePasswordToken token = new UsernamePasswordToken(loginAcct, loginPwd);
@@ -41,6 +43,9 @@
} catch (UnknownAccountException e) {
FacesUtils.warn("用户名不存在");
return null;
+ } catch (ExcessiveAttemptsException e) {
+ FacesUtils.warn("登陆失败,密码连续输入错误超过8次,锁定1分钟!");
+ return null;
} catch (Exception e) {
logger.error("登陆失败", e);
}
@@ -48,6 +53,13 @@
if (currentUser.isAuthenticated()) {//登录成功进入主页
SysUser user = this.sysUserService.getSysUserByAccount(loginAcct);
currentUser.getSession(true).setAttribute(Constants.SESSION_USER, user);
+
+ String PW_PATTERN = "(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[~!@#$%^&*_.]).{8,}";
+ if (!loginPwd.matches(PW_PATTERN)) {
+ ischange = 1;
+ }else {
+ ischange = 0;
+ }
this.menuController.initPage();
return Constants.PAGE_INDEX + Constants.REDIRECT;
@@ -77,4 +89,13 @@
public void setLoginPwd(String loginPwd) {
this.loginPwd = loginPwd;
}
+
+
+ public Byte getIschange() {
+ return ischange;
+ }
+
+ public void setIschange(Byte ischange) {
+ this.ischange = ischange;
+ }
}
--
Gitblit v1.9.2