using SlnMesnac.Model.domain;
using System;
using System.Collections.Generic;
using System.Text;

namespace SlnMesnac.Repository.service
{
    public interface IBaseMaterialService
    {

        /// <summary>
        /// 获取所有的物料信息
        /// </summary>
        /// <returns></returns>
        List<BaseMaterialInfo> GetMaterialInfos();

        /// <summary>
        /// 通过物料编码获取物料信息
        /// </summary>
        /// <param name="materialCode"></param>
        /// <returns></returns>
        BaseMaterialInfo GetMaterialInfoByMaterialCode(string materialCode);

        /// <summary>
        /// 通过SAP物料编码获取物料信息
        /// </summary>
        /// <param name="sapMaterialCode"></param>
        /// <returns></returns>
        BaseMaterialInfo GetMaterialInfoBySapMaterialCode(string sapMaterialCode);

        /// <summary>
        /// 通过物料类别获取物料信息
        /// </summary>
        /// <param name="majorTypeId">物料大类</param>
        /// <param name="minorTypeId">物料细类</param>
        /// <returns></returns>
        List<BaseMaterialInfo> GetMaterialInfosByMaterialType(int majorTypeId, string minorTypeId);
    }
}