diff --git a/src/main/java/com/spring/modules/project/data/PlmUserRoleData.java b/src/main/java/com/spring/modules/project/data/PlmUserRoleData.java index 6aaf8562..3df4bdb3 100644 --- a/src/main/java/com/spring/modules/project/data/PlmUserRoleData.java +++ b/src/main/java/com/spring/modules/project/data/PlmUserRoleData.java @@ -3,6 +3,9 @@ package com.spring.modules.project.data; import com.spring.modules.project.entity.PlmUserRole; import org.apache.ibatis.type.Alias; +import java.util.List; +import java.util.Objects; + @Alias("PlmUserRoleData") public class PlmUserRoleData extends PlmUserRole { private String userDisplay; @@ -16,6 +19,17 @@ public class PlmUserRoleData extends PlmUserRole { private Boolean deleteCheck; private String customerDesc; + private List checkList; + + + public List getCheckList() { + return checkList; + } + + public void setCheckList(List checkList) { + this.checkList = checkList; + } + public String getCheckAllFlag() { return checkAllFlag; } @@ -95,4 +109,21 @@ public class PlmUserRoleData extends PlmUserRole { public void setProjectName(String projectName) { this.projectName = projectName; } + + @Override + public boolean equals(Object o) { + if (o == null || getClass() != o.getClass()) return false; + + PlmUserRoleData that = (PlmUserRoleData) o; + return Objects.equals(userDisplay, that.userDisplay) && Objects.equals(projectDesc, that.projectDesc) && Objects.equals(projectName, that.projectName) && Objects.equals(customerDesc, that.customerDesc); + } + + @Override + public int hashCode() { + int result = Objects.hashCode(userDisplay); + result = 31 * result + Objects.hashCode(projectDesc); + result = 31 * result + Objects.hashCode(projectName); + result = 31 * result + Objects.hashCode(customerDesc); + return result; + } } diff --git a/src/main/java/com/spring/modules/project/service/impl/ProjectServiceImpl.java b/src/main/java/com/spring/modules/project/service/impl/ProjectServiceImpl.java index dc546b70..4e2c72fe 100644 --- a/src/main/java/com/spring/modules/project/service/impl/ProjectServiceImpl.java +++ b/src/main/java/com/spring/modules/project/service/impl/ProjectServiceImpl.java @@ -24,6 +24,7 @@ import com.spring.modules.sys.entity.SysUserEntity; import com.spring.modules.sys.service.SysRoleService; import com.spring.modules.sys.service.SysUserService; import org.apache.shiro.SecurityUtils; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -32,6 +33,7 @@ import org.springframework.util.StringUtils; import java.util.ArrayList; import java.util.List; import java.util.Objects; +import java.util.stream.Collectors; @Service public class ProjectServiceImpl implements ProjectService { @@ -93,8 +95,8 @@ public class ProjectServiceImpl implements ProjectService { @Override public List searchUserRoll(PlmUserRoleData data){ + List dataCheckList = data.getCheckList(); // 获得请求人 - SysUserEntity sysUserEntity = (SysUserEntity) SecurityUtils.getSubject().getPrincipal(); List list=projectDao.searchUserRoll(data); for (int i = 0; i < list.size(); i++) { PlmUserRoleData plmUserRoleData = list.get(i); @@ -103,6 +105,13 @@ public class ProjectServiceImpl implements ProjectService { plmUserRoleData.setDownCheck(false); plmUserRoleData.setDeleteCheck(false); plmUserRoleData.setCheckAll(false); + // 新增需要这个 + if (Objects.nonNull(dataCheckList) && !dataCheckList.isEmpty()){ + int index = dataCheckList.indexOf(plmUserRoleData); + if (index != -1){ + BeanUtils.copyProperties(dataCheckList.get(index), plmUserRoleData); + } + } if("Y".equals(list.get(i).getSearchFlag()) && "Y".equals(list.get(i).getUpdateFlag()) && "Y".equals(list.get(i).getDownFlag()) && "Y".equals(list.get(i).getDeleteFlag())){ list.get(i).setCheckAll(true); } @@ -118,18 +127,6 @@ public class ProjectServiceImpl implements ProjectService { if("Y".equals(list.get(i).getDeleteFlag())){ list.get(i).setDeleteCheck(true); } - // 如果为新增 找到当前操作人,默认全选 - if (StringUtils.isEmpty(data.getProjectId()) && plmUserRoleData.getUsername().equals(sysUserEntity.getUsername())){ - plmUserRoleData.setSearchCheck(true); - plmUserRoleData.setUpdateCheck(true); - plmUserRoleData.setDownCheck(true); - plmUserRoleData.setDeleteCheck(true); - plmUserRoleData.setCheckAll(true); - plmUserRoleData.setSearchFlag("Y"); - plmUserRoleData.setUpdateFlag("Y"); - plmUserRoleData.setDownFlag("Y"); - plmUserRoleData.setDeleteFlag("Y"); - } } return list;