using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Common.LocationEnum;
using WIDESEA_Core.BaseRepository;
using WIDESEA_Core.Enums;
using WIDESEA_DTO.Basic;
using WIDESEA_Model.Models;
namespace WIDESEA_IBasicRepository
{
///
/// 货位信息仓储接口层
///
public interface ILocationInfoRepository : IRepository
{
///
/// 根据巷道获取所有一深、二深对应的一组货位数据集合
///
/// 巷道号
///
List GetAllLocationGroups(string roadway);
///
/// 根据巷道、一深位货位状态、二深位货位状态获取对应的一组货位数据集合
///
/// 巷道号
/// 一深位货位状态
/// 二深位货位状态
///
List GetLocationGroups(string roadway, LocationStatusEnum locationAStatus, LocationStatusEnum locationBStatus);
///
/// 根据货位编号集合获取货位实体集合
///
/// 货位编号集合
///
List GetLocationInfos(List locationCodes);
///
/// 批量更新货位状态
///
/// 货位实体集合
/// 货位状态
void UpdateLocationStatus(List locationInfos, LocationStatusEnum locationStatus);
///
/// 获取可出库货位编号
///
///
///
List GetCanOutLocationCodes(int warehouseId);
}
}