From 47a751cb301d05276ae5d75145d57b2d090fe4e1 Mon Sep 17 00:00:00 2001
From: kongzy <kongzy>
Date: Mon, 01 Jul 2024 10:58:35 +0800
Subject: [PATCH] change
---
src/main/java/com/nanometer/smartlab/controller/UserMngController.java | 110 ++++++++++++++++++++++++++++++-------------------------
1 files changed, 60 insertions(+), 50 deletions(-)
diff --git a/src/main/java/com/nanometer/smartlab/controller/UserMngController.java b/src/main/java/com/nanometer/smartlab/controller/UserMngController.java
index c9ac88f..8fd8c58 100644
--- a/src/main/java/com/nanometer/smartlab/controller/UserMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/UserMngController.java
@@ -3,19 +3,18 @@
import com.alibaba.druid.util.StringUtils;
import com.nanometer.smartlab.entity.BaseMeta;
import com.nanometer.smartlab.entity.BaseRole;
+import com.nanometer.smartlab.entity.SysProject;
import com.nanometer.smartlab.entity.SysUser;
import com.nanometer.smartlab.entity.enumtype.ApproverFlag;
import com.nanometer.smartlab.entity.enumtype.SeeFlag;
import com.nanometer.smartlab.entity.enumtype.ValidFlag;
import com.nanometer.smartlab.entity.enumtype.Waster;
+import com.nanometer.smartlab.realm.ShiroDbRealm;
import com.nanometer.smartlab.service.BaseMetaService;
import com.nanometer.smartlab.service.BaseRoleService;
import com.nanometer.smartlab.service.SysProjectService;
import com.nanometer.smartlab.service.SysUserService;
-import com.nanometer.smartlab.util.Constants;
-import com.nanometer.smartlab.util.FacesUtils;
-import com.nanometer.smartlab.util.IDUtils;
-import com.nanometer.smartlab.util.MD5Utils;
+import com.nanometer.smartlab.util.*;
import org.apache.log4j.Logger;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Row;
@@ -78,7 +77,8 @@
private List<BaseMeta> codeList;
private List<BaseRole> roleList;
private List<Waster> wasterSelectList;
- private String project;
+ private String projectName;
+ private Long projectId;
private String company;
private BaseRole role;
@@ -157,7 +157,7 @@
List<String> valuesList=new ArrayList<String>();
for (int t = 0; t < totalCells; t++) {
String cellInfo="";
- String groupId = "";
+ String groupCode = "";
if (row.getCell(t) != null) {
@@ -169,31 +169,31 @@
}
if(t == 0 || t == 1){
if( t == 0){
- groupId = "user_company";
+ groupCode = "user_company";
}else if(t == 1){
- groupId = "user_department";
+ groupCode = "user_department";
}
- String id=getId(groupId,cellInfo);
- if(id == "" && cellInfo!=null && cellInfo!="" ) {
+ Long id=getId(groupCode,cellInfo);
+ if(id == null && cellInfo!=null && cellInfo!="" ) {
BaseMeta baseMeta = new BaseMeta();
- baseMeta.setId(IDUtils.uuid());
- baseMeta.setGroupId(groupId);
+ // baseMeta.setId(IDUtils.uuid());
+ baseMeta.setGroupCode(groupCode);
baseMeta.setMetaValue(cellInfo);
baseMeta.setMetaKey(cellInfo);
baseMetaService.insertBaseMeta(baseMeta);
id = baseMeta.getId();
this.codeList.add(baseMeta);
}
- valuesList.add(id);
+ valuesList.add(String.valueOf(id));
}else if(t==10){
- String id=getRoleId(cellInfo);
- if(id == "" && cellInfo!=null && cellInfo!="" ){
+ Long id=getRoleId(cellInfo);
+ if(id == null && cellInfo!=null && cellInfo!="" ){
BaseRole role=new BaseRole();
- role.setId(IDUtils.uuid());
+ //role.setId(IDUtils.uuid());
role.setName(cellInfo);
role.setValidFlag(ValidFlag.VALID);
}
- valuesList.add(id);
+ valuesList.add(String.valueOf(id));
}else if(t==6){
if (!StringUtils.isEmpty(cellInfo)){
cellInfo=new BigDecimal(""+cellInfo).toString();
@@ -209,13 +209,13 @@
SysUser sysUser=new SysUser();
if (valuesList.get(0) != null && !StringUtils.isEmpty(valuesList.get(0))){
- sysUser.setCompany(valuesList.get(0));//单位
+ sysUser.setCompany(Long.valueOf(valuesList.get(0)));//单位
}else {
errorMsg += "第"+i+"行,单位不能为空";
continue;
}
if (valuesList.get(1) != null && !StringUtils.isEmpty(valuesList.get(1))){
- sysUser.setDepartment(valuesList.get(1));//部门
+ sysUser.setDepartment(Long.valueOf(valuesList.get(1)));//部门
}else {
errorMsg += "第"+i+"行,部门不能为空";
continue;
@@ -292,7 +292,7 @@
continue;
}
if (valuesList.get(10) != null){
- sysUser.setRoleId(valuesList.get(10));//角色
+ sysUser.setRoleId(Long.valueOf(valuesList.get(10)));//角色
}else {
errorMsg += "第"+i+"行,角色不能为空";
continue;
@@ -319,19 +319,14 @@
sysUser.setSeeFlag(SeeFlag.LEADING);
}
- if (valuesList.size() > 13 && !valuesList.get(13).replace(" ","").isEmpty()){
- String[] projects = valuesList.get(13).split(",");
- for (String project : projects) {
- //不存再就直接推出
- if (!sysProjectService.isExistProject(project)) {
- errorMsg += ("课题组不存在,(" + i + "行)");
- continue;
- }
+ if (valuesList.size() > 13 && valuesList.get(13).trim()!=""){
+ SysProject project=sysProjectService.getProjectByName(valuesList.get(13));
+ if (project==null) {
+ errorMsg += ("课题组不存在,(" + i + "行)");
+ continue;
}
//都存在就设置
- sysUser.setProject(valuesList.get(13).replace(" ",""));
- }else{
- sysUser.setProject(null);
+ sysUser.setProjectId(project.getId());
}
sysUser.setValidFlag(ValidFlag.VALID);
@@ -351,8 +346,8 @@
}
}
- public String getRoleId(String name){
- String id="";
+ public Long getRoleId(String name){
+ Long id=null;
for (int i=0;i<this.roleList.size();i++){
if(this.roleList.get(i).getName().equals(name)){
id=this.roleList.get(i).getId();
@@ -362,8 +357,8 @@
}
//判断字典表里是否存在这组键值对
- public String getId(String groupId,String metaValue){
- String id="";
+ public Long getId(String groupId,String metaValue){
+ Long id= null;
if(this.codeList.size()>0){
for (BaseMeta bm:this.codeList){
@@ -469,9 +464,7 @@
FacesUtils.warn("ID卡号已存在。");
return;
}
- 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)){
@@ -546,6 +539,8 @@
sysUser.setPassword(MD5Utils.encode(sysUser.getPassword()));
}
this.sysUserService.updateSysUser(sysUser);
+ ShiroDbRealm shiroDbRealm= SpringUtil.getBean("authorizationRealm",ShiroDbRealm.class);
+ shiroDbRealm.removeUserCache(sysUser.getAccount());
FacesUtils.info("修改成功。");
RequestContext.getCurrentInstance().execute("PF('dialog').hide()");
@@ -631,7 +626,11 @@
}
public boolean isAccess(String info) {
String permission = role.getBtnPermission();
- return permission.contains(info);
+ if(StringUtils.isEmpty(permission)){
+ return true;
+ }else{
+ return permission.contains(info);
+ }
}
public LazyDataModel<SysUser> getDataModel() {
@@ -643,23 +642,24 @@
try {
//做可见人员过滤
String userPermission = role.getUserPermission();
+ userPermission="11";
if (userPermission.contains("自己")) {
list = Collections.singletonList(sysUserService.getSysUser(UserMngController.this.sysUser.getId()));
this.setRowCount(1);
}else if (userPermission.contains("课题组")){
- project = sysUser.getProject();
- int count = sysUserService.getUserCountInProject(arp, name,departmentName,project,company);
+ projectId = sysUser.getProjectId();
+ int count = sysUserService.getUserCountInProject(arp, name,departmentName,projectName,company);
this.setRowCount(count);
if (count > 0) {
- list = sysUserService.getUserInProject(arp, name,departmentName,project,company, first, pageSize);
+ list = sysUserService.getUserInProject(arp, name,departmentName,projectName,company, first, pageSize);
}
}else{
- int count = sysUserService.getSysUserTotalCount(arp, name,departmentName,project,company);
+ int count = sysUserService.getSysUserTotalCount(arp, name,departmentName,projectName,company);
this.setRowCount(count);
if (count > 0) {
- list = sysUserService.getSysUserList(arp, name,departmentName,project,company, first, pageSize);
+ list = sysUserService.getSysUserList(arp, name,departmentName,projectName,company, first, pageSize);
}
}
@@ -682,7 +682,8 @@
// }
// }
// }
- return sysUserService.getSysUser(rowKey);
+ Long id=Long.valueOf(rowKey);
+ return sysUserService.getSysUser(id);
}
};
}
@@ -691,7 +692,7 @@
public void exportLab2Excel(){
try {
- List<Map> list = sysUserService.getExportUserList(arp, name,departmentName,project,company);
+ List<Map> list = sysUserService.getExportUserList(arp, name,departmentName,projectId,company);
sysUserService.exportUser2Excel(list);
FacesUtils.info("导出成功");
}catch (Exception e){
@@ -800,14 +801,23 @@
this.departmentName = departmentName;
}
- public String getProject() {
- return project;
+ public Long getProjectId() {
+ return projectId;
}
- public void setProject(String project) {
- this.project = project;
+ public void setProject(Long projectId) {
+ this.projectId = projectId;
}
+ public String getProjectName(){
+ return this.projectName;
+ }
+
+ public void setProjectName(String projectName){
+ this.projectName=projectName;
+ }
+
+
public String getCompany() {
return company;
}
--
Gitblit v1.9.2