package com.ruoyi.airline.service.api; import com.ruoyi.airline.service.dto.AirlineAreaDTO; import com.ruoyi.airline.service.dto.AirlineAreaGroupDTO; import java.util.List; /** * 空域分组管理 * * @author 拓恒 */ public interface IAirlineAreaGroupService { int deletegroupById(Long userId, Long groupId); /** * 检查名称是否已经存在 * @param group * @return */ boolean checkGroupNameUnique(AirlineAreaGroupDTO group); int updateGroup(AirlineAreaGroupDTO group); int insertGroup(AirlineAreaGroupDTO group); List selectGroupList(AirlineAreaGroupDTO dto); // AirlineAreaGroupDTO selectAirLineListsByGroupId(Long userId, Long groupId); // List selectAirlineListByUserId(AirlineAreaDTO dto); /** * 按照空域分组查询所有的空域信息(包含坐标点信息) * @param userId 用户ID * @param groupId 分组ID * @return 空域分组详情 */ AirlineAreaGroupDTO selectAirspaceListByGroupId(Long userId, Long groupId); /** * 修改空域信息(包含坐标点信息) * @param area 空域信息 * @return 修改结果 */ int updateAreaWithPoints(AirlineAreaDTO area); /** * 在指定分组下新增空域 * @param groupId 分组ID * @param area 空域信息 * @return 新增结果 */ int insertAreaWithGroup(Long groupId, AirlineAreaDTO area); /** * 删除空域(软删除) * * @param areaId 空域ID * @return 删除结果 */ int deleteArea(Long areaId); /** * 批量移动空域到新分组 * * @param areaIds 空域ID列表 * @param oldGroupId 原分组ID * @param newGroupId 新分组ID * @return 移动结果 */ int batchMoveAreaToNewGroup(List areaIds, Long oldGroupId, Long newGroupId); /** * 根据用户ID查询空域列表,支持名称模糊查询 * * @param dto 查询条件 * @return 空域列表 */ List selectAreaListByUserId(AirlineAreaDTO dto); /** * 批量删除空域 * * @param areaIds 空域ID列表 * @return 删除数量 */ int batchDeleteArea(List areaIds); }