package cn.estsh.i3plus.core.api.iservice.busi;

import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.platform.bean.SysDictionary;
import cn.estsh.i3plus.pojo.platform.bean.SysToolType;
import io.swagger.annotations.ApiOperation;

import java.util.List;

/**
 * @Description : 硬件类型服务接口
 * @Reference :
 * @Author : yunhao
 * @Date : 2018-10-28 12:32
 * @Modify :
 **/
public interface ISysToolTypeService {

    /**
     * 添加硬件类型
     * @param toolType
     */
    @ApiOperation(value = "新增硬件类型")
    void insertSysToolType(SysToolType toolType);

    /**
     * 删除硬件类型
     * @param id
     */
    @ApiOperation(value = "删除硬件类型",notes = "根据 ID 删除硬件类型信息")
    void deleteSysToolTypeById(Long id);

    /**
     * 修改硬件类型
     * @param toolType
     */
    @ApiOperation(value = "更新硬件类型")
    void updateSysToolType(SysToolType toolType);

    /**
     * 查找全部硬件类型
     * @return
     */
    @ApiOperation(value = "查询硬件类型")
    List<SysToolType> listSysToolType();

    /**
     * 根据id查找硬件类型
     * @param id
     * @return
     */
    @ApiOperation(value = "查询硬件类型",notes = "根据 ID 查询硬件类型信息")
    SysToolType getSysToolTypeById(Long id);

    /**
     * 硬件类型复杂查询，分页，排序
     * @param toolType
     * @param pager
     * @return
     */
    @ApiOperation(value = "查询硬件类型",notes = "查询类型信息 复杂化查询")
    ListPager querySysToolTypeByPager(SysToolType toolType, Pager pager);

    /**
     * 批量删除硬件类型
     * @param ids
     */
    @ApiOperation(value = "删除硬件类型",notes = "根据 ID 批量删除硬件类型信息")
    void deleteSysToolTypeByIds(Long[] ids);
}
