package digital.laboratory.platform.reagent.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import digital.laboratory.platform.common.mybatis.security.service.DLPUser;
import digital.laboratory.platform.reagent.dto.AuditAndApproveDTO;
import digital.laboratory.platform.reagent.dto.PeriodVerificationImplementationDTO;
import digital.laboratory.platform.reagent.entity.PeriodVerificationImplementation;
import digital.laboratory.platform.reagent.vo.PeriodVerificationImplementationVO;

/**
 * (标准物质期间核查实施情况及结果记录表)服务类
 *
 * @author Zhang Xiaolong created at  2023-03-10
 * @describe (标准物质期间核查实施情况及结果记录表) 服务类
 */
public interface PeriodVerificationImplementationService extends IService<PeriodVerificationImplementation> {

    IPage<PeriodVerificationImplementationVO> getPeriodVerificationImplementationVOPage(IPage<PeriodVerificationImplementation> page, QueryWrapper<PeriodVerificationImplementation> qw);

    PeriodVerificationImplementationVO getPeriodVerificationImplementationVO(String periodVerificationImplementationId);

    PeriodVerificationImplementation addById(PeriodVerificationImplementationDTO periodVerificationImplementationDTO, DLPUser dlpUser);

    PeriodVerificationImplementation editById(PeriodVerificationImplementationDTO periodVerificationImplementationDTO);

    PeriodVerificationImplementation commitById(PeriodVerificationImplementationDTO periodVerificationImplementationDTO, DLPUser dlpUser);

    PeriodVerificationImplementation auditById(AuditAndApproveDTO auditAndApproveDTO, DLPUser dlpUser);
}
