package com.xisc.pm.app.service;

import com.xisc.pm.api.dto.PmCompositeSlabActDTO;
import com.xisc.pm.api.dto.PmCompositeSlabActLineDTO;
import com.xisc.pm.api.dto.PmCompositeSlabActReqParamDTO;
import io.choerodon.core.domain.Page;
import io.choerodon.mybatis.pagehelper.domain.PageRequest;

import java.util.List;

/**
 * 复合/叠轧坯明细信息表(PmCompositeSlabList)应用服务
 *
 * @author 纪文桃 wentao.ji01@hand-china.com
 * @since 2024-08-01 15:40:18
 */
public interface PmCompositeSlabListService {


    /**
     * 保存数据
     *
     * @param tenantId 租户
     * @param dto      请求对象
     */
    void saveData(Long tenantId, PmCompositeSlabActDTO dto);

    /**
     * 查询列表
     *
     * @param pageRequest 分页参数
     * @param dto         查询参数
     * @param tenantId    租户
     * @return
     */
    Page<PmCompositeSlabActDTO> selectList(PageRequest pageRequest, PmCompositeSlabActReqParamDTO dto, Long tenantId);

    /**
     * 获取实绩行数据
     *
     * @param id       主键id
     * @param tenantId 租户
     * @return
     */
    List<PmCompositeSlabActLineDTO> queryLineList(Long id, Long tenantId);

    /**
     * 删除组坯实绩录入的数据
     *
     * @param tenantId
     * @param slabIdList
     */
    void deleteListBySlabId(Long tenantId, List<Long> slabIdList);
}

