package com.hw.qms.service;

import java.util.List;
import com.hw.qms.domain.QmsCheckResultDetail;
import com.hw.qms.domain.vo.QmsCheckResultDetailVo;

/**
 * 质检结果详情Service接口
 *
 * @author xins
 * @date 2024-01-23
 */
public interface IQmsCheckResultDetailService
{
    /**
     * 查询质检结果详情
     *
     * @param checkResultDetailId 质检结果详情主键
     * @return 质检结果详情
     */
    public QmsCheckResultDetail selectQmsCheckResultDetailByCheckResultDetailId(Long checkResultDetailId);

    /**
     * 查询质检结果详情列表
     *
     * @param qmsCheckResultDetail 质检结果详情
     * @return 质检结果详情集合
     */
    public List<QmsCheckResultDetail> selectQmsCheckResultDetailList(QmsCheckResultDetail qmsCheckResultDetail);

    /**
     * 新增质检结果详情
     *
     * @param qmsCheckResultDetail 质检结果详情
     * @return 结果
     */
    public int insertQmsCheckResultDetail(QmsCheckResultDetail qmsCheckResultDetail);

    /**
     * 修改质检结果详情
     *
     * @param qmsCheckResultDetail 质检结果详情
     * @return 结果
     */
    public int updateQmsCheckResultDetail(QmsCheckResultDetail qmsCheckResultDetail);

    /**
     * 批量删除质检结果详情
     *
     * @param checkResultDetailIds 需要删除的质检结果详情主键集合
     * @return 结果
     */
    public int deleteQmsCheckResultDetailByCheckResultDetailIds(Long[] checkResultDetailIds);

    /**
     * 删除质检结果详情信息
     *
     * @param checkResultDetailId 质检结果详情主键
     * @return 结果
     */
    public int deleteQmsCheckResultDetailByCheckResultDetailId(Long checkResultDetailId);

    /**
     * 获取质检结果详情
     * @param materialBarcode 物料条码
     * @return
     */
    public QmsCheckResultDetail getCheckResultDetail(String materialBarcode);

    /**
     * 查询质检结果批次审核结果数量
     *
     * @param checkResultDetailId 质检结果详情主键
     * @return
     */
    public QmsCheckResultDetailVo getCheckResultDetailVo(Long checkResultDetailId);
}
