package com.njcn.gather.err.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.gather.err.pojo.param.PqErrSysDtlsParam;
import com.njcn.gather.err.pojo.param.PqErrSysParam;
import com.njcn.gather.err.pojo.po.PqErrSysDtls;
import com.njcn.gather.err.pojo.vo.ErrDtlsCheckDataVO;

import java.util.List;

/**
 * @author caozehui
 * @date 2024-11-27
 */
public interface IPqErrSysDtlsService extends IService<PqErrSysDtls> {

    /**
     * 根据误差体系id查询误差详情
     * @param pqErrSysId 误差体系id
     * @return
     */
    List<PqErrSysDtls> listPqErrSysDtlsByPqErrSysId(String pqErrSysId);

    /**
     * 新增误差详情
     * @param pqErrSysId 误差体系id
     * @param list 新增参数
     * @return 成功返回true，失败返回false
     */
    boolean addPqErrSysDtls(String pqErrSysId, List<PqErrSysDtlsParam> list);

    /**
     * 更新误差详情
     * @param pqErrSysId 误差体系id
     * @param list 更新参数
     * @return 成功返回true，失败返回false
     */
    boolean updatePqErrSysDtls(String pqErrSysId, List<PqErrSysDtlsParam> list);

    /**
     * 根据误差体系id删除误差详情
     * @param pqErrSysIds
     * @return 成功返回true，失败返回false
     */
    boolean deletePqErrSysDtlsByPqErrSysId(List<String> pqErrSysIds);

    /**
     * 根据误差体系id查询误差详情
     * @param param 误差体系id
     * @return
     */
    List<PqErrSysDtls> listPqErrSysDtlsByPqErrSysIdAndTypes(PqErrSysParam.DetectionParam param);

    /**
     * 根据查询误差体系
     * @param param 误差体系id
     * @return
     */
    List<ErrDtlsCheckDataVO> listByPqErrSysIdAndTypes(PqErrSysParam.DetectionParam param);

    /**
     * 根据误差体系id和脚本类型查询脚本类型
     * @return
     */
    List<PqErrSysDtls> listPqErrSysDtlsByPqErrSysIdAndScriptType(String errSysId, String scriptType);
}
