package com.tievd.cube.modules.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.tievd.cube.commons.base.Result; import com.tievd.cube.modules.system.mapper.SysDepartRoleMapper; import com.tievd.cube.modules.system.mapper.SysDepartRoleUserMapper; import com.tievd.cube.modules.system.service.ISysDepartRoleService; import com.tievd.cube.modules.system.entity.SysDepartRole; import com.tievd.cube.modules.system.entity.SysDepartRoleUser; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; @Service public class SysDepartRoleServiceImpl extends ServiceImpl implements ISysDepartRoleService { @Autowired private SysDepartRoleUserMapper sysDepartRoleUserMapper; @Override public List queryDeptRoleByDeptAndUser(String orgCode, String userId) { return baseMapper.queryDeptRoleByDeptAndUser(orgCode, userId); } @Override public Result delete(List ids) { for (String id : ids) { SysDepartRole sysDepartRole = baseMapper.selectById(id); if (sysDepartRole == null) { return Result.error("该部门角色[" + id + "]不存在!"); } // 检查是否有用户还在使用这个职位 QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("drole_id", sysDepartRole.getId()); Long count = sysDepartRoleUserMapper.selectCount(queryWrapper); if (count != null && count > 0) { return Result.error("存在是该部门角色[" + sysDepartRole.getRoleName() + "]的用户!"); } } baseMapper.deleteBatchIds(ids); return Result.ok(); } }