Implementato CaricoProdFin in Rientro Merce

This commit is contained in:
Giuseppe Scorrano 2024-11-14 09:58:40 +01:00
parent 9890fbfec0
commit 482243ceff
25 changed files with 649 additions and 67 deletions

View File

@ -42,6 +42,7 @@ import it.integry.integrywmsnative.core.rest.consumers.PVOrdiniAcquistoRESTConsu
import it.integry.integrywmsnative.core.rest.consumers.PosizioniRESTConsumer; import it.integry.integrywmsnative.core.rest.consumers.PosizioniRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer; import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.ProductionLinesRESTConsumer; import it.integry.integrywmsnative.core.rest.consumers.ProductionLinesRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.ProduzioneRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer; import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.VettoriRESTConsumer; import it.integry.integrywmsnative.core.rest.consumers.VettoriRESTConsumer;
import it.integry.integrywmsnative.core.services.inventario.InventarioService; import it.integry.integrywmsnative.core.services.inventario.InventarioService;
@ -205,6 +206,12 @@ public class MainApplicationModule {
return new AziendaRESTConsumer(); return new AziendaRESTConsumer();
} }
@Provides
@Singleton
ProduzioneRESTConsumer provideProduzioneRESTConsumer() {
return new ProduzioneRESTConsumer();
}
@Provides @Provides
@Singleton @Singleton
BarcodeRESTConsumer provideBarcodeRESTConsumer(Ean128Service ean128Service) { BarcodeRESTConsumer provideBarcodeRESTConsumer(Ean128Service ean128Service) {

View File

@ -0,0 +1,41 @@
package it.integry.integrywmsnative.core.rest.consumers;
import com.orhanobut.logger.Logger;
import javax.inject.Singleton;
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.rest.RESTBuilder;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.rest.model.produzione.CaricoProdFinDTO;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
@Singleton
public class ProduzioneRESTConsumer extends _BaseRESTConsumer{
public void caricoProdFin(CaricoProdFinDTO caricoProdFin, Runnable onComplete, RunnableArgs<Exception> onFailed) {
ProduzioneRESTConsumerService service = RESTBuilder.getService(ProduzioneRESTConsumerService.class);
service.caricoProdFin(caricoProdFin)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<Void>> call, Response<ServiceRESTResponse<Void>> response) {
analyzeAnswer(response, "caricoProdFin", Void -> onComplete.run(), ex -> {
if (onFailed != null) onFailed.run(ex);
});
}
@Override
public void onFailure(Call<ServiceRESTResponse<Void>> call, Throwable t) {
Logger.e(t, "caricoProdFin");
onFailed.run(new Exception(t));
}
});
}
}

View File

@ -0,0 +1,15 @@
package it.integry.integrywmsnative.core.rest.consumers;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.rest.model.produzione.CaricoProdFinDTO;
import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.POST;
public interface ProduzioneRESTConsumerService {
@POST("caricoProdFinJson")
Call<ServiceRESTResponse<Void>> caricoProdFin(@Body CaricoProdFinDTO caricoProdFin);
}

View File

@ -0,0 +1,363 @@
package it.integry.integrywmsnative.core.rest.model.produzione;
import java.time.LocalDate;
import java.time.LocalDateTime;
public class CaricoProdFinDTO {
private CaricoProdFinProdottiDTO prodotti = new CaricoProdFinProdottiDTO();
private String gestione;
private String effettuaScaricoMateriali;
private String effettuaCaricoProdotto;
private String codAnag;
private String codMdep;
private String codMdepScar;
private String codDtipCar;
private String codDtipScar;
private String codDtipRien;
private String terminaLavorazione;
private String serDoc;
private String aggiornaStato;
private String creaCollo;
private String creaScaricoDaColloVers;
private String creaCaricoDaCollo;
private String creaScaricoDaCollo;
private String creaColloVersDaColloCarico;
private String creaRientroDaCollo;
private Integer numOrd;
private Integer idRiga;
private Integer idStep;
private LocalDate dataOrd;
private LocalDate dataProd;
private LocalDate dataDoc;
private Integer numDoc;
private LocalDateTime dataVersamento;
private String preparatoDa;
private String generateJson; /*24/01/2022(FABIO): da eliminare non appena abbiamo testato il salvataggio diretto con entity passo per passo*/
private String codJfas;
private String terminaLavorazioneLinea;
private String activityID;
private Integer idLotto;
private boolean escludiArticoliGestitiDaWmsInScarico;
public CaricoProdFinProdottiDTO getProdotti() {
return prodotti;
}
public CaricoProdFinDTO setProdotti(CaricoProdFinProdottiDTO prodotti) {
this.prodotti = prodotti;
return this;
}
public String getGestione() {
return gestione;
}
public CaricoProdFinDTO setGestione(String gestione) {
this.gestione = gestione;
return this;
}
public String getEffettuaScaricoMateriali() {
return effettuaScaricoMateriali;
}
public CaricoProdFinDTO setEffettuaScaricoMateriali(String effettuaScaricoMateriali) {
this.effettuaScaricoMateriali = effettuaScaricoMateriali;
return this;
}
public CaricoProdFinDTO setEffettuaScaricoMateriali(boolean effettuaScaricoMateriali) {
this.effettuaScaricoMateriali = effettuaScaricoMateriali ? "S" : "N";
return this;
}
public String getEffettuaCaricoProdotto() {
return effettuaCaricoProdotto;
}
public CaricoProdFinDTO setEffettuaCaricoProdotto(String effettuaCaricoProdotto) {
this.effettuaCaricoProdotto = effettuaCaricoProdotto;
return this;
}
public CaricoProdFinDTO setEffettuaCaricoProdotto(boolean effettuaCaricoProdotto) {
this.effettuaCaricoProdotto = effettuaCaricoProdotto ? "S" : "N";
return this;
}
public String getCodAnag() {
return codAnag;
}
public CaricoProdFinDTO setCodAnag(String codAnag) {
this.codAnag = codAnag;
return this;
}
public String getCodMdep() {
return codMdep;
}
public CaricoProdFinDTO setCodMdep(String codMdep) {
this.codMdep = codMdep;
return this;
}
public String getCodMdepScar() {
return codMdepScar;
}
public CaricoProdFinDTO setCodMdepScar(String codMdepScar) {
this.codMdepScar = codMdepScar;
return this;
}
public String getCodDtipCar() {
return codDtipCar;
}
public CaricoProdFinDTO setCodDtipCar(String codDtipCar) {
this.codDtipCar = codDtipCar;
return this;
}
public String getCodDtipScar() {
return codDtipScar;
}
public CaricoProdFinDTO setCodDtipScar(String codDtipScar) {
this.codDtipScar = codDtipScar;
return this;
}
public String getCodDtipRien() {
return codDtipRien;
}
public CaricoProdFinDTO setCodDtipRien(String codDtipRien) {
this.codDtipRien = codDtipRien;
return this;
}
public String getTerminaLavorazione() {
return terminaLavorazione;
}
public CaricoProdFinDTO setTerminaLavorazione(String terminaLavorazione) {
this.terminaLavorazione = terminaLavorazione;
return this;
}
public String getSerDoc() {
return serDoc;
}
public CaricoProdFinDTO setSerDoc(String serDoc) {
this.serDoc = serDoc;
return this;
}
public String getAggiornaStato() {
return aggiornaStato;
}
public CaricoProdFinDTO setAggiornaStato(String aggiornaStato) {
this.aggiornaStato = aggiornaStato;
return this;
}
public String getCreaCollo() {
return creaCollo;
}
public CaricoProdFinDTO setCreaCollo(String creaCollo) {
this.creaCollo = creaCollo;
return this;
}
public String getCreaScaricoDaColloVers() {
return creaScaricoDaColloVers;
}
public CaricoProdFinDTO setCreaScaricoDaColloVers(String creaScaricoDaColloVers) {
this.creaScaricoDaColloVers = creaScaricoDaColloVers;
return this;
}
public String getCreaCaricoDaCollo() {
return creaCaricoDaCollo;
}
public CaricoProdFinDTO setCreaCaricoDaCollo(String creaCaricoDaCollo) {
this.creaCaricoDaCollo = creaCaricoDaCollo;
return this;
}
public CaricoProdFinDTO setCreaCaricoDaCollo(boolean creaCaricoDaCollo) {
this.creaCaricoDaCollo = creaCaricoDaCollo ? "S" : "N";
return this;
}
public String getCreaScaricoDaCollo() {
return creaScaricoDaCollo;
}
public CaricoProdFinDTO setCreaScaricoDaCollo(String creaScaricoDaCollo) {
this.creaScaricoDaCollo = creaScaricoDaCollo;
return this;
}
public String getCreaColloVersDaColloCarico() {
return creaColloVersDaColloCarico;
}
public CaricoProdFinDTO setCreaColloVersDaColloCarico(String creaColloVersDaColloCarico) {
this.creaColloVersDaColloCarico = creaColloVersDaColloCarico;
return this;
}
public String getCreaRientroDaCollo() {
return creaRientroDaCollo;
}
public CaricoProdFinDTO setCreaRientroDaCollo(String creaRientroDaCollo) {
this.creaRientroDaCollo = creaRientroDaCollo;
return this;
}
public Integer getNumOrd() {
return numOrd;
}
public CaricoProdFinDTO setNumOrd(Integer numOrd) {
this.numOrd = numOrd;
return this;
}
public Integer getIdRiga() {
return idRiga;
}
public CaricoProdFinDTO setIdRiga(Integer idRiga) {
this.idRiga = idRiga;
return this;
}
public Integer getIdStep() {
return idStep;
}
public CaricoProdFinDTO setIdStep(Integer idStep) {
this.idStep = idStep;
return this;
}
public LocalDate getDataOrd() {
return dataOrd;
}
public CaricoProdFinDTO setDataOrd(LocalDate dataOrd) {
this.dataOrd = dataOrd;
return this;
}
public LocalDate getDataProd() {
return dataProd;
}
public CaricoProdFinDTO setDataProd(LocalDate dataProd) {
this.dataProd = dataProd;
return this;
}
public LocalDate getDataDoc() {
return dataDoc;
}
public CaricoProdFinDTO setDataDoc(LocalDate dataDoc) {
this.dataDoc = dataDoc;
return this;
}
public Integer getNumDoc() {
return numDoc;
}
public CaricoProdFinDTO setNumDoc(Integer numDoc) {
this.numDoc = numDoc;
return this;
}
public LocalDateTime getDataVersamento() {
return dataVersamento;
}
public CaricoProdFinDTO setDataVersamento(LocalDateTime dataVersamento) {
this.dataVersamento = dataVersamento;
return this;
}
public String getPreparatoDa() {
return preparatoDa;
}
public CaricoProdFinDTO setPreparatoDa(String preparatoDa) {
this.preparatoDa = preparatoDa;
return this;
}
public String getGenerateJson() {
return generateJson;
}
public CaricoProdFinDTO setGenerateJson(String generateJson) {
this.generateJson = generateJson;
return this;
}
public String getCodJfas() {
return codJfas;
}
public CaricoProdFinDTO setCodJfas(String codJfas) {
this.codJfas = codJfas;
return this;
}
public String getTerminaLavorazioneLinea() {
return terminaLavorazioneLinea;
}
public CaricoProdFinDTO setTerminaLavorazioneLinea(String terminaLavorazioneLinea) {
this.terminaLavorazioneLinea = terminaLavorazioneLinea;
return this;
}
public String getActivityID() {
return activityID;
}
public CaricoProdFinDTO setActivityID(String activityID) {
this.activityID = activityID;
return this;
}
public Integer getIdLotto() {
return idLotto;
}
public CaricoProdFinDTO setIdLotto(Integer idLotto) {
this.idLotto = idLotto;
return this;
}
public boolean isEscludiArticoliGestitiDaWmsInScarico() {
return escludiArticoliGestitiDaWmsInScarico;
}
public CaricoProdFinDTO setEscludiArticoliGestitiDaWmsInScarico(boolean escludiArticoliGestitiDaWmsInScarico) {
this.escludiArticoliGestitiDaWmsInScarico = escludiArticoliGestitiDaWmsInScarico;
return this;
}
}

View File

@ -0,0 +1,18 @@
package it.integry.integrywmsnative.core.rest.model.produzione;
import java.util.ArrayList;
import java.util.List;
public class CaricoProdFinProdottiDTO {
private List<CaricoProdFinProdottoDTO> row = new ArrayList<>();
public List<CaricoProdFinProdottoDTO> getRow() {
return row;
}
public CaricoProdFinProdottiDTO setRow(List<CaricoProdFinProdottoDTO> row) {
this.row = row;
return this;
}
}

View File

@ -0,0 +1,87 @@
package it.integry.integrywmsnative.core.rest.model.produzione;
import java.math.BigDecimal;
public class CaricoProdFinProdottoDTO {
private String partitaMag;
private String flagDig;
private String codTcol;
private BigDecimal qtaProdAna;
private BigDecimal qtaProdDig;
private BigDecimal qtaCnf;
private BigDecimal numCart;
private BigDecimal tara;
public String getPartitaMag() {
return partitaMag;
}
public CaricoProdFinProdottoDTO setPartitaMag(String partitaMag) {
this.partitaMag = partitaMag;
return this;
}
public String getFlagDig() {
return flagDig;
}
public CaricoProdFinProdottoDTO setFlagDig(String flagDig) {
this.flagDig = flagDig;
return this;
}
public String getCodTcol() {
return codTcol;
}
public CaricoProdFinProdottoDTO setCodTcol(String codTcol) {
this.codTcol = codTcol;
return this;
}
public BigDecimal getQtaProdAna() {
return qtaProdAna;
}
public CaricoProdFinProdottoDTO setQtaProdAna(BigDecimal qtaProdAna) {
this.qtaProdAna = qtaProdAna;
return this;
}
public BigDecimal getQtaProdDig() {
return qtaProdDig;
}
public CaricoProdFinProdottoDTO setQtaProdDig(BigDecimal qtaProdDig) {
this.qtaProdDig = qtaProdDig;
return this;
}
public BigDecimal getQtaCnf() {
return qtaCnf;
}
public CaricoProdFinProdottoDTO setQtaCnf(BigDecimal qtaCnf) {
this.qtaCnf = qtaCnf;
return this;
}
public BigDecimal getNumCart() {
return numCart;
}
public CaricoProdFinProdottoDTO setNumCart(BigDecimal numCart) {
this.numCart = numCart;
return this;
}
public BigDecimal getTara() {
return tara;
}
public CaricoProdFinProdottoDTO setTara(BigDecimal tara) {
this.tara = tara;
return this;
}
}

View File

@ -4,7 +4,7 @@ import com.annimon.stream.Stream;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import java.text.SimpleDateFormat; import java.time.LocalDate;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@ -25,9 +25,13 @@ public class UtilityDB {
} else { } else {
valueString = "'" + valueString.replaceAll("'","''") + "'"; valueString = "'" + valueString.replaceAll("'","''") + "'";
} }
} else if (value instanceof Date){
} else if (value instanceof Date){
valueString = "'" + UtilityDate.formatDate((Date) value, UtilityDate.COMMONS_DATE_FORMATS.YMD_DASH) + "'"; valueString = "'" + UtilityDate.formatDate((Date) value, UtilityDate.COMMONS_DATE_FORMATS.YMD_DASH) + "'";
} else if (value instanceof LocalDate){
valueString = "'" + UtilityDate.formatDate((LocalDate) value, UtilityDate.COMMONS_DATE_FORMATS.YMD_DASH) + "'";
} else if (value instanceof Integer) { } else if (value instanceof Integer) {
} else { } else {

View File

@ -18,6 +18,7 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Locale; import java.util.Locale;
import java.util.Objects; import java.util.Objects;
import java.util.stream.Collectors;
import it.integry.integrywmsnative.BR; import it.integry.integrywmsnative.BR;
import it.integry.integrywmsnative.R; import it.integry.integrywmsnative.R;
@ -48,10 +49,10 @@ public class FilterCodArtLayoutView extends FilterLayoutView {
refreshList(); refreshList();
this.setSearchView(this.mBindings.searchView, newFilter -> { this.setSearchView(this.mBindings.searchView, newFilter -> {
hidden = Stream.of(all) hidden = all.stream()
.filter(x -> !x.toUpperCase(Locale.ROOT).contains(newFilter.toUpperCase(Locale.ROOT)) && .filter(x -> !x.toUpperCase(Locale.ROOT).contains(newFilter.toUpperCase(Locale.ROOT)) &&
!x.toUpperCase(Locale.ROOT).contains(newFilter.toUpperCase(Locale.ROOT))) !x.toUpperCase(Locale.ROOT).contains(newFilter.toUpperCase(Locale.ROOT)))
.toList(); .collect(Collectors.toList());
refreshList(); refreshList();
}); });

View File

@ -17,6 +17,7 @@ import com.annimon.stream.Stream;
import com.ravikoradiya.liveadapter.LiveAdapter; import com.ravikoradiya.liveadapter.LiveAdapter;
import com.ravikoradiya.liveadapter.Type; import com.ravikoradiya.liveadapter.Type;
import java.time.LocalDate;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
import java.util.Comparator; import java.util.Comparator;
@ -390,16 +391,16 @@ public class ProdFabbisognoLineeProdFragment extends BaseFragment implements ITi
.map(x -> ((ProdFabbisognoLineeItemModelDto) x).getOrdineLavorazioneDTO().getNumOrd().toString()) .map(x -> ((ProdFabbisognoLineeItemModelDto) x).getOrdineLavorazioneDTO().getNumOrd().toString())
.toList()); .toList());
Date dataInizio = Stream.of(mProdFabbisognoItemModel) LocalDate dataInizio = Stream.of(mProdFabbisognoItemModel)
.filter(x -> x instanceof ProdFabbisognoLineeItemModelDto && ((ProdFabbisognoLineeItemModelDto) x).selected.get()) .filter(x -> x instanceof ProdFabbisognoLineeItemModelDto && ((ProdFabbisognoLineeItemModelDto) x).selected.get())
.map(x -> ((ProdFabbisognoLineeItemModelDto) x).getOrdineLavorazioneDTO().getDataOrdD()) .map(x -> ((ProdFabbisognoLineeItemModelDto) x).getOrdineLavorazioneDTO().getDataOrd())
.min(Date::compareTo) .min(Comparator.naturalOrder())
.orElse(null); .orElse(null);
Date dataFine = Stream.of(mProdFabbisognoItemModel) LocalDate dataFine = Stream.of(mProdFabbisognoItemModel)
.filter(x -> x instanceof ProdFabbisognoLineeItemModelDto && ((ProdFabbisognoLineeItemModelDto) x).selected.get()) .filter(x -> x instanceof ProdFabbisognoLineeItemModelDto && ((ProdFabbisognoLineeItemModelDto) x).selected.get())
.map(x -> ((ProdFabbisognoLineeItemModelDto) x).getOrdineLavorazioneDTO().getDataOrdD()) .map(x -> ((ProdFabbisognoLineeItemModelDto) x).getOrdineLavorazioneDTO().getDataOrd())
.max(Date::compareTo) .max(Comparator.naturalOrder())
.orElse(null); .orElse(null);
List<MtbGrup> listMtbGrup = Stream.of(mProdFabbisognoItemModel) List<MtbGrup> listMtbGrup = Stream.of(mProdFabbisognoItemModel)

View File

@ -5,23 +5,18 @@ import androidx.lifecycle.MutableLiveData;
import com.annimon.stream.Stream; import com.annimon.stream.Stream;
import java.time.LocalDate;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator; import java.util.Comparator;
import java.util.Date;
import java.util.List; import java.util.List;
import it.integry.integrywmsnative.core.data_store.db.entity.InventarioRoomDTO;
import it.integry.integrywmsnative.core.exception.NoOrdersScheduledException;
import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.interfaces.viewmodel_listeners.ILoadingListener; import it.integry.integrywmsnative.core.interfaces.viewmodel_listeners.ILoadingListener;
import it.integry.integrywmsnative.core.rest.consumers.MesRESTConsumer; import it.integry.integrywmsnative.core.rest.consumers.MesRESTConsumer;
import it.integry.integrywmsnative.core.settings.SettingsManager; import it.integry.integrywmsnative.core.settings.SettingsManager;
import it.integry.integrywmsnative.gest.prod_fabbisogno_linee_prod.dto.GroupTitleModel;
import it.integry.integrywmsnative.gest.prod_fabbisogno_linee_prod.dto.ProdFabbisognoLineeItemModelDto; import it.integry.integrywmsnative.gest.prod_fabbisogno_linee_prod.dto.ProdFabbisognoLineeItemModelDto;
import it.integry.integrywmsnative.gest.prod_fabbisogno_linee_prod.dto.ProdFabbisognoLineeProdDTO; import it.integry.integrywmsnative.gest.prod_fabbisogno_linee_prod.dto.ProdFabbisognoLineeProdDTO;
import it.integry.integrywmsnative.gest.prod_fabbisogno_linee_prod.rest.ProdFabbisognoLineeProdRESTConsumer; import it.integry.integrywmsnative.gest.prod_fabbisogno_linee_prod.rest.ProdFabbisognoLineeProdRESTConsumer;
import it.integry.integrywmsnative.gest.prod_versamento_materiale.dto.OrdineLavorazioneDTO;
public class ProdFabbisognoLineeProdViewModel { public class ProdFabbisognoLineeProdViewModel {
@ -66,7 +61,7 @@ public class ProdFabbisognoLineeProdViewModel {
return ordiniList; return ordiniList;
} }
public void loadFabbisogno(String ordini, String codMdep, Date dataInizio, Date dataFine, RunnableArgs<List<ProdFabbisognoLineeProdDTO>> onComplete) { public void loadFabbisogno(String ordini, String codMdep, LocalDate dataInizio, LocalDate dataFine, RunnableArgs<List<ProdFabbisognoLineeProdDTO>> onComplete) {
this.sendOnLoadingStarted(); this.sendOnLoadingStarted();
this.mProdFabbisognoLineeProdRESTConsumer.loadFabbisogno(ordini, codMdep, jtbFasi -> { this.mProdFabbisognoLineeProdRESTConsumer.loadFabbisogno(ordini, codMdep, jtbFasi -> {

View File

@ -1,7 +1,7 @@
package it.integry.integrywmsnative.gest.prod_fabbisogno_linee_prod.dto; package it.integry.integrywmsnative.gest.prod_fabbisogno_linee_prod.dto;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date; import java.time.LocalDate;
public class ProdFabbisognoLineeProdDTO { public class ProdFabbisognoLineeProdDTO {
@ -14,8 +14,8 @@ public class ProdFabbisognoLineeProdDTO {
private BigDecimal numCnfVersata; private BigDecimal numCnfVersata;
private BigDecimal qtaFabbisogno; private BigDecimal qtaFabbisogno;
private BigDecimal numCnfFabbisogno; private BigDecimal numCnfFabbisogno;
private Date dataInizio; private LocalDate dataInizio;
private Date dataFine; private LocalDate dataFine;
private String codMgrp; private String codMgrp;
private String descrizioneMgrp; private String descrizioneMgrp;
private String codMsgr; private String codMsgr;
@ -105,20 +105,20 @@ public class ProdFabbisognoLineeProdDTO {
return this; return this;
} }
public Date getDataInizio() { public LocalDate getDataInizio() {
return dataInizio; return dataInizio;
} }
public ProdFabbisognoLineeProdDTO setDataInizio(Date dataInizio) { public ProdFabbisognoLineeProdDTO setDataInizio(LocalDate dataInizio) {
this.dataInizio = dataInizio; this.dataInizio = dataInizio;
return this; return this;
} }
public Date getDataFine() { public LocalDate getDataFine() {
return dataFine; return dataFine;
} }
public ProdFabbisognoLineeProdDTO setDataFine(Date dataFine) { public ProdFabbisognoLineeProdDTO setDataFine(LocalDate dataFine) {
this.dataFine = dataFine; this.dataFine = dataFine;
return this; return this;
} }

View File

@ -336,8 +336,6 @@ public class ProdRientroMerceOrderDetailFragment extends BaseFragment implements
this.mViewModel.createLU(pickedQuantityDTO); this.mViewModel.createLU(pickedQuantityDTO);
this.onLoadingEnded();
}); });
} }

View File

@ -5,6 +5,7 @@ import dagger.Provides;
import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer; import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer; import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.ProduzioneRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer; import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer;
import it.integry.integrywmsnative.gest.prod_rientro_merce.order_detail.rest.ProdRientroMerceOrderDetailRESTConsumer; import it.integry.integrywmsnative.gest.prod_rientro_merce.order_detail.rest.ProdRientroMerceOrderDetailRESTConsumer;
@ -22,8 +23,9 @@ public class ProdRientroMerceOrderDetailModule {
ColliMagazzinoRESTConsumer colliMagazzinoRESTConsumer, ColliMagazzinoRESTConsumer colliMagazzinoRESTConsumer,
PrinterRESTConsumer printerRESTConsumer, PrinterRESTConsumer printerRESTConsumer,
ArticoloRESTConsumer articoloRESTConsumer, ArticoloRESTConsumer articoloRESTConsumer,
SystemRESTConsumer systemRESTConsumer) { SystemRESTConsumer systemRESTConsumer,
return new ProdRientroMerceOrderDetailViewModel(prodRientroMerceOrderDetailRESTConsumer, colliMagazzinoRESTConsumer, printerRESTConsumer, articoloRESTConsumer, systemRESTConsumer); ProduzioneRESTConsumer produzioneRESTConsumer) {
return new ProdRientroMerceOrderDetailViewModel(prodRientroMerceOrderDetailRESTConsumer, colliMagazzinoRESTConsumer, printerRESTConsumer, articoloRESTConsumer, systemRESTConsumer, produzioneRESTConsumer);
} }
} }

View File

@ -23,7 +23,10 @@ import it.integry.integrywmsnative.core.report.ReportType;
import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer; import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer; import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.ProduzioneRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer; import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer;
import it.integry.integrywmsnative.core.rest.model.produzione.CaricoProdFinDTO;
import it.integry.integrywmsnative.core.rest.model.produzione.CaricoProdFinProdottoDTO;
import it.integry.integrywmsnative.core.settings.SettingsManager; import it.integry.integrywmsnative.core.settings.SettingsManager;
import it.integry.integrywmsnative.core.utility.UtilityDB; import it.integry.integrywmsnative.core.utility.UtilityDB;
import it.integry.integrywmsnative.core.utility.UtilityDate; import it.integry.integrywmsnative.core.utility.UtilityDate;
@ -42,6 +45,7 @@ public class ProdRientroMerceOrderDetailViewModel {
private final PrinterRESTConsumer printerRESTConsumer; private final PrinterRESTConsumer printerRESTConsumer;
private final ArticoloRESTConsumer articoloRESTConsumer; private final ArticoloRESTConsumer articoloRESTConsumer;
private final SystemRESTConsumer systemRESTConsumer; private final SystemRESTConsumer systemRESTConsumer;
private final ProduzioneRESTConsumer produzioneRESTConsumer;
private Listener mListener; private Listener mListener;
@ -50,12 +54,14 @@ public class ProdRientroMerceOrderDetailViewModel {
ColliMagazzinoRESTConsumer colliMagazzinoRESTConsumer, ColliMagazzinoRESTConsumer colliMagazzinoRESTConsumer,
PrinterRESTConsumer printerRESTConsumer, PrinterRESTConsumer printerRESTConsumer,
ArticoloRESTConsumer articoloRESTConsumer, ArticoloRESTConsumer articoloRESTConsumer,
SystemRESTConsumer systemRESTConsumer) { SystemRESTConsumer systemRESTConsumer,
ProduzioneRESTConsumer produzioneRESTConsumer) {
this.prodRientroMerceOrderDetailRESTConsumer = prodRientroMerceOrderDetailRESTConsumer; this.prodRientroMerceOrderDetailRESTConsumer = prodRientroMerceOrderDetailRESTConsumer;
this.colliMagazzinoRESTConsumer = colliMagazzinoRESTConsumer; this.colliMagazzinoRESTConsumer = colliMagazzinoRESTConsumer;
this.printerRESTConsumer = printerRESTConsumer; this.printerRESTConsumer = printerRESTConsumer;
this.articoloRESTConsumer = articoloRESTConsumer; this.articoloRESTConsumer = articoloRESTConsumer;
this.systemRESTConsumer = systemRESTConsumer; this.systemRESTConsumer = systemRESTConsumer;
this.produzioneRESTConsumer = produzioneRESTConsumer;
} }
public void setOrder(OrdineLavorazioneDTO order) { public void setOrder(OrdineLavorazioneDTO order) {
@ -65,7 +71,7 @@ public class ProdRientroMerceOrderDetailViewModel {
} }
public void refreshMtbColts() { public void refreshMtbColts() {
this.sendOnLoadingStarted(); //this.sendOnLoadingStarted();
this.mtbColtsOfOrder.postValue(null); this.mtbColtsOfOrder.postValue(null);
this.prodRientroMerceOrderDetailRESTConsumer.getMtbColtsOfOrder(currentOrder, mtbColts -> { this.prodRientroMerceOrderDetailRESTConsumer.getMtbColtsOfOrder(currentOrder, mtbColts -> {
@ -76,7 +82,7 @@ public class ProdRientroMerceOrderDetailViewModel {
} }
this.mtbColtsOfOrder.postValue(mtbColts); this.mtbColtsOfOrder.postValue(mtbColts);
this.sendOnLoadingEnded(); //this.sendOnLoadingEnded();
}, this::sendError); }, this::sendError);
} }
@ -92,7 +98,7 @@ public class ProdRientroMerceOrderDetailViewModel {
" WHERE cod_jfas IS NOT NULL " + " WHERE cod_jfas IS NOT NULL " +
" AND gestione = " + UtilityDB.valueToString(currentOrder.getGestione()) + " AND gestione = " + UtilityDB.valueToString(currentOrder.getGestione()) +
" AND num_ord = " + UtilityDB.valueToString(currentOrder.getNumOrd()) + " AND num_ord = " + UtilityDB.valueToString(currentOrder.getNumOrd()) +
" AND data_ord = " + UtilityDB.valueToString(currentOrder.getDataOrdD()) + " AND data_ord = " + UtilityDB.valueToString(currentOrder.getDataOrd()) +
" ) tmp " + " ) tmp " +
"WHERE (data_iniz IS NOT NULL" + "WHERE (data_iniz IS NOT NULL" +
" AND (data_fine IS NULL OR last_step = id_step))" + " AND (data_fine IS NULL OR last_step = id_step))" +
@ -122,7 +128,7 @@ public class ProdRientroMerceOrderDetailViewModel {
.setCodMart(currentOrder.getCodProd()) .setCodMart(currentOrder.getCodProd())
.setCodTcol(pickedQuantityDTO.getMtbTCol() != null ? pickedQuantityDTO.getMtbTCol().getCodTcol() : null) .setCodTcol(pickedQuantityDTO.getMtbTCol() != null ? pickedQuantityDTO.getMtbTCol().getCodTcol() : null)
.setDataCollo(LocalDate.now()) .setDataCollo(LocalDate.now())
.setDataOrd(currentOrder.getDataOrdD()) .setDataOrd(currentOrder.getDataOrd())
.setNumOrd(currentOrder.getNumOrd()) .setNumOrd(currentOrder.getNumOrd())
.setGestione(currentOrder.getGestione()) .setGestione(currentOrder.getGestione())
.setPartitaMag(currentOrder.getPartitaMag()) .setPartitaMag(currentOrder.getPartitaMag())
@ -133,13 +139,43 @@ public class ProdRientroMerceOrderDetailViewModel {
this.prodRientroMerceOrderDetailRESTConsumer.importColliDaProduzione(importColliDaProduzioneRequestDTO, mtbColtSaved -> { this.prodRientroMerceOrderDetailRESTConsumer.importColliDaProduzione(importColliDaProduzioneRequestDTO, mtbColtSaved -> {
if(SettingsManager.iDB().isProduzioneGeneraDocCar() || SettingsManager.iDB().isProduzioneGeneraDocScar()) {
synchronized (this.mtbColtsOfOrder) { CaricoProdFinDTO caricoProdFinDTO = new CaricoProdFinDTO()
this.mListener.onDataSaved(mtbColtSaved); .setEscludiArticoliGestitiDaWmsInScarico(true)
.setGestione(currentOrder.getGestione())
.setNumOrd(currentOrder.getNumOrd())
.setDataOrd(currentOrder.getDataOrd())
.setCodJfas(pickedQuantityDTO.getCodJfas())
.setCodAnag(currentOrder.getCodAnag())
.setCodMdep(currentOrder.getCodMdep())
.setPreparatoDa(SettingsManager.i().getUser().getUsername())
.setEffettuaCaricoProdotto(SettingsManager.iDB().isProduzioneGeneraDocCar())
.setCreaCaricoDaCollo(true)
.setCodDtipCar(SettingsManager.iDB().getProduzioneCodDtipCar())
.setEffettuaScaricoMateriali(SettingsManager.iDB().isProduzioneGeneraDocScar())
.setCodDtipScar(SettingsManager.iDB().getProduzioneCodDtipScar());
caricoProdFinDTO.getProdotti().getRow()
.add(new CaricoProdFinProdottoDTO()
.setQtaProdAna(pickedQuantityDTO.getQtaCol()));
produzioneRESTConsumer.caricoProdFin(caricoProdFinDTO, () -> {
synchronized (this.mtbColtsOfOrder) {
this.sendOnLoadingEnded();
this.mListener.onDataSaved(mtbColtSaved);
}
}, this::sendError);
} else {
synchronized (this.mtbColtsOfOrder) {
this.sendOnLoadingEnded();
this.mListener.onDataSaved(mtbColtSaved);
}
} }
}, this::sendError); }, this::sendError);
} }

View File

@ -49,7 +49,7 @@ public class ProdRientroMerceOrderDetailRESTConsumer extends _BaseRESTConsumer {
" mtb_colr.ser_collo = mc.ser_collo AND mtb_colr.num_collo = mc.num_collo " + " mtb_colr.ser_collo = mc.ser_collo AND mtb_colr.num_collo = mc.num_collo " +
" WHERE " + " WHERE " +
" mtb_colr.num_ord = " + UtilityDB.valueToString(ordineLavorazioneDTO.getNumOrd()) + " AND" + " mtb_colr.num_ord = " + UtilityDB.valueToString(ordineLavorazioneDTO.getNumOrd()) + " AND" +
" mtb_colr.data_ord = " + UtilityDB.valueToString(ordineLavorazioneDTO.getDataOrdD()) + " AND" + " mtb_colr.data_ord = " + UtilityDB.valueToString(ordineLavorazioneDTO.getDataOrd()) + " AND" +
" mtb_colr.gestione = 'L' AND" + " mtb_colr.gestione = 'L' AND" +
" mc.segno = 1"; " mc.segno = 1";

View File

@ -2,7 +2,6 @@ package it.integry.integrywmsnative.gest.prod_rientro_merce.order_detail.rest.dt
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDate; import java.time.LocalDate;
import java.util.Date;
public class ImportColliDaProduzioneRequestDTO { public class ImportColliDaProduzioneRequestDTO {
@ -18,7 +17,7 @@ public class ImportColliDaProduzioneRequestDTO {
private BigDecimal qtaCnf; private BigDecimal qtaCnf;
private LocalDate dataCollo; private LocalDate dataCollo;
private Date dataOrd; private LocalDate dataOrd;
private int numOrd; private int numOrd;
private String codJfas; private String codJfas;
private String gestione; private String gestione;
@ -119,11 +118,11 @@ public class ImportColliDaProduzioneRequestDTO {
return this; return this;
} }
public Date getDataOrd() { public LocalDate getDataOrd() {
return dataOrd; return dataOrd;
} }
public ImportColliDaProduzioneRequestDTO setDataOrd(Date dataOrd) { public ImportColliDaProduzioneRequestDTO setDataOrd(LocalDate dataOrd) {
this.dataOrd = dataOrd; this.dataOrd = dataOrd;
return this; return this;
} }

View File

@ -16,6 +16,7 @@ import com.annimon.stream.ComparatorCompat;
import com.annimon.stream.Stream; import com.annimon.stream.Stream;
import java.math.RoundingMode; import java.math.RoundingMode;
import java.time.LocalDate;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -120,7 +121,7 @@ public class ProdRientroMerceOrderListFragment extends Fragment {
.comparing(OrdineLavorazioneDTO::getCodAnag) .comparing(OrdineLavorazioneDTO::getCodAnag)
.thenComparing(ComparatorCompat.comparing(ordineLavorazioneDTO -> ordineLavorazioneDTO.getDescCommessa() != null ? ordineLavorazioneDTO.getDescCommessa() : "zzzzzzzz")) .thenComparing(ComparatorCompat.comparing(ordineLavorazioneDTO -> ordineLavorazioneDTO.getDescCommessa() != null ? ordineLavorazioneDTO.getDescCommessa() : "zzzzzzzz"))
.thenComparing(ComparatorCompat.comparing(ordineLavorazioneDTO -> ordineLavorazioneDTO.getDataConsCommessaD() != null ? String.valueOf(ordineLavorazioneDTO.getDataConsCommessaD().getTime()) : "999999999999")).reversed() .thenComparing(ComparatorCompat.comparing(ordineLavorazioneDTO -> ordineLavorazioneDTO.getDataConsCommessaD() != null ? String.valueOf(ordineLavorazioneDTO.getDataConsCommessaD().getTime()) : "999999999999")).reversed()
.thenComparing(ComparatorCompat.comparing(ordineLavorazioneDTO -> ordineLavorazioneDTO.getDataOrd() != null ? ordineLavorazioneDTO.getDataOrd() : "zzzzzzzz")).reversed() .thenComparing(ComparatorCompat.comparing(ordineLavorazioneDTO -> ordineLavorazioneDTO.getDataOrd() != null ? ordineLavorazioneDTO.getDataOrd() : LocalDate.MAX)).reversed()
.thenComparing(ComparatorCompat.comparing(OrdineLavorazioneDTO::getNumOrd)); .thenComparing(ComparatorCompat.comparing(OrdineLavorazioneDTO::getNumOrd));
if (dataList == null) return new ArrayList<>(); if (dataList == null) return new ArrayList<>();

View File

@ -178,7 +178,7 @@ public class ProdVersamentoMaterialeFragment extends BaseFragment implements Pro
listModel.setOriginalMtbAart(this.mViewModel.getMtbColrMutableLiveData().getValue().getMtbAart()); listModel.setOriginalMtbAart(this.mViewModel.getMtbColrMutableLiveData().getValue().getMtbAart());
listModel.setPreDescriptionText( listModel.setPreDescriptionText(
getString(R.string.ord_testata, String.valueOf(x.getNumOrd()), UtilityDate.formatDate(x.getDataOrdD(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN))); getString(R.string.ord_testata, String.valueOf(x.getNumOrd()), UtilityDate.formatDate(x.getDataOrd(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN)));
listModel.setDescriptionText(x.getCodProd() + " " + x.getDescrizioneProd()); listModel.setDescriptionText(x.getCodProd() + " " + x.getDescrizioneProd());

View File

@ -2,11 +2,11 @@ package it.integry.integrywmsnative.gest.prod_versamento_materiale.dto;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode; import java.math.RoundingMode;
import java.time.LocalDate;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import it.integry.integrywmsnative.core.di.BindableFloat; import it.integry.integrywmsnative.core.di.BindableFloat;
import it.integry.integrywmsnative.core.rest.model.OrdineUscitaInevasoDTO;
import it.integry.integrywmsnative.core.utility.UtilityDate; import it.integry.integrywmsnative.core.utility.UtilityDate;
public class OrdineLavorazioneDTO { public class OrdineLavorazioneDTO {
@ -37,7 +37,7 @@ public class OrdineLavorazioneDTO {
private BigDecimal numPedane; private BigDecimal numPedane;
private String dataOrd; private LocalDate dataOrd;
private String flagEvasoProd; private String flagEvasoProd;
@ -141,16 +141,13 @@ public class OrdineLavorazioneDTO {
this.posRiga = posRiga; this.posRiga = posRiga;
} }
public String getDataOrd() { public LocalDate getDataOrd() {
return dataOrd; return dataOrd;
} }
public Date getDataOrdD() { public OrdineLavorazioneDTO setDataOrd(LocalDate dataOrd) {
return UtilityDate.recognizeDateWithExceptionHandler(dataOrd);
}
public void setDataOrd(String dataOrd) {
this.dataOrd = dataOrd; this.dataOrd = dataOrd;
return this;
} }
public String getFlagEvasoProd() { public String getFlagEvasoProd() {

View File

@ -17,12 +17,14 @@ import androidx.preference.PreferenceManager;
import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.LinearLayoutManager;
import com.annimon.stream.Stream; import com.annimon.stream.Stream;
import com.google.android.material.snackbar.Snackbar;
import com.tfb.fbtoast.FBToast; import com.tfb.fbtoast.FBToast;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDate; import java.time.LocalDate;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Objects;
import javax.inject.Inject; import javax.inject.Inject;
@ -860,13 +862,16 @@ public class SpedizioneActivity extends BaseActivity implements SpedizioneViewMo
} }
@Override @Override
public void onError(Exception ex) { public void onError(Exception ex, boolean useSnackbar) {
this.onLoadingEnded(); this.onLoadingEnded();
if (ex instanceof InvalidPesoKGException) { if (ex instanceof InvalidPesoKGException) {
UtilityToast.showToast(ex.getMessage()); UtilityToast.showToast(ex.getMessage());
} else { } else {
UtilityExceptions.defaultException(this, ex); if(useSnackbar)
Snackbar.make(mBindings.getRoot(), Objects.requireNonNull(ex.getMessage()), Snackbar.LENGTH_LONG).show();
else
UtilityExceptions.defaultException(this, ex);
} }
BarcodeManager.enable(); BarcodeManager.enable();

View File

@ -365,7 +365,11 @@ public class SpedizioneViewModel {
} }
private void sendError(Exception ex) { private void sendError(Exception ex) {
if (this.mListener != null) mListener.onError(ex); if (this.mListener != null) mListener.onError(ex, false);
}
private void sendError(Exception ex, boolean useSnackbar) {
if (this.mListener != null) mListener.onError(ex, useSnackbar);
} }
private void sendLUOpened(MtbColt mtbColt) { private void sendLUOpened(MtbColt mtbColt) {
@ -667,10 +671,16 @@ public class SpedizioneViewModel {
if (!UtilityString.isNullOrEmpty(ean128Model.Sscc)) { if (!UtilityString.isNullOrEmpty(ean128Model.Sscc)) {
this.executeEtichettaLU(ean128Model.Sscc, onComplete); this.executeEtichettaLU(ean128Model.Sscc, onComplete);
} else {
PickDataDTO pickDataDTO = PickDataDTO.fromEan128(ean128Model); } else {
this.loadArticolo(barcodeProd, pickDataDTO, onComplete); if(SettingsManager.iDB().isFlagSpedizioneEnableManualPick()) {
PickDataDTO pickDataDTO = PickDataDTO.fromEan128(ean128Model);
this.loadArticolo(barcodeProd, pickDataDTO, onComplete);
} else {
this.sendError(new NoResultFromBarcodeException(), true);
onComplete.run();
}
} }
} else { } else {
//EAN 128 non completo o comunque mancano i riferimenti al prodotto //EAN 128 non completo o comunque mancano i riferimenti al prodotto
@ -693,7 +703,7 @@ public class SpedizioneViewModel {
private void loadArticolo(String barcodeProd, PickDataDTO pickData, Runnable onComplete) { private void loadArticolo(String barcodeProd, PickDataDTO pickData, Runnable onComplete) {
this.mArticoloRESTConsumer.searchByBarcode(barcodeProd, mtbAartList -> { this.mArticoloRESTConsumer.searchByBarcode(barcodeProd, mtbAartList -> {
if (mtbAartList != null && mtbAartList.size() > 0) { if (mtbAartList != null && !mtbAartList.isEmpty()) {
if (mtbAartList.size() == 1) { if (mtbAartList.size() == 1) {
this.searchArtFromAnag(mtbAartList.get(0), pickData, onComplete); this.searchArtFromAnag(mtbAartList.get(0), pickData, onComplete);
} else { } else {
@ -855,7 +865,7 @@ public class SpedizioneViewModel {
private void loadMatchedRows(List<PickingObjectDTO> matchedRows) { private void loadMatchedRows(List<PickingObjectDTO> matchedRows) {
if (matchedRows == null || matchedRows.size() == 0) { if (matchedRows == null || matchedRows.isEmpty()) {
this.sendError(new NoArtsFoundException()); this.sendError(new NoArtsFoundException());
} else if (matchedRows.size() == 1) { } else if (matchedRows.size() == 1) {
PickingObjectDTO matchedItem = matchedRows.get(0); PickingObjectDTO matchedItem = matchedRows.get(0);
@ -2084,7 +2094,7 @@ public class SpedizioneViewModel {
void onFilterRemoved(); void onFilterRemoved();
void onError(Exception ex); void onError(Exception ex, boolean useSnackbar);
void onFullItemDispatched(PickingObjectDTO pickingObjectDTO, MtbAart mtbAart, BigDecimal initialNumCnf, BigDecimal initialQtaCnf, BigDecimal initialQtaTot, BigDecimal totalQtaOrd, BigDecimal totalNumCnfOrd, BigDecimal qtaCnfOrd, BigDecimal totalQtaToBeTaken, BigDecimal totalNumCnfToBeTaken, BigDecimal qtaCnfToBeTaken, BigDecimal totalQtaAvailable, BigDecimal totalNumCnfAvailable, BigDecimal qtaCnfAvailable, String partitaMag, LocalDate dataScad, boolean canOverflowOrderQuantity, boolean canBatchLotBeChanged, RunnableArgss<PickedQuantityDTO, Boolean> onComplete); void onFullItemDispatched(PickingObjectDTO pickingObjectDTO, MtbAart mtbAart, BigDecimal initialNumCnf, BigDecimal initialQtaCnf, BigDecimal initialQtaTot, BigDecimal totalQtaOrd, BigDecimal totalNumCnfOrd, BigDecimal qtaCnfOrd, BigDecimal totalQtaToBeTaken, BigDecimal totalNumCnfToBeTaken, BigDecimal qtaCnfToBeTaken, BigDecimal totalQtaAvailable, BigDecimal totalNumCnfAvailable, BigDecimal qtaCnfAvailable, String partitaMag, LocalDate dataScad, boolean canOverflowOrderQuantity, boolean canBatchLotBeChanged, RunnableArgss<PickedQuantityDTO, Boolean> onComplete);

View File

@ -64,7 +64,7 @@ public class DialogProgressView extends DialogFragment {
} }
public void show(@NonNull FragmentManager manager) { public void show(@NonNull FragmentManager manager) {
if (!progressOpened && !isAdded() && !isInLayout()) { if (!isAdded() && !isInLayout()) {
this.progressOpened = true; this.progressOpened = true;
super.show(manager, "loading-dialog"); super.show(manager, "loading-dialog");
} }
@ -72,7 +72,7 @@ public class DialogProgressView extends DialogFragment {
@Override @Override
public void dismiss() { public void dismiss() {
if (progressOpened) { if (isAdded() || isInLayout()) {
this.progressOpened = false; this.progressOpened = false;
super.dismissAllowingStateLoss(); super.dismissAllowingStateLoss();
} }

View File

@ -48,12 +48,14 @@ public class DialogChooseArtFromListaArtsView extends BaseDialogFragment {
initRecyclerView(binding, mListaArts); initRecyclerView(binding, mListaArts);
setCancelable(false);
var alertDialog = new MaterialAlertDialogBuilder(requireContext()) var alertDialog = new MaterialAlertDialogBuilder(requireContext())
.setView(binding.getRoot()) .setView(binding.getRoot())
.setCancelable(false) .setCancelable(isCancelable())
.create(); .create();
alertDialog.setCanceledOnTouchOutside(false); alertDialog.setCanceledOnTouchOutside(isCancelable());
alertDialog.setOnShowListener(this); alertDialog.setOnShowListener(this);
return alertDialog; return alertDialog;
} }

View File

@ -129,7 +129,7 @@
style="@style/AppTheme.NewMaterial.Text" style="@style/AppTheme.NewMaterial.Text"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="@{UtilityDate.formatDate(view.currentOrder.dataOrdD, UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN)}" android:text="@{UtilityDate.formatDate(view.currentOrder.dataOrd, UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN)}"
android:textAppearance="@style/AppTheme.NewMaterial.Text.Small" android:textAppearance="@style/AppTheme.NewMaterial.Text.Small"
tools:text="28 maggio 2021" /> tools:text="28 maggio 2021" />

View File

@ -123,7 +123,7 @@
style="@style/AppTheme.NewMaterial.Text" style="@style/AppTheme.NewMaterial.Text"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="@{UtilityDate.formatDate(view.currentOrder.dataOrdD, UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN)}" android:text="@{UtilityDate.formatDate(view.currentOrder.dataOrd, UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN)}"
android:textAppearance="@style/AppTheme.NewMaterial.Text.Small" android:textAppearance="@style/AppTheme.NewMaterial.Text.Small"
tools:text="28 maggio 2021" /> tools:text="28 maggio 2021" />