elimiazione trigger e varie modifiche su ordini di produzione

This commit is contained in:
2024-08-02 18:22:04 +02:00
parent 2cfd5ff050
commit 37f38ed2f7
5 changed files with 359 additions and 84 deletions

View File

@@ -947,7 +947,7 @@ public class DocOrdRules extends QueryRules {
SetupGest setup = new SetupGest();
Boolean disableTriggerOrdl = setup.getSetupBoolean(connection, "DTB_ORDT", "SETUP", "DISABLE_TRIGGER_ORDL");
if (!disableTriggerOrdl) return null;
if (!disableTriggerOrdl || dtbOrdt.isGeneraOrdLavDaProd()) return null;
DtbOrdt dtbOrdtProd =
new DtbOrdt()

View File

@@ -8,20 +8,14 @@ import it.integry.ems.rules.completing.OrderRules;
import it.integry.ems.rules.completing.QueryRules;
import it.integry.ems.rules.completing.dto.DatiPartitaMagDTO;
import it.integry.ems_model.base.EntityBase;
import it.integry.ems_model.business_logic.dto.ActivityCicloProdDTO;
import it.integry.ems_model.business_logic.dto.CommessaDTO;
import it.integry.ems_model.business_logic.dto.ElencoProdDTO;
import it.integry.ems_model.business_logic.dto.ExplodeDistDTO;
import it.integry.ems_model.business_logic.dto.*;
import it.integry.ems_model.config.EmsRestConstants;
import it.integry.ems_model.db.ResultSetMapper;
import it.integry.ems_model.entity.*;
import it.integry.ems_model.rules.util.DroolsUtil;
import it.integry.ems_model.service.SetupGest;
import it.integry.ems_model.types.OperationType;
import it.integry.ems_model.utility.Query;
import it.integry.ems_model.utility.UtilityDB;
import it.integry.ems_model.utility.UtilityHashMap;
import it.integry.ems_model.utility.UtilityString;
import it.integry.ems_model.utility.*;
import org.json.JSONArray;
import java.math.BigDecimal;
@@ -33,16 +27,15 @@ import java.util.Date;
import java.util.*;
public class ProductionBusinessLogic {
public static void getNextCodJcom(Connection conn, CommessaDTO datiComm, HashMap<String, String> setup) throws Exception {
public static void getNextCodJcom(Connection conn, CommessaDTO datiComm, OrdProdSetupDTO ordProdSetupDTO) throws Exception {
// Acquisizione configurazioni commessa
boolean generazioneAutomatica = false;
boolean aggiungiGestione = false;
if ("V".equals(datiComm.getGestione())) {
generazioneAutomatica = UtilityString.equalsIgnoreCase(setup.get("GEN_AUTOMATICA_COMM_VEN"), "S");
aggiungiGestione = UtilityString.equalsIgnoreCase(setup.get("AGGIUNGI_GEST_VEN"), "S");
generazioneAutomatica = ordProdSetupDTO.isGenerazioneAutomaticaVend();
aggiungiGestione = ordProdSetupDTO.isAggiungiGestione();
} else if ("L".equals(datiComm.getGestione()) || "A".equals(datiComm.getGestione())) {
generazioneAutomatica = UtilityString.equalsIgnoreCase(setup.get("GEN_AUTOMATICA_COMM_LAV"), "S");
generazioneAutomatica = ordProdSetupDTO.isGenerazioneAutomaticaLav();
}
// Definizione nuovo codice commessa
@@ -325,13 +318,14 @@ public class ProductionBusinessLogic {
return activityIDRoot;
}
private static void assegnaPartitaMag(Connection conn, DtbOrdr dtbOrdr, String classNameOrdProd, HashMap<String, String> setupLottoProd) throws Exception {
private static void assegnaPartitaMag(Connection conn, DtbOrdr dtbOrdr, String classNameOrdProd, OrdProdSetupDTO ordProdSetupDTO) throws Exception {
String gestione = "L", parameter, sql = "";
Date dataScad = null;
DateFormat formato = new SimpleDateFormat("yyyy/MM/dd");
PreparedStatement ps = null;
ResultSet rs = null;
String codJfas = dtbOrdr.getCodJfas();
String codMdep = dtbOrdr.getCodMdep();
String codMart = dtbOrdr.getCodMart();
@@ -341,10 +335,9 @@ public class ProductionBusinessLogic {
Integer numOrd = dtbOrdr.getNumOrd();
Date dataCons = dtbOrdr.getDataCons();
boolean generaLottoProdAutomatico = UtilityString.equalsIgnoreCase(setupLottoProd.get("GENERA_LOTTO_AUTOMATICO_DEP_" + codMdep), "S");
boolean partitaMagRequired = UtilityString.equalsIgnoreCase(setupLottoProd.get("PARTITA_MAG_REQUIRED"), "S");
boolean generaLottoProdAutomatico = UtilityString.equalsIgnoreCase(new SetupGest().getSetup(conn, classNameOrdProd, "GENERA_LOTTO_PROD", "GENERA_LOTTO_AUTOMATICO_DEP_" + codMdep), "S");
boolean partitaMagRequired = ordProdSetupDTO.isPartitaMagRequired();
// Se il prodotto è presente tra quelli da escludere dall'assegnazione automatica allora non viene generato il lotto
String whereCondEscludiProd = new SetupGest().getSetupDepo(conn, classNameOrdProd, "GENERA_LOTTO_PROD", "GENERA_LOTTO_AUT_WHERECOND_ESCLUDI", codMdep);
if (!UtilityString.isNullOrEmpty(whereCondEscludiProd)) {
@@ -407,7 +400,7 @@ public class ProductionBusinessLogic {
}
}
private static void explodeDist(DtbOrdt ordT, Connection conn, ExplodeDistDTO datiDist, EntityBase dtbOrdr, List<ActivityCicloProdDTO> activityCicloProd, boolean existOrd, HashMap<String, String> setup) throws Exception {
private static void explodeDist(DtbOrdt ordT, Connection conn, ExplodeDistDTO datiDist, EntityBase dtbOrdr, List<ActivityCicloProdDTO> activityCicloProd, boolean existOrd, OrdProdSetupDTO ordProdSetupDTO) throws Exception {
String codJfasRow = null;
Integer durataFasiPrec = 0, numFaseOld = 0;
String untMisPRI = null, sql = null, fasiCicloProdOrdine = null, columnFaseCicloProdOrd = "", tableCicloProdOrd = "", columnFaseParentCicloProdOrd = "";
@@ -416,10 +409,10 @@ public class ProductionBusinessLogic {
ResultSet rs = null;
BigDecimal rapConvPRI = BigDecimal.ZERO;
boolean assPeriodoFase = UtilityString.equalsIgnoreCase(setup.get("ASS_PERIODO_FASE_LAV"), "S");
boolean visCodJfas = UtilityString.equalsIgnoreCase(setup.get("VISUALIZZA_COD_JFAS"), "S");
boolean visNoteRigaDist = UtilityString.equalsIgnoreCase(setup.get("VIS_NOTE_RIGA_DISTINTA"), "S");
boolean pesoInQtaLav = UtilityString.equalsIgnoreCase(setup.get("PESO_IN_QTA_LAV"), "S");
boolean assPeriodoFase = ordProdSetupDTO.isAssPeriodoFase();
boolean visCodJfas = ordProdSetupDTO.isVisCodJfas();
boolean visNoteRigaDist = ordProdSetupDTO.isVisNoteRigaDist();
boolean pesoInQtaLav = ordProdSetupDTO.isPesoInQtaLav();
boolean isSameLav = datiDist.isSameLav();
boolean isRoot = datiDist.isRoot();
String fasiSel = datiDist.getCodJfasRow();
@@ -582,7 +575,7 @@ public class ProductionBusinessLogic {
} else {
datiDist.setSameLav(true);
}
explodeDist(ordT, conn, datiDist, dtbOrdr, activityCicloProd, existOrd, setup);
explodeDist(ordT, conn, datiDist, dtbOrdr, activityCicloProd, existOrd, ordProdSetupDTO);
} else {
// Verifica esistenza distinta in anagrafica, se non presente blocca la procedura
if (codMate != null) {
@@ -714,7 +707,7 @@ public class ProductionBusinessLogic {
// il codice fase del ciclo produttivo ha un codice di equivalenza/relazione associato alla fase specificata dall'utente
// ed in tal caso sostituirlo
// La struttura delle fasi dovrebbe essere uguale per i primi 4 caratteri e l'ultimo cambiare (Es.: LAV1 --> IMPA1, COTT1 e l'altra linea LAV2 --> IMPA2, COTT2)
String existCodJfasEqui = setup.get("EXIST_COD_JFAS_EQUI");
String existCodJfasEqui = ordProdSetupDTO.getExistCodJfasEqui();
if (UtilityString.isNullOrEmpty(existCodJfasEqui)) {
existCodJfasEqui = "N";
}
@@ -1048,6 +1041,7 @@ public class ProductionBusinessLogic {
codJfas = null;
final String gestioneLav = "L";
SetupGest setup = new SetupGest();
OrdProdSetupDTO ordProdSetupDTO = new OrdProdSetupDTO();
boolean existActivity = true;
BigDecimal qtaProdDist = BigDecimal.ONE;
@@ -1062,36 +1056,31 @@ public class ProductionBusinessLogic {
Integer numOrd = dtbOrdt.getNumOrd();
String compilatoDa = dtbOrdt.getCompilatoDa();
String userName = dtbOrdt.getUsername();
if (activityID == null) {
existActivity = false;
}
existActivity = activityID != null;
ordProdSetupDTO = UtilityProduction.retrieveSetup(conn);
Boolean disableTriggerOrdl = setup.getSetupBoolean(conn, "DTB_ORDT", "SETUP", "DISABLE_TRIGGER_ORDL");
if ( disableTriggerOrdl == null) disableTriggerOrdl = false;
// (todo FABIO): gestire in cancellazione ordini lavorazione regola che se si tratta dell'ultimo
// ordine di lavorazione dell'ordine di produzione deve cancellare anche l'ordine di produzione
HashMap<String, String> setupOrdProdGest = setup.getSetupSection(conn, classNameOrdProd, "SETUP");
HashMap<String, String> setupActivity = setup.getSetupSection(conn, classNameOrdProd, "ACTIVITY");
HashMap<String, String> setupLottoProd = setup.getSetupSection(conn, classNameOrdProd, "GENERA_LOTTO_PROD");
//boolean explodeDistNew = UtilityString.isNull(setupOrdProdGest.get("ESPLODE_DIST_NEW"), "S").equalsIgnoreCase("S");
// Acquisizione dati configurazioni
boolean assegnaAttivita = UtilityString.isNull(setupActivity.get("GENERA_ATTIVITA"), "N").equalsIgnoreCase("S");
String tipoGenerazione = UtilityString.isNull(setupActivity.get("TIPO_GENERAZIONE"), "");
boolean generateLotto = UtilityString.isNull(setupLottoProd.get("GENERA_LOTTO"), "N").equalsIgnoreCase("S");
// String assPeriodoFase =UtilityString.isNull(setupGest.get("ASS_PERIODO_FASE_LAV"), "N");
boolean assegnaAttivita = ordProdSetupDTO.isAssegnaAttivita();
String tipoGenerazione = ordProdSetupDTO.getTipoGenerazione();
boolean generateLotto = ordProdSetupDTO.isGenerateLotto();
if (tipoGenerazione.length() == 0 && assegnaAttivita) {
throw new Exception("E' necessario specificare la tipologia di generazione attività per poter procedere");
}
boolean checkLockProd = UtilityString.isNull(setupOrdProdGest.get("LOCK_PROD"), "S").equalsIgnoreCase("S");
boolean checkLockProd = ordProdSetupDTO.isCheckLockProd();
boolean checkDepTerzista = ordProdSetupDTO.isCheckDepTerzista();
boolean genAutoCommOrdProd = ordProdSetupDTO.isGenAutoCommOrdProd();
boolean checkDepTerzista = UtilityString.isNull(setupOrdProdGest.get("CHECK_DEP_TERZISTA"), "N").equalsIgnoreCase("S");
boolean genAutoCommOrdProd = UtilityString.isNull(setupOrdProdGest.get("GENERA_COMM_ORD_PROD"), "N").equalsIgnoreCase("S");
// Acquisizione dati anagrafici intestatario
boolean isTerzista = false;
if (genAutoCommOrdProd || checkDepTerzista) {
@@ -1145,16 +1134,16 @@ public class ProductionBusinessLogic {
}
}
boolean flagDescrizDaOrdine = UtilityString.equalsIgnoreCase(setupOrdProdGest.get("DESCRIZIONE_DA_ORDINE"), "S");
String statoCommessa = UtilityString.isNull(setupOrdProdGest.get("STATO_COMMESSA"), null);
String tipoCommessa = UtilityString.isNull(setupOrdProdGest.get("TIPO_COMMESSA"), null);
String tipoValCosto = UtilityString.isNull(setupOrdProdGest.get("TIPO_VAL_COSTO"), CommonConstants.DIST);
boolean flagDescrizDaOrdine = ordProdSetupDTO.isFlagDescrizDaOrdine();
String statoCommessa = ordProdSetupDTO.getStatoCommessa();
String tipoCommessa = ordProdSetupDTO.getTipoCommessa();
String tipoValCosto = ordProdSetupDTO.getTipoValCosto();
int index = 0;
boolean isFistOrdLav = true;
Short ggLav = 0;
// Disabilita salvataggio righe ordine produzione perchè verranno generata
// dal trigger di salvataggio delle testa dell'ordine di lavorazione
// dal trigger di salvataggio delle testata dell'ordine di lavorazione
Stream.of(dtbOrdt.getDtbOrdr()).filter(x -> x.getLoadedFromDb()).forEach(x -> x.setOperation(OperationType.NO_OP));
List<DtbOrdr> dtbOrdr = Stream.of(dtbOrdt.getDtbOrdr()).filter(x -> !x.getLoadedFromDb()).toList();
@@ -1211,32 +1200,23 @@ public class ProductionBusinessLogic {
// Verifica se l'articolo prevede l'obbligo del codice di commessa, in tal caso si blocca la procedura.
// Il campo COD_JCOM_REQUIRED può contenere o S/N se qualsiasi produzione deve avere la specifica della commessa,
// oppure la specifica di una etichetta (Disegni) sui quali prodotti è necessario specificare la commessa
String codJcomRequired = UtilityString.isNull(setupOrdProdGest.get("COD_JCOM_REQUIRED"), "");
boolean codJcomRequired = ordProdSetupDTO.isCodJcomRequired();
if (codJcomRequired.length() != 0) {
Integer count = 0;
if ("S".equals(codJcomRequired)) {
/* Se uguale S vuol dire che il controllo deve essere fatto su tutte le commesse, altrimenti verrà fatto in base a delle etichette*/
if (codJcom == null || codJcom.equals(EmsRestConstants.NULL)) {
count = 1;
}
} else {
sql =
"SELECT count(*) as counter" +
" FROM jrl_cicl_disegni, " +
" stb_gest_setup " +
" WHERE stb_gest_setup.gest_name = 'w_pordi_rc' and " +
" stb_gest_setup.section = 'SETUP' and " +
" stb_gest_setup.key_section = 'COD_JCOM_REQUIRED' and " +
" charindex('|' + jrl_cicl_disegni.cod_disegno + '|' , stb_gest_setup.value ) <> 0 AND " +
" jrl_cicl_disegni.cod_prod = " + UtilityDB.valueToString(codProd);
if (!codJcomRequired) {
sql =
"SELECT cast(count(*) as bit ) as counter" +
" FROM jrl_cicl_disegni, " +
" stb_gest_setup " +
" WHERE stb_gest_setup.gest_name = 'w_pordi_rc' and " +
" stb_gest_setup.section = 'SETUP' and " +
" stb_gest_setup.key_section = 'COD_JCOM_REQUIRED' and " +
" charindex('|' + jrl_cicl_disegni.cod_disegno + '|' , stb_gest_setup.value ) <> 0 AND " +
" jrl_cicl_disegni.cod_prod = " + UtilityDB.valueToString(codProd);
count = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(conn, sql);
}
if (count != 0 && (codJcom == null || codJcom.equals(EmsRestConstants.NULL))) {
throw new Exception("Il prodotto " + codProd + " prevede il codice commessa obbligatoriamente, impossibile procedere alla generazione dell'ordine di produzione");
}
codJcomRequired = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(conn, sql);
}
if (codJcomRequired && (codJcom == null || codJcom.equals(EmsRestConstants.NULL))) {
throw new Exception("Il prodotto " + codProd + " prevede il codice commessa obbligatoriamente, impossibile procedere alla generazione dell'ordine di produzione");
}
boolean existOrd = false;
@@ -1330,7 +1310,7 @@ public class ProductionBusinessLogic {
}
// Assegnazione partita di magazzino se automatica
if (partitaMag == null) {
assegnaPartitaMag(conn, row, classNameOrdProd, setupLottoProd);
assegnaPartitaMag(conn, row, classNameOrdProd, ordProdSetupDTO);
partitaMag = row.getPartitaMag();
}
@@ -1481,7 +1461,7 @@ public class ProductionBusinessLogic {
.setStatoCommessa(statoCommessa);
if (codJcom != null) {
getNextCodJcom(conn, datiComm, setupOrdProdGest);
getNextCodJcom(conn, datiComm, ordProdSetupDTO);
assegnaCodJcom(datiComm, row);
codJcom = datiComm.getCodjcom();
}
@@ -1563,7 +1543,14 @@ public class ProductionBusinessLogic {
.setCodJflav(codJflavLav)
.setColliPedana(colliPedana)
.setCodTcolUl(codTcolUl)
.setCodTcolUi(codTcolUi);
.setCodTcolUi(codTcolUi)
.setGeneraOrdLavDaProd(dtbOrdt.isGeneraOrdLavDaProd());
String flagAnnulla = "N";
if (UtilityString.equalsIgnoreCase(row.getFlagEvaso(), "A")){
flagAnnulla = "S";
}
ordT.setFlagAnnulla(flagAnnulla);
ordT.setOperation(operation);
ordT.setExecuteRecalc(true);
ordT.setUsername(userName);
@@ -1600,7 +1587,7 @@ public class ProductionBusinessLogic {
.setRoot(true)
.setSameLav(false);
explodeDist(ordT, conn, datiDist, row, activityCicloProd, existOrd, setupOrdProdGest);
explodeDist(ordT, conn, datiDist, row, activityCicloProd, existOrd, ordProdSetupDTO);
// -----------------------------------------------------------
// SERVIZI ORDINE DI LAVORAZIONE (SOLO SE DEPOSITO TERZISTA)
@@ -1661,7 +1648,7 @@ public class ProductionBusinessLogic {
} else {
sql =
Query.format(
"SELECT qta_prod*rap_conv as qta_prod " +
"SELECT qta_prod*rap_conv_prod as qta_prod " +
" FROM dtb_ordt "+
" WHERE dtb_ordt.gestione_rif = %s AND " +
" dtb_ordt.data_ord_rif = %s AND " +
@@ -1674,18 +1661,32 @@ public class ProductionBusinessLogic {
BigDecimal qtaProdOld = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(conn, sql);
BigDecimal qtaProdNew = qtaProd.multiply(rapConv);
BigDecimal moltiplicatore = qtaProdNew.divide(qtaProdOld);
sql = "SELECT * FROM dtb_ordr";
sql = UtilityDB.addwhereCond(sql, dtbOrdt.getPkWhereCond(), true);
List<DtbOrdr> dtbOrdrL = UtilityDB.executeSimpleQueryDTO(conn, sql, DtbOrdr.class);
dtbOrdrL.stream().forEach(x->{
x.setQtaOrd(x.getQtaOrd().multiply(moltiplicatore));
x.setOperation(OperationType.UPDATE);
});
if (!moltiplicatore.equals(BigDecimal.ONE)) {
sql = "SELECT * FROM dtb_ordr";
sql = UtilityDB.addwhereCond(sql, ordT.getPkWhereCond(), true);
List<DtbOrdr> dtbOrdrL = UtilityDB.executeSimpleQueryDTO(conn, sql, DtbOrdr.class);
dtbOrdrL.stream().forEach(x -> {
x.setQtaOrd(x.getQtaOrd().multiply(moltiplicatore));
x.setOperation(OperationType.UPDATE);
});
ordT.setDtbOrdr(dtbOrdrL);
sql = "SELECT * FROM dtb_ord_steps";
sql = UtilityDB.addwhereCond(sql, ordT.getPkWhereCond(), true);
List<DtbOrdSteps> dtbOrdSteps = UtilityDB.executeSimpleQueryDTO(conn, sql, DtbOrdSteps.class);
dtbOrdSteps.stream().forEach(x -> {
x.setQtaProd(x.getQtaProd().multiply(moltiplicatore));
x.setOperation(OperationType.UPDATE);
});
ordT.setDtbOrdSteps(dtbOrdSteps);
}
ordT.setDtbOrdr(dtbOrdrL);
}
}
}

View File

@@ -0,0 +1,48 @@
package it.integry.ems_model.business_logic;
import it.integry.common.var.CommonConstants;
import it.integry.ems_model.business_logic.dto.OrdProdSetupDTO;
import it.integry.ems_model.service.SetupGest;
import it.integry.ems_model.utility.UtilityString;
import java.sql.Connection;
import java.util.HashMap;
public class UtilityProduction {
public static OrdProdSetupDTO retrieveSetup(Connection conn) throws Exception {
final String classNameOrdProd = "W_PORDI_RC";
SetupGest setup = new SetupGest();
OrdProdSetupDTO ordProdSetupDTO = new OrdProdSetupDTO();
HashMap<String, String> setupOrdProdGest = setup.getSetupSection(conn, classNameOrdProd, "SETUP");
HashMap<String, String> setupActivity = setup.getSetupSection(conn, classNameOrdProd, "ACTIVITY");
HashMap<String, String> setupLottoProd = setup.getSetupSection(conn, classNameOrdProd, "GENERA_LOTTO_PROD");
ordProdSetupDTO.setCheckLockProd(UtilityString.isNull(setupOrdProdGest.get("LOCK_PROD"), "S").equalsIgnoreCase("S"));
ordProdSetupDTO.setCheckDepTerzista (UtilityString.isNull(setupOrdProdGest.get("CHECK_DEP_TERZISTA"), "N").equalsIgnoreCase("S"));
ordProdSetupDTO.setGenAutoCommOrdProd(UtilityString.isNull(setupOrdProdGest.get("GENERA_COMM_ORD_PROD"), "N").equalsIgnoreCase("S"));
ordProdSetupDTO.setFlagDescrizDaOrdine(UtilityString.equalsIgnoreCase(setupOrdProdGest.get("DESCRIZIONE_DA_ORDINE"), "S"));
ordProdSetupDTO.setStatoCommessa(UtilityString.isNull(setupOrdProdGest.get("STATO_COMMESSA"), null));
ordProdSetupDTO.setTipoCommessa(UtilityString.isNull(setupOrdProdGest.get("TIPO_COMMESSA"), null));
ordProdSetupDTO.setTipoValCosto(UtilityString.isNull(setupOrdProdGest.get("TIPO_VAL_COSTO"), CommonConstants.DIST));
ordProdSetupDTO.setGenerazioneAutomaticaVend(UtilityString.equalsIgnoreCase(setupOrdProdGest.get("GEN_AUTOMATICA_COMM_VEN"), "S"));
ordProdSetupDTO.setGenerazioneAutomaticaLav(UtilityString.equalsIgnoreCase(setupOrdProdGest.get("GEN_AUTOMATICA_COMM_LAV"), "S"));
ordProdSetupDTO.setAggiungiGestione(UtilityString.equalsIgnoreCase(setupOrdProdGest.get("AGGIUNGI_GEST_VEN"), "S"));
ordProdSetupDTO.setAssPeriodoFase(UtilityString.equalsIgnoreCase(setupOrdProdGest.get("ASS_PERIODO_FASE_LAV"), "S"));
ordProdSetupDTO.setVisCodJfas(UtilityString.equalsIgnoreCase(setupOrdProdGest.get("VISUALIZZA_COD_JFAS"), "S"));
ordProdSetupDTO.setVisNoteRigaDist(UtilityString.equalsIgnoreCase(setupOrdProdGest.get("VIS_NOTE_RIGA_DISTINTA"), "S"));
ordProdSetupDTO.setPesoInQtaLav(UtilityString.equalsIgnoreCase(setupOrdProdGest.get("PESO_IN_QTA_LAV"), "S"));
ordProdSetupDTO.setExistCodJfasEqui(setupOrdProdGest.get("EXIST_COD_JFAS_EQUI"));
ordProdSetupDTO.setCodJcomRequired(UtilityString.isNull(setupOrdProdGest.get("COD_JCOM_REQUIRED"), "N").equalsIgnoreCase("S"));
ordProdSetupDTO.setAssegnaAttivita( UtilityString.isNull(setupActivity.get("GENERA_ATTIVITA"), "N").equalsIgnoreCase("S"));
ordProdSetupDTO.setTipoGenerazione( UtilityString.isNull(setupActivity.get("TIPO_GENERAZIONE"), ""));
ordProdSetupDTO.setGenerateLotto(UtilityString.isNull(setupLottoProd.get("GENERA_LOTTO"), "N").equalsIgnoreCase("S"));
ordProdSetupDTO.setPartitaMagRequired(UtilityString.equalsIgnoreCase(setupLottoProd.get("PARTITA_MAG_REQUIRED"), "S"));
return ordProdSetupDTO;
}
}

View File

@@ -0,0 +1,215 @@
package it.integry.ems_model.business_logic.dto;
import it.integry.common.var.CommonConstants;
import it.integry.ems_model.utility.UtilityString;
public class OrdProdSetupDTO {
private boolean checkLockProd;
private boolean checkDepTerzista;
private boolean genAutoCommOrdProd;
private boolean flagDescrizDaOrdine;
private String statoCommessa;
private String tipoCommessa;
private String tipoValCosto;
private boolean generazioneAutomaticaVend;
private boolean generazioneAutomaticaLav;
private boolean aggiungiGestione;
private boolean assPeriodoFase;
private boolean visCodJfas;
private boolean visNoteRigaDist;
private boolean pesoInQtaLav;
private String existCodJfasEqui;
private boolean codJcomRequired;
private boolean assegnaAttivita;
private String tipoGenerazione;
private boolean generateLotto;
private boolean partitaMagRequired;
public boolean isCheckLockProd() {
return checkLockProd;
}
public OrdProdSetupDTO setCheckLockProd(boolean checkLockProd) {
this.checkLockProd = checkLockProd;
return this;
}
public boolean isCheckDepTerzista() {
return checkDepTerzista;
}
public OrdProdSetupDTO setCheckDepTerzista(boolean checkDepTerzista) {
this.checkDepTerzista = checkDepTerzista;
return this;
}
public boolean isGenAutoCommOrdProd() {
return genAutoCommOrdProd;
}
public OrdProdSetupDTO setGenAutoCommOrdProd(boolean genAutoCommOrdProd) {
this.genAutoCommOrdProd = genAutoCommOrdProd;
return this;
}
public boolean isFlagDescrizDaOrdine() {
return flagDescrizDaOrdine;
}
public OrdProdSetupDTO setFlagDescrizDaOrdine(boolean flagDescrizDaOrdine) {
this.flagDescrizDaOrdine = flagDescrizDaOrdine;
return this;
}
public String getStatoCommessa() {
return statoCommessa;
}
public OrdProdSetupDTO setStatoCommessa(String statoCommessa) {
this.statoCommessa = statoCommessa;
return this;
}
public String getTipoCommessa() {
return tipoCommessa;
}
public OrdProdSetupDTO setTipoCommessa(String tipoCommessa) {
this.tipoCommessa = tipoCommessa;
return this;
}
public String getTipoValCosto() {
return tipoValCosto;
}
public OrdProdSetupDTO setTipoValCosto(String tipoValCosto) {
this.tipoValCosto = tipoValCosto;
return this;
}
public boolean isGenerazioneAutomaticaVend() {
return generazioneAutomaticaVend;
}
public OrdProdSetupDTO setGenerazioneAutomaticaVend(boolean generazioneAutomaticaVend) {
this.generazioneAutomaticaVend = generazioneAutomaticaVend;
return this;
}
public boolean isGenerazioneAutomaticaLav() {
return generazioneAutomaticaLav;
}
public OrdProdSetupDTO setGenerazioneAutomaticaLav(boolean generazioneAutomaticaLav) {
this.generazioneAutomaticaLav = generazioneAutomaticaLav;
return this;
}
public boolean isAggiungiGestione() {
return aggiungiGestione;
}
public OrdProdSetupDTO setAggiungiGestione(boolean aggiungiGestione) {
this.aggiungiGestione = aggiungiGestione;
return this;
}
public boolean isAssPeriodoFase() {
return assPeriodoFase;
}
public OrdProdSetupDTO setAssPeriodoFase(boolean assPeriodoFase) {
this.assPeriodoFase = assPeriodoFase;
return this;
}
public boolean isVisCodJfas() {
return visCodJfas;
}
public OrdProdSetupDTO setVisCodJfas(boolean visCodJfas) {
this.visCodJfas = visCodJfas;
return this;
}
public boolean isVisNoteRigaDist() {
return visNoteRigaDist;
}
public OrdProdSetupDTO setVisNoteRigaDist(boolean visNoteRigaDist) {
this.visNoteRigaDist = visNoteRigaDist;
return this;
}
public boolean isPesoInQtaLav() {
return pesoInQtaLav;
}
public OrdProdSetupDTO setPesoInQtaLav(boolean pesoInQtaLav) {
this.pesoInQtaLav = pesoInQtaLav;
return this;
}
public String getExistCodJfasEqui() {
return existCodJfasEqui;
}
public OrdProdSetupDTO setExistCodJfasEqui(String existCodJfasEqui) {
this.existCodJfasEqui = existCodJfasEqui;
return this;
}
public boolean isCodJcomRequired() {
return codJcomRequired;
}
public OrdProdSetupDTO setCodJcomRequired(boolean codJcomRequired) {
this.codJcomRequired = codJcomRequired;
return this;
}
public boolean isAssegnaAttivita() {
return assegnaAttivita;
}
public OrdProdSetupDTO setAssegnaAttivita(boolean assegnaAttivita) {
this.assegnaAttivita = assegnaAttivita;
return this;
}
public String getTipoGenerazione() {
return tipoGenerazione;
}
public OrdProdSetupDTO setTipoGenerazione(String tipoGenerazione) {
this.tipoGenerazione = tipoGenerazione;
return this;
}
public boolean isGenerateLotto() {
return generateLotto;
}
public OrdProdSetupDTO setGenerateLotto(boolean generateLotto) {
this.generateLotto = generateLotto;
return this;
}
public boolean isPartitaMagRequired() {
return partitaMagRequired;
}
public OrdProdSetupDTO setPartitaMagRequired(boolean partitaMagRequired) {
this.partitaMagRequired = partitaMagRequired;
return this;
}
}

View File

@@ -256,6 +256,8 @@ public class DtbOrdr extends DtbOrdCommonR implements EquatableEntityInterface<D
@Priority(3)
private List<StbActivity> stbActivityList;
private List<JtbDistMate> distinta;
private HashMap<String, Object> datiListino;
public DtbOrdr() {
@@ -1298,6 +1300,15 @@ public class DtbOrdr extends DtbOrdCommonR implements EquatableEntityInterface<D
return this;
}
public List<JtbDistMate> getDistinta() {
return distinta;
}
public DtbOrdr setDistinta(List<JtbDistMate> distinta) {
this.distinta = distinta;
return this;
}
@Override
public void checkPreSave() throws Exception {
}