package com.zd.alg.smartlock.mapper;

import com.zd.alg.smartlock.domain.SlSubjectRelation;
import com.zd.alg.smartlock.domain.vo.SlSubjectRelationVo;

import java.util.List;

/**
 * @Author: liujh
 * @Date: 2022/09/02/18:10
 * @Description:
 */
public interface SlSubjectRelationMapper {

    /**
     * 查询实验室关联
     *
     * @param id 实验室关联主键
     * @return 实验室关联
     */
    SlSubjectRelation selectSlSubjectRelationById(Long id);

    /**
     * 查询实验室关联列表
     *
     * @param slSubjectRelation 实验室关联
     * @return 实验室关联集合
     */
    List<SlSubjectRelationVo> selectSlSubjectRelationList(SlSubjectRelationVo slSubjectRelation);

    /**
     * 根据主键集合查询实验室关联列表
     *
     * @param ids 主键集合
     * @return 实验室关联集合
     */
    List<SlSubjectRelation> getListByIds(List<Long> ids);

    /**
     * 新增实验室关联
     *
     * @param slSubjectRelation 实验室关联
     * @return 结果
     */
    int insertSlSubjectRelation(SlSubjectRelation slSubjectRelation);

    /**
     * 修改实验室关联
     *
     * @param slSubjectRelation 实验室关联
     * @return 结果
     */
    int updateSlSubjectRelation(SlSubjectRelation slSubjectRelation);

    /**
     * 删除实验室关联
     *
     * @param id 实验室关联主键
     * @return 结果
     */
    int deleteSlSubjectRelationById(Long id);

    /**
     * 批量删除实验室关联
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    int deleteSlSubjectRelationByIds(Long[] ids);
}
