Skip to content

Commit

Permalink
Aggiornamenti
Browse files Browse the repository at this point in the history
  • Loading branch information
raffaelepagano committed May 14, 2019
1 parent 99e6b3e commit 0494cae
Show file tree
Hide file tree
Showing 9 changed files with 349 additions and 216 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
import it.cnr.contab.progettiric00.tabrif.bulk.Voce_piano_economico_prgBulk;
import it.cnr.contab.utenze00.bp.CNRUserContext;
import it.cnr.contab.util.Utility;
import it.cnr.contab.util00.bp.AllegatiCRUDBP;
import it.cnr.contab.util00.bp.AllegatiTypeCRUDBP;
import it.cnr.jada.DetailedRuntimeException;
import it.cnr.jada.action.ActionContext;
import it.cnr.jada.action.BusinessProcessException;
Expand All @@ -41,14 +41,11 @@
import it.cnr.jada.bulk.BulkList;
import it.cnr.jada.bulk.OggettoBulk;
import it.cnr.jada.bulk.ValidationException;
import it.cnr.jada.comp.ApplicationException;
import it.cnr.jada.comp.ComponentException;
import it.cnr.jada.util.action.SimpleDetailCRUDController;
import it.cnr.jada.util.jsp.Button;
import it.cnr.si.spring.storage.StorageObject;
import it.cnr.si.spring.storage.config.StoragePropertyNames;

public class RimodulaProgettiRicercaBP extends AllegatiCRUDBP<AllegatoProgettoRimodulazioneBulk, Progetto_rimodulazioneBulk> {
public class RimodulaProgettiRicercaBP extends AllegatiTypeCRUDBP<AllegatoProgettoRimodulazioneBulk, Progetto_rimodulazioneBulk> {
private boolean flPrgPianoEconomico = false;
protected boolean isUoCdsCollegata = false;
private Integer annoFromPianoEconomico;
Expand Down Expand Up @@ -1167,13 +1164,6 @@ protected Class<AllegatoProgettoRimodulazioneBulk> getAllegatoClass() {
return AllegatoProgettoRimodulazioneBulk.class;
}

@Override
protected void completeAllegato(AllegatoProgettoRimodulazioneBulk allegato) throws ApplicationException {
super.completeAllegato(allegato);
StorageObject storageObject = storeService.getStorageObjectBykey(allegato.getStorageKey());
allegato.setObjectType(storageObject.getPropertyValue(StoragePropertyNames.BASE_TYPE_ID.value()));
}

public void validaImportoFinanziatoRimodulato(ActionContext actioncontext, Optional<Progetto_piano_economicoBulk> optPpe) throws ValidationException {
boolean isAddVoceBilancio = optPpe.flatMap(el->Optional.ofNullable(el.getVoce_piano_economico()))
.map(Voce_piano_economico_prgBulk::getFl_add_vocibil)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
import it.cnr.contab.utenze00.bp.CNRUserContext;
import it.cnr.contab.util.Utility;
import it.cnr.contab.util00.bp.AllegatiCRUDBP;
import it.cnr.contab.util00.bp.AllegatiTypeCRUDBP;
import it.cnr.contab.varstanz00.bulk.Var_stanz_resBulk;
import it.cnr.jada.action.ActionContext;
import it.cnr.jada.action.BusinessProcessException;
Expand Down Expand Up @@ -41,7 +42,7 @@
import java.util.Optional;
import java.util.TreeMap;

public class TestataProgettiRicercaBP extends AllegatiCRUDBP<AllegatoProgettoBulk, ProgettoBulk> implements IProgettoBP {
public class TestataProgettiRicercaBP extends AllegatiTypeCRUDBP<AllegatoProgettoBulk, ProgettoBulk> implements IProgettoBP {
protected boolean isUoCdsCollegata = false;
protected SimpleDetailCRUDController crudPianoEconomicoAnnoCorrente = new ProgettoPianoEconomicoCRUDController("PianoEconomicoAnnoCorrente", Progetto_piano_economicoBulk.class, "dettagliPianoEconomicoAnnoCorrente", this) {
public int addDetail(OggettoBulk oggettobulk) throws BusinessProcessException {
Expand Down Expand Up @@ -875,13 +876,6 @@ protected Class<AllegatoProgettoBulk> getAllegatoClass() {
return AllegatoProgettoBulk.class;
}

@Override
protected void completeAllegato(AllegatoProgettoBulk allegato) throws ApplicationException {
super.completeAllegato(allegato);
StorageObject storageObject = storeService.getStorageObjectBykey(allegato.getStorageKey());
allegato.setObjectType(storageObject.getPropertyValue(StoragePropertyNames.BASE_TYPE_ID.value()));
}

public boolean isRODatiContabili() {
Optional<ProgettoBulk> optProgetto = Optional.ofNullable(this.getModel()).filter(ProgettoBulk.class::isInstance).map(ProgettoBulk.class::cast);
return !this.isSearching() && isBilancioChiuso &&
Expand Down

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@

import it.cnr.contab.util00.bulk.storage.AllegatoGenericoTypeBulk;
import it.cnr.jada.bulk.ValidationException;
import it.cnr.si.spring.storage.StorageObject;
import it.cnr.si.spring.storage.config.StoragePropertyNames;

public class AllegatoProgettoBulk extends AllegatoGenericoTypeBulk {
private static final long serialVersionUID = 1L;
Expand Down Expand Up @@ -40,19 +38,10 @@ public AllegatoProgettoBulk() {
super();
}

public static AllegatoProgettoBulk construct(StorageObject storageObject) {
return new AllegatoProgettoBulk(storageObject);
}

public AllegatoProgettoBulk(String storageKey) {
super(storageKey);
}

public AllegatoProgettoBulk(StorageObject storageObject){
super();
setContentType(storageObject.getPropertyValue(StoragePropertyNames.OBJECT_TYPE_ID.value()));
}

public boolean isTypeEnabled(){
return !isToBeCreated();
}
Expand Down Expand Up @@ -95,33 +84,34 @@ public void setProgetto(ProgettoBulk progetto) {

@Override
public String parseFilename(String file) {
StringJoiner name = new StringJoiner("-");
Optional.ofNullable(this.getProgetto()).flatMap(el->Optional.ofNullable(el.getPg_progetto()))
.ifPresent(el->name.add("PRG" + el));
if (this.isProvvedimentoCostituzione())
name.add("COST");
if (this.isRichiestaAnticipo())
name.add("ANT");
if (this.isRendicontazione())
name.add("REND");
if (this.isStralcio())
name.add("STRC");
if (this.isControdeduzione())
name.add("CTRD");
if (this.isFinalStatementPayment())
name.add("FSP");
if (this.isGenerico())
name.add("GEN");
name.add(super.parseFilename(file));
return name.toString();
return null;
}

@Override
public void validate() throws ValidationException {
super.validate();
if (getNome() == null ) {
if (getObjectType() == null)
throw new ValidationException("Attenzione: selezionare il tipo di File da caricare.");
if (getObjectType() == null)
throw new ValidationException("Attenzione: selezionare il tipo di File da caricare.");
else {
StringJoiner name = new StringJoiner("-");
Optional.ofNullable(this.getProgetto()).flatMap(el->Optional.ofNullable(el.getPg_progetto()))
.ifPresent(el->name.add("PRG" + el));
if (this.isProvvedimentoCostituzione())
name.add("COST");
if (this.isRichiestaAnticipo())
name.add("ANT");
if (this.isRendicontazione())
name.add("REND");
if (this.isStralcio())
name.add("STRC");
if (this.isControdeduzione())
name.add("CTRD");
if (this.isFinalStatementPayment())
name.add("FSP");
if (this.isGenerico())
name.add("GEN");
name.add(this.getNome());
this.setNome(name.toString());
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,10 @@
import java.util.Optional;
import java.util.StringJoiner;

import org.apache.commons.lang.StringUtils;

import it.cnr.contab.util00.bulk.storage.AllegatoGenericoTypeBulk;
import it.cnr.jada.bulk.ValidationException;
import it.cnr.si.spring.storage.StorageObject;

public class AllegatoProgettoRimodulazioneBulk extends AllegatoGenericoTypeBulk {
private static final long serialVersionUID = 1L;
Expand All @@ -32,18 +33,10 @@ public AllegatoProgettoRimodulazioneBulk() {
super();
}

public static AllegatoProgettoRimodulazioneBulk construct(StorageObject storageObject) {
return new AllegatoProgettoRimodulazioneBulk(storageObject);
}

public AllegatoProgettoRimodulazioneBulk(String storageKey) {
super(storageKey);
}

public AllegatoProgettoRimodulazioneBulk(StorageObject storageObject){
super(storageObject);
}

public boolean isTypeEnabled(){
return !isToBeCreated();
}
Expand All @@ -70,29 +63,30 @@ public void setRimodulazione(Progetto_rimodulazioneBulk rimodulazione) {

@Override
public String parseFilename(String file) {
StringJoiner name = new StringJoiner("-");
Optional.ofNullable(this.getRimodulazione())
.flatMap(el->Optional.ofNullable(el.getProgetto()))
.flatMap(el->Optional.ofNullable(el.getPg_progetto()))
.ifPresent(el->name.add("PRG" + el));
Optional.ofNullable(this.getRimodulazione()).flatMap(el->Optional.ofNullable(el.getPg_rimodulazione()))
.ifPresent(el->name.add("RIM" + el));
if (this.isRimodulazione())
name.add("ATT");
if (this.isProroga())
name.add("PRG");
if (this.isGenerico())
name.add("GEN");
name.add(super.parseFilename(file));
return name.toString();
return null;
}

@Override
public void validate() throws ValidationException {
super.validate();
if (getNome() == null ) {
if (getObjectType() == null)
throw new ValidationException("Attenzione: selezionare il tipo di File da caricare.");
if (getObjectType() == null)
throw new ValidationException("Attenzione: selezionare il tipo di File da caricare.");
else {
StringJoiner name = new StringJoiner("-");
Optional.ofNullable(this.getRimodulazione())
.flatMap(el->Optional.ofNullable(el.getProgetto()))
.flatMap(el->Optional.ofNullable(el.getPg_progetto()))
.ifPresent(el->name.add("PRG" + el));
Optional.ofNullable(this.getRimodulazione()).flatMap(el->Optional.ofNullable(el.getPg_rimodulazione()))
.map(el->StringUtils.leftPad(el.toString(), 3, "0"))
.ifPresent(el->name.add("RIM" + el));
if (this.isRimodulazione())
name.add("ATT");
if (this.isProroga())
name.add("PRG");
if (this.isGenerico())
name.add("GEN");
this.setNome(name.toString());
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -339,15 +339,6 @@ public String getMessageAnomaliaDetailRimodulato() {
" - Assestato (" + new it.cnr.contab.util.EuroFormat().format(this.getImAssestatoSpesaFinanziatoRimodulato())+")"+
" = " + new it.cnr.contab.util.EuroFormat().format(el)+" - Valore negativo non consentito."));

Optional.ofNullable(this)
.filter(el->Optional.ofNullable(el.getVoce_piano_economico()).flatMap(el2->Optional.ofNullable(el2.getFlAllPrevFin())).orElse(Boolean.FALSE))
.map(Progetto_piano_economicoBulk::getDispResiduaFinanziamentoRimodulato)
.filter(el->el.compareTo(BigDecimal.ZERO)!=0)
.ifPresent(el->anomalia.add("QUOTA FINANZIATA:" +
"\rLa quota assegnata (" + new it.cnr.contab.util.EuroFormat().format(this.getImSpesaFinanziatoRimodulato())+")"+
" deve essere uguale al valore dell'assestato(" + new it.cnr.contab.util.EuroFormat().format(this.getImAssestatoSpesaFinanziatoRimodulato())+")"+
"."));

Optional.ofNullable(this.getDispResiduaCofinanziamentoRimodulato())
.filter(el->el.compareTo(BigDecimal.ZERO)<0)
.ifPresent(el->anomalia.add("QUOTA COFINANZIATA:" +
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
package it.cnr.contab.util00.bp;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.util.Optional;

import it.cnr.contab.util00.bulk.storage.AllegatoGenericoBulk;
import it.cnr.contab.util00.bulk.storage.AllegatoGenericoTypeBulk;
import it.cnr.contab.util00.bulk.storage.AllegatoParentBulk;
import it.cnr.jada.action.ActionContext;
import it.cnr.jada.action.BusinessProcessException;
import it.cnr.jada.bulk.OggettoBulk;
import it.cnr.jada.comp.ApplicationException;
import it.cnr.si.spring.storage.StorageException;
import it.cnr.si.spring.storage.StorageObject;
import it.cnr.si.spring.storage.config.StoragePropertyNames;

public abstract class AllegatiTypeCRUDBP<T extends AllegatoGenericoTypeBulk, K extends AllegatoParentBulk> extends AllegatiCRUDBP<T,K> {
private static final long serialVersionUID = 1L;

public AllegatiTypeCRUDBP() {
super();
}

public AllegatiTypeCRUDBP(String s) {
super(s);
}

protected void completeAllegato(T allegato) throws ApplicationException {
StorageObject storageObject = storeService.getStorageObjectBykey(allegato.getStorageKey());
allegato.setObjectType(storageObject.getPropertyValue(StoragePropertyNames.OBJECT_TYPE_ID.value()));
}

@SuppressWarnings("unchecked")
protected void archiviaAllegati(ActionContext actioncontext) throws BusinessProcessException, ApplicationException {
AllegatoParentBulk allegatoParentBulk = (AllegatoParentBulk) getModel();
for (AllegatoGenericoBulk model : allegatoParentBulk.getArchivioAllegati()) {
AllegatoGenericoTypeBulk allegato = (AllegatoGenericoTypeBulk)model;
if (allegato.isToBeCreated()) {
final File file = Optional.ofNullable(allegato.getFile())
.orElseThrow(() -> new ApplicationException("File non presente"));
try {
storeService.storeSimpleDocument(allegato,
new FileInputStream(file),
allegato.getContentType(),
allegato.getNome(),
getStorePath((K) allegatoParentBulk,
true),
allegato.getObjectType(),
false
);
allegato.setCrudStatus(OggettoBulk.NORMAL);
} catch (FileNotFoundException e) {
throw handleException(e);
} catch (StorageException e) {
if (e.getType().equals(StorageException.Type.CONSTRAINT_VIOLATED))
throw new ApplicationException("File [" + allegato.getNome() + "] gia' presente. Inserimento non possibile!");
throw handleException(e);
}
} else if (allegato.isToBeUpdated()) {
if (isPossibileModifica(allegato)) {
try {
if (allegato.getFile() != null) {
storeService.updateStream(allegato.getStorageKey(),
new FileInputStream(allegato.getFile()),
allegato.getContentType());
}
storeService.updateProperties(allegato, storeService.getStorageObjectBykey(allegato.getStorageKey()));
allegato.setCrudStatus(OggettoBulk.NORMAL);
} catch (FileNotFoundException e) {
throw handleException(e);
} catch (StorageException e) {
if (e.getType().equals(StorageException.Type.CONSTRAINT_VIOLATED))
throw new ApplicationException("File [" + allegato.getNome() + "] gia' presente. Inserimento non possibile!");
throw handleException(e);
}
}
}
}
gestioneCancellazioneAllegati(allegatoParentBulk);
}
}
Loading

0 comments on commit 0494cae

Please sign in to comment.