9055eaf73c
- aggiunta pagina operatori - completato fix
208 lines
8.3 KiB
C#
208 lines
8.3 KiB
C#
using MP.Core.DTO;
|
|
using MP.Data.DbModels;
|
|
using System.Collections.Generic;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace MP.Data.Repository.Anag
|
|
{
|
|
public interface IAnagRepository
|
|
{
|
|
#region Public Methods
|
|
|
|
/// <summary>
|
|
/// Stacca un nuovo counter x il tipo richiesto
|
|
/// </summary>
|
|
/// <param name="cntType">Tipo di contatore</param>
|
|
/// <returns>Modello del contatore aggiornato</returns>
|
|
Task<AnagCountersModel> AnagCountersGetNextAsync(string cntType);
|
|
|
|
/// <summary>
|
|
/// Restituisce l'anagrafica EVENTI generalmente disponibile per OGNI macchina
|
|
/// </summary>
|
|
/// <param name="TableName">Nome Table x filtro (std: EvList)</param>
|
|
/// <param name="FieldName">Nome Field x filtro (std: Common)</param>
|
|
/// <returns>Lista di eventi generali</returns>
|
|
Task<List<vSelEventiBCodeModel>> AnagEventiGeneralAsync(string TableName = "EvList", string FieldName = "Common");
|
|
|
|
/// <summary>
|
|
/// Elenco Gruppi tipo Azienda
|
|
/// </summary>
|
|
/// <returns>Lista di modelli anagrafica gruppi</returns>
|
|
Task<List<AnagGruppiModel>> AnagGruppiAziendeAsync();
|
|
|
|
/// <summary>
|
|
/// Delete record AnagraficaGruppi
|
|
/// </summary>
|
|
/// <param name="updRec">Record da eliminare</param>
|
|
/// <returns>True se l'eliminazione � avvenuta</returns>
|
|
Task<bool> AnagGruppiDeleteAsync(AnagGruppiModel updRec);
|
|
|
|
/// <summary>
|
|
/// Elenco Gruppi tipo Fasi
|
|
/// </summary>
|
|
/// <returns>Lista di modelli anagrafica gruppi</returns>
|
|
Task<List<AnagGruppiModel>> AnagGruppiFaseAsync();
|
|
|
|
/// <summary>
|
|
/// Gruppi x tipo modalit� Async
|
|
/// </summary>
|
|
/// <param name="tipoGruppo">Tipo di gruppo (es. REPARTO, FASE, AZIENDA)</param>
|
|
/// <returns>Lista di modelli anagrafica gruppi</returns>
|
|
Task<List<AnagGruppiModel>> AnagGruppiGetTipoAsync(string tipoGruppo);
|
|
|
|
/// <summary>
|
|
/// Elenco Gruppi tipo REPARTO (x associazione Macchine-Operatori) in formato DTO con conteggi del numero record trovati
|
|
/// </summary>
|
|
/// <returns>Lista di DTO reparti con conteggio macchine e operatori</returns>
|
|
Task<List<RepartiDTO>> AnagGruppiRepartoDtoAsync();
|
|
|
|
/// <summary>
|
|
/// Upsert record AnagraficaGruppi (solo codice/descrizione)
|
|
/// </summary>
|
|
/// <param name="updRec">Record da inserire o aggiornare</param>
|
|
/// <returns>True se l'operazione � riuscita</returns>
|
|
Task<bool> AnagGruppiUpsertAsync(AnagGruppiModel updRec);
|
|
|
|
/// <summary>
|
|
/// Elenco valori ammessi x Stati commessa (es Yacht Baglietto)
|
|
/// </summary>
|
|
/// <returns>Lista di valori ammessi</returns>
|
|
Task<List<ListValuesModel>> AnagStatiCommAsync();
|
|
|
|
/// <summary>
|
|
/// Elenco valori ammessi x Tipo articoli
|
|
/// </summary>
|
|
/// <returns>Lista di valori ammessi</returns>
|
|
Task<List<ListValuesModel>> AnagTipoArtLvAsync();
|
|
|
|
/// <summary>
|
|
/// Conteggio num articoli Async
|
|
/// </summary>
|
|
/// <returns>Conteggio totale articoli</returns>
|
|
Task<int> ArticoliCountAsync();
|
|
|
|
/// <summary>
|
|
/// Conteggio articoli data condizione ricerca
|
|
/// </summary>
|
|
/// <param name="tipoArt">Tipo articolo</param>
|
|
/// <param name="azienda">Azienda</param>
|
|
/// <param name="searchVal">Valore di ricerca</param>
|
|
/// <returns>Conteggio risultati ricerca</returns>
|
|
Task<int> ArticoliCountSearchAsync(string tipoArt = "*", string azienda = "*", string searchVal = "");
|
|
|
|
/// <summary>
|
|
/// Conteggio articoli IMPIEGATI (da stored stp_ART_getUsed) Async
|
|
/// </summary>
|
|
/// <returns>Conteggio articoli impiegati</returns>
|
|
Task<int> ArticoliCountUsedAsync();
|
|
|
|
/// <summary>
|
|
/// Eliminazione Record Articolo
|
|
/// </summary>
|
|
/// <param name="currRec">Record da eliminare</param>
|
|
/// <returns>True se eliminato</returns>
|
|
Task<bool> ArticoliDeleteRecordAsync(AnagArticoliModel currRec);
|
|
|
|
/// <summary>
|
|
/// Restituisce elenco articoli dato tipo (es KIT)
|
|
/// </summary>
|
|
/// <param name="tipo">Tipo articolo (es. KIT)</param>
|
|
/// <param name="azienda">Azienda (opzionale)</param>
|
|
/// <returns>Lista di articoli per tipo</returns>
|
|
Task<List<AnagArticoliModel>> ArticoliGetByTipoAsync(string tipo, string azienda = "*");
|
|
|
|
/// <summary>
|
|
/// Elenco tabella Articoli da filtro
|
|
/// </summary>
|
|
/// <param name="numRecord">Numero massimo di record</param>
|
|
/// <param name="tipoArt">Tipo articolo</param>
|
|
/// <param name="azienda">Azienda</param>
|
|
/// <param name="searchVal">Valore di ricerca</param>
|
|
/// <returns>Lista di articoli cercati</returns>
|
|
Task<List<AnagArticoliModel>> ArticoliGetSearchAsync(int numRecord, string tipoArt = "*", string azienda = "*", string searchVal = "");
|
|
|
|
/// <summary>
|
|
/// Elenco tabella Articoli NON IMPIEGATI (da stored stp_ART_getNotUsed) Async
|
|
/// </summary>
|
|
/// <returns>Lista di articoli non impiegati</returns>
|
|
Task<List<AnagArticoliModel>> ArticoliGetUnusedAsync();
|
|
|
|
/// <summary>
|
|
/// Elenco tabella Articoli IMPIEGATI (da stored stp_ART_getUsed) Async
|
|
/// </summary>
|
|
/// <returns>Lista di articoli non impiegati</returns>
|
|
Task<List<AnagArticoliModel>> ArticoliGetUsedAsync();
|
|
|
|
/// <summary>
|
|
/// Dizionario associazione ODL/PODL
|
|
/// </summary>
|
|
/// <returns>Lista di articoli in kit</returns>
|
|
Task<List<AnagArticoliModel>> ArticoliInKitAsync();
|
|
|
|
/// <summary>
|
|
/// Update Record Articolo
|
|
/// </summary>
|
|
/// <param name="editRec">Record da aggiornare</param>
|
|
/// <returns>True se aggiornato</returns>
|
|
Task<bool> ArticoliUpdateRecord(AnagArticoliModel editRec);
|
|
|
|
/// <summary>
|
|
/// Elenco Gruppi tipo REPARTOin formato DTO con conteggi del numero record trovati filtrati per operatore
|
|
/// </summary>
|
|
/// <returns>Lista di DTO reparti con conteggio macchine e operatori</returns>
|
|
Task<List<RepartiDTO>> GruppiRepartoDtoByOperAsync(int matrOpr);
|
|
|
|
#if false
|
|
/// <summary>
|
|
/// Elenco codice articoli che abbiano dati Dossier
|
|
/// </summary>
|
|
/// <returns>Lista di codici articolo</returns>
|
|
Task<List<string>> ArticleWithDossierAsync();
|
|
#endif
|
|
|
|
/// <summary>
|
|
/// Elenco valori ammessi x tabella/colonna Async
|
|
/// </summary>
|
|
/// <param name="tabName">Nome tabella</param>
|
|
/// <param name="fieldName">Nome colonna</param>
|
|
/// <returns>Lista di valori ammessi</returns>
|
|
Task<List<ListValuesModel>> ListValuesFiltAsync(string tabName, string fieldName);
|
|
|
|
/// <summary>
|
|
/// Elenco Macchine dato operatore secondo gruppi (macchine/operatore)
|
|
/// </summary>
|
|
/// <param name="MatrOpr">Matricola operatore</param>
|
|
/// <returns>Lista di macchine</returns>
|
|
Task<List<MacchineModel>> MacchineByMatrOperAsync(int MatrOpr);
|
|
|
|
/// <summary>
|
|
/// Elenco da tabella Macchine filtro x gruppo
|
|
/// </summary>
|
|
/// <param name="codGruppo">Codice gruppo</param>
|
|
/// <returns>Lista di macchine</returns>
|
|
Task<List<MacchineModel>> MacchineGetFiltAsync(string codGruppo);
|
|
|
|
/// <summary>
|
|
/// Elenco operatori dato filtro gruppo
|
|
/// </summary>
|
|
/// <param name="codGruppo">Codice gruppo</param>
|
|
/// <returns>Lista di operatori</returns>
|
|
Task<List<AnagOperatoriModel>> OperatoriGetFiltAsync(string codGruppo);
|
|
|
|
/// <summary>
|
|
/// Dizionario associazione ODL/PODL
|
|
/// </summary>
|
|
/// <param name="missingIds">Lista di ID mancanti</param>
|
|
/// <returns>Dizionario di associazione</returns>
|
|
Task<Dictionary<int, int>> PODL_getDictOdlPodlAsync(List<int> missingIds);
|
|
|
|
/// <summary>
|
|
/// Recupero dizionario traduzioni
|
|
/// </summary>
|
|
/// <param name="lingua">Codice lingua</param>
|
|
/// <returns>Dizionario di traduzioni</returns>
|
|
Dictionary<string, string> VocabolarioGetLang(string lingua);
|
|
|
|
#endregion Public Methods
|
|
}
|
|
} |