package com.bonus.material.main.mapper;

import com.bonus.common.biz.domain.lease.LeasePublishInfo;
import com.bonus.material.main.domain.DemandAndSupplyVo;
import com.bonus.material.main.domain.MaTypeHomeVo;

import java.math.BigDecimal;
import java.util.List;

public interface MainMapper {
    /**
     * 获取领料需求数量
     * @param demandAndSupplyVo
     * @return
     */
    LeasePublishInfo getPublishList(DemandAndSupplyVo demandAndSupplyVo);

    /**
     * 获取领用发布数量
     * @param demandAndSupplyVo
     * @return
     */
    BigDecimal getPublishListNew(DemandAndSupplyVo demandAndSupplyVo);

    /**
     * 获取领料已出库数量
     * @param demandAndSupplyVo
     * @return
     */
    BigDecimal getSuppliedQuantityNum(DemandAndSupplyVo demandAndSupplyVo);

    /**
     * 获取工程总数
     * @return
     */
    Integer getProjectNum();

    /**
     * 供应总价值
     * @param demandAndSupplyVo
     * @return
     */
    List<DemandAndSupplyVo> getSuppliedQuantityPrice(DemandAndSupplyVo demandAndSupplyVo);

    /**
     * 查询领料需求列表
     * @param demandAndSupplyVo
     * @return
     */
    List<DemandAndSupplyVo> getDemandList(DemandAndSupplyVo demandAndSupplyVo);

    /**
     * 查询领用需求列表
     * @param demandAndSupplyVo
     * @return
     */
    List<DemandAndSupplyVo> getUseList(DemandAndSupplyVo demandAndSupplyVo);

    /**
     * 查询领用已出库列表
     * @param demandAndSupplyVo
     * @return
     */
    List<DemandAndSupplyVo> getSuppliedQuantityList(DemandAndSupplyVo demandAndSupplyVo);

    /**
     * 获取所选当前时间数据
     * @param dto
     * @return
     */
    MaTypeHomeVo getInStockNum(MaTypeHomeVo dto);
}
