package com.leromro.core.mapper;

import java.util.List;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.leromro.core.domain.BusinessManagement;
import com.leromro.core.domain.vo.BusinessManagementVO;
import org.apache.ibatis.annotations.Param;

/**
 * 业务管理(树形结构包含所有服务)Mapper接口
 * 
 * @author ruoyi
 * @date 2025-04-17
 */
public interface BusinessManagementMapper extends BaseMapper<BusinessManagement>
{
    /**
     * 查询业务管理(树形结构包含所有服务)
     * 
     * @param businessManagementId 业务管理(树形结构包含所有服务)主键
     * @return 业务管理(树形结构包含所有服务)
     */
    public BusinessManagement selectBusinessManagementByBusinessManagementId(Long businessManagementId);

    /**
     * 查询业务管理(树形结构包含所有服务)列表
     * 
     * @param businessManagement 业务管理(树形结构包含所有服务)
     * @return 业务管理(树形结构包含所有服务)集合
     */
    public List<BusinessManagement> selectBusinessManagementList(BusinessManagement businessManagement);

    /**
     * 新增业务管理(树形结构包含所有服务)
     * 
     * @param businessManagement 业务管理(树形结构包含所有服务)
     * @return 结果
     */
    public int insertBusinessManagement(BusinessManagement businessManagement);

    /**
     * 修改业务管理(树形结构包含所有服务)
     * 
     * @param businessManagement 业务管理(树形结构包含所有服务)
     * @return 结果
     */
    public int updateBusinessManagement(BusinessManagement businessManagement);

    /**
     * 删除业务管理(树形结构包含所有服务)
     * 
     * @param businessManagementId 业务管理(树形结构包含所有服务)主键
     * @return 结果
     */
    public int deleteBusinessManagementByBusinessManagementId(Long businessManagementId);

    /**
     * 批量删除业务管理(树形结构包含所有服务)
     * 
     * @param businessManagementIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteBusinessManagementByBusinessManagementIds(Long[] businessManagementIds);

    List<BusinessManagementVO> getTreeList(@Param("parentId") Long parentId);
}
