package com.zd.laboratory.service;

import java.util.List;

import com.zd.laboratory.domain.LabGradeManage;
import com.zd.laboratory.domain.LabGradeManageRule;

/**
 * 分级管控规则Service接口
 *
 * @author liubo
 * @date 2022-02-10
 */
public interface ILabGradeManageRuleService {
    /**
     * 查询分级管控规则
     *
     * @param id 分级管控规则主键
     * @return 分级管控规则
     */
    public LabGradeManageRule selectLabGradeManageRuledById(Long id);

    /**
     * 查询分级管控规则列表
     *
     * @param labGradeManageRule 分级管控规则
     * @return 分级管控规则集合
     */
    public List<LabGradeManageRule> selectLabGradeManageRuledList(LabGradeManageRule labGradeManageRule);

    /**
     * 新增分级管控规则
     *
     * @param labGradeManageRule 分级管控规则
     * @return 结果
     */
    public int insertLabGradeManageRuled(LabGradeManageRule labGradeManageRule);

    /**
     * 修改分级管控规则
     *
     * @param labGradeManageRule 分级管控规则
     * @return 结果
     */
    public int updateLabGradeManageRuled(LabGradeManageRule labGradeManageRule);

    /**
     * 批量删除分级管控规则
     *
     * @param ids 需要删除的分级管控规则主键集合
     * @return 结果
     */
    public int deleteLabGradeManageRuledByIds(Long[] ids);

    /**
     * 删除分级管控规则信息
     *
     * @param id 分级管控规则主键
     * @return 结果
     */
    public int deleteLabGradeManageRuledById(Long id);

    void insertLabGradeManageRuled(List<LabGradeManageRule> ruleList, LabGradeManage labGradeManage);
}
