using System.Collections.Immutable; using Connected.Annotations; using Connected.Notifications; using Connected.ServiceModel; namespace Logistics.Stock; /// /// Represents the service which manipulates with stock items. /// [Service] [ServiceUrl(StockUrls.Stock)] public interface IStockService : IServiceNotifications { /// /// Updates the stock items at the specified location. /// /// Task Update(UpdateStockArgs args); Task Select(PrimaryKeyArgs args); Task Select(EntityArgs args); /// /// Queries all stock items for the specified stock. /// /// The arguments containing the id of the stock /// The list of stock items that belong to the specified stock id. Task> QueryItems(PrimaryKeyArgs args); /// /// Queries stock items for the specified stock that are present in the specified /// warehouse location. /// /// The arguments containing the crieria used by query. /// The list of stock items that are present in the specified warehouse location and /// belong to the specified stock id. Task> QueryItems(QueryStockItemsArgs args); Task SelectItem(PrimaryKeyArgs args); }