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.ApplicationForUseDTO;
import digital.laboratory.platform.reagent.entity.ApplicationForUse;
import digital.laboratory.platform.reagent.vo.ApplicationForUseVO;

import java.util.List;

/**
 * (试剂耗材领用申请表)服务类
 *
 * @author Zhang Xiaolong created at  2023-03-10
 * @describe (试剂耗材领用申请表) 服务类
 */
public interface ApplicationForUseService extends IService<ApplicationForUse> {

    ApplicationForUseVO getApplicationForUseVO(String applicationForUseId);

    IPage<ApplicationForUseVO> getApplicationForUseVOPage(IPage<ApplicationForUse> page, QueryWrapper<ApplicationForUse> qw);

    List<ApplicationForUseVO> getApplicationForUseVOList (QueryWrapper<ApplicationForUse> qw);

    ApplicationForUse addApplication(List<ApplicationForUseDTO> applicationForUseDTOList, DLPUser dlpUser);

    //
    ApplicationForUse editApplication (List<ApplicationForUseDTO> applicationForUseDTOList, DLPUser dlpUser);

    //提交领用申请记录
    ApplicationForUse commitApplication(List<ApplicationForUseDTO> applicationForUseDTOList, DLPUser dlpUser);

    Boolean delApplication(String applicationForUseId);
}
