diff --git a/adc-da-jwtLogin/src/main/java/com/adc/da/login/rest/LoginRestController.java b/adc-da-jwtLogin/src/main/java/com/adc/da/login/rest/LoginRestController.java index 0f93f85a..1c2900c1 100644 --- a/adc-da-jwtLogin/src/main/java/com/adc/da/login/rest/LoginRestController.java +++ b/adc-da-jwtLogin/src/main/java/com/adc/da/login/rest/LoginRestController.java @@ -142,10 +142,10 @@ public class LoginRestController { if(userEO.getDisableFlag()==1){ return Result.error("r0011", "帐号已禁用"); } - String position = userService.selectPositionByUserId(account); - if(StringUtils.isBlank(position)){ - return Result.error("r0011", "无配置岗位"); - } +// String position = userService.selectPositionByUserId(account); +// if(StringUtils.isBlank(position)){ +// return Result.error("r0011", "无配置岗位"); +// } String token = jwtUtils.generateToken(userEO.getUsid()); userEO.setToken(token); // 加密重要信息 @@ -212,10 +212,10 @@ public class LoginRestController { if(userEO.getDisableFlag()==1){ return Result.error("r0011", "帐号已禁用"); } - String position = userService.selectPositionByUserId(account); - if(StringUtils.isBlank(position)){ - return Result.error("r0011", "无配置岗位"); - } +// String position = userService.selectPositionByUserId(account); +// if(StringUtils.isBlank(position)){ +// return Result.error("r0011", "无配置岗位"); +// } String token = jwtUtils.generateToken(userEO.getUsid()); userEO.setToken(token); // 加密重要信息 diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/fileMaterialCenter/service/impl/FileMaterialServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/fileMaterialCenter/service/impl/FileMaterialServiceImpl.java index 49f72ee1..dc23da79 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/fileMaterialCenter/service/impl/FileMaterialServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/fileMaterialCenter/service/impl/FileMaterialServiceImpl.java @@ -5,12 +5,12 @@ import com.adc.da.slrs.fileMaterialCenter.entity.FileMaterial; import com.adc.da.slrs.fileMaterialCenter.dao.FileMaterialDao; import com.adc.da.slrs.fileMaterialCenter.entity.FileMaterialPage; import com.adc.da.slrs.fileMaterialCenter.service.IFileMaterialService; -import com.adc.da.slrs.sarPosition.service.ITsPositionService; import com.adc.da.slrs.sarUser.dao.TsUserDao; import com.adc.da.slrs.sarUser.service.ITsUserService; import com.adc.da.slrs.tsRoleMeunData.entity.TsRoleMenuData; import com.adc.da.slrs.tsRoleMeunData.service.ITsRoleMenuDataService; import com.adc.da.slrs.zlTree.service.IZlTreeService; +import com.adc.da.sys.service.IUserRoleEOService; import com.adc.da.util.LoginUserUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -22,6 +22,7 @@ import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import javax.management.Query; import java.text.SimpleDateFormat; import java.util.ArrayList; @@ -44,12 +45,11 @@ public class FileMaterialServiceImpl extends ServiceImpl getFileMaterial(FileMaterialPage queryPage) { @@ -63,8 +63,9 @@ public class FileMaterialServiceImpl extends ServiceImpl positionIds = tsUserDao.selectPositionIds(loginUserId); - List roleIds = tsPositionService.getRoleIdsByPositionIds(positionIds); +// List positionIds = tsUserDao.selectPositionIds(loginUserId); +// List roleIds = tsPositionService.getRoleIdsByPositionIds(positionIds); + List roleIds = userRoleEOService.getRoleIdsByUserId(loginUserId); QueryWrapper wrapper = new QueryWrapper<>(); wrapper.in("ROLE_ID", roleIds); List tsRoleMenuData = iTsRoleMenuDataService.list(wrapper); @@ -105,8 +106,9 @@ public class FileMaterialServiceImpl extends ServiceImpl positionIds = tsUserDao.selectPositionIds(userId); - List roleIds = tsPositionService.getRoleIdsByPositionIds(positionIds); +// List positionIds = tsUserDao.selectPositionIds(userId); +// List roleIds = tsPositionService.getRoleIdsByPositionIds(positionIds); + List roleIds = userRoleEOService.getRoleIdsByUserId(userId); QueryWrapper wrapper = new QueryWrapper<>(); wrapper.in("ROLE_ID", roleIds); List tsRoleMenuData = iTsRoleMenuDataService.list(wrapper); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/controller/RoleReplacePositionController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/controller/RoleReplacePositionController.java new file mode 100644 index 00000000..2373ba2e --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/controller/RoleReplacePositionController.java @@ -0,0 +1,34 @@ +package com.adc.da.slrs.roleReplacePosition.controller; + +import com.adc.da.slrs.roleReplacePosition.service.UserPositionService; +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +/** + * @author: Mzaxd + * @Date: 2023/11/14 13:46 + */ + +@RestController +@Api(tags = "福田标准法规--角色替换岗位") +@RequestMapping("/api/roleReplacePosition") +public class RoleReplacePositionController { + + @Resource + private UserPositionService userPositionService; + + /** + * 角色替换岗位 + * + * @return + */ + @GetMapping("/start") + public void roleReplacePosition() { + userPositionService.roleReplacePosition(); + } + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/dao/PositionRoleMapper.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/dao/PositionRoleMapper.java new file mode 100644 index 00000000..c7b0d80a --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/dao/PositionRoleMapper.java @@ -0,0 +1,20 @@ +package com.adc.da.slrs.roleReplacePosition.dao; + +import com.adc.da.slrs.roleReplacePosition.domain.PositionRole; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.springframework.stereotype.Repository; + +/** +* @author ThinkBook +* @description 针对表【ts_position_role】的数据库操作Mapper +* @createDate 2023-11-14 13:53:47 +* @Entity com.adc.da.slrs.roleReplacePosition.domain.PositionRole +*/ +@Repository +public interface PositionRoleMapper extends BaseMapper { + +} + + + + diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/dao/UserPositionMapper.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/dao/UserPositionMapper.java new file mode 100644 index 00000000..54d22e19 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/dao/UserPositionMapper.java @@ -0,0 +1,20 @@ +package com.adc.da.slrs.roleReplacePosition.dao; + +import com.adc.da.slrs.roleReplacePosition.domain.UserPosition; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.springframework.stereotype.Repository; + +/** +* @author ThinkBook +* @description 针对表【ts_user_position】的数据库操作Mapper +* @createDate 2023-11-14 13:49:37 +* @Entity com.adc.da.slrs.roleReplacePosition.domain.UserPosition +*/ +@Repository +public interface UserPositionMapper extends BaseMapper { + +} + + + + diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/domain/PositionRole.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/domain/PositionRole.java new file mode 100644 index 00000000..029b3b6d --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/domain/PositionRole.java @@ -0,0 +1,95 @@ +package com.adc.da.slrs.roleReplacePosition.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; + +/** + * + * @TableName ts_position_role + */ +@TableName(value ="ts_position_role") +public class PositionRole implements Serializable { + /** + * 角色ID + */ + @TableId + private String roleId; + + /** + * 岗位ID + */ + @TableId + private String positionId; + + @TableField(exist = false) + private static final long serialVersionUID = 1L; + + /** + * 角色ID + */ + public String getRoleId() { + return roleId; + } + + /** + * 角色ID + */ + public void setRoleId(String roleId) { + this.roleId = roleId; + } + + /** + * 岗位ID + */ + public String getPositionId() { + return positionId; + } + + /** + * 岗位ID + */ + public void setPositionId(String positionId) { + this.positionId = positionId; + } + + @Override + public boolean equals(Object that) { + if (this == that) { + return true; + } + if (that == null) { + return false; + } + if (getClass() != that.getClass()) { + return false; + } + PositionRole other = (PositionRole) that; + return (this.getRoleId() == null ? other.getRoleId() == null : this.getRoleId().equals(other.getRoleId())) + && (this.getPositionId() == null ? other.getPositionId() == null : this.getPositionId().equals(other.getPositionId())); + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((getRoleId() == null) ? 0 : getRoleId().hashCode()); + result = prime * result + ((getPositionId() == null) ? 0 : getPositionId().hashCode()); + return result; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(getClass().getSimpleName()); + sb.append(" ["); + sb.append("Hash = ").append(hashCode()); + sb.append(", roleId=").append(roleId); + sb.append(", positionId=").append(positionId); + sb.append(", serialVersionUID=").append(serialVersionUID); + sb.append("]"); + return sb.toString(); + } +} \ No newline at end of file diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/domain/UserPosition.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/domain/UserPosition.java new file mode 100644 index 00000000..e3b71a16 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/domain/UserPosition.java @@ -0,0 +1,93 @@ +package com.adc.da.slrs.roleReplacePosition.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; + +/** + * + * @TableName ts_user_position + */ +@TableName(value ="ts_user_position") +public class UserPosition implements Serializable { + /** + * 用户ID + */ + private String userId; + + /** + * 岗位ID + */ + private String positionId; + + @TableField(exist = false) + private static final long serialVersionUID = 1L; + + /** + * 用户ID + */ + public String getUserId() { + return userId; + } + + /** + * 用户ID + */ + public void setUserId(String userId) { + this.userId = userId; + } + + /** + * 岗位ID + */ + public String getPositionId() { + return positionId; + } + + /** + * 岗位ID + */ + public void setPositionId(String positionId) { + this.positionId = positionId; + } + + @Override + public boolean equals(Object that) { + if (this == that) { + return true; + } + if (that == null) { + return false; + } + if (getClass() != that.getClass()) { + return false; + } + UserPosition other = (UserPosition) that; + return (this.getUserId() == null ? other.getUserId() == null : this.getUserId().equals(other.getUserId())) + && (this.getPositionId() == null ? other.getPositionId() == null : this.getPositionId().equals(other.getPositionId())); + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((getUserId() == null) ? 0 : getUserId().hashCode()); + result = prime * result + ((getPositionId() == null) ? 0 : getPositionId().hashCode()); + return result; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(getClass().getSimpleName()); + sb.append(" ["); + sb.append("Hash = ").append(hashCode()); + sb.append(", userId=").append(userId); + sb.append(", positionId=").append(positionId); + sb.append(", serialVersionUID=").append(serialVersionUID); + sb.append("]"); + return sb.toString(); + } +} \ No newline at end of file diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/service/PositionRoleService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/service/PositionRoleService.java new file mode 100644 index 00000000..e160e34a --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/service/PositionRoleService.java @@ -0,0 +1,13 @@ +package com.adc.da.slrs.roleReplacePosition.service; + +import com.adc.da.slrs.roleReplacePosition.domain.PositionRole; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author ThinkBook +* @description 针对表【ts_position_role】的数据库操作Service +* @createDate 2023-11-14 13:53:47 +*/ +public interface PositionRoleService extends IService { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/service/UserPositionService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/service/UserPositionService.java new file mode 100644 index 00000000..27c81bfc --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/service/UserPositionService.java @@ -0,0 +1,14 @@ +package com.adc.da.slrs.roleReplacePosition.service; + +import com.adc.da.slrs.roleReplacePosition.domain.UserPosition; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author ThinkBook +* @description 针对表【ts_user_position】的数据库操作Service +* @createDate 2023-11-14 13:49:37 +*/ +public interface UserPositionService extends IService { + + void roleReplacePosition(); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/service/impl/PositionRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/service/impl/PositionRoleServiceImpl.java new file mode 100644 index 00000000..75472fb1 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/service/impl/PositionRoleServiceImpl.java @@ -0,0 +1,22 @@ +package com.adc.da.slrs.roleReplacePosition.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.adc.da.slrs.roleReplacePosition.domain.PositionRole; +import com.adc.da.slrs.roleReplacePosition.service.PositionRoleService; +import com.adc.da.slrs.roleReplacePosition.dao.PositionRoleMapper; +import org.springframework.stereotype.Service; + +/** +* @author ThinkBook +* @description 针对表【ts_position_role】的数据库操作Service实现 +* @createDate 2023-11-14 13:53:47 +*/ +@Service +public class PositionRoleServiceImpl extends ServiceImpl + implements PositionRoleService{ + +} + + + + diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/service/impl/UserPositionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/service/impl/UserPositionServiceImpl.java new file mode 100644 index 00000000..61c4eb5f --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/roleReplacePosition/service/impl/UserPositionServiceImpl.java @@ -0,0 +1,68 @@ +package com.adc.da.slrs.roleReplacePosition.service.impl; + +import com.adc.da.slrs.roleReplacePosition.domain.PositionRole; +import com.adc.da.slrs.roleReplacePosition.service.PositionRoleService; +import com.adc.da.sys.entity.UserRoleEO; +import com.adc.da.sys.service.IUserRoleEOService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.adc.da.slrs.roleReplacePosition.domain.UserPosition; +import com.adc.da.slrs.roleReplacePosition.service.UserPositionService; +import com.adc.da.slrs.roleReplacePosition.dao.UserPositionMapper; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.*; +import java.util.stream.Collectors; + +/** +* @author ThinkBook +* @description 针对表【ts_user_position】的数据库操作Service实现 +* @createDate 2023-11-14 13:49:37 +*/ +@Service +public class UserPositionServiceImpl extends ServiceImpl + implements UserPositionService{ + + @Resource + private PositionRoleService positionRoleService; + + @Resource + private IUserRoleEOService userRoleEOService; + + @Override + public void roleReplacePosition() { + // 找到所有对应关系 + List userPositions = this.list(); + + // 转换对应关系 + Map> positionRoleMap = positionRoleService.list().stream() + .collect(Collectors.groupingBy(PositionRole::getPositionId)); + + Set userRoleEOSet = new HashSet<>(); + for (UserPosition userPosition : userPositions) { + // 去除空指针异常 + if (positionRoleMap.get(userPosition.getPositionId()) == null) { + continue; + } + List roleIds = positionRoleMap.get(userPosition.getPositionId()).stream() + .map(PositionRole::getRoleId).collect(Collectors.toList()); + for (String roleId : roleIds) { + UserRoleEO userRoleEO = new UserRoleEO(); + userRoleEO.setUserId(userPosition.getUserId()); + userRoleEO.setRoleId(roleId); + userRoleEOSet.add(userRoleEO); + } + } + // 保存对应关系 + // 先找出所有用户角色,然后和构建好的用户角色去重后再进行添加,避免出现多条重复数据 + List userRoleEOList = userRoleEOService.list(); + userRoleEOList.forEach(userRoleEOSet::remove); + userRoleEOService.saveBatch(userRoleEOSet, userRoleEOSet.size()); + } + + +} + + + + diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java index 2708d80b..d5f74bcd 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java @@ -72,20 +72,20 @@ public interface TsPositionDao extends BaseMapper { Integer countPositionAndRole(TsPosition tsPosition); - /** - * 通过岗位列表查询绑定的角色列表 - * @param positionIds:岗位列表 - * @return List - */ - List getRoleIdsByPositionIds(List positionIds); +// /** +// * 通过岗位列表查询绑定的角色列表 +// * @param positionIds:岗位列表 +// * @return List +// */ +// List getRoleIdsByPositionIds(List positionIds); long pageTotal(); - /** - * 通过roleId查询岗位ID列表 - * @param roleId:角色ID - * @return List - */ - @Select("select position_id from ts_position_role where role_id=#{roleId}") - List getPositionIdsByRoleId(String roleId); +// /** +// * 通过roleId查询岗位ID列表 +// * @param roleId:角色ID +// * @return List +// */ +// @Select("select position_id from ts_position_role where role_id=#{roleId}") +// List getPositionIdsByRoleId(String roleId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java index 87932f8c..206d50c1 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java @@ -67,17 +67,17 @@ public interface ITsPositionService extends IService { */ ResponseMessage deletePosition(String positionId); - /** - * 通过岗位列表查询绑定的角色列表 - * @param positionIds:岗位列表 - * @return List - */ - List getRoleIdsByPositionIds(List positionIds); - - /** - * 通过roleId查询岗位ID列表 - * @param roleId:角色ID - * @return List - */ - List getPositionIdsByRoleId(String roleId); +// /** +// * 通过岗位列表查询绑定的角色列表 +// * @param positionIds:岗位列表 +// * @return List +// */ +// List getRoleIdsByPositionIds(List positionIds); +// +// /** +// * 通过roleId查询岗位ID列表 +// * @param roleId:角色ID +// * @return List +// */ +// List getPositionIdsByRoleId(String roleId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java index c67e7c20..0ebb75c4 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java @@ -195,26 +195,26 @@ public class TsPositionServiceImpl extends ServiceImpl - */ - @Override - public List getRoleIdsByPositionIds(List positionIds) { - if(positionIds!=null&&positionIds.size()>0){ - return tsPositionDao.getRoleIdsByPositionIds(positionIds); - } - return null; - } +// /** +// * 通过岗位列表查询绑定的角色列表 +// * @param positionIds:岗位列表 +// * @return List +// */ +// @Override +// public List getRoleIdsByPositionIds(List positionIds) { +// if(positionIds!=null&&positionIds.size()>0){ +// return tsPositionDao.getRoleIdsByPositionIds(positionIds); +// } +// return null; +// } - /** - * 通过roleId查询岗位ID列表 - * @param roleId:角色ID - * @return List - */ - @Override - public List getPositionIdsByRoleId(String roleId) { - return tsPositionDao.getPositionIdsByRoleId(roleId); - } +// /** +// * 通过roleId查询岗位ID列表 +// * @param roleId:角色ID +// * @return List +// */ +// @Override +// public List getPositionIdsByRoleId(String roleId) { +// return tsPositionDao.getPositionIdsByRoleId(roleId); +// } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index fc70a78d..9e249a0e 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -163,10 +163,10 @@ public class TsRoleServiceImpl extends ServiceImpl implements if(childrenRole!=null&&childrenRole.size()>0){ return Result.error("该角色有下属角色,无法删除"); } - List positionIds=tsRoleDao.getPositionIds(roleId); - if(positionIds!=null&&positionIds.size()>0){ - return Result.error("该角色已绑定岗位,无法删除"); - } +// List positionIds=tsRoleDao.getPositionIds(roleId); +// if(positionIds!=null&&positionIds.size()>0){ +// return Result.error("该角色已绑定岗位,无法删除"); +// } tsRoleDao.deleteById(roleId); return Result.success(); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java index 2cbfa753..30059b17 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java @@ -17,7 +17,7 @@ import com.adc.da.slrs.sarBussionessStand.entity.OldSystem; import com.adc.da.slrs.sarLawsAttrDetailedList.dao.SarLawsAttrDetailedListDao; import com.adc.da.slrs.sarLawsAttrDetailedList.entity.SarFindDto; import com.adc.da.slrs.sarPosition.entity.TsPosition; -import com.adc.da.slrs.sarPosition.service.ITsPositionService; +//import com.adc.da.slrs.sarPosition.service.ITsPositionService; import com.adc.da.slrs.sarStandFile.service.ISarStandFileService; import com.adc.da.slrs.sarStandWarning.entity.WarningDate; import com.adc.da.slrs.sarStandWarning.service.Impl.WarningDateServiceImpl; @@ -150,8 +150,8 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl tsPositionQW = new QueryWrapper<>(); - tsPositionQW.select("name") - .in("id", valArr); - List stringList = iTsPositionService.listObjs(tsPositionQW, o -> o.toString()); - value = String.join(",", stringList.isEmpty() ? valArr : stringList); - break; - } +// //通过id绑定责任部门师名称 +// case "ZRBM": { +// QueryWrapper tsPositionQW = new QueryWrapper<>(); +// tsPositionQW.select("name") +// .in("id", valArr); +// List stringList = iTsPositionService.listObjs(tsPositionQW, o -> o.toString()); +// value = String.join(",", stringList.isEmpty() ? valArr : stringList); +// break; +// } default: value = dicTypeEODao.getDicNamesByCodes(valArr, ""); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java index d4310ff6..7437c2bd 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java @@ -7,9 +7,9 @@ import com.adc.da.slrs.sarInstitution.entity.TsInstitution; import com.adc.da.slrs.sarInstitution.service.ITsInstitutionService; import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarMenu.service.ISarMenuService; -import com.adc.da.slrs.sarPosition.dao.TsPositionDao; +//import com.adc.da.slrs.sarPosition.dao.TsPositionDao; import com.adc.da.slrs.sarPosition.entity.TsPosition; -import com.adc.da.slrs.sarPosition.service.ITsPositionService; +//import com.adc.da.slrs.sarPosition.service.ITsPositionService; import com.adc.da.slrs.sarResource.entity.TsResource; import com.adc.da.slrs.sarResource.service.ITsResourceService; import com.adc.da.slrs.sarRole.service.ITsRoleService; @@ -20,10 +20,13 @@ import com.adc.da.slrs.tsRoleMeunData.entity.TsRoleMenuData; import com.adc.da.slrs.tsRoleMeunData.service.ITsRoleMenuDataService; import com.adc.da.sync.service.SyncUserService; import com.adc.da.sys.entity.UserEO; +import com.adc.da.sys.entity.UserRoleEO; +import com.adc.da.sys.service.IUserRoleEOService; import com.adc.da.utils.util.ListUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -34,6 +37,7 @@ import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import javax.annotation.Resource; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -54,8 +58,8 @@ public class TsUserServiceImpl extends ServiceImpl implements private TsUserDao tsUserDao; @Autowired private ITsUserService tsUserService; - @Autowired - private ITsPositionService tsPositionService; +// @Autowired +// private ITsPositionService tsPositionService; @Autowired @Lazy private ITsRoleService tsRoleService; @@ -65,12 +69,15 @@ public class TsUserServiceImpl extends ServiceImpl implements private ITsResourceService tsResourceService; @Autowired private SyncUserService syncUserService; - @Autowired - private TsPositionDao tsPositionDao; +// @Autowired +// private TsPositionDao tsPositionDao; @Autowired private ITsInstitutionService tsInstitutionService; @Autowired ITsRoleMenuDataService iTsRoleMenuDataService; + @Resource + private IUserRoleEOService userRoleEOService; + public void deleteUser(){ @@ -289,16 +296,17 @@ public class TsUserServiceImpl extends ServiceImpl implements public List getMenu() { UserEO userEO=UserUtils.getUser(); String userId= userEO.getUsid(); - List positionIds=tsUserDao.selectPositionIds(userId); +// List positionIds=tsUserDao.selectPositionIds(userId); /** * 当用户没有所属岗位,默认给一个other岗位,适用于特定权限外的其他用户 * 用户同步时需要将用户配置的系统内的岗位保留 */ - if(positionIds == null || positionIds.isEmpty()){ - positionIds = Arrays.asList(new String[]{"other"}); - } - List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); +// if(positionIds == null || positionIds.isEmpty()){ +// positionIds = Arrays.asList(new String[]{"other"}); +// } +// List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); + List roleIds = userRoleEOService.getRoleIdsByUserId(userId); List menuIds=tsRoleService.getMenuIdsByRoleIds(roleIds); return sarMenuService.getMenuByIds(menuIds); } @@ -313,8 +321,9 @@ public class TsUserServiceImpl extends ServiceImpl implements UserEO userEO=UserUtils.getUser(); String userId= userEO.getUsid(); System.out.println(userId); - List positionIds=tsUserDao.selectPositionIds(userId); - List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); +// List positionIds=tsUserDao.selectPositionIds(userId); +// List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); + List roleIds = userRoleEOService.getRoleIdsByUserId(userId); List resourceIds=tsRoleService.getResourceIdsByRoleIds(roleIds); return tsResourceService.getResourceByIds(resourceIds,tsResource.getSorDivide()); } @@ -326,8 +335,16 @@ public class TsUserServiceImpl extends ServiceImpl implements */ @Override public List getUserIdsByRoleId(String roleId) { - List positionIds=tsPositionService.getPositionIdsByRoleId(roleId); - return tsUserDao.getUserIdsByPositionIds(positionIds); + LambdaQueryWrapper userRoleEOLambdaQueryWrapper = new LambdaQueryWrapper<>(); + userRoleEOLambdaQueryWrapper.eq(UserRoleEO::getRoleId,roleId); + // 根据角色ID查询用户ID + List list = userRoleEOService.list(userRoleEOLambdaQueryWrapper); + // 判空 + if (list == null || list.isEmpty()) { + return null; + } + // 获取用户ID + return list.stream().map(UserRoleEO::getUserId).collect(Collectors.toList()); } /** @@ -337,8 +354,9 @@ public class TsUserServiceImpl extends ServiceImpl implements */ @Override public List getMenusByUserId(String userId){ - List positionIds=tsUserDao.selectPositionIds(userId); - List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); +// List positionIds=tsUserDao.selectPositionIds(userId); +// List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); + List roleIds = userRoleEOService.getRoleIdsByUserId(userId); List menuIds=tsRoleService.getMenuIdsByRoleIds(roleIds); return sarMenuService.getMenuByIds(menuIds); } @@ -353,8 +371,9 @@ public class TsUserServiceImpl extends ServiceImpl implements UserEO userEO=UserUtils.getUser(); String userId= userEO.getUsid(); System.out.println(userId); - List positionIds=tsUserDao.selectPositionIds(userId); - List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); +// List positionIds=tsUserDao.selectPositionIds(userId); +// List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); + List roleIds = userRoleEOService.getRoleIdsByUserId(userId); return tsRoleService.getResourceIdsByRoleIds(roleIds); } @@ -365,8 +384,9 @@ public class TsUserServiceImpl extends ServiceImpl implements */ @Override public List getResourceUserId(String userId) { - List positionIds=tsUserDao.selectPositionIds(userId); - List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); +// List positionIds=tsUserDao.selectPositionIds(userId); +// List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); + List roleIds = userRoleEOService.getRoleIdsByUserId(userId); return tsRoleService.getResourceIdsByRoleIds(roleIds); } @@ -376,8 +396,9 @@ public class TsUserServiceImpl extends ServiceImpl implements */ @Override public List getResourceDataUserId(String userId) { - List positionIds=tsUserDao.selectPositionIds(userId); - List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); +// List positionIds=tsUserDao.selectPositionIds(userId); +// List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); + List roleIds = userRoleEOService.getRoleIdsByUserId(userId); QueryWrapper wrapper=new QueryWrapper<>(); wrapper.select("MENU_ID"); wrapper.in("ROLE_ID",roleIds); @@ -420,15 +441,15 @@ public class TsUserServiceImpl extends ServiceImpl implements for(SyncUser syncUser:syncUsers){ QueryWrapper positionQueryWrapper=new QueryWrapper<>(); positionQueryWrapper.eq("name",syncUser.getTitle()); - TsPosition tsPosition=tsPositionDao.selectOne(positionQueryWrapper); - if(tsPosition==null){ - tsPosition=new TsPosition(); - tsPosition.setName(syncUser.getTitle()); - tsPosition.setType("1"); - tsPositionDao.insert(tsPosition); - } +// TsPosition tsPosition=tsPositionDao.selectOne(positionQueryWrapper); +// if(tsPosition==null){ +// tsPosition=new TsPosition(); +// tsPosition.setName(syncUser.getTitle()); +// tsPosition.setType("1"); +// tsPositionDao.insert(tsPosition); +// } TsUser tsUser=SyncUser.toUser(syncUser); - tsUser.setPositionId(tsPosition.getId()); +// tsUser.setPositionId(tsPosition.getId()); tsUserDao.insert(tsUser); } @@ -436,8 +457,9 @@ public class TsUserServiceImpl extends ServiceImpl implements @Override public List getSecondMenusByUserId(String userId) { - List positionIds=tsUserDao.selectPositionIds(userId); - List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); +// List positionIds=tsUserDao.selectPositionIds(userId); +// List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); + List roleIds = userRoleEOService.getRoleIdsByUserId(userId); List menuIds=tsRoleService.getMenuIdsByRoleIds(roleIds); return sarMenuService.getSecondMenuByIds(menuIds); } @@ -506,12 +528,12 @@ public class TsUserServiceImpl extends ServiceImpl implements } ids.removeIf(s -> null==s); List tsUsers = tsUserDao.userUnderInstitution((tsUser.getCurrent() - 1) * tsUser.getSize(), tsUser.getSize(), tsUser, ids); - if(tsUsers!=null && !tsUsers.isEmpty()){ - for (TsUser user:tsUsers) { - List positionList = tsPositionService.getPositionDataByUserId(user.getUserId()); - user.setPositions(positionList); - } - } +// if(tsUsers!=null && !tsUsers.isEmpty()){ +// for (TsUser user:tsUsers) { +// List positionList = tsPositionService.getPositionDataByUserId(user.getUserId()); +// user.setPositions(positionList); +// } +// } Page tsUserPage = new Page<>(); tsUserPage.setCurrent(tsUser.getCurrent()); diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/positionRole/PositionRoleMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/positionRole/PositionRoleMapper.xml new file mode 100644 index 00000000..2e0d18c7 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/positionRole/PositionRoleMapper.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + role_id,position_id + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/userPosition/UserPositionMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/userPosition/UserPositionMapper.xml new file mode 100644 index 00000000..810a941d --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/userPosition/UserPositionMapper.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + user_id,position_id + + diff --git a/adc-da-sys/src/main/java/com/adc/da/sys/entity/UserRoleEO.java b/adc-da-sys/src/main/java/com/adc/da/sys/entity/UserRoleEO.java index ff52a4f5..29cb745e 100644 --- a/adc-da-sys/src/main/java/com/adc/da/sys/entity/UserRoleEO.java +++ b/adc-da-sys/src/main/java/com/adc/da/sys/entity/UserRoleEO.java @@ -1,6 +1,7 @@ package com.adc.da.sys.entity; import com.adc.da.base.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.TableName; /** @@ -9,6 +10,7 @@ import com.adc.da.base.entity.BaseEntity; * 日期: 2018-09-03
* 版权所有:版权归北京卡达克数据技术中心所有。
*/ +@TableName("TS_USER_ROLE") public class UserRoleEO extends BaseEntity { private String roleId; diff --git a/adc-da-sys/src/main/java/com/adc/da/sys/service/IUserRoleEOService.java b/adc-da-sys/src/main/java/com/adc/da/sys/service/IUserRoleEOService.java index f9e2efac..56cfd7ff 100644 --- a/adc-da-sys/src/main/java/com/adc/da/sys/service/IUserRoleEOService.java +++ b/adc-da-sys/src/main/java/com/adc/da/sys/service/IUserRoleEOService.java @@ -3,5 +3,9 @@ package com.adc.da.sys.service; import com.adc.da.sys.entity.UserRoleEO; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + public interface IUserRoleEOService extends IService { + + List getRoleIdsByUserId(String userId); } diff --git a/adc-da-sys/src/main/java/com/adc/da/sys/service/impl/UserRoleEOServiceImpl.java b/adc-da-sys/src/main/java/com/adc/da/sys/service/impl/UserRoleEOServiceImpl.java index 7830cb0a..90096546 100644 --- a/adc-da-sys/src/main/java/com/adc/da/sys/service/impl/UserRoleEOServiceImpl.java +++ b/adc-da-sys/src/main/java/com/adc/da/sys/service/impl/UserRoleEOServiceImpl.java @@ -3,11 +3,16 @@ package com.adc.da.sys.service.impl; import com.adc.da.sys.dao.UserRoleEODao; import com.adc.da.sys.entity.UserRoleEO; import com.adc.da.sys.service.IUserRoleEOService; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; +import java.util.Collections; +import java.util.List; +import java.util.stream.Collectors; + /** * @@ -21,4 +26,10 @@ import org.springframework.transaction.annotation.Transactional; @Transactional(value = "transactionManager", readOnly = false, propagation = Propagation.REQUIRED, rollbackFor = Throwable.class) public class UserRoleEOServiceImpl extends ServiceImpl implements IUserRoleEOService { + @Override + public List getRoleIdsByUserId(String userId) { + return this.list(new LambdaQueryWrapper() + .eq(UserRoleEO::getUserId, userId)) + .stream().map(UserRoleEO::getRoleId).distinct().collect(Collectors.toList()); + } }