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.CentralizedRequestDTO;
import digital.laboratory.platform.reagent.entity.CentralizedRequest;
import digital.laboratory.platform.reagent.entity.DetailsOfCentralized;
import digital.laboratory.platform.reagent.vo.CentralizedRequestVO;

import java.util.List;

/**
 * (集中采购申请)服务类
 *
 * @author Zhang Xiaolong created at  2023-03-10
 * @describe (集中采购申请) 服务类
 */
public interface CentralizedRequestService extends IService<CentralizedRequest> {
    CentralizedRequest addRequest( List<CentralizedRequestDTO> centralizedRequestDTOList, DLPUser dlpUser);

    CentralizedRequest commitRequest(List<CentralizedRequestDTO> centralizedRequestDTOList,DLPUser dlpUser);

    DetailsOfCentralized editDetailsById(CentralizedRequestDTO centralizedRequestDto);

    DetailsOfCentralized addDetailsById(CentralizedRequestDTO centralizedRequestDto);

    Boolean delRequestById(String centralizedRequestId);

    IPage<CentralizedRequestVO> getCentralizedRequestVOPage(IPage<CentralizedRequest> page, QueryWrapper<CentralizedRequest> qw);

    List<CentralizedRequestVO> getCentralizedRequestVOList(QueryWrapper<CentralizedRequest> qw);

    CentralizedRequestVO getCentralizedRequestVO(String centralizedRequestId);

    List<CentralizedRequestVO> getOrgVOList(QueryWrapper<CentralizedRequest> qw,String orgName);
}
