Files

68 lines
2.4 KiB
C#
Raw Permalink Normal View History

2026-09-02 16:31:50 +08:00
using JSMachine.WMS.App.Dto;
using JSMachine.WMS.App.Dto.Enum;
using JSMachine.WMS.Domain.Entity;
namespace JSMachine.WMS.App.IService
{
public interface IStorageRackService : IBaseService<StorageRackDto, StorageRack>
{
/// <summary>
/// 根据库位号查询库位信息
/// </summary>
/// <param name="storageRackNo"></param>
/// <returns></returns>
Task<StorageRackDto> GetByStorageRackNo(string storageRackNo);
/// <summary>
/// 根据提升机编号和通道号获取提所属库位信息
/// </summary>
/// <param name="elevatorNo"></param>
/// <param name="channel"></param>
/// <returns></returns>
Task<StorageRackDto> GetElevatorWareHouse(int elevatorNo,int channel);
/// <summary>
/// 获取可用的提升机库位
/// </summary>
/// <param name="floor"></param>
/// <returns></returns>
Task<List<StorageRackDto>> GetUsableElevatorWareHouse(FloorEnum floor);
/// <summary>
/// 锁定库位
/// </summary>
/// <param name="storageRack"></param>
/// <returns></returns>
Task<bool> Lock(StorageRackDto storageRack);
/// <summary>
/// 解锁库位
/// </summary>
/// <param name="storageRack"></param>
/// <returns></returns>
Task<bool> Unlock(StorageRackDto storageRack);
/// <summary>
/// 更新锁定状态
/// </summary>
/// <param name="id"></param>
/// <param name="isLock"></param>
/// <returns></returns>
Task<bool> UpdateLockStatus(Guid id, bool isLock);
/// <summary>
/// 更新禁用状态
/// </summary>
/// <param name="id"></param>
/// <param name="isDisable"></param>
/// <returns></returns>
Task<bool> UpdateDisableStatus(Guid id, bool isDisable);
/// <summary>
/// 预计算可用库位数量(用于pda入库请求时预计算可用库位数量,防止入库时找不到可用库位)
/// </summary>
/// <param name="floor"></param>
/// <returns></returns>
//Task<int> PreCalUsableStorageRackCount(FloorEnum floor);
/// <summary>
/// 获取可用的中转库位
/// </summary>
/// <returns></returns>
Task<StorageRackDto> GetUsableTransferStorageRack();
}
}