
package cn.orionsec.ops.service.api;

import cn.orionsec.ops.entity.request.machine.MachineGroupRequest;
import cn.orionsec.ops.entity.vo.machine.MachineGroupTreeVO;

import java.util.List;

public interface MachineGroupService {

    /**
     * 添加组
     *
     * @param request request
     * @return id
     */
    Long addGroup(MachineGroupRequest request);

    /**
     * 删除组
     *
     * @param idList idList
     * @return effect
     */
    Integer deleteGroup(List<Long> idList);

    /**
     * 移动组
     *
     * @param request request
     */
    void moveGroup(MachineGroupRequest request);

    /**
     * 重命名
     *
     * @param id   id
     * @param name name
     * @return effect
     */
    Integer renameGroup(Long id, String name);

    /**
     * 获取机器分组树
     *
     * @return tree
     */
    List<MachineGroupTreeVO> getRootTree();

}
