69 lines
2.8 KiB
C#
69 lines
2.8 KiB
C#
namespace EgwCoreLib.Lux.Data.Services.Production
|
|
{
|
|
public interface IProductionOdlService
|
|
{
|
|
#region Public Methods
|
|
|
|
/// <summary>
|
|
/// Assegnazione in blocco degli item agli ODL corrispondenti
|
|
/// </summary>
|
|
/// <param name="dbList">Lista record DB</param>
|
|
/// <param name="dictParts">Dizionario parti assegnate</param>
|
|
/// <returns></returns>
|
|
Task<int> AssignProdItem2OdlAsync(List<ProductionODLModel> dbList, Dictionary<(int phaseId, int resId, string machine, int index), List<string>> dictParts);
|
|
|
|
/// <summary>
|
|
/// Insert sul DB di un elenco ODL con calcolo della relativa KEY a cui poter, successivamente, collegare i record child (items)
|
|
/// </summary>
|
|
/// <param name="listOdl2ins">Lista ODL da inserire</param>
|
|
/// <returns></returns>
|
|
/// <exception cref="Exception"></exception>
|
|
Task<List<ProductionODLModel>> CreateAsync(List<ProductionODLModel> listOdl2ins);
|
|
|
|
/// <summary>
|
|
/// Recupero record ProdOdl dato Tag/uID
|
|
/// </summary>
|
|
/// <param name="uID">UID del record</param>
|
|
/// <returns></returns>
|
|
Task<ProductionODLModel?> GetByUidAsync(string uID);
|
|
|
|
/// <summary>
|
|
/// Elenco PODL non assegnati con struttura DTO appiattita
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
Task<List<OdlAssignDto>> GetUnassignOdlDtoAsync();
|
|
|
|
/// <summary>
|
|
/// Aggiorna record ProdOdl (se trovato) con BOM (raw) ricevuta
|
|
/// </summary>
|
|
/// <param name="uID">UID del record</param>
|
|
/// <param name="bomRaw">BOM serializzata</param>
|
|
/// <returns></returns>
|
|
Task<bool> UpdateBomAsync(string uID, string bomRaw);
|
|
|
|
/// <summary>
|
|
/// Aggiorna record ProdOdl (se trovato) con ItemListRaw (raw) inviata x calcolo PROD
|
|
/// </summary>
|
|
/// <param name="uID">UID del record</param>
|
|
/// <param name="itemListRaw">ItemList serializzata</param>
|
|
/// <returns></returns>
|
|
Task<bool> UpdateItemRawAsync(string uID, string itemListRaw);
|
|
|
|
/// <summary>
|
|
/// Aggiorna record ProdOdl (se trovato) con RawMaterialList (raw) ricevuta da calcolo PROD
|
|
/// </summary>
|
|
/// <param name="uID">UID del record</param>
|
|
/// <param name="materialListRaw">Lista materiali serializzata</param>
|
|
/// <returns></returns>
|
|
Task<bool> UpdateRawMaterialAsync(string uID, string materialListRaw);
|
|
|
|
/// <summary>
|
|
/// Aggiorna record ProdOdl (se trovato) con BOM (raw) ricevuta
|
|
/// </summary>
|
|
/// <param name="upsRec">Record da aggiornare/inserire</param>
|
|
/// <returns></returns>
|
|
Task<bool> UpsertAsync(ProductionODLModel upsRec);
|
|
|
|
#endregion Public Methods
|
|
}
|
|
} |