it.cnr.contab.compensi00.comp.IConguaglioMgr Maven / Gradle / Ivy
/*
* Copyright (C) 2019 Consiglio Nazionale delle Ricerche
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see .
*/
package it.cnr.contab.compensi00.comp;
import it.cnr.contab.compensi00.docs.bulk.*;
import it.cnr.jada.*;
import it.cnr.jada.bulk.*;
import it.cnr.jada.comp.*;
/**
* Insert the type's description here.
* Creation date: (08/07/2002 16.58.07)
* @author: Roberto Fantino
*/
public interface IConguaglioMgr extends it.cnr.jada.comp.ICRUDMgr {
/**
* Completamento dell'OggettoBulk aggiornando i campi
* relativi al terzo selezionato
*
* Pre-post-conditions
*
* Nome: Completamento del conguaglio
* Pre: Viene richiesto il completamento del conguaglio
* Post: Viene restituito il conguaglio completo di tutti i dati
* relativi al terzo selezionato
*
* @param userContext lo UserContext che ha generato la richiesta
* @param conguaglio l'OggettoBulk da completare
* @param vTerzo terzo con cui completare il conguaglio
* @return l'OggettoBulk completo
*
* Metodo privato chiamato:
* completaTerzo(UserContext userContext, ConguaglioBulk conguaglio);
*
**/
public abstract it.cnr.contab.compensi00.docs.bulk.ConguaglioBulk completaTerzo(it.cnr.jada.UserContext param0,it.cnr.contab.compensi00.docs.bulk.ConguaglioBulk param1,it.cnr.contab.compensi00.docs.bulk.V_terzo_per_compensoBulk param2) throws it.cnr.jada.comp.ComponentException;
/**
* Esegue una operazione di creazione di un OggettoBulk.
*
* Pre-post-conditions:
*
* Nome: Validazione superata
* Pre: E' stata richiesta la creazione di una istanza di ConguaglioBulk che supera la validazione
* Post: Consente l'inserimento del conguaglio assegnandogli un progressivo definitivo e cancellando il
* conguaglio con progressivo temporaneo precedentemente creato
*
* Nome: Validazione NON superata
* Pre: E' stata richiesta la creazione di una istanza di ConguaglioBulk che NON supera la validazione
* Post: Viene generata una eccezione con la descrizione dell'errore
*
* @param userContext lo UserContext che ha generato la richiesta
* @param bulk OggettoBulk il conguaglio che deve essere creato
* @return l'OggettoBulk risultante dopo l'operazione di creazione.
*
* Metodo privato chiamato:
* validaConguaglio(ConguaglioBulk conguaglio)
*
**/
public abstract it.cnr.jada.bulk.OggettoBulk creaConBulk(it.cnr.jada.UserContext param0,it.cnr.jada.bulk.OggettoBulk param1) throws it.cnr.jada.comp.ComponentException;
/**
* Viene richiesta l'esecuzione della procedura Oracle CNRCTB650.ABILITACONGUAGLIO
* per abilitare il conguaglio alla creazione del compenso
*
* Pre-post-conditions:
*
* Nome: Validazione superata
* Pre: Viene richiesta l'abilitazione del conguaglio per la creazione del compenso
* Post: Viene assegnato (se assente) un nuovo progressivo temporaneo al conguaglio
* ed eseguita la procedura oracle per l'abiltazione del conguaglio
*
* Nome: Validazione NON superata
* Pre: Viene richiesta l'abilitazione del conguaglio per la creazione del compenso
* Post: Viene sollevata una ValidationExecption con la descrizione dell'errore
*
* @param userContext lo UserContext che ha generato la richiesta
* @param conguaglio il conguaglio da abilitare
* @return il conguaglio aggiornato dopo l'esecuzione della procedura oracle
*
* Metodi privati chiamati:
* validaConguaglioPerCalcolo(ConguaglioBulk conguaglio);
* abilitaConguaglio(UserContext userContext, ConguaglioBulk conguaglio);
*
**/
public abstract it.cnr.contab.compensi00.docs.bulk.ConguaglioBulk doAbilitaConguaglio(it.cnr.jada.UserContext param0,it.cnr.contab.compensi00.docs.bulk.ConguaglioBulk param1) throws it.cnr.jada.comp.ComponentException;
/**
* Viene richiesta l'esecuzione della procedura Oracle CNRCTB650.CREACOMPENSOCONGUAGLIO
* per completare il conguaglio e creare il compenso corrispondente
*
* Pre-post-conditions:
*
* Nome: Chiamata procedura oracle
* Pre: Viene richiesta l'esecuzione della procedura Oracle
* Post: Viene eseguita la procedura associata e creato il compenso
*
* @param userContext lo UserContext che ha generato la richiesta
* @param conguaglio il conguaglio da abilitare
* @return il conguaglio aggiornato dopo l'esecuzione della procedura oracle
*
* Metodi privati chiamati:
* creaCompensoConguaglio(UserContext userContext, ConguaglioBulk conguaglio);
* reloadConguaglio(UserContext userContext, ConguaglioBulk conguaglio);
*
**/
public abstract it.cnr.contab.compensi00.docs.bulk.ConguaglioBulk doCreaCompensoConguaglio(it.cnr.jada.UserContext param0,it.cnr.contab.compensi00.docs.bulk.ConguaglioBulk param1) throws it.cnr.jada.comp.ComponentException;
/**
* Viene richiesta la lista delle Banche associate ad un Terzo
*
* Pre-post-conditions:
*
* Nome: Terzo NON selezionato
* Pre: Non è stato selezionato un Terzo per il conguaglio
* Post: Non vengono caricate le banche.
*
* Nome: Terzo selezionato
* Pre: E' stato selezionato un Terzo valido per il conguaglio
* Post: Viene restituita la lista delle Banche associate al Terzo
* e alla Modalità di Pagamento selezionata
*
* @param userContext lo UserContext che ha generato la richiesta
* @param conguaglio l'OggettoBulk da completare
* @return La lista delle banche associate al terzo
*
**/
public abstract java.util.List findListaBanche(it.cnr.jada.UserContext param0,it.cnr.contab.compensi00.docs.bulk.ConguaglioBulk param1) throws it.cnr.jada.comp.ComponentException;
/**
* Viene richiesta la lista delle Modalita di Pagamento associate ad un Terzo
*
* Pre-post-conditions:
*
* Nome: Terzo NON selezionato
* Pre: Non è stato selezionato un Terzo per il conguaglio
* Post: Non vengono caricate le modalita di pagamento
*
* Nome: Terzo selezionato
* Pre: E' stato selezionato un Terzo valido per il conguaglio
* Post: Viene restituita la lista delle Modalita di pagamento associate al Terzo
*
* @param userContext lo UserContext che ha generato la richiesta
* @param bulk l'OggettoBulk da completare
* @return La lista delle modalita di pagamento associate al terzo
*
**/
public abstract java.util.Collection findModalita(it.cnr.jada.UserContext param0,it.cnr.jada.bulk.OggettoBulk param1) throws it.cnr.jada.comp.ComponentException;
/**
* Viene richiesta la lista dei Termini di pagamento associati ad un Terzo
*
* Pre-post-conditions:
*
* Nome: Terzo NON selezionato
* Pre: Non è stato selezionato un Terzo per il conguaglio
* Post: Non vengono caricati i termini di pagamento
*
* Nome: Terzo selezionato
* Pre: E' stato selezionato un Terzo valido per il conguaglio
* Post: Viene restituita la lista dei Termini di pagamento associati al Terzo
*
* @param userContext lo UserContext che ha generato la richiesta
* @param bulk l'OggettoBulk da completare
* @return La lista dei Termini di pagamento associati al terzo
*
**/
public abstract java.util.Collection findTermini(it.cnr.jada.UserContext param0,it.cnr.jada.bulk.OggettoBulk param1) throws it.cnr.jada.comp.ComponentException;
/**
* Viene richiesta la lista dei Tipi di rapporto associati ad un Terzo
*
* Pre-post-conditions:
*
* Nome: Terzo NON selezionato
* Pre: Non è stato selezionato un Terzo per il conguaglio
* Post: Non vengono caricati i Tipi di rapporto
*
* Nome: Terzo selezionato
* Pre: E' stato selezionato un Terzo valido per il conguaglio
* Post: Viene restituita la lista dei Tipi di rapporto associati al Terzo
*
* @param userContext lo UserContext che ha generato la richiesta
* @param bulk l'OggettoBulk da completare
* @return La lista dei Tipi di rapporto associati al terzo
*
**/
public abstract java.util.Collection findTipiRapporto(it.cnr.jada.UserContext param0,it.cnr.contab.compensi00.docs.bulk.ConguaglioBulk param1) throws it.cnr.jada.comp.ComponentException;
/**
* Viene richiesta la lista dei Tipi di Trattamento legati
* al Tipo di Rapporto selezionato
*
* Pre-post-conditions:
*
* Nome: Tipo di Rapporto NON selezionato
* Pre: Non è stato selezionato il tipo di rapporto
* Post: Non vengono caricati i Tipi Trattamento
*
* Nome: Terzo selezionato
* Pre: E' stato selezionato un tipo di rapporto valido per il conguaglio
* Post: Viene restituita la lista dei Tipi di Trattamento
* legati al Tipo di rapporto selezionato
*
* @param userContext lo UserContext che ha generato la richiesta
* @param bulk l'OggettoBulk da completare
* @return La lista dei Tipi di Trattamento associati al Tipo Rapporto selezionato
*
**/
public abstract java.util.Collection findTipiTrattamento(it.cnr.jada.UserContext param0,it.cnr.contab.compensi00.docs.bulk.ConguaglioBulk param1) throws it.cnr.jada.comp.ComponentException;
/**
* Prepara un OggettoBulk per la presentazione all'utente per una possibile
* operazione di modifica.
*
* Pre-post-conditions:
*
* Nome: Oggetto non esistente
* Pre: L'OggettoBulk specificato non esiste.
* Post: Viene generata una CRUDException con la descrizione dell'errore.
*
* Nome: Tutti i controlli superati
* Pre: L'OggettoBulk specificato esiste.
* Post: Viene riletto l'OggettoBulk, inizializzato con tutti gli oggetti collegati e preparato
* per l'operazione di presentazione e modifica nell'interfaccia visuale.
* L'operazione di lettura viene effettuata con una FetchPolicy il cui nome è
* ottenuto concatenando il nome della component con la stringa ".edit"
*
* @param uc lo UserContext che ha generato la richiesta
* @param bulk l'OggettoBulk da preparare
* @return l'OggettoBulk preparato
*
* Metodo privato chiamato:
* completaConguaglio(UserContaxt userContext, ConguaglioBulk conguaglio);
*
**/
public abstract it.cnr.jada.bulk.OggettoBulk inizializzaBulkPerModifica(it.cnr.jada.UserContext param0,it.cnr.jada.bulk.OggettoBulk param1) throws it.cnr.jada.comp.ComponentException;
/**
* Verifica se il conguaglio e' stato annullato
*
* Pre-post-conditions
*
* Nome: Conguaglio ANNULLATO - Data cancellazione valorizzata
* Pre: Il conguaglio è annullato
* Post: Ritorna . Il conguaglio è annullato
*
* Nome: Conguaglio NON ANNULLATO - Data cancellazione non valorizzata
* Pre: Il conguaglio non è annullato
* Post: Ritorna . Il conguaglio non è annullato
*
* @param userContext lo UserContext che ha generato la richiesta
* @param conguaglio il conguaglio da controllare
* @return TRUE e il conguaglio è anullato, FALSE altrimenti
*
**/
public abstract boolean isConguaglioAnnullato(UserContext userContext, ConguaglioBulk conguaglio) throws ComponentException;
/**
* Viene Richiesto il caricamento di un conguaglio
*
* Pre-post_conditions
*
* Nome: Caricamento conguaglio
* Pre: Viene richiesto il caricamento da db del conguaglio
* Post: Viene caricato da database il conguaglio insieme a tutti
* gli oggetti complessi necessari ad una sua corretta gestione
* - terzo
* - tipo trattamento
*
* @param userContext lo UserContext che ha generato la richiesta
* @param bulk il conguaglio che deve essere ri-caricato
* @return il conguaglio aggiornato
*
* Metodo privato chiamato:
* completaConguaglio(UserContext userContext, ConguaglioBulk conguaglio);
*
**/
public abstract it.cnr.contab.compensi00.docs.bulk.ConguaglioBulk reloadConguaglio(it.cnr.jada.UserContext param0,it.cnr.contab.compensi00.docs.bulk.ConguaglioBulk param1) throws it.cnr.jada.comp.ComponentException;
/**
* Viene richiesta la validazione del terzo selezionato
* Ritorna una ApplicationException con la descrizione
* dell'errore relativo
*
* errorCode Significato
* ========= ===========
* 0 Tutto bene
* 1 Terzo assente
* 2 Terzo non valido alla data registrazione
* 3 Controllo se ho inserito le modalità di pagamento
* 4 Tipo rapporto assente
* 5 Tipo di rapporto non valido in data inizio competenza coge
* 6 Tipo trattamento assente
* 7 Tipo trattamento non valido alla data registrazione
*
* Pre-post-conditions
*
* Nome: Terzo assente
* Pre: Non è stato selezionato un terzo
* Post: Ritorna una ApplicationException con la descrizione dell'errore
* "Inserire il terzo"
*
* Nome: Terzo non valido alla data registrazione
* Pre: Il terzo selezionato non è valido alla data registrazione
* Post: Ritorna una ApplicationException con la descrizione dell'errore
* "Il Terzo selezionato non è valido in Data Registrazione"
*
* Nome: Modalita di pagamento assente
* Pre: Non è stato selezionata una modalita di pagamento
* Post: Ritorna una ApplicationException con la descrizione dell'errore
* "Selezionare la Modalità di pagamento"
*
* Nome: Tipo rapporto assente
* Pre: Non è stato selezionato un tipo rapporto
* Post: Ritorna una ApplicationException con la descrizione dell'errore
* "Selezionare il Tipo Rapporto"
*
* Nome: Tipo rapporto non valido alla data inizio competenza coge
* Pre: Il tipo rapporto selezionato non è valido in data competenza coge
* Post: Ritorna una ApplicationException con la descrizione dell'errore
* "Il Tipo Rapporto selezionato non è valido alla Data Inizio Competenza"
*
* Nome: Tipo trattamento assente
* Pre: Non è stato selezionato un tipo trattamento
* Post: Ritorna una ApplicationException con la descrizione dell'errore
* "Selezionare il Tipo Trattamento"
*
* Nome: Tipo trattamento non valido alla data registrazione
* Pre: Non è stato selezionato un tipo trattamento
* Post: Ritorna una ApplicationException con la descrizione dell'errore
* "Il Tipo Trattamento selezionato non è valido alla Data Registrazione"
*
* Nome: Terzo valido
* Pre: Il terzo selezionato non ha errori
* Post: Il terzo è valido e prosegue con l'operazione
*
* @param userContext lo UserContext che genera la richiesta
* @param conguaglio il compenso di cui validare il terzo
*
**/
public abstract void validaTerzo(UserContext userContext, ConguaglioBulk conguaglio) throws ComponentException;
/**
* Viene richiesta la validazione del terzo selezionato
* Ritorna il codice di Errore relativo alla validazione
*
* errorCode Significato
* ========= ===========
* 0 Tutto bene
* 1 Terzo assente
* 2 Terzo non valido alla data registrazione
* 3 Controllo se ho inserito le modalità di pagamento
* 4 Tipo rapporto assente
* 5 Tipo di rapporto non valido in data inizio competenza coge
* 6 Tipo trattamento assente
* 7 Tipo trattamento non valido alla data registrazione
*
* Pre-post-conditions
*
* Nome: Terzo assente
* Pre: Non è stato selezionato un terzo
* Post: Ritorna il valore 1
*
* Nome: Terzo non valido alla data registrazione
* Pre: Il terzo selezionato non è valido alla data registrazione
* Post: Ritorna il valore 2
*
* Nome: Modalita di pagamento assente
* Pre: Non è stato selezionata una modalita di pagamento
* Post: Ritorna il valore 3
*
* Nome: Tipo rapporto assente
* Pre: Non è stato selezionato un tipo rapporto
* Post: Ritorna il valore 4
*
* Nome: Tipo rapporto non valido alla data inizio competenza coge
* Pre: Il tipo rapporto selezionato non è valido in data competenza coge
* Post: Ritorna il valore 5
*
* Nome: Tipo trattamento assente
* Pre: Non è stato selezionato un tipo trattamento
* Post: Ritorna il valore 6
*
* Nome: Tipo trattamento non valido alla data registrazione
* Pre: Non è stato selezionato un tipo trattamento
* Post: Ritorna il valore 7
*
* Nome: Terzo valido
* Pre: Il terzo selezionato non ha errori
* Post: Ritorna il valore 0
*
* @param userContext lo UserContext che genera la richiesta
* @param conguaglio il conguaglio di cui validare il terzo
* @return il codice di errore relativo
*
**/
public int validaTerzo(UserContext userContext, ConguaglioBulk conguaglio, boolean checkModPag) throws ComponentException;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy