Files
WMS-Api/src/WMS.Web.Domain/IService/IInStockService.cs
2023-11-13 15:05:59 +08:00

87 lines
2.8 KiB
C#

using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
using WMS.Web.Core.Dto;
using WMS.Web.Core.Dto.InStock;
using WMS.Web.Core.Dto.InStockTask;
using WMS.Web.Core.Dto.Login;
using WMS.Web.Core.Internal.Results;
using WMS.Web.Domain.Entitys;
using WMS.Web.Domain.Values;
namespace WMS.Web.Domain.IService
{
/// <summary>
/// 入库单服务接口
/// </summary>
public interface IInStockService
{
/// <summary>
/// 同步
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
Task<Result> Sync(OperateRequest dto);
/// <summary>
/// 收货
/// </summary>
/// <param name="dto"></param>
/// <param name="loginInfo"></param>
/// <returns></returns>
Task<Result> Receive(UpdateInStockTaskRequest dto, LoginInDto loginInfo);
/// <summary>
/// 上架-采购订单
/// </summary>
/// <param name="instock"></param>
/// <param name="loginInfo"></param>
/// <returns></returns>
Task<Result> Shelf(PurchaseShelfRequest instock, LoginInDto loginInfo);
/// <summary>
/// 上架-非采购订单
/// </summary>
/// <param name="dto"></param>
/// <param name="loginInDto"></param>
/// <returns></returns>
Task<Result> ShelfNoPurchase(NoPurchaseShelfRequest dto, LoginInDto loginInDto);
/// <summary>
/// 获取任务单:根据箱号信息
/// </summary>
/// <param name="boxBillNo"></param>
/// <returns></returns>
Task<Result<InStockTaskInfoDto>> GetInfoByBox(string boxBillNo);
/// <summary>
/// 修改-入库任务信息
/// </summary>
/// <param name="dto"></param>
/// <param name="staffId"></param>
/// <param name="isReceive"></param>
/// <param name="isTransaction"></param>
/// <returns></returns>
Task<Result<InStockTask>> Update(UpdateInStockTaskRequest dto, int staffId, bool? isReceive, bool isTransaction = true, bool isNoPurchaseShelf = false);
/// <summary>
/// 批量修改-入库任务信息
/// </summary>
/// <param name="ids"></param>
/// <param name="staffId"></param>
/// <param name="isReceive"></param>
/// <param name="isTransaction"></param>
/// <returns></returns>
Task<Result> UpdateRange(List<int> ids, int staffId, bool isReceive, bool isTransaction = true);
/// <summary>
/// 采购订单物料明细和箱物料明细-对比
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
Task<Result<ContrastMaterialsResponse>> Contrast(ContrastMaterialsRequest dto);
}
}