package vip.xiaonuo.warehouse.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import vip.xiaonuo.erp.entity.ErpBdRawMaterial;
import vip.xiaonuo.warehouse.entity.WarehouseMaterialInStock;
import vip.xiaonuo.warehouse.entity.WarehouseMaterialOutStock;
import vip.xiaonuo.warehouse.entity.WarehouseMaterialStock;
import com.baomidou.mybatisplus.extension.service.IService;
import vip.xiaonuo.warehouse.entity.vo.WarehouseMaterialStockVo;
import vip.xiaonuo.warehouse.param.WarehouseMaterialStockParam;
import vip.xiaonuo.warehouse.param.WarehouseMaterialTailParam;
import vip.xiaonuo.warehouse.param.WarehouseStockParam;

import java.util.List;

/**
 * <p>
 * 仓库原材料库存 服务类
 * </p>
 *
 * @author author
 * @since 2025-03-17
 */
public interface IWarehouseMaterialStockService extends IService<WarehouseMaterialStock> {

    List<WarehouseMaterialStockVo> listMaterial(WarehouseMaterialStockParam stockParam);

    List<WarehouseMaterialOutStock> listMaterialOut(WarehouseMaterialStockParam stockParam);

    List<ErpBdRawMaterial> listRawMaterial(WarehouseStockParam stockParam);

    Page<WarehouseMaterialOutStock> outMaterial(WarehouseMaterialTailParam materialTailParam);

    Page<WarehouseMaterialInStock> inMaterial(WarehouseMaterialTailParam materialTailParam);

}
