package com.ard.data.region.mapper; import com.ard.data.region.domain.ArdDeptRegion; import com.ard.data.region.domain.ConflictRegion; import org.apache.ibatis.annotations.Param; import java.util.List; /** * 部门区域Mapper接口 * * @author ruoyi */ public interface ArdDeptRegionMapper { /** * 查询部门区域 */ public ArdDeptRegion selectArdDeptRegionById(Long id); /** * 查询部门区域列表 */ public List selectArdDeptRegionList(ArdDeptRegion ardDeptRegion); /** * 新增部门区域 */ public int insertArdDeptRegion(ArdDeptRegion ardDeptRegion); /** * 修改部门区域 */ public int updateArdDeptRegion(ArdDeptRegion ardDeptRegion); /** * 启用/禁用区域 */ public int updateStatus(@Param("id") Long id, @Param("status") String status); /** * 删除部门区域 */ public int deleteArdDeptRegionById(Long id); /** * 批量删除部门区域 */ public int deleteArdDeptRegionByIds(String[] ids); /** * 根据区域名称查询区域(用于唯一性校验) */ public ArdDeptRegion checkRegionNameUnique(@Param("regionName") String regionName); /** * 检查点冲突(1个坐标) */ public List checkPointConflict(@Param("deptId") Long deptId, @Param("wkt") String wkt, @Param("excludeId") Long excludeId); /** * 检查线冲突(2个坐标) */ public List checkLineConflict(@Param("deptId") Long deptId, @Param("wkt") String wkt, @Param("excludeId") Long excludeId); /** * 检查面冲突(3个以上坐标) */ public List checkPolygonConflict(@Param("deptId") Long deptId, @Param("wkt") String wkt, @Param("excludeId") Long excludeId); /** * 获取边界WKT */ public String selectBoundaryWkt(@Param("id") Long id); /** * 根据坐标查询所属区域 */ public ArdDeptRegion selectRegionByPoint(@Param("pointWkt") String pointWkt); }