You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

99 lines
3.6 KiB
C#

using Admin.Core.IService;
using Admin.Core.Model;
using System;
using System.Collections.Generic;
using System.Linq.Expressions;
using System.Threading.Tasks;
namespace Admin.Core.IService
{
/// <summary>
/// IBaseSpaceInfoServices
/// </summary>
public interface IBaseSpaceInfoServices : IBaseServices<BaseSpaceInfo>
{
/// <summary>
/// 入库通过物料类型获取指定货道,如果没有对应类型的货道返回空白类型的货道
/// </summary>
/// <param name="store"></param>
/// <param name="materialType"></param>
/// <returns></returns>
Task<List<BaseSpaceInfo>> InStoreGetSpaceInfoByMaterialType(string store, string materialType);
/// <summary>
/// 出库通过物料类型获取指定货道
/// </summary>
/// <param name="store"></param>
/// <param name="materialType"></param>
/// <returns></returns>
Task<List<BaseSpaceInfo>> OutStoreGetSpaceInfoByMaterialCode(string store, string materialCode);
/// <summary>
/// 通过货道编号获取货道信息
/// </summary>
/// <param name="store"></param>
/// <param name="spaceCode"></param>
/// <returns></returns>
Task<BaseSpaceInfo> GetSpaceInfoBySpaceCode(string store, string spaceCode);
/// <summary>
/// 通过仓库编号获取货道信息
/// </summary>
/// <param name="storeCode"></param>
/// <returns></returns>
Task<List<BaseSpaceInfo>> GetSpaceInfosByStoreCode(string storeCode);
/// <summary>
/// 更新货道信息
/// </summary>
/// <param name="spaceInfo"></param>
/// <returns></returns>
Task<bool> UpdateSpaceInfo(BaseSpaceInfo spaceInfo);
/// <summary>
///
/// </summary>
/// <param name="shellStoreCode"></param>
/// <param name="linerStoreCode"></param>
/// <returns></returns>
Task< List<dynamic>> GetMaterialStock(string shellStoreCode, string linerStoreCode);
/// <summary>
/// 通过物料类型获取货道信息,如果没有返回空白货道
/// </summary>
/// <param name="storeCode"></param>
/// <param name="materialType"></param>
/// <returns></returns>
Task<List<BaseSpaceInfo>> GetBaseSpaceInfosByMaterialType(string storeCode, string materialType);
/// <summary>
/// 获取空货道:未分配物料型号的空白货道
/// </summary>
/// <returns></returns>
Task<List<BaseSpaceInfo>> GetEmptySpaceInfo(string store);
List<BaseSpaceInfo> GetSpaceInfos(string storeCode);
/// <summary>
/// 获取指定的货道信息
/// </summary>
/// <param name="spaceinfos"></param>
/// <param name="whereExpressio"></param>
void GetSpaceInfosByExpression(out List<BaseSpaceInfo> spaceinfos, Expression<Func<BaseSpaceInfo, bool>> whereExpression = null);
/// <summary>
/// 根据物料类型获取指定仓库的货道信息
/// </summary>
/// <param name="spaceinfo"></param>
/// <param name="storeCode"></param>
/// <param name="materialType"></param>
void GetSpaceInfoByMaterialType(out List<BaseSpaceInfo> spaceinfos, string storeCode, string materialType);
/// <summary>
/// 更新货道信息
/// </summary>
/// <param name="spaceinfos"></param>
/// <returns></returns>
bool UpdateSpaceInfo(List<BaseSpaceInfo> spaceinfos);
}
}