Modificato recupero colli all'avvio dell'applicazione.

Aggiunta la possibilità di versare in produzione le UL V+.
This commit is contained in:
Giuseppe Scorrano 2020-02-07 11:29:15 +01:00
parent caeea4c779
commit 2e21982ea7
8 changed files with 44 additions and 21 deletions

View File

@ -23,10 +23,11 @@ import java.util.Random;
import it.integry.integrywmsnative.core.CommonConst;
import it.integry.integrywmsnative.core.model.MtbColt;
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO;
public class ColliDataRecover {
private static class RecoverDTO {
public static class RecoverDTO {
private int id;
private int numCollo;
private String serCollo;
@ -34,6 +35,8 @@ public class ColliDataRecover {
private String gestioneCollo;
private String filtro;
private List<OrdineVenditaInevasoDTO> testateOrdini;
public int getId() {
return id;
}
@ -87,6 +90,25 @@ public class ColliDataRecover {
this.filtro = filtro;
return this;
}
public List<OrdineVenditaInevasoDTO> getTestateOrdini() {
return testateOrdini;
}
public RecoverDTO setTestateOrdini(List<OrdineVenditaInevasoDTO> testateOrdini) {
this.testateOrdini = testateOrdini;
return this;
}
public MtbColt getMtbColt() {
return new MtbColt()
.setNumCollo(getNumCollo())
.setSerCollo(getSerCollo())
.setGestione(getGestioneCollo())
.setDataCollo(getDataCollo())
.setFiltroOrdini(getFiltro());
}
}
private static Context mContext;
@ -115,18 +137,11 @@ public class ColliDataRecover {
} else return null;
}
public static MtbColt getSession(Integer sessionID) {
public static RecoverDTO getSession(Integer sessionID) {
if(sessionID == null) return null;
RecoverDTO dto = getIfExists(sessionID);
return new MtbColt()
.setNumCollo(dto.getNumCollo())
.setSerCollo(dto.getSerCollo())
.setGestione(dto.getGestioneCollo())
.setDataCollo(dto.getDataCollo())
.setFiltroOrdini(dto.getFiltro());
return getIfExists(sessionID);
}
private static RecoverDTO getIfExists(int id) {
@ -138,7 +153,7 @@ public class ColliDataRecover {
return recoverDTOOptional.isPresent() ? recoverDTOOptional.get() : null;
}
public static int startNewSession(MtbColt mtbColtSession) {
public static int startNewSession(MtbColt mtbColtSession, List<OrdineVenditaInevasoDTO> testateOrdini) {
Integer newId = null;
while(newId == null) {
@ -154,7 +169,8 @@ public class ColliDataRecover {
.setNumCollo(mtbColtSession.getNumCollo())
.setSerCollo(mtbColtSession.getSerCollo())
.setGestioneCollo(mtbColtSession.getGestione())
.setFiltro(mtbColtSession.getFiltroOrdini());
.setFiltro(mtbColtSession.getFiltroOrdini())
.setTestateOrdini(testateOrdini);
mtbColtsSessions.add(recoverDTO);
updateLocalFile();

View File

@ -19,6 +19,7 @@ import java.util.List;
import it.integry.integrywmsnative.MainActivity;
import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.class_router.interfaces.IOrdiniVendita;
import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer;
import it.integry.integrywmsnative.core.rest.watcher.ServerStatusChecker;
import it.integry.integrywmsnative.core.class_router.BaseCustomConfiguration;
@ -145,10 +146,15 @@ public class MainFragment extends Fragment implements ITitledFragment, IScrollab
private void cyclicRecover(Iterator<Integer> sessionsIterator, Runnable onComplete, RunnableArgs<Exception> onFailed) {
if(sessionsIterator.hasNext()) {
Integer recoveredMtbColtID = sessionsIterator.next();
MtbColt recoveredMtbColt = ColliDataRecover.getSession(recoveredMtbColtID);
ColliDataRecover.RecoverDTO recoveredMtbColtDto = ColliDataRecover.getSession(recoveredMtbColtID);
MtbColt recoveredMtbColt = recoveredMtbColtDto.getMtbColt();
if(recoveredMtbColt != null && (recoveredMtbColt.getGestioneEnum() == GestioneEnum.VENDITA || recoveredMtbColt.getGestioneEnum() == GestioneEnum.LAVORAZIONE) && !UtilityString.isNullOrEmpty(recoveredMtbColt.getFiltroOrdini())) {
ColliMagazzinoRESTConsumer.distribuisciCollo(recoveredMtbColt, SettingsManager.iDB().getDefaultCriterioDistribuzione(),
IOrdiniVendita ordiniVendita = ClassRouter.getInstance(ClassRouter.PATH.ORDINI_VENDITA);
ColliMagazzinoRESTConsumer.updateDataFine(getActivity(), null, recoveredMtbColt, () -> {
ordiniVendita.distribuisciCollo(null, recoveredMtbColt, recoveredMtbColtDto.getTestateOrdini(),
mtbColts -> {
ColliDataRecover.closeSession(recoveredMtbColtID);
@ -164,6 +170,7 @@ public class MainFragment extends Fragment implements ITitledFragment, IScrollab
cyclicRecover(sessionsIterator, onComplete, onFailed);
});
});
} else {
ColliDataRecover.closeSession(recoveredMtbColtID);
cyclicRecover(sessionsIterator, onComplete, onFailed);

View File

@ -89,7 +89,7 @@ public class ProdVersamentoMaterialViewModel {
DialogScanOrCreateLU.make(mContext, false, false, true, false, mtbColt -> {
if (mtbColt == null) {
((IPoppableActivity) mContext).pop();
} else if ((mtbColt.getGestioneEnum() == GestioneEnum.ACQUISTO || mtbColt.getGestioneEnum() == GestioneEnum.LAVORAZIONE) && mtbColt.getSegno().equals(+1)) {
} else if ((mtbColt.getGestioneEnum() == GestioneEnum.ACQUISTO || mtbColt.getGestioneEnum() == GestioneEnum.LAVORAZIONE || mtbColt.getGestioneEnum() == GestioneEnum.VENDITA) && mtbColt.getSegno().equals(+1)) {
if (mtbColt.getMtbColr() == null || mtbColt.getMtbColr().size() == 0) {
DialogSimpleMessageHelper.makeWarningDialog(mContext,

View File

@ -337,7 +337,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
}
public void recoverUL(MtbColt recoveredMtbColt){
mtbColtSessionID = ColliDataRecover.startNewSession(recoveredMtbColt);
mtbColtSessionID = ColliDataRecover.startNewSession(recoveredMtbColt, mTestateOrdini);
setULToCurrentContext(recoveredMtbColt);
refreshOrderBy(false);
}
@ -825,7 +825,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
mtbColt
.setNumCollo(value.getNumCollo())
.setDataCollo(value.getDataColloS());
mtbColtSessionID = ColliDataRecover.startNewSession(mtbColt);
mtbColtSessionID = ColliDataRecover.startNewSession(mtbColt, mTestateOrdini);
value
.setDisablePrint(disablePrint)

View File

@ -18,7 +18,7 @@ public class OrdiniVendita implements IOrdiniVendita {
@Override
public void distribuisciCollo(Dialog progress, MtbColt mtbColt, List<OrdineVenditaInevasoDTO> testateOrdini, RunnableArgs<List<MtbColt>> onComplete, RunnableArgs<Exception> onFailed) {
UtilityToast.showToast("Avviato metodo in BaseFeature");
// UtilityToast.showToast("Avviato metodo in BaseFeature");
ColliMagazzinoRESTConsumer.distribuisciCollo(mtbColt, SettingsManager.iDB().getDefaultCriterioDistribuzione(),
onComplete,

View File

@ -18,7 +18,7 @@ public class OrdiniVendita implements IOrdiniVendita {
@Override
public void distribuisciCollo(Dialog progress, MtbColt mtbColt, List<OrdineVenditaInevasoDTO> testateOrdini, RunnableArgs<List<MtbColt>> onComplete, RunnableArgs<Exception> onFailed) {
UtilityToast.showToast("Avviato metodo in Frudis");
// UtilityToast.showToast("Avviato metodo in Frudis");
ColliMagazzinoRESTConsumer.distribuisciCollo(mtbColt, SettingsManager.iDB().getDefaultCriterioDistribuzione(),
onComplete,

View File

@ -18,7 +18,7 @@ public class OrdiniVendita implements IOrdiniVendita {
@Override
public void distribuisciCollo(Dialog progress, MtbColt mtbColt, List<OrdineVenditaInevasoDTO> testateOrdini, RunnableArgs<List<MtbColt>> onComplete, RunnableArgs<Exception> onFailed) {
UtilityToast.showToast("Avviato metodo in BaseFeature");
// UtilityToast.showToast("Avviato metodo in BaseFeature");
ColliMagazzinoRESTConsumer.distribuisciCollo(mtbColt, SettingsManager.iDB().getDefaultCriterioDistribuzione(),
onComplete,

View File

@ -17,7 +17,7 @@ public class OrdiniVendita implements IOrdiniVendita {
@Override
public void distribuisciCollo(Dialog progress, MtbColt mtbColt, List<OrdineVenditaInevasoDTO> testateOrdini, RunnableArgs<List<MtbColt>> onComplete, RunnableArgs<Exception> onFailed) {
UtilityToast.showToast("Avviato metodo in BaseFeature");
// UtilityToast.showToast("Avviato metodo in BaseFeature");
ColliMagazzinoRESTConsumer.distribuisciCollo(mtbColt, SettingsManager.iDB().getDefaultCriterioDistribuzione(),
onComplete,