package com.fjhx.sale.service.sample;

import com.fjhx.sale.entity.contract.vo.ContractProductVo;
import com.fjhx.sale.entity.sample.po.Sample;
import com.fjhx.sale.entity.sample.vo.SamplePdfInfoVo;
import com.ruoyi.common.core.service.BaseService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fjhx.sale.entity.sample.vo.SampleVo;
import com.fjhx.sale.entity.sample.dto.SampleSelectDto;
import com.fjhx.sale.entity.sample.dto.SampleDto;


/**
 * <p>
 * 样品单表 服务类
 * </p>
 *
 * @author
 * @since 2023-05-05
 */
public interface SampleService extends BaseService<Sample> {

    /**
     * 样品单表分页
     */
    Page<SampleVo> getPage(SampleSelectDto dto);

    /**
     * 样品单表明细
     */
    SampleVo detail(Long id);

    /**
     * 样品单表新增
     */
    void add(SampleDto sampleDto);

    /**
     * 样品单表编辑
     */
    void edit(SampleDto sampleDto);

    /**
     * 样品单表删除
     */
    void delete(Long id);

    /**
     * 样品交接单
     */
    void sampleHandover(SampleDto dto);

    /**
     * 样品交接单列表
     */
    Page<ContractProductVo> sampleHandoverList(SampleSelectDto dto);

    SamplePdfInfoVo getSamplePdfInfo(Long id);

    void updateSample(Sample sample);
}
