it.cnr.contab.config00.comp.ICDRMgr 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.config00.comp;
import it.cnr.contab.config00.sto.bulk.*;
import it.cnr.jada.UserContext;
import it.cnr.jada.bulk.OggettoBulk;
import it.cnr.jada.comp.ComponentException;
public interface ICDRMgr extends it.cnr.jada.comp.ICRUDMgr
{
/**
* Esegue una operazione di creazione di un CdrBulk.
*
* Pre-post-conditions:
*
* Nome: Creazione di Cdr dipendente da un CDS di tipo AREA
* Pre: La richiesta di creazione di un Cdr che dipende da una unita' organizzativa definita per un CDS di tipo
* Area di ricerca è stata generata
* Post: Viene generate una ApplicationException con il messaggio "Non è possibile aggiungere un CDR ad un'area
* di ricerca"
*
* Nome: Creazione di Cdr dipendente da un CDS di tipo SAC
* Pre: La richiesta di creazione di un Cdr che dipende da una unita' organizzativa definita per un CDS di tipo
* Struttura Amministrativa Centrale è stata generata
* Post: Un Cdr di secondo livello viene creato con i dati inseriti dall'utente, se l'utente non ha specificato un
* codice proprio del Cdr ne viene generato uno automaticamente; il cdr di afferenza assegnato e' il CDR di
* primo livello dell'Unita' organizzativa da cui dipende il Cdr appena creato.
*
* Nome: Creazione di Cdr dipendente da un CDS di tipo diverso da SAC
* Pre: La richiesta di creazione di un Cdr che dipende da una unita' organizzativa definita per un CDS di tipologia
* differente da Struttura Amministrativa Centrale è stata generata
* Post: Un Cdr di secondo livello viene creato con i dati inseriti dall'utente, se l'utente non ha specificato un
* codice proprio del Cdr ne viene generato uno automaticamente; il cdr di afferenza assegnato e' il CDR
* responsabile dell'UO CDS.
*
* Nome: Errore di unita' organizzativa inesistente
* Pre: L'unita' organizzativa specificata dall'utente non esiste
* Post: Viene generata una ComponentException che ha come dettaglio l'ApplicationException che descrive l'errore da
* visualizzare all'utente
*
* Nome: Errore di Cdr afferenza inesistente
* Pre: Il Cdr di afferenza del Cdr da creare non è presente
* Post: Viene generata una ComponentException che ha come dettaglio l'ApplicationException che descrive l'errore da
* visualizzare all'utente
*
* Nome: Errore di Responsabile inesistente
* Pre: Il Codice Terzo definito come responsabile del Cdr non è presente
* Post: Viene generata una ComponentException che ha come dettaglio l'ApplicationException che descrive l'errore da
* visualizzare all'utente
*
* Nome: Errore di chiave duplicata
* Pre: Esiste già un CdrBulk persistente che possiede la stessa chiave
* primaria di quello specificato.
* Post: Viene generata una ComponentException che ha come dettaglio l'ApplicationException che descrive l'errore da
* visualizzare all'utente
*
* Nome: Errore per Esercizio Fine
* Pre: L'attributo esercizio fine del Cdr da creare non e' valido (la validazione e' eseguita dal metodo
* 'verificaEsercizioFine')
* Post: Viene generata una ComponentException che ha come dettaglio l'ApplicationException che descrive l'errore da
* visualizzare all'utente
*
*
* @param uc lo UserContext che ha generato la richiesta
* @param bulk il CdrBulk che deve essere creato
* @return il CdrBulk risultante dopo l'operazione di creazione.
*/
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;
/**
* Esegue una operazione di eliminazione di CdrBulk
*
* Pre-post-conditions:
*
* Nome: Cancellazione di un Cdr non responsabile dell'UO
* Pre: La richiesta di cancellazione di un Cdr non responsabile di una Unita' Organizzativa e' stata generata
* Post: Il Cdr e' stato cancellato
*
* Nome: Cancellazione di un Cdr responsabile dell'UO
* Pre: La richiesta di cancellazione di un Cdr responsabile di una Unita' Organizzativa e' stata generata
* Post: Viene generata una ComponentException che ha come dettaglio l'ApplicationException che descrive l'errore da
* visualizzare all'utente
*
* @param userContext lo userContext che ha generato la richiesta
* @param bulk l'istanza di CdrBulk che deve essere cancellata
*/
public abstract void eliminaConBulk(it.cnr.jada.UserContext param0,it.cnr.jada.bulk.OggettoBulk param1) throws it.cnr.jada.comp.ComponentException;
/**
* TRUE se il Cdr passato come parametro e' Ente
* FALSE altrimenti
*
*/
public abstract boolean isCdrEnte(UserContext userContext,CdrBulk cdr) throws ComponentException;
/**
* TRUE se il Cdr di scrivania e' Ente
* FALSE altrimenti
*
*/
public abstract boolean isEnte(UserContext userContext) throws ComponentException;
/**
* Esegue una operazione di modifca di un CdrBulk.
*
* Pre-post-conditions:
*
* Nome: Modifica di attributi diversi da esercizio fine
* Pre: La richiesta di modifica di un attributo diverso da esercizio fine per un Cdr è stata generata
* Post: Il Cdr e' stato modificato
*
* Nome: Modifica dell'attributo esercizio fine - Errore
* Pre: La richiesta di modifica dell'attributo esercizio fine di un Cdr e' stata generata
* e la verifica della correttezza del nuovo esercizio (eseguita dal metodo 'verificaEsercizioFine') non e'
* stata superata
* Post: E' stata generata un'Application Exception per segnalare all'utente l'impossibilità di effettuare tale modifica
*
* Nome: Modifica dell'attributo esercizio fine - Ok
* Pre: La richiesta di modifica dell'attributo esercizio fine di un Cdr e' stata generata e
* tutti i controlli sono stati superati
* Post: L'esercizio fine del Cdr e' stato aggiornato e tutti gli esercizi fine delle linee di attività definite per
* quel Cdr e che hanno esercizio fine maggiore rispetto a quello del Cdr sono stati aggiornati
* (metodo 'aggiornaEsercizioFine')
*
* Nome: Errore di Responsabile inesistente
* Pre: Il Codice Terzo definito come responsabile del Cdr non è presente
* Post: Viene generata una ComponentException che ha come dettaglio l'ApplicationException che descrive l'errore da
* visualizzare all'utente
*
* @param uc lo UserContext che ha generato la richiesta
* @param bulk il CdrBulk che deve essere modificato
* @return il CdrBulk risultante dopo l'operazione di modifica
*/
public abstract it.cnr.jada.bulk.OggettoBulk modificaConBulk(it.cnr.jada.UserContext param0,it.cnr.jada.bulk.OggettoBulk param1) throws it.cnr.jada.comp.ComponentException;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy