Finish Hotfix-1
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good

This commit is contained in:
2024-12-16 15:56:42 +01:00
15 changed files with 1849 additions and 25 deletions

View File

@@ -0,0 +1,22 @@
package it.integry.ems.migration.model;
import it.integry.ems.migration._base.BaseMigration;
import it.integry.ems.migration._base.IntegryCustomer;
import it.integry.ems.migration._base.MigrationModelInterface;
public class Migration_20241213122142 extends BaseMigration implements MigrationModelInterface {
@Override
public void up() throws Exception {
if (isHistoryDB())
return;
String value = null;
if (isCustomer(IntegryCustomer.RossoGargano))
value = "etichettaarticolo";
createSetup("PVM","GESTIONE_RICAMBISTICA","REPORT_NAME_ETICHETTE_ARTICOLI",value,"nome report etichette articoli","REPORT_NAME");
}
@Override
public void down() throws Exception {
}
}

View File

@@ -12,7 +12,7 @@ public class CheckMaterialeBarcodeInOrdineResponseDTO {
private List<AnomalieDTO> anomalie;
private boolean isNewOrderRequired = false;
private MtbColr versamento;
private MaterialeVersatoSuOrdineDTO versamento;
private MtbColt collo;
public List<AnomalieDTO> getAnomalie() {
@@ -42,11 +42,11 @@ public class CheckMaterialeBarcodeInOrdineResponseDTO {
return this;
}
public MtbColr getVersamento() {
public MaterialeVersatoSuOrdineDTO getVersamento() {
return versamento;
}
public CheckMaterialeBarcodeInOrdineResponseDTO setVersamento(MtbColr versamento) {
public CheckMaterialeBarcodeInOrdineResponseDTO setVersamento(MaterialeVersatoSuOrdineDTO versamento) {
this.versamento = versamento;
return this;
}

View File

@@ -0,0 +1,119 @@
package it.integry.ems.production.dto;
import it.integry.ems_model.annotation.SqlField;
import java.math.BigDecimal;
import java.time.LocalDate;
public class MaterialeVersatoSuOrdineDTO {
@SqlField("gestione")
private String gestione;
@SqlField("data_collo")
private LocalDate dataCollo;
@SqlField("ser_collo")
private String serCollo;
@SqlField("num_collo")
private Integer numCollo;
@SqlField("num_ord")
private Integer numOrd;
@SqlField("data_ord")
private LocalDate dataOrd;
@SqlField("qta_versata")
private BigDecimal qtaVersata;
@SqlField("partita_mag")
private String partitaMag;
@SqlField("unt_mis")
private String untMis;
@SqlField("cod_mart")
private String codMart;
public String getGestione() {
return gestione;
}
public MaterialeVersatoSuOrdineDTO setGestione(String gestione) {
this.gestione = gestione;
return this;
}
public LocalDate getDataCollo() {
return dataCollo;
}
public MaterialeVersatoSuOrdineDTO setDataCollo(LocalDate dataCollo) {
this.dataCollo = dataCollo;
return this;
}
public String getSerCollo() {
return serCollo;
}
public MaterialeVersatoSuOrdineDTO setSerCollo(String serCollo) {
this.serCollo = serCollo;
return this;
}
public Integer getNumCollo() {
return numCollo;
}
public MaterialeVersatoSuOrdineDTO setNumCollo(Integer numCollo) {
this.numCollo = numCollo;
return this;
}
public Integer getNumOrd() {
return numOrd;
}
public MaterialeVersatoSuOrdineDTO setNumOrd(Integer numOrd) {
this.numOrd = numOrd;
return this;
}
public LocalDate getDataOrd() {
return dataOrd;
}
public MaterialeVersatoSuOrdineDTO setDataOrd(LocalDate dataOrd) {
this.dataOrd = dataOrd;
return this;
}
public BigDecimal getQtaVersata() {
return qtaVersata;
}
public MaterialeVersatoSuOrdineDTO setQtaVersata(BigDecimal qtaVersata) {
this.qtaVersata = qtaVersata;
return this;
}
public String getPartitaMag() {
return partitaMag;
}
public MaterialeVersatoSuOrdineDTO setPartitaMag(String partitaMag) {
this.partitaMag = partitaMag;
return this;
}
public String getUntMis() {
return untMis;
}
public MaterialeVersatoSuOrdineDTO setUntMis(String untMis) {
this.untMis = untMis;
return this;
}
public String getCodMart() {
return codMart;
}
public MaterialeVersatoSuOrdineDTO setCodMart(String codMart) {
this.codMart = codMart;
return this;
}
}

View File

@@ -1286,8 +1286,8 @@ public class MesProductionServiceV2 {
List<MtbColr> rows = collo.getMtbColr();
if (UtilityList.isNullOrEmpty(rows)) {
MtbColr versamentoSuOrdine = getVersamentoBarcodeSuOrdine(dto.getOrdine(), dto.getBarcode());
if (versamentoSuOrdine != null && UtilityBigDecimal.greaterThan(versamentoSuOrdine.getQtaCol(), BigDecimal.ZERO)) {
MaterialeVersatoSuOrdineDTO versamentoSuOrdine = getVersamentoBarcodeSuOrdine(dto.getOrdine(), dto.getBarcode());
if (versamentoSuOrdine != null && UtilityBigDecimal.greaterThan(versamentoSuOrdine.getQtaVersata(), BigDecimal.ZERO)) {
response.setVersamento(versamentoSuOrdine);
} else {
throw new Exception("La UL richiesta è vuota!");
@@ -1326,9 +1326,10 @@ public class MesProductionServiceV2 {
}
private MtbColr getVersamentoBarcodeSuOrdine(DtbOrdt ordine, String barcode) throws Exception {
String sql = Query.format("SELECT mtb_colt.data_collo, mtb_colt.num_collo, mtb_colt.ser_collo, mtb_colt.gestione, mtb_colr.cod_mart, SUM(qta_col) AS qta_col\n" +
private MaterialeVersatoSuOrdineDTO getVersamentoBarcodeSuOrdine(DtbOrdt ordine, String barcode) throws Exception {
String sql = Query.format("SELECT mtb_colt.data_collo, mtb_colt.num_collo, mtb_colt.ser_collo, mtb_colt.gestione, mtb_colr.cod_mart, mtb_aart.unt_mis,mtb_colr.partita_mag, SUM(qta_col) AS qta_versata,mtb_colr.data_ord, mtb_colr.num_ord\n" +
"FROM mtb_colr\n" +
" INNER JOIN mtb_aart ON mtb_aart.cod_mart = mtb_colr.cod_mart\n" +
" INNER JOIN mtb_colt ON mtb_colr.gestione = mtb_colt.gestione AND mtb_colr.data_collo = mtb_colt.data_collo AND\n" +
" mtb_colr.ser_collo = mtb_colt.ser_collo AND mtb_colr.num_collo = mtb_colt.num_collo\n" +
" INNER JOIN mtb_colt rif\n" +
@@ -1339,9 +1340,11 @@ public class MesProductionServiceV2 {
" AND mtb_colr.data_ord = {}\n" +
" AND mtb_colr.num_ord = {}\n" +
" AND rif.barcode_ul = {}\n" +
"GROUP BY mtb_colt.data_collo, mtb_colt.num_collo, mtb_colt.ser_collo, mtb_colt.gestione, mtb_colr.cod_mart", ordine.getDataOrd(), ordine.getNumOrd(), barcode);
"GROUP BY mtb_colt.data_collo, mtb_colt.num_collo, mtb_colt.ser_collo, mtb_colt.gestione, mtb_colr.cod_mart, mtb_aart.unt_mis,mtb_colr.partita_mag,mtb_colr.data_ord, mtb_colr.num_ord", ordine.getDataOrd(), ordine.getNumOrd(), barcode);
return UtilityDB.executeSimpleQueryOnlyFirstRowDTO(multiDBTransactionManager.getPrimaryConnection(), sql, MtbColr.class);
MaterialeVersatoSuOrdineDTO rowVersamento = UtilityDB.executeSimpleQueryOnlyFirstRowDTO(multiDBTransactionManager.getPrimaryConnection(), sql, MaterialeVersatoSuOrdineDTO.class);
return rowVersamento;
}
private DtbOrdt completeDatiOrdine(DtbOrdt ordine) throws Exception {
@@ -1391,21 +1394,28 @@ public class MesProductionServiceV2 {
entityProcessor.processEntity(ordine, multiDBTransactionManager);
}
List<CreateUDSRequestOrderDTO> ordini = new ArrayList<>();
CreateUDSRequestOrderDTO orderDTO = new CreateUDSRequestOrderDTO()
.setNumOrd(ordine.getNumOrd())
.setDataOrd(ordine.getDataOrd().toInstant()
.atZone(ZoneId.systemDefault())
.toLocalDate())
.setGestione(ordine.getGestione());
ordini.add(orderDTO);
CreateUDSRequestDTO requestDTO = new CreateUDSRequestDTO()
.setCodMdep(ordine.getCodMdep())
.setCausaleCollo(CreateUDSRequestDTO.Causale.SCARICO)
.setSegno(-1)
.setOrders(ordini);
MtbColt uds = wmsLavorazioneService.createUDS(requestDTO);
MaterialeVersatoSuOrdineDTO versamentoEsistente = getVersamentoBarcodeSuOrdine(dto.getOrdine(), colloDaVersare.getBarcodeUl());
MtbColt uds;
if (versamentoEsistente == null) {
CreateUDSRequestOrderDTO orderDTO = new CreateUDSRequestOrderDTO()
.setNumOrd(ordine.getNumOrd())
.setDataOrd(ordine.getDataOrd().toInstant()
.atZone(ZoneId.systemDefault())
.toLocalDate())
.setGestione(ordine.getGestione());
ordini.add(orderDTO);
CreateUDSRequestDTO requestDTO = new CreateUDSRequestDTO()
.setCodMdep(ordine.getCodMdep())
.setCausaleCollo(CreateUDSRequestDTO.Causale.SCARICO)
.setSegno(-1)
.setOrders(ordini);
uds = wmsLavorazioneService.createUDS(requestDTO);
}else{
uds = new MtbColt(versamentoEsistente.getGestione(),versamentoEsistente.getDataCollo(),versamentoEsistente.getNumCollo(),versamentoEsistente.getSerCollo());
}
for (MvwSitArtUdcDetInventarioDTO scarico : contenuto) {
String sql = "SELECT riga_ord\n" +
"from dtb_ordr\n" +

View File

@@ -2506,7 +2506,7 @@ public class PvmService {
if (userSession.getCurrentUser().getKeyGroup() == UserGroupENUM.PUNTO_VENDITA.getText()) {
profiles.add(multiDBTransactionManager.getPrimaryDatasource().getProfile());
whereCond = Query.format("mtb_invent.cod_mdep = %s", userSession.getDefaultDepo().getCodMdep());
whereCond = Query.format("mtb_invent.cod_mdep = %s AND wtb_users.user_name = %s", userSession.getDefaultDepo().getCodMdep(), userSession.getCurrentUser().getUsername());
} else {
profiles = Stream.of(settingsModel.getAvailableConnections())
.filter(AvailableConnectionsModel::getInternalDb)

View File

@@ -0,0 +1,60 @@
package it.integry.ems.retail.wms.dto;
import it.integry.ems_model.entity.MtbColt;
import java.math.BigDecimal;
public class RientroMerceRequestDTO {
private MtbColt sourceMtbColt;
private MtbColt destinationMtbColt;
private String codMart;
private String partitaMag;
private BigDecimal qtaRientro;
public MtbColt getSourceMtbColt() {
return sourceMtbColt;
}
public RientroMerceRequestDTO setSourceMtbColt(MtbColt sourceMtbColt) {
this.sourceMtbColt = sourceMtbColt;
return this;
}
public MtbColt getDestinationMtbColt() {
return destinationMtbColt;
}
public RientroMerceRequestDTO setDestinationMtbColt(MtbColt destinationMtbColt) {
this.destinationMtbColt = destinationMtbColt;
return this;
}
public String getCodMart() {
return codMart;
}
public RientroMerceRequestDTO setCodMart(String codMart) {
this.codMart = codMart;
return this;
}
public String getPartitaMag() {
return partitaMag;
}
public RientroMerceRequestDTO setPartitaMag(String partitaMag) {
this.partitaMag = partitaMag;
return this;
}
public BigDecimal getQtaRientro() {
return qtaRientro;
}
public RientroMerceRequestDTO setQtaRientro(BigDecimal qtaRientro) {
this.qtaRientro = qtaRientro;
return this;
}
}

View File

@@ -11,6 +11,7 @@ import it.integry.ems.retail.pvmRetail.dto.PickingObjectDTO;
import it.integry.ems.retail.wms.dto.CanULBeDeletedRequestDTO;
import it.integry.ems.retail.wms.dto.DeleteULRequestDTO;
import it.integry.ems.retail.wms.dto.PrintULRequestDTO;
import it.integry.ems.retail.wms.dto.RientroMerceRequestDTO;
import it.integry.ems.retail.wms.generic.dto.*;
import it.integry.ems.retail.wms.generic.dto.picking_list.GetPickingListAccettazioneDTO;
import it.integry.ems.retail.wms.generic.dto.picking_list.GetPickingListSpedizioneDTO;
@@ -631,4 +632,13 @@ public class WMSGenericController {
wmsGenericService.deleteUL(deleteULRequestDTO.getMtbColt());
return ServiceRestResponse.createPositiveResponse();
}
@RequestMapping(value = "wms/rientroMerce", method = RequestMethod.POST)
public @ResponseBody
ServiceRestResponse rientroMerce(@RequestParam(CommonConstants.PROFILE_DB) String profileDB,
@RequestBody RientroMerceRequestDTO rientroMerceRequestDTO) throws Exception {
wmsGenericService.rientroMerce(rientroMerceRequestDTO);
return ServiceRestResponse.createPositiveResponse();
}
}

View File

@@ -1,9 +1,11 @@
package it.integry.ems.retail.wms.generic.dto.articolo;
import it.integry.ems.retail.dto.GiacenzaDTO;
import it.integry.ems_model.annotation.SqlField;
import it.integry.ems_model.entity.MtbAart;
import java.math.BigDecimal;
import java.util.List;
public class ArticoloDTO {
@@ -25,6 +27,7 @@ public class ArticoloDTO {
@SqlField("mtb_aart.cod_aliq")
private String codAliq;
private String articoloComposto;
@SqlField("mtb_aart.descrizione_estesa")
private String descrizioneEstesa;
private String note;
private String posizione;

View File

@@ -0,0 +1,873 @@
package it.integry.ems.retail.wms.generic.dto.ordine;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import it.integry.ems.adapter.JsonDateAdapterSerializer;
import it.integry.ems_model.annotation.MapToTable;
import it.integry.ems_model.annotation.SqlField;
import it.integry.ems_model.entity.MtbAart;
import org.springframework.beans.BeanUtils;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
public class SM2MtbAartDTO {
@SqlField(value = "cod_mart")
public String codMart;
@SqlField(value = "descrizione")
public String descrizione;
@SqlField(value = "unt_mis")
public String untMis;
@SqlField(value = "bar_code")
public String barCode;
public List<String> altriBarCode;
@SqlField(value = "peso_kg", defaultObjectValue = "0")
public BigDecimal pesoKg;
@SqlField(value = "qta_cnf", defaultObjectValue = "1")
public BigDecimal qtaCnf;
@SqlField(value = "cod_aliq")
public String codAliq;
@SqlField(value = "cod_sco_art")
public String codScoArt;
@SqlField(value = "cod_tcol_UI")
public String codTcolUI;
@SqlField(value = "cod_tcol_UL")
public String codTcolUL;
@SqlField(value = "articolo_composto", defaultObjectValue = "N")
public String articoloComposto;
@SqlField(value = "esposizione_comp", defaultObjectValue = "N")
public String esposizioneComp;
@SqlField(value = "descrizione_estesa")
public String descrizioneEstesa;
@SqlField(value = "cod_ult_forn")
public String codUltForn;
@JsonSerialize(using = JsonDateAdapterSerializer.class)
@SqlField(value = "data_ult_car")
public Date dataUltCar;
@SqlField(value = "val_ult_car")
public BigDecimal valUltCar;
@SqlField(value = "cod_ult_clie")
public String codUltClie;
@JsonSerialize(using = JsonDateAdapterSerializer.class)
@SqlField(value = "data_ult_scar")
public Date dataUltScar;
@SqlField(value = "val_ult_scar")
public BigDecimal valUltScar;
@SqlField(value = "tipo_codice")
public String tipoCodice;
@SqlField(value = "note")
public String note;
@SqlField(value = "posizione")
public String posizione;
@SqlField(value = "colli_pedana", defaultObjectValue = "1")
public BigDecimal colliPedana;
@SqlField(value = "unt_mis2")
public String untMis2;
@SqlField(value = "rap_conv2", defaultObjectValue = "1")
public BigDecimal rapConv2;
@SqlField(value = "flag_incl_listino", defaultObjectValue = "S")
public String flagInclListino;
@SqlField(value = "unt_mis3")
public String untMis3;
@SqlField(value = "rap_conv3", defaultObjectValue = "1")
public BigDecimal rapConv3;
@SqlField(value = "cod_mart_stat")
public String codMartStat;
@SqlField(value = "cod_mcon")
public String codMcon;
@SqlField(value = "cod_mgrp")
public String codMgrp;
@SqlField(value = "cod_msfa")
public String codMsfa;
@SqlField(value = "cod_msgr")
public String codMsgr;
@SqlField(value = "cod_mstp")
public String codMstp;
@SqlField(value = "cod_mtip")
public String codMtip;
@SqlField(value = "descrizione_stat")
public String descrizioneStat;
@SqlField(value = "flag_stato", defaultObjectValue = "A")
public String flagStato;
@SqlField(value = "cambio_divi_car")
public BigDecimal cambioDiviCar;
@SqlField(value = "cambio_divi_scar")
public BigDecimal cambioDiviScar;
@SqlField(value = "gg_scad_partita", defaultObjectValue = "0")
public Integer ggScadPartita;
@SqlField(value = "volume_mc", defaultObjectValue = "0")
public BigDecimal volumeMc;
@SqlField(value = "flag_esponi_prz", defaultObjectValue = "N")
public String flagEsponiPrz;
@JsonSerialize(using = JsonDateAdapterSerializer.class)
@SqlField(value = "data_ult_var")
public Date dataUltVar;
@SqlField(value = "perc_sfrido", defaultObjectValue = "0")
public BigDecimal percSfrido;
@SqlField(value = "flag_calc_prz", defaultObjectValue = "K")
public String flagCalcPrz;
@SqlField(value = "esposizione_comp_acq", defaultObjectValue = "N")
public String esposizioneCompAcq;
@SqlField(value = "flag_calc_prz_acq", defaultObjectValue = "K")
public String flagCalcPrzAcq;
@SqlField(value = "diacod")
public String diacod;
@SqlField(value = "plu")
public String plu;
@SqlField(value = "part_iva_prod")
public String partIvaProd;
@SqlField(value = "rag_soc_prod")
public String ragSocProd;
@SqlField(value = "flag_rap_conv_variabile", defaultObjectValue = "N")
public String flagRapConvVariabile;
@SqlField(value = "flag_mov_art_mag", defaultObjectValue = "S")
public String flagMovArtMag;
@SqlField(value = "flag_tracciabilita", defaultObjectValue = "N")
public String flagTracciabilita;
@SqlField(value = "tara_kg", defaultObjectValue = "0")
public BigDecimal taraKg;
@SqlField(value = "colli_strato", defaultObjectValue = "0")
public BigDecimal colliStrato;
@SqlField(value = "flag_qta_cnf_fissa", defaultObjectValue = "S")
public String flagQtaCnfFissa;
@SqlField(value = "flag_colli_pedana_fisso", defaultObjectValue = "S")
public String flagColliPedanaFisso;
@SqlField(value = "cod_ccon_costi")
public String codCconCosti;
@SqlField(value = "cod_ccon_ricavi")
public String codCconRicavi;
@SqlField(value = "cod_dgrp_art")
public String codDgrpArt;
@SqlField(value = "cod_divi_car")
public String codDiviCar;
@SqlField(value = "cod_divi_scar")
public String codDiviScar;
@SqlField(value = "cod_ecr_cat")
public String codEcrCat;
@SqlField(value = "cod_ecr_mcat")
public String codEcrMcat;
@SqlField(value = "cod_ecr_rep")
public String codEcrRep;
@SqlField(value = "cod_ecr_stipo")
public String codEcrStipo;
@SqlField(value = "cod_ecr_tipo")
public String codEcrTipo;
@SqlField(value = "cod_grp_bolla")
public String codGrpBolla;
@SqlField(value = "ingredienti")
public String ingredienti;
@SqlField(value = "id_art_equi")
public String idArtEqui;
@SqlField(value = "descr_cassa")
public String descrCassa;
@SqlField(value = "cod_nc_intracee")
public String codNcIntracee;
@SqlField
public String marchio;
@SqlField(value = "sezione")
public Integer sezione;
@MapToTable(value = "flag_kit")
public String flagKit;
public static SM2MtbAartDTO FromMtbAart(MtbAart mtbAart) {
SM2MtbAartDTO to = new SM2MtbAartDTO();
BeanUtils.copyProperties(mtbAart, to);
return to;
}
public String getCodMart() {
return codMart;
}
public void setCodMart(String codMart) {
this.codMart = codMart;
}
public String getDescrizione() {
return descrizione;
}
public void setDescrizione(String descrizione) {
this.descrizione = descrizione;
}
public String getUntMis() {
return untMis;
}
public void setUntMis(String untMis) {
this.untMis = untMis;
}
public String getBarCode() {
return barCode;
}
public void setBarCode(String barCode) {
this.barCode = barCode;
}
public List<String> getAltriBarCode() {
return altriBarCode;
}
public void setAltriBarCode(List<String> altriBarCode) {
this.altriBarCode = altriBarCode;
}
public BigDecimal getPesoKg() {
return pesoKg;
}
public void setPesoKg(BigDecimal pesoKg) {
this.pesoKg = pesoKg;
}
public BigDecimal getQtaCnf() {
return qtaCnf;
}
public void setQtaCnf(BigDecimal qtaCnf) {
this.qtaCnf = qtaCnf;
}
public String getCodAliq() {
return codAliq;
}
public void setCodAliq(String codAliq) {
this.codAliq = codAliq;
}
public String getCodScoArt() {
return codScoArt;
}
public void setCodScoArt(String codScoArt) {
this.codScoArt = codScoArt;
}
public String getCodTcolUI() {
return codTcolUI;
}
public void setCodTcolUI(String codTcolUI) {
this.codTcolUI = codTcolUI;
}
public String getCodTcolUL() {
return codTcolUL;
}
public void setCodTcolUL(String codTcolUL) {
this.codTcolUL = codTcolUL;
}
public String getArticoloComposto() {
return articoloComposto;
}
public void setArticoloComposto(String articoloComposto) {
this.articoloComposto = articoloComposto;
}
public String getEsposizioneComp() {
return esposizioneComp;
}
public void setEsposizioneComp(String esposizioneComp) {
this.esposizioneComp = esposizioneComp;
}
public String getDescrizioneEstesa() {
return descrizioneEstesa;
}
public void setDescrizioneEstesa(String descrizioneEstesa) {
this.descrizioneEstesa = descrizioneEstesa;
}
public String getCodUltForn() {
return codUltForn;
}
public void setCodUltForn(String codUltForn) {
this.codUltForn = codUltForn;
}
public Date getDataUltCar() {
return dataUltCar;
}
public void setDataUltCar(Date dataUltCar) {
this.dataUltCar = dataUltCar;
}
public BigDecimal getValUltCar() {
return valUltCar;
}
public void setValUltCar(BigDecimal valUltCar) {
this.valUltCar = valUltCar;
}
public String getCodUltClie() {
return codUltClie;
}
public void setCodUltClie(String codUltClie) {
this.codUltClie = codUltClie;
}
public Date getDataUltScar() {
return dataUltScar;
}
public void setDataUltScar(Date dataUltScar) {
this.dataUltScar = dataUltScar;
}
public BigDecimal getValUltScar() {
return valUltScar;
}
public void setValUltScar(BigDecimal valUltScar) {
this.valUltScar = valUltScar;
}
public String getTipoCodice() {
return tipoCodice;
}
public void setTipoCodice(String tipoCodice) {
this.tipoCodice = tipoCodice;
}
public String getNote() {
return note;
}
public void setNote(String note) {
this.note = note;
}
public String getPosizione() {
return posizione;
}
public void setPosizione(String posizione) {
this.posizione = posizione;
}
public BigDecimal getColliPedana() {
return colliPedana;
}
public void setColliPedana(BigDecimal colliPedana) {
this.colliPedana = colliPedana;
}
public String getUntMis2() {
return untMis2;
}
public void setUntMis2(String untMis2) {
this.untMis2 = untMis2;
}
public BigDecimal getRapConv2() {
return rapConv2;
}
public void setRapConv2(BigDecimal rapConv2) {
this.rapConv2 = rapConv2;
}
public String getFlagInclListino() {
return flagInclListino;
}
public void setFlagInclListino(String flagInclListino) {
this.flagInclListino = flagInclListino;
}
public String getUntMis3() {
return untMis3;
}
public void setUntMis3(String untMis3) {
this.untMis3 = untMis3;
}
public BigDecimal getRapConv3() {
return rapConv3;
}
public void setRapConv3(BigDecimal rapConv3) {
this.rapConv3 = rapConv3;
}
public String getCodMartStat() {
return codMartStat;
}
public void setCodMartStat(String codMartStat) {
this.codMartStat = codMartStat;
}
public String getCodMcon() {
return codMcon;
}
public void setCodMcon(String codMcon) {
this.codMcon = codMcon;
}
public String getCodMgrp() {
return codMgrp;
}
public void setCodMgrp(String codMgrp) {
this.codMgrp = codMgrp;
}
public String getCodMsfa() {
return codMsfa;
}
public void setCodMsfa(String codMsfa) {
this.codMsfa = codMsfa;
}
public String getCodMsgr() {
return codMsgr;
}
public void setCodMsgr(String codMsgr) {
this.codMsgr = codMsgr;
}
public String getCodMstp() {
return codMstp;
}
public void setCodMstp(String codMstp) {
this.codMstp = codMstp;
}
public String getCodMtip() {
return codMtip;
}
public void setCodMtip(String codMtip) {
this.codMtip = codMtip;
}
public String getDescrizioneStat() {
return descrizioneStat;
}
public void setDescrizioneStat(String descrizioneStat) {
this.descrizioneStat = descrizioneStat;
}
public String getFlagStato() {
return flagStato;
}
public void setFlagStato(String flagStato) {
this.flagStato = flagStato;
}
public BigDecimal getCambioDiviCar() {
return cambioDiviCar;
}
public void setCambioDiviCar(BigDecimal cambioDiviCar) {
this.cambioDiviCar = cambioDiviCar;
}
public BigDecimal getCambioDiviScar() {
return cambioDiviScar;
}
public void setCambioDiviScar(BigDecimal cambioDiviScar) {
this.cambioDiviScar = cambioDiviScar;
}
public Integer getGgScadPartita() {
return ggScadPartita;
}
public void setGgScadPartita(Integer ggScadPartita) {
this.ggScadPartita = ggScadPartita;
}
public BigDecimal getVolumeMc() {
return volumeMc;
}
public void setVolumeMc(BigDecimal volumeMc) {
this.volumeMc = volumeMc;
}
public String getFlagEsponiPrz() {
return flagEsponiPrz;
}
public void setFlagEsponiPrz(String flagEsponiPrz) {
this.flagEsponiPrz = flagEsponiPrz;
}
public Date getDataUltVar() {
return dataUltVar;
}
public void setDataUltVar(Date dataUltVar) {
this.dataUltVar = dataUltVar;
}
public BigDecimal getPercSfrido() {
return percSfrido;
}
public void setPercSfrido(BigDecimal percSfrido) {
this.percSfrido = percSfrido;
}
public String getFlagCalcPrz() {
return flagCalcPrz;
}
public void setFlagCalcPrz(String flagCalcPrz) {
this.flagCalcPrz = flagCalcPrz;
}
public String getEsposizioneCompAcq() {
return esposizioneCompAcq;
}
public void setEsposizioneCompAcq(String esposizioneCompAcq) {
this.esposizioneCompAcq = esposizioneCompAcq;
}
public String getFlagCalcPrzAcq() {
return flagCalcPrzAcq;
}
public void setFlagCalcPrzAcq(String flagCalcPrzAcq) {
this.flagCalcPrzAcq = flagCalcPrzAcq;
}
public String getDiacod() {
return diacod;
}
public void setDiacod(String diacod) {
this.diacod = diacod;
}
public String getPlu() {
return plu;
}
public void setPlu(String plu) {
this.plu = plu;
}
public String getPartIvaProd() {
return partIvaProd;
}
public void setPartIvaProd(String partIvaProd) {
this.partIvaProd = partIvaProd;
}
public String getRagSocProd() {
return ragSocProd;
}
public void setRagSocProd(String ragSocProd) {
this.ragSocProd = ragSocProd;
}
public String getFlagRapConvVariabile() {
return flagRapConvVariabile;
}
public void setFlagRapConvVariabile(String flagRapConvVariabile) {
this.flagRapConvVariabile = flagRapConvVariabile;
}
public String getFlagMovArtMag() {
return flagMovArtMag;
}
public void setFlagMovArtMag(String flagMovArtMag) {
this.flagMovArtMag = flagMovArtMag;
}
public String getFlagTracciabilita() {
return flagTracciabilita;
}
public void setFlagTracciabilita(String flagTracciabilita) {
this.flagTracciabilita = flagTracciabilita;
}
public BigDecimal getTaraKg() {
return taraKg;
}
public void setTaraKg(BigDecimal taraKg) {
this.taraKg = taraKg;
}
public BigDecimal getColliStrato() {
return colliStrato;
}
public void setColliStrato(BigDecimal colliStrato) {
this.colliStrato = colliStrato;
}
public String getFlagQtaCnfFissa() {
return flagQtaCnfFissa;
}
public void setFlagQtaCnfFissa(String flagQtaCnfFissa) {
this.flagQtaCnfFissa = flagQtaCnfFissa;
}
public String getFlagColliPedanaFisso() {
return flagColliPedanaFisso;
}
public void setFlagColliPedanaFisso(String flagColliPedanaFisso) {
this.flagColliPedanaFisso = flagColliPedanaFisso;
}
public String getCodCconCosti() {
return codCconCosti;
}
public void setCodCconCosti(String codCconCosti) {
this.codCconCosti = codCconCosti;
}
public String getCodCconRicavi() {
return codCconRicavi;
}
public void setCodCconRicavi(String codCconRicavi) {
this.codCconRicavi = codCconRicavi;
}
public String getCodDgrpArt() {
return codDgrpArt;
}
public void setCodDgrpArt(String codDgrpArt) {
this.codDgrpArt = codDgrpArt;
}
public String getCodDiviCar() {
return codDiviCar;
}
public void setCodDiviCar(String codDiviCar) {
this.codDiviCar = codDiviCar;
}
public String getCodDiviScar() {
return codDiviScar;
}
public void setCodDiviScar(String codDiviScar) {
this.codDiviScar = codDiviScar;
}
public String getCodEcrCat() {
return codEcrCat;
}
public void setCodEcrCat(String codEcrCat) {
this.codEcrCat = codEcrCat;
}
public String getCodEcrMcat() {
return codEcrMcat;
}
public void setCodEcrMcat(String codEcrMcat) {
this.codEcrMcat = codEcrMcat;
}
public String getCodEcrRep() {
return codEcrRep;
}
public void setCodEcrRep(String codEcrRep) {
this.codEcrRep = codEcrRep;
}
public String getCodEcrStipo() {
return codEcrStipo;
}
public void setCodEcrStipo(String codEcrStipo) {
this.codEcrStipo = codEcrStipo;
}
public String getCodEcrTipo() {
return codEcrTipo;
}
public void setCodEcrTipo(String codEcrTipo) {
this.codEcrTipo = codEcrTipo;
}
public String getCodGrpBolla() {
return codGrpBolla;
}
public void setCodGrpBolla(String codGrpBolla) {
this.codGrpBolla = codGrpBolla;
}
public String getIngredienti() {
return ingredienti;
}
public void setIngredienti(String ingredienti) {
this.ingredienti = ingredienti;
}
public String getIdArtEqui() {
return idArtEqui;
}
public void setIdArtEqui(String idArtEqui) {
this.idArtEqui = idArtEqui;
}
public String getDescrCassa() {
return descrCassa;
}
public void setDescrCassa(String descrCassa) {
this.descrCassa = descrCassa;
}
public String getCodNcIntracee() {
return codNcIntracee;
}
public void setCodNcIntracee(String codNcIntracee) {
this.codNcIntracee = codNcIntracee;
}
public String getMarchio() {
return marchio;
}
public void setMarchio(String marchio) {
this.marchio = marchio;
}
public Integer getSezione() {
return sezione;
}
public void setSezione(Integer sezione) {
this.sezione = sezione;
}
public String getFlagKit() {
return flagKit;
}
public void setFlagKit(String flagKit) {
this.flagKit = flagKit;
}
}

View File

@@ -0,0 +1,189 @@
package it.integry.ems.retail.wms.generic.dto.ordine;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import it.integry.ems.adapter.JsonDateAdapterSerializer;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class SM2OrdineBancaleDTO {
private String descrizionePagamento;
private String destinatario;
private String citta;
private String provincia;
private String indirizzo;
private BigDecimal saldoContabile;
private String ragSoc;
private String rifOrd;
private int numero;
@JsonSerialize(using = JsonDateAdapterSerializer.class)
private Date data;
private String gestione;
private String codMdep;
private String codAnag;
private String codVdes;
private String termCons;
private String gestioneRif;
private List<SM2OrdineSingoloDTO> ordini;
public String getDescrizionePagamento() {
return descrizionePagamento;
}
public void setDescrizionePagamento(String descrizionePagamento) {
this.descrizionePagamento = descrizionePagamento;
}
public String getDestinatario() {
return destinatario;
}
public void setDestinatario(String destinatario) {
this.destinatario = destinatario;
}
public String getCitta() {
return citta;
}
public void setCitta(String citta) {
this.citta = citta;
}
public String getProvincia() {
return provincia;
}
public void setProvincia(String provincia) {
this.provincia = provincia;
}
public String getIndirizzo() {
return indirizzo;
}
public void setIndirizzo(String indirizzo) {
this.indirizzo = indirizzo;
}
public BigDecimal getSaldoContabile() {
return saldoContabile;
}
public void setSaldoContabile(BigDecimal saldoContabile) {
this.saldoContabile = saldoContabile;
}
public String getRagSoc() {
return ragSoc;
}
public void setRagSoc(String ragSoc) {
this.ragSoc = ragSoc;
}
public String getRifOrd() {
return rifOrd;
}
public void setRifOrd(String rifOrd) {
this.rifOrd = rifOrd;
}
public List<SM2OrdineSingoloDTO> getOrdini() {
return ordini;
}
public void setOrdini(List<SM2OrdineSingoloDTO> ordini) {
this.ordini = ordini;
}
public void addOrdine(SM2OrdineSingoloDTO ordine) {
if (ordini == null) ordini = new ArrayList<SM2OrdineSingoloDTO>();
ordini.add(ordine);
}
public int getNumero() {
return numero;
}
public void setNumero(int numero) {
this.numero = numero;
}
public Date getData() {
return data;
}
public void setData(Date data) {
this.data = data;
}
public String getGestione() {
return gestione;
}
public void setGestione(String gestione) {
this.gestione = gestione;
}
public String getCodMdep() {
return codMdep;
}
public void setCodMdep(String codMdep) {
this.codMdep = codMdep;
}
public String getCodAnag() {
return codAnag;
}
public void setCodAnag(String codAnag) {
this.codAnag = codAnag;
}
public String getCodVdes() {
return codVdes;
}
public void setCodVdes(String codVdes) {
this.codVdes = codVdes;
}
public String getTermCons() {
return termCons;
}
public void setTermCons(String termCons) {
this.termCons = termCons;
}
public String getGestioneRif() {
return gestioneRif;
}
public void setGestioneRif(String gestioneRif) {
this.gestioneRif = gestioneRif;
}
}

View File

@@ -0,0 +1,75 @@
package it.integry.ems.retail.wms.generic.dto.ordine;
import it.integry.ems_model.annotation.SqlField;
import java.math.BigDecimal;
public class SM2OrdineBancaleSQLDTO {
@SqlField(value = "rag_soc")
private String ragSoc;
@SqlField(value = "cod_mart")
private String codMart;
@SqlField(value = "qta_ord")
private BigDecimal qtaOrd;
@SqlField(value = "qta_evasa")
private BigDecimal qtaEvasa;
@SqlField(value = "cod_mdep")
private String codMdep;
@SqlField(value = "riga_ord")
private int rigaOrd;
public String getRagSoc() {
return ragSoc;
}
public void setRagSoc(String ragSoc) {
this.ragSoc = ragSoc;
}
public String getCodMart() {
return codMart;
}
public void setCodMart(String codMart) {
this.codMart = codMart;
}
public BigDecimal getQtaOrd() {
return qtaOrd;
}
public void setQtaOrd(BigDecimal qtaOrd) {
this.qtaOrd = qtaOrd;
}
public BigDecimal getQtaEvasa() {
return qtaEvasa;
}
public void setQtaEvasa(BigDecimal qtaEvasa) {
this.qtaEvasa = qtaEvasa;
}
public String getCodMdep() {
return codMdep;
}
public void setCodMdep(String codMdep) {
this.codMdep = codMdep;
}
public int getRigaOrd() {
return rigaOrd;
}
public void setRigaOrd(int rigaOrd) {
this.rigaOrd = rigaOrd;
}
}

View File

@@ -0,0 +1,97 @@
package it.integry.ems.retail.wms.generic.dto.ordine;
import it.integry.ems_model.annotation.SqlField;
import java.math.BigDecimal;
import java.util.Date;
public class SM2OrdineSingoloColloVDTO {
@SqlField(value = "data_collo")
private Date dataCollo;
@SqlField(value = "data_ord")
private Date dataOrd;
@SqlField(value = "ser_collo")
private String serCollo;
@SqlField(value = "num_collo")
private int numCollo;
@SqlField(value = "num_ord")
private int numOrd;
@SqlField(value = "cod_mdep")
private String codMdep;
@SqlField(value = "qta_ord", defaultObjectValue = "0")
private BigDecimal qtaOrd;
@SqlField(value = "cod_jcom")
private String codJcom;
public Date getDataCollo() {
return dataCollo;
}
public void setDataCollo(Date dataCollo) {
this.dataCollo = dataCollo;
}
public Date getDataOrd() {
return dataOrd;
}
public void setDataOrd(Date dataOrd) {
this.dataOrd = dataOrd;
}
public String getSerCollo() {
return serCollo;
}
public void setSerCollo(String serCollo) {
this.serCollo = serCollo;
}
public int getNumCollo() {
return numCollo;
}
public void setNumCollo(int numCollo) {
this.numCollo = numCollo;
}
public int getNumOrd() {
return numOrd;
}
public void setNumOrd(int numOrd) {
this.numOrd = numOrd;
}
public String getCodMdep() {
return codMdep;
}
public void setCodMdep(String codMdep) {
this.codMdep = codMdep;
}
public BigDecimal getQtaOrd() {
return qtaOrd;
}
public void setQtaOrd(BigDecimal qtaOrd) {
this.qtaOrd = qtaOrd;
}
public String getCodJcom() {
return codJcom;
}
public void setCodJcom(String codJcom) {
this.codJcom = codJcom;
}
}

View File

@@ -0,0 +1,274 @@
package it.integry.ems.retail.wms.generic.dto.ordine;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import it.integry.ems.adapter.JsonDateAdapterSerializer;
import java.math.BigDecimal;
import java.util.Date;
@JsonInclude(JsonInclude.Include.NON_DEFAULT)
public class SM2OrdineSingoloDTO {
private String untOrd;
private Integer idViaggio;
private BigDecimal confOrd;
private BigDecimal confEvasa;
private BigDecimal qtaOrd;
private BigDecimal qtaEvasa;
private BigDecimal qtaDaEvadere;
private BigDecimal qtaRiservate;
private BigDecimal qtaDisp;
private Integer confDaEvadere;
private Integer confRiservate;
private Integer confDisp;
@JsonSerialize(using = JsonDateAdapterSerializer.class)
private Date dataCollo;
private Integer numCollo;
private String serCollo;
private int rigaOrd;
private String codJcom;
private String ragSocCom;
private String descrizioneCommessa;
private String partitaMag;
private String codArtFor;
private String descrizioneEstesa;
private String codAlis;
private String note;
@JsonSerialize(using = JsonDateAdapterSerializer.class)
private Date dataCons;
private SM2MtbAartDTO mtbAart;
public String getUntOrd() {
return untOrd;
}
public void setUntOrd(String untOrd) {
this.untOrd = untOrd;
}
public String getNote() {
return note;
}
public void setNote(String note) {
this.note = note;
}
public Integer getIdViaggio() {
return idViaggio;
}
public void setIdViaggio(Integer idViaggio) {
this.idViaggio = idViaggio;
}
public BigDecimal getConfOrd() {
return confOrd;
}
public void setConfOrd(BigDecimal confOrd) {
this.confOrd = confOrd;
}
public BigDecimal getConfEvasa() {
return confEvasa;
}
public void setConfEvasa(BigDecimal confEvasa) {
this.confEvasa = confEvasa;
}
public BigDecimal getQtaOrd() {
return qtaOrd;
}
public void setQtaOrd(BigDecimal qtaOrd) {
this.qtaOrd = qtaOrd;
}
public BigDecimal getQtaEvasa() {
return qtaEvasa;
}
public void setQtaEvasa(BigDecimal qtaEvasa) {
this.qtaEvasa = qtaEvasa;
}
public int getRigaOrd() {
return rigaOrd;
}
public void setRigaOrd(int rigaOrd) {
this.rigaOrd = rigaOrd;
}
public String getCodJcom() {
return codJcom;
}
public void setCodJcom(String codJcom) {
this.codJcom = codJcom;
}
public String getRagSocCom() {
return ragSocCom;
}
public void setRagSocCom(String ragSocCom) {
this.ragSocCom = ragSocCom;
}
public String getPartitaMag() {
return partitaMag;
}
public void setPartitaMag(String partitaMag) {
this.partitaMag = partitaMag;
}
public String getCodArtFor() {
return codArtFor;
}
public void setCodArtFor(String codArtFor) {
this.codArtFor = codArtFor;
}
public String getDescrizioneEstesa() {
return descrizioneEstesa;
}
public void setDescrizioneEstesa(String descrizioneEstesa) {
this.descrizioneEstesa = descrizioneEstesa;
}
public String getCodAlis() {
return codAlis;
}
public void setCodAlis(String codAlis) {
this.codAlis = codAlis;
}
public Date getDataCons() {
return dataCons;
}
public void setDataCons(Date dataCons) {
this.dataCons = dataCons;
}
public SM2MtbAartDTO getMtbAart() {
return mtbAart;
}
public void setMtbAart(SM2MtbAartDTO mtbAart) {
this.mtbAart = mtbAart;
}
public BigDecimal getQtaDaEvadere() {
return qtaDaEvadere;
}
public void setQtaDaEvadere(BigDecimal qtaDaEvadere) {
this.qtaDaEvadere = qtaDaEvadere;
}
public BigDecimal getQtaRiservate() {
return qtaRiservate;
}
public void setQtaRiservate(BigDecimal qtaRiservate) {
this.qtaRiservate = qtaRiservate;
}
public Integer getConfDaEvadere() {
return confDaEvadere;
}
public void setConfDaEvadere(Integer confDaEvadere) {
this.confDaEvadere = confDaEvadere;
}
public Integer getConfRiservate() {
return confRiservate;
}
public void setConfRiservate(Integer confRiservate) {
this.confRiservate = confRiservate;
}
public Date getDataCollo() {
return dataCollo;
}
public void setDataCollo(Date dataCollo) {
this.dataCollo = dataCollo;
}
public Integer getNumCollo() {
return numCollo;
}
public void setNumCollo(Integer numCollo) {
this.numCollo = numCollo;
}
public String getSerCollo() {
return serCollo;
}
public void setSerCollo(String serCollo) {
this.serCollo = serCollo;
}
public BigDecimal getQtaDisp() {
return qtaDisp;
}
public void setQtaDisp(BigDecimal qtaDisp) {
this.qtaDisp = qtaDisp;
}
public Integer getConfDisp() {
return confDisp;
}
public void setConfDisp(Integer confDisp) {
this.confDisp = confDisp;
}
public String getDescrizioneCommessa() {
return descrizioneCommessa;
}
public void setDescrizioneCommessa(String descrizioneCommessa) {
this.descrizioneCommessa = descrizioneCommessa;
}
}

View File

@@ -96,11 +96,12 @@ public class WMSArticoloService {
}
public RetrieveArticoloResponseDTO retrieveArts(FilterDTO filter, int page, int pageSize) throws Exception {
public RetrieveArticoloResponseDTO retrieveArts(FilterDTO filter, int page, int pageSize ) throws Exception {
String query = "SELECT mtb_aart.cod_mart AS [mtb_aart.cod_mart], " +
" mtb_aart.descrizione AS [mtb_aart.descrizione], " +
" mtb_aart.descrizione_estesa AS [mtb_aart.descrizione_estesa], " +
" mtb_aart.unt_mis AS [mtb_aart.unt_mis], " +
" mtb_aart.cod_mgrp AS [mtb_aart.cod_mgrp], " +
" mtb_aart.cod_msgr AS [mtb_aart.cod_msgr], " +

View File

@@ -6,6 +6,7 @@ import com.fasterxml.jackson.databind.type.TypeFactory;
import com.google.common.base.Joiner;
import it.integry.common.var.CommonConstants;
import it.integry.ems.Import.dto.AnomalieDTO;
import it.integry.ems.exception.MissingDataException;
import it.integry.ems.javabeans.RequestDataDTO;
import it.integry.ems.product.importaz.service.ProductServices;
import it.integry.ems.report.dto.PairsDTO;
@@ -15,6 +16,7 @@ import it.integry.ems.retail.pvmRetail.dto.GiacenzaColliInMagDTO;
import it.integry.ems.retail.pvmRetail.dto.OrdineInevasoDTO;
import it.integry.ems.retail.pvmRetail.dto.OrdineInevasoGroupMercDTO;
import it.integry.ems.retail.pvmRetail.dto.PickingObjectDTO;
import it.integry.ems.retail.wms.dto.RientroMerceRequestDTO;
import it.integry.ems.retail.wms.exceptions.InvalidGestioneLUException;
import it.integry.ems.retail.wms.exceptions.InvalidQtaCnfException;
import it.integry.ems.retail.wms.generic.dto.*;
@@ -2726,4 +2728,93 @@ public class WMSGenericService {
" num_collo = {}\n", mtbColt.getDataCollo(), mtbColt.getGestione(), mtbColt.getSerCollo(), mtbColt.getNumCollo());
return UtilityDB.executeSimpleQueryDTO(multiDBTransactionManager.getPrimaryConnection(), sql, MvwSitArtUdcDetInventarioDTO.class);
}
public void rientroMerce(RientroMerceRequestDTO rientroMerceRequestDTO) throws Exception {
if (rientroMerceRequestDTO.getSourceMtbColt() == null)
throw new MissingDataException("UL di origine");
if (rientroMerceRequestDTO.getDestinationMtbColt() == null)
throw new MissingDataException("UL di rientro");
if (UtilityBigDecimal.isNullOrZero(rientroMerceRequestDTO.getQtaRientro()))
throw new Exception("La quantità di rientro deve essere maggiore di 0");
MtbColt scarico = rientroMerceRequestDTO.getSourceMtbColt();
scarico.setOperation(OperationType.SELECT_OBJECT);
MtbColt destinazione = rientroMerceRequestDTO.getDestinationMtbColt();
destinazione.setOperation(OperationType.SELECT_OBJECT);
entityProcessor.processEntityList(Arrays.asList(scarico, destinazione), multiDBTransactionManager, false);
if (!UtilityInteger.isNullOrZero(scarico.getNumDoc()))
throw new Exception("impossibile eseguire il rientro da una UL con documento");
MtbColr versamento = getVersamentoArticoloInCollo(scarico, rientroMerceRequestDTO.getCodMart(), rientroMerceRequestDTO.getPartitaMag());
if (UtilityBigDecimal.greaterThan(rientroMerceRequestDTO.getQtaRientro(), versamento.getQtaCol()))
throw new Exception("La quantità di rientro non può eccedere la quantità versata!");
//creao riga con qta negative per abbattere lo scarico
MtbColr mtbColrRettifica = (MtbColr) versamento.clone();
mtbColrRettifica
.setQtaCol(rientroMerceRequestDTO.getQtaRientro().negate())
.setNumCnf(mtbColrRettifica.getQtaCol().divide(mtbColrRettifica.getQtaCnf(),5,RoundingMode.HALF_UP))
.setOperation(OperationType.INSERT_OR_UPDATE);
scarico.getMtbColr().add(mtbColrRettifica);
scarico.setOperation(OperationType.NO_OP);
entityProcessor.processEntity(scarico, true, multiDBTransactionManager);
// se i riferimenti originali dello scarico sono diversi dalla ul di destinazione devo spostare le quantità rinate sul nuovo collo
MtbColt colloRif = new MtbColt();
colloRif.setDataCollo(UtilityLocalDate.localDateFromDate(versamento.getDataColloRif()))
.setSerCollo(versamento.getSerColloRif())
.setNumCollo(versamento.getNumColloRif())
.setGestione(versamento.getGestioneRif());
if (!colloRif.equalsKey(destinazione)) {
MtbColr mtbColrSpostamento = new MtbColr();
mtbColrSpostamento
.setQtaCol(rientroMerceRequestDTO.getQtaRientro())
.setCodMart(rientroMerceRequestDTO.getCodMart())
.setPartitaMag(rientroMerceRequestDTO.getPartitaMag());
colloRif.getMtbColr().add(mtbColrSpostamento);
spostaArtsTraUL(colloRif, destinazione, true);
}
}
private MtbColr getVersamentoArticoloInCollo(MtbColt scarico, String codMart, String partitaMag) throws Exception {
String sql = Query.format("SELECT mtb_colr.gestione,\n" +
" mtb_colr.data_collo,\n" +
" mtb_colr.num_collo,\n" +
" mtb_colr.ser_collo,\n" +
" mtb_colr.cod_mart,\n" +
" mtb_colr.partita_mag,\n" +
" mtb_colr.data_ord,\n" +
" mtb_colr.num_ord,\n" +
" mtb_colr.partita_mag,\n" +
" mtb_colr.qta_cnf,\n" +
" mtb_colr.gestione_rif,mtb_colr.data_collo_rif,mtb_colr.ser_collo_rif,mtb_colr.num_collo_rif,\n" +
" SUM(qta_col) as qta_col,\n" +
" SUM(num_cnf) as num_cnf\n" +
" FROM mtb_colr\n" +
" INNER JOIN mtb_colt\n" +
" ON mtb_colr.gestione = mtb_colt.gestione AND mtb_colr.data_collo = mtb_colt.data_collo AND\n" +
" mtb_colr.ser_collo = mtb_colt.ser_collo AND mtb_colr.num_collo = mtb_colt.num_collo\n" +
" where mtb_colt.data_collo = {}\n" +
" and mtb_colt.ser_collo = {}\n" +
" and mtb_colt.num_collo = {}\n" +
" and mtb_colt.gestione = {}\n" +
" and mtb_colr.cod_mart = {}\n" +
" and mtb_colt.segno = -1\n" +
" and ({} IS NULL OR mtb_colr.partita_mag = {})\n" +
"\n" +
"GROUP BY mtb_colr.gestione, mtb_colr.data_collo, mtb_colr.num_collo, mtb_colr.ser_collo, mtb_colr.cod_mart,mtb_colr.gestione_rif,mtb_colr.data_collo_rif,mtb_colr.ser_collo_rif,mtb_colr.num_collo_rif,mtb_colr.qta_cnf, mtb_colr.partita_mag,mtb_colr.data_ord,mtb_colr.num_ord",
scarico.getDataCollo(), scarico.getSerCollo(), scarico.getNumCollo(), scarico.getGestione(), codMart, partitaMag, partitaMag);
MtbColr versamento = UtilityDB.executeSimpleQueryOnlyFirstRowDTO(multiDBTransactionManager.getPrimaryConnection(), sql, MtbColr.class);
return versamento;
}
}