package com.ruoyi.project.tr.region.mapper; import com.ruoyi.project.tr.region.domain.Region; import org.apache.ibatis.annotations.Param; import java.util.List; /** * 区域/位置管理 数据层 * * @author ruoyi */ public interface RegionMapper { /** * 查询区域/位置人数 * * @param region 区域/位置信息 * @return 结果 */ int selectRegionCount(Region region); /** * 查询区域/位置是否存在用户 * * @param regionId 区域/位置ID * @return 结果 */ int checkRegionExistUser(Long regionId); /** * 查询区域/位置管理数据 * * @param region 区域/位置信息 * @return 区域/位置信息集合 */ List selectRegionList(Region region); /** * 删除区域/位置管理信息 * * @param regionId 区域/位置ID * @return 结果 */ int deleteRegionById(Long regionId); /** * 新增区域/位置信息 * * @param region 区域/位置信息 * @return 结果 */ int insertRegion(Region region); /** * 修改区域/位置信息 * * @param region 区域/位置信息 * @return 结果 */ int updateRegion(Region region); /** * 修改子元素关系 * * @param regions 子元素 * @return 结果 */ int updateRegionChildren(@Param("regions") List regions); /** * 根据区域/位置ID查询信息 * * @param regionId 区域/位置ID * @return 区域/位置信息 */ Region selectRegionById(Long regionId); /** * 校验区域/位置名称是否唯一 * * @param regionName 区域/位置名称 * @param parentId 父区域/位置ID * @return 结果 */ Region checkRegionNameUnique(@Param("regionName") String regionName, @Param("parentId") Long parentId, @Param("companyId") Long companyId); /** * 根据角色ID查询区域/位置 * * @param roleId 角色ID * @return 区域/位置列表 */ List selectRoleRegionTree(Long roleId,Long companyId); /** * 修改所在区域/位置的父级区域/位置状态 * * @param region 区域/位置 */ void updateRegionStatus(Region region); /** * 根据ID查询所有子区域/位置 * * @param regionId 区域/位置ID * @return 区域/位置列表 */ List selectChildrenRegionById(Long regionId); }