72 lines
2.7 KiB
C#
72 lines
2.7 KiB
C#
namespace EgwCoreLib.Lux.Data.Services.Items
|
|
{
|
|
public interface IItemService
|
|
{
|
|
#region Public Methods
|
|
|
|
/// <summary>
|
|
/// Eliminazione record
|
|
/// </summary>
|
|
/// <param name="rec2del"></param>
|
|
/// <returns></returns>
|
|
Task<bool> DeleteAsync(ItemModel model);
|
|
|
|
/// <summary>
|
|
/// Recupera alternative per item specifico
|
|
/// </summary>
|
|
/// <param name="recId">ID Record da cercare</param>
|
|
/// <returns></returns>
|
|
Task<List<ItemModel>> GetAltAsync(int recId);
|
|
|
|
/// <summary>
|
|
/// Fissa ItemID mancanti nella BOM cercando corrispondenze per codice esterno
|
|
/// </summary>
|
|
/// <param name="listOrg">Lista BOM originale da correggere</param>
|
|
/// <returns></returns>
|
|
Task<List<BomItemDTO>> GetBomFixItemIdAsync(List<BomItemDTO> listOrg);
|
|
|
|
/// <summary>
|
|
/// Filtra items per gruppo e tipo classe
|
|
/// </summary>
|
|
/// <param name="CodGroup">Codice gruppo filtro</param>
|
|
/// <param name="ItemType">Tipo classe item</param>
|
|
/// <returns></returns>
|
|
Task<List<ItemModel>> GetFiltAsync(string CodGroup, ItemClassType ItemType);
|
|
|
|
/// <summary>
|
|
/// Cerca items tramite termine di ricerca
|
|
/// </summary>
|
|
/// <param name="term">Termine di ricerca</param>
|
|
/// <returns></returns>
|
|
Task<List<ItemModel>> GetSearchAsync(string term);
|
|
|
|
/// <summary>
|
|
/// Aggiornamento massivo costi e parametri item
|
|
/// </summary>
|
|
/// <param name="list2upd">Lista items da aggiornare</param>
|
|
/// <param name="setCost">Costo da impostare</param>
|
|
/// <param name="defMargin">Margine di default</param>
|
|
/// <param name="defQtyMax">Quantità massima default</param>
|
|
/// <param name="defUM">Unità di misura default</param>
|
|
/// <param name="roundVal">Valore per arrotondamento</param>
|
|
/// <param name="scaleFactor">Fattore di scala</param>
|
|
/// <returns></returns>
|
|
Task<bool> MassUpdateAsync(List<BomItemDTO> list2upd, double setCost, double defMargin, double defQtyMax, string defUM, int roundVal = 0, double scaleFactor = 1_000_000.0);
|
|
|
|
/// <summary>
|
|
/// Upsert record Item (aggiorna o inserisce)
|
|
/// </summary>
|
|
/// <param name="upsRec"></param>
|
|
/// <returns></returns>
|
|
Task<bool> UpsertAsync(ItemModel upsRec);
|
|
|
|
/// <summary>
|
|
/// Inserisce/aggiorna items dalla BOM
|
|
/// </summary>
|
|
/// <param name="bomList">Lista BOM da processare</param>
|
|
/// <returns></returns>
|
|
Task<bool> UpsertFromBomAsync(List<BomItemDTO> bomList);
|
|
|
|
#endregion Public Methods
|
|
}
|
|
} |