From fce41585f6c4e09c12c7e2a3150d4dfbf1f46bb0 Mon Sep 17 00:00:00 2001
From: 李宇 <986321569@qq.com>
Date: Tue, 12 Jan 2021 10:27:26 +0800
Subject: [PATCH] 修改申购试剂查询
---
src/main/java/com/nanometer/smartlab/controller/UserMngController.java | 104 +++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 91 insertions(+), 13 deletions(-)
diff --git a/src/main/java/com/nanometer/smartlab/controller/UserMngController.java b/src/main/java/com/nanometer/smartlab/controller/UserMngController.java
index d627078..d8b0f9a 100644
--- a/src/main/java/com/nanometer/smartlab/controller/UserMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/UserMngController.java
@@ -99,8 +99,7 @@
}
public void updatePassword() {
- this.username = getUser().getName();
- this.sysUser = getUser();
+ this.username = getUser().getName();
}
@@ -127,6 +126,8 @@
int totalRows = sheet.getPhysicalNumberOfRows();
List<SysUser> userList=new ArrayList<>();
System.out.println("totalRows=========="+totalRows);
+ String errorMsg = null;
+
for (int i = 1; i < totalRows; i++) {
row=sheet.getRow(i);
totalCells= row.getLastCellNum();
@@ -187,10 +188,32 @@
sysUser.setArp((int)Double.parseDouble(valuesList.get(2))+"");//arp号
sysUser.setName(valuesList.get(3));//姓名
sysUser.setAccount(valuesList.get(4));//账号
- sysUser.setPassword(MD5Utils.encode((int)Double.parseDouble(valuesList.get(5))+""));//密码
+
+ String PW_PATTERN = "(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[~!@#$%^&*_.]).{8,}";
+ if (!valuesList.get(5).matches(PW_PATTERN)){
+ errorMsg += "第"+i+"行,密码必须8位以上,并且包含大小写字母、数字、特殊符号三种以上";
+ }
+
+ sysUser.setPassword(MD5Utils.encode(valuesList.get(5))+"");//密码
+
+ //valuesList.get(8) id卡号检查
+ if (valuesList.get(8) != null && valuesList.get(8).length()>0){
+ //大写转换
+ String idCardUpper = valuesList.get(8).trim().toUpperCase();
+ //8位和20位下8位才做补齐20位,否则提示输入id卡号8位或者20位
+ if (idCardUpper.length() == 8 ||idCardUpper.length() == 20) {
+ if (idCardUpper.length() == 8){
+ //8位补齐20位,否则不做操作
+ String idCard = "E0E01E000A" + idCardUpper + "01";
+ sysUser.setIdCard(idCard);//id卡号
+ }
+ }else{
+ FacesUtils.warn("第"+i+"行,id卡号需要8位或者20位");
+ return;
+ }
+ }
sysUser.setPhone(valuesList.get(6));//电话
sysUser.setEmail(valuesList.get(7));//邮箱
- sysUser.setIdCard(valuesList.get(8));//id卡号
sysUser.setPoint((int)Double.parseDouble(valuesList.get(9)));//分数
sysUser.setRoleId(valuesList.get(10));//角色
if(valuesList.get(11).equals("是")){
@@ -219,6 +242,10 @@
sysUser.setValidFlag(ValidFlag.VALID);
userList.add(sysUser);
}
+ if (errorMsg != null){
+ FacesUtils.warn(errorMsg);
+ }
+
this.sysUserService.insertSysUserList(userList);
System.out.println("=========导入结束=====");
FacesUtils.info("导入成功。");
@@ -254,25 +281,34 @@
public String updatePasswordAction() throws NoSuchAlgorithmException, CharacterCodingException
{
+ this.sysUser = getUser();
+
if(!this.sysUser.getPassword().equals(MD5Utils.encode(this.oriPassword)))
{
FacesUtils.warn("原密码错误,请重新输入!");
return null;
}
- if(!this.newPassword.equals(this.newPasswordSecond))
- {
- FacesUtils.warn("新密码不一致,请重新输入。");
- return null;
- }
+ if(!this.newPassword.equals(this.newPasswordSecond))
+ {
+ FacesUtils.warn("新密码不一致,请重新输入。");
+ return null;
+ }
- this.sysUser.setName(username);
- this.sysUser.setPassword(MD5Utils.encode(this.newPassword));
+ String PW_PATTERN = "(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[~!@#$%^&*_.]).{8,}";
+ if (!this.newPassword.matches(PW_PATTERN)){
+ FacesUtils.warn("密码必须8位以上,并且包含大小写字母、数字、特殊符号三种以上");
+ return null;
+ }
+
+// this.sysUser.setName(username);
+ this.sysUser.setPassword(MD5Utils.encode(this.newPassword));
this.sysUserService.updateSysUser(sysUser);
this.newPassword = null;
this.oriPassword = null;
this.newPasswordSecond = null;
FacesUtils.info("修改成功,请重新登录!");
RequestContext.getCurrentInstance().execute("PF('dialogPassword').hide()");
+ RequestContext.getCurrentInstance().execute("PF('changePassword').hide()");
this.getSubject().logout();
return Constants.PAGE_LOGIN + Constants.REDIRECT;
}
@@ -315,13 +351,38 @@
}
// 检查idCard
+ if (this.sysUser.getIdCard() != null && this.sysUser.getIdCard().length()>0){
+ String idCardUpper = sysUser.getIdCard().trim().toUpperCase();
+ //8位和20位下8位才做补齐20位,否则提示输入id卡号8位或者20位
+ if (idCardUpper.length() == 8 ||idCardUpper.length() == 20) {
+ if (idCardUpper.length() == 8){
+ //8位补齐20位,否则不做操作
+ this.sysUser.setIdCard("E0E01E000A" + idCardUpper + "01");
+ }else{
+ //20位
+ this.sysUser.setIdCard(idCardUpper);
+ }
+ }else{
+ FacesUtils.warn("id卡号8位或者20位");
+ return;
+ }
+ }
+
+
if (!StringUtils.isEmpty(this.sysUser.getIdCard()) && this.sysUserService.isSysUserExist(null, null, this.sysUser.getIdCard(), null)) {
FacesUtils.warn("ID卡号已存在。");
return;
}
- if(!org.apache.commons.lang.StringUtils.isNotBlank(sysUser.getProjectId())){
- sysUser.setProjectId(null);
+ if(!org.apache.commons.lang.StringUtils.isNotBlank(sysUser.getProject())){
+ sysUser.setProject(null);
}
+
+ String PW_PATTERN = "(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[~!@#$%^&*_.]).{8,}";
+ if (!sysUser.getPassword().matches(PW_PATTERN)){
+ FacesUtils.warn("密码必须8位以上,并且包含大小写字母、数字、特殊符号三种以上");
+ return;
+ }
+
sysUser.setPassword(MD5Utils.encode(sysUser.getPassword()));
this.sysUserService.insertSysUser(sysUser);
@@ -347,6 +408,23 @@
}
// 检查idCard
+ if (this.sysUser.getIdCard() != null && this.sysUser.getIdCard().length()>0){
+ String idCardUpper = sysUser.getIdCard().trim().toUpperCase();
+ //8位和20位下8位才做补齐20位,否则提示输入id卡号8位或者20位
+ if (idCardUpper.length() == 8 ||idCardUpper.length() == 20) {
+ if (idCardUpper.length() == 8){
+ //8位补齐20位,否则不做操作
+ this.sysUser.setIdCard("E0E01E000A" + idCardUpper + "01");
+ }else{
+ //20位
+ this.sysUser.setIdCard(idCardUpper);
+ }
+ }else{
+ FacesUtils.warn("id卡号8位或者20位");
+ return;
+ }
+ }
+
if(this.sysUser.getIdCard()==null || this.sysUser.getIdCard()==""){
}else {
--
Gitblit v1.9.2