package com.bonus.zlpt.equip.service;

import java.util.List;

import cn.hutool.core.lang.tree.Tree;
import com.bonus.zlpt.equip.api.domain.TypeInfo;

/**
 * 设备类型Service接口
 * 
 * @author xsheng
 * @date 2023-12-02
 */
public interface ITypeInfoService 
{
    /**
     * 查询设备类型
     * 
     * @param typeId 设备类型主键
     * @return 设备类型
     */
    public TypeInfo selectTypeInfoByTypeId(Long typeId);

    /**
     * 查询设备类型列表
     * 
     * @param typeInfo 设备类型
     * @return 设备类型集合
     */
    public List<TypeInfo> selectTypeInfoList(TypeInfo typeInfo);

    /**
     * 新增设备类型
     * 
     * @param typeInfo 设备类型
     * @return 结果
     */
    public int insertTypeInfo(TypeInfo typeInfo);

    /**
     * 修改设备类型
     * 
     * @param typeInfo 设备类型
     * @return 结果
     */
    public int updateTypeInfo(TypeInfo typeInfo);

    /**
     * 批量删除设备类型
     * 
     * @param typeIds 需要删除的设备类型主键集合
     * @return 结果
     */
    public int deleteTypeInfoByTypeIds(Long[] typeIds);

    /**
     * 删除设备类型信息
     * 
     * @param typeId 设备类型主键
     * @return 结果
     */
    public int deleteTypeInfoByTypeId(Long typeId);

    List<Tree<Long>> treeSelect();
}
