diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_picking/AccettazionePickingActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_picking/AccettazionePickingActivity.java index 1c56bb46..b5236740 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_picking/AccettazionePickingActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_picking/AccettazionePickingActivity.java @@ -234,17 +234,34 @@ public class AccettazionePickingActivity extends BaseActivity implements Accetta accettazioneListModel.setDescrizione(x.getSitArtOrdDTO().getDescrizioneCommessa()); - BigDecimal qtaEvasa = BigDecimal.ZERO; - if(x.getWithdrawMtbColrs().size() > 0) { - qtaEvasa = Stream.of(x.getWithdrawMtbColrs()) - .map(MtbColr::getQtaCol) - .reduce(BigDecimal.ZERO, BigDecimal::add); + if (SettingsManager.iDB().isFlagForceAllToColli() || (x.getMtbAart() == null || !x.getMtbAart().isFlagQtaCnfFissaBoolean())) { + BigDecimal numCnfEvasa = BigDecimal.ZERO; + + if(x.getWithdrawMtbColrs().size() > 0) { + numCnfEvasa = Stream.of(x.getWithdrawMtbColrs()) + .map(MtbColr::getNumCnf) + .reduce(BigDecimal.ZERO, BigDecimal::add); + } + + accettazioneListModel.setQtaEvasa(numCnfEvasa); + accettazioneListModel.setQtaTot(x.getSitArtOrdDTO().getNumCnfOrd()); + accettazioneListModel.setUntMis("col"); + } else { + BigDecimal qtaEvasa = BigDecimal.ZERO; + + if(x.getWithdrawMtbColrs().size() > 0) { + qtaEvasa = Stream.of(x.getWithdrawMtbColrs()) + .map(MtbColr::getQtaCol) + .reduce(BigDecimal.ZERO, BigDecimal::add); + } + + accettazioneListModel.setQtaEvasa(qtaEvasa); + accettazioneListModel.setQtaTot(x.getSitArtOrdDTO().getQtaDaEvadere()); + if (x.getMtbAart() != null) + accettazioneListModel.setUntMis(x.getMtbAart().getUntMis()); } - accettazioneListModel.setQtaEvasa(qtaEvasa); - accettazioneListModel.setQtaTot(x.getSitArtOrdDTO().getQtaDaEvadere()); - if (x.getMtbAart() != null) accettazioneListModel.setUntMis(x.getMtbAart().getUntMis()); @@ -271,17 +288,33 @@ public class AccettazionePickingActivity extends BaseActivity implements Accetta accettazioneListModel.setDescrizione(x.getSitArtOrdDTO().getDescrizioneCommessa()); - BigDecimal qtaEvasa = BigDecimal.ZERO; + if (SettingsManager.iDB().isFlagForceAllToColli() || (x.getMtbAart() == null || !x.getMtbAart().isFlagQtaCnfFissaBoolean())) { + BigDecimal numCnfEvasa = BigDecimal.ZERO; - if(x.getWithdrawMtbColrs().size() > 0) { - qtaEvasa = Stream.of(x.getWithdrawMtbColrs()) - .map(MtbColr::getQtaCol) - .reduce(BigDecimal.ZERO, BigDecimal::add); + if(x.getWithdrawMtbColrs().size() > 0) { + numCnfEvasa = Stream.of(x.getWithdrawMtbColrs()) + .map(MtbColr::getNumCnf) + .reduce(BigDecimal.ZERO, BigDecimal::add); + } + + accettazioneListModel.setQtaEvasa(numCnfEvasa); + accettazioneListModel.setQtaTot(x.getSitArtOrdDTO().getNumCnfOrd()); + accettazioneListModel.setUntMis("col"); + } else { + BigDecimal qtaEvasa = BigDecimal.ZERO; + + if(x.getWithdrawMtbColrs().size() > 0) { + qtaEvasa = Stream.of(x.getWithdrawMtbColrs()) + .map(MtbColr::getQtaCol) + .reduce(BigDecimal.ZERO, BigDecimal::add); + } + + accettazioneListModel.setQtaEvasa(qtaEvasa); + accettazioneListModel.setQtaTot(x.getSitArtOrdDTO().getQtaDaEvadere()); + if (x.getMtbAart() != null) + accettazioneListModel.setUntMis(x.getMtbAart().getUntMis()); } - accettazioneListModel.setQtaEvasa(qtaEvasa); - accettazioneListModel.setQtaTot(x.getSitArtOrdDTO().getQtaDaEvadere()); - if (x.getMtbAart() != null) accettazioneListModel.setUntMis(x.getMtbAart().getUntMis()); @@ -309,20 +342,35 @@ public class AccettazionePickingActivity extends BaseActivity implements Accetta accettazioneListModel.setBadge2(String.valueOf(x.getSitArtOrdDTO().getNumOrd())); - BigDecimal qtaEvasa = BigDecimal.ZERO; + if (SettingsManager.iDB().isFlagForceAllToColli() || (x.getMtbAart() == null || !x.getMtbAart().isFlagQtaCnfFissaBoolean())) { + BigDecimal numCnfEvasa = BigDecimal.ZERO; - if(x.getWithdrawMtbColrs().size() > 0) { - qtaEvasa = Stream.of(x.getWithdrawMtbColrs()) - .map(MtbColr::getQtaCol) - .reduce(BigDecimal.ZERO, BigDecimal::add); + if(x.getWithdrawMtbColrs().size() > 0) { + numCnfEvasa = Stream.of(x.getWithdrawMtbColrs()) + .map(MtbColr::getNumCnf) + .reduce(BigDecimal.ZERO, BigDecimal::add); + } + + accettazioneListModel.setQtaEvasa(numCnfEvasa); + accettazioneListModel.setQtaTot(x.getSitArtOrdDTO().getNumCnfOrd()); + accettazioneListModel.setUntMis("col"); + } else { + BigDecimal qtaEvasa = BigDecimal.ZERO; + + if(x.getWithdrawMtbColrs().size() > 0) { + qtaEvasa = Stream.of(x.getWithdrawMtbColrs()) + .map(MtbColr::getQtaCol) + .reduce(BigDecimal.ZERO, BigDecimal::add); + } + + accettazioneListModel.setQtaEvasa(qtaEvasa); + accettazioneListModel.setQtaTot(x.getSitArtOrdDTO().getQtaDaEvadere()); + if (x.getMtbAart() != null) + accettazioneListModel.setUntMis(x.getMtbAart().getUntMis()); } - accettazioneListModel.setQtaEvasa(qtaEvasa); - accettazioneListModel.setQtaTot(x.getSitArtOrdDTO().getQtaDaEvadere()); - if (x.getMtbAart() != null) { accettazioneListModel.setDescrizione(x.getMtbAart().getDescrizioneEstesa()); - accettazioneListModel.setUntMis(x.getMtbAart().getUntMis()); } accettazioneListModel.setOriginalModel(x); @@ -481,7 +529,7 @@ public class AccettazionePickingActivity extends BaseActivity implements Accetta } @Override - public void onItemDispatched(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, Date dataScad, boolean canPartitaMagBeChanged, RunnableArgss onComplete) { + public void onItemDispatched(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, Date dataScad, boolean canPartitaMagBeChanged, boolean canOverflowQuantity, RunnableArgss onComplete) { DialogInputQuantityV2DTO dialogInputQuantityV2DTO = new DialogInputQuantityV2DTO() .setMtbAart(mtbAart) .setInitialNumCnf(initialNumCnf) @@ -499,7 +547,8 @@ public class AccettazionePickingActivity extends BaseActivity implements Accetta .setPartitaMag(partitaMag) .setDataScad(dataScad) .setCanPartitaMagBeChanged(canPartitaMagBeChanged) - .setCanLUBeClosed(true); + .setCanLUBeClosed(true) + .setCanOverflowOrderQuantity(canOverflowQuantity); DialogInputQuantityV2 .newInstance(dialogInputQuantityV2DTO, (resultDTO, shouldCloseLU) -> { diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_picking/AccettazionePickingViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_picking/AccettazionePickingViewModel.java index 85f0f2a4..84209fc5 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_picking/AccettazionePickingViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_picking/AccettazionePickingViewModel.java @@ -851,6 +851,7 @@ public class AccettazionePickingViewModel { partitaMag, dataScad, canPartitaMagBeChanged, + true, onComplete); } @@ -899,7 +900,8 @@ public class AccettazionePickingViewModel { BigDecimal qtaCnfAvailable, String partitaMag, Date dataScad, - boolean canOverflowOrderQuantity, + boolean canPartitaMagBeChanged, + boolean canOverflowQuantity, RunnableArgss onComplete); void onRowSaved(); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/RettificaGiacenzeViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/RettificaGiacenzeViewModel.java index 3c8d5578..4c3e832f 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/RettificaGiacenzeViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/RettificaGiacenzeViewModel.java @@ -570,16 +570,16 @@ public class RettificaGiacenzeViewModel { mtbColt.setOperation(CommonModelConsts.OPERATION.NO_OP); final MtbColr mtbColr = (MtbColr) mtbColrToUpdate.clone(); - mtbColr.setOperation(CommonModelConsts.OPERATION.UPDATE); mtbColr - .setNumCnf(numCnf) + .setNumCnf(numCnf.subtract(mtbColr.getNumCnf())) .setQtaCnf(qtaCnf) - .setQtaCol(qtaTot) + .setQtaCol(qtaTot.subtract(mtbColr.getQtaCol())) .setPartitaMag(partitaMag) .setDataScadPartita(dataScad) .setUtente(SettingsManager.i().getUser().getFullname()) .setCausale(MtbColr.Causale.RETTIFICA) - .setDatetimeRow(UtilityDate.getDateInstance()); + .setDatetimeRow(UtilityDate.getDateInstance()) + .setOperation(CommonModelConsts.OPERATION.INSERT); mtbColt.getMtbColr().add(mtbColr); @@ -626,8 +626,17 @@ public class RettificaGiacenzeViewModel { mtbColt.setOperation(CommonModelConsts.OPERATION.NO_OP); MtbColr mtbColr = (MtbColr) mtbColrToDelete.clone(); + mtbColr + .setNumCnf(mtbColr.getNumCnf().multiply(new BigDecimal(-1))) + .setQtaCnf(mtbColr.getQtaCnf()) + .setQtaCol(mtbColr.getQtaCol().multiply(new BigDecimal(-1))) + .setPartitaMag(mtbColr.getPartitaMag()) + .setDataScadPartita(mtbColr.getDataScadPartitaD()) + .setUtente(SettingsManager.i().getUser().getFullname()) + .setCausale(MtbColr.Causale.RETTIFICA) + .setDatetimeRow(UtilityDate.getDateInstance()) + .setOperation(CommonModelConsts.OPERATION.INSERT); - mtbColr.setOperation(CommonModelConsts.OPERATION.DELETE); mtbColt.getMtbColr().add(mtbColr); this.mColliMagazzinoRESTConsumer.saveCollo(mtbColt, (value) -> { diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/viewmodel/UltimeConsegneClienteViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/viewmodel/UltimeConsegneClienteViewModel.java index 4ee6af45..c264dd79 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/viewmodel/UltimeConsegneClienteViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/viewmodel/UltimeConsegneClienteViewModel.java @@ -1,7 +1,6 @@ package it.integry.integrywmsnative.gest.ultime_consegne_cliente.viewmodel; import android.app.Dialog; -import android.app.ProgressDialog; import android.content.Context; import android.view.View; @@ -15,14 +14,14 @@ import java.util.List; import it.integry.integrywmsnative.R; import it.integry.integrywmsnative.core.model.GtbAnag; +import it.integry.integrywmsnative.core.rest.model.DocumentoResoDTO; import it.integry.integrywmsnative.core.settings.SettingsManager; import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.core.utility.UtilityProgress; import it.integry.integrywmsnative.databinding.FragmentMainUltimeConsegneClienteBinding; +import it.integry.integrywmsnative.gest.picking_resi.PickingResiActivity; import it.integry.integrywmsnative.gest.ultime_consegne_cliente.dialog.DialogUltimeConsegneFiltroAvanzato; import it.integry.integrywmsnative.gest.ultime_consegne_cliente.rest.UltimeConsegneClienteRESTConsumer; -import it.integry.integrywmsnative.gest.picking_resi.PickingResiActivity; -import it.integry.integrywmsnative.core.rest.model.DocumentoResoDTO; public class UltimeConsegneClienteViewModel { @@ -96,9 +95,8 @@ public class UltimeConsegneClienteViewModel { currentCodAnagFilter, null, null, - 365, + 548, consegne -> { - this.mItems = consegne; this.initDataAdapter(consegne); @@ -109,7 +107,6 @@ public class UltimeConsegneClienteViewModel { mAdapter.updateItems(mRenderedItems); progressDialog.dismiss(); - }, ex -> { UtilityExceptions.defaultException(mContext, ex, progressDialog); }); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/versamento_merce/viewmodel/VersamentoMerceViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/versamento_merce/viewmodel/VersamentoMerceViewModel.java index 2b9040fc..c327d6e1 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/versamento_merce/viewmodel/VersamentoMerceViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/versamento_merce/viewmodel/VersamentoMerceViewModel.java @@ -1,13 +1,12 @@ package it.integry.integrywmsnative.gest.versamento_merce.viewmodel; -import android.app.Activity; import android.app.Dialog; -import android.content.Context; import android.text.Html; import android.text.SpannableString; import androidx.databinding.ObservableArrayList; import androidx.databinding.ObservableField; +import androidx.fragment.app.FragmentActivity; import com.annimon.stream.Stream; @@ -43,13 +42,14 @@ import it.integry.integrywmsnative.view.dialogs.DialogAskLivelloPosizione; import it.integry.integrywmsnative.view.dialogs.DialogCommon; import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper; import it.integry.integrywmsnative.view.dialogs.choose_arts_from_lista_arts.DialogChooseArtsFromListaArts; -import it.integry.integrywmsnative.view.dialogs.input_quantity.DialogInputQuantity; +import it.integry.integrywmsnative.view.dialogs.input_quantity_v2.DialogInputQuantityV2; +import it.integry.integrywmsnative.view.dialogs.input_quantity_v2.DialogInputQuantityV2DTO; import it.integry.integrywmsnative.view.dialogs.scan_or_create_lu.DialogScanOrCreateLU; public class VersamentoMerceViewModel { - private Context mContext; + private FragmentActivity mContext; private FragmentMainVersamentoMerceBinding mBinding; private VersamentoMerceHelper mHelper; @@ -58,7 +58,7 @@ public class VersamentoMerceViewModel { private Runnable mOnVersamentoCompleted; - public void init(Activity context, FragmentMainVersamentoMerceBinding binding, VersamentoMerceHelper helper, Runnable onVersamentoCompleted) { + public void init(FragmentActivity context, FragmentMainVersamentoMerceBinding binding, VersamentoMerceHelper helper, Runnable onVersamentoCompleted) { mContext = context; mBinding = binding; mHelper = helper; @@ -356,27 +356,65 @@ public class VersamentoMerceViewModel { private void askSingleQuantity(MtbColr mtbColr, RunnableArgs onComplete, Runnable onAbort) { - DialogInputQuantity.DTO dto = new DialogInputQuantity.DTO() - .setBatchLot(mtbColr.getPartitaMag()) - .setDataScad(mtbColr.getDataScadPartitaD()) + DialogInputQuantityV2DTO dialogInputQuantityV2DTO = new DialogInputQuantityV2DTO() .setMtbAart(mtbColr.getMtbAart()) - .setQtaTot(mtbColr.getQtaCol()) - .setQtaOrd(mtbColr.getQtaCol()) - .setQtaDaEvadere(new BigDecimal(-1)) - .setQtaEvasa(BigDecimal.ZERO) + .setInitialNumCnf(mtbColr.getNumCnf()) + .setInitialQtaCnf(mtbColr.getQtaCnf()) + .setInitialQtaTot(mtbColr.getQtaCol()) + .setTotalQtaAvailable(mtbColr.getQtaCol()) + .setTotalNumCnfAvailable(mtbColr.getNumCnf()) + .setQtaCnfAvailable(mtbColr.getQtaCnf()) + .setPartitaMag(mtbColr.getPartitaMag()) + .setDataScad(mtbColr.getDataScadPartitaD()) + .setCanOverflowOrderQuantity(false) .setCanPartitaMagBeChanged(false) - .setCanDataScadBeChanged(false) - .setMaxQta(mtbColr.getQtaCol()); + .setCanLUBeClosed(false); - DialogInputQuantity.makeBase(mContext, dto, false, quantityDTO -> { - mtbColr - .setQtaCol(quantityDTO.qtaTot.getBigDecimal()) - .setQtaCnf(quantityDTO.qtaCnf.getBigDecimal()) - .setNumCnf(quantityDTO.numCnf.getBigDecimal()) - .setDatetimeRow(UtilityDate.getDateInstance()); + DialogInputQuantityV2 + .newInstance(dialogInputQuantityV2DTO, (resultDTO, shouldCloseLU) -> { +// PickedQuantityDTO pickedQuantityDTO = new PickedQuantityDTO() +// .setNumCnf(resultDTO.getNumCnf()) +// .setQtaCnf(resultDTO.getQtaCnf()) +// .setQtaTot(resultDTO.getQtaTot()) +// .setPartitaMag(resultDTO.getPartitaMag()) +// .setDataScad(resultDTO.getDataScad()); +// +// onComplete.run(pickedQuantityDTO, shouldCloseLU); - onComplete.run(mtbColr); - }, onAbort).show(); + mtbColr + .setQtaCol(resultDTO.getQtaTot()) + .setQtaCnf(resultDTO.getQtaCnf()) + .setNumCnf(resultDTO.getNumCnf()) + .setDatetimeRow(UtilityDate.getDateInstance()); + + onComplete.run(mtbColr); + }, onAbort) + .show(mContext.getSupportFragmentManager(), "tag"); + + + + +// DialogInputQuantity.DTO dto = new DialogInputQuantity.DTO() +// .setBatchLot(mtbColr.getPartitaMag()) +// .setDataScad(mtbColr.getDataScadPartitaD()) +// .setMtbAart(mtbColr.getMtbAart()) +// .setQtaTot(mtbColr.getQtaCol()) +// .setQtaOrd(mtbColr.getQtaCol()) +// .setQtaDaEvadere(new BigDecimal(-1)) +// .setQtaEvasa(BigDecimal.ZERO) +// .setCanPartitaMagBeChanged(false) +// .setCanDataScadBeChanged(false) +// .setMaxQta(mtbColr.getQtaCol()); +// +// DialogInputQuantity.makeBase(mContext, dto, false, quantityDTO -> { +// mtbColr +// .setQtaCol(quantityDTO.qtaTot.getBigDecimal()) +// .setQtaCnf(quantityDTO.qtaCnf.getBigDecimal()) +// .setNumCnf(quantityDTO.numCnf.getBigDecimal()) +// .setDatetimeRow(UtilityDate.getDateInstance()); +// +// onComplete.run(mtbColr); +// }, onAbort).show(); }