From 18895509d9375f6f92a16f622790e84b31986a82 Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Wed, 9 Jan 2019 15:52:37 +0100 Subject: [PATCH] =?UTF-8?q?Aggiunta=20possibilit=C3=A0=20di=20cancellare?= =?UTF-8?q?=20le=20righe=20nel=20Picking=20Libero?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/assetWizardSettings.xml | 51 --------- .idea/caches/build_file_checksums.ser | Bin 728 -> 729 bytes .idea/modules.xml | 2 +- .../consumers/ColliMagazzinoRESTConsumer.java | 4 +- .../REST/model/DistribuzioneColloDTO.java | 3 +- .../core/context/AppContext.java | 10 ++ .../core/utility/UtilityExceptions.java | 8 +- .../viewmodel/PickingLiberoViewModel.java | 62 +++++++++++ .../viewmodel/RettificaGiacenzeViewModel.java | 10 -- .../VenditaOrdineInevasoViewModel.java | 3 +- .../res/layout/activity_picking_libero.xml | 103 ++++++++++++++++++ 11 files changed, 188 insertions(+), 68 deletions(-) delete mode 100644 .idea/assetWizardSettings.xml create mode 100644 app/src/main/java/it/integry/integrywmsnative/core/context/AppContext.java diff --git a/.idea/assetWizardSettings.xml b/.idea/assetWizardSettings.xml deleted file mode 100644 index f48666fb..00000000 --- a/.idea/assetWizardSettings.xml +++ /dev/null @@ -1,51 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser index 4ae112ed089d4617b0b9228d2826b232c2a78359..32b760cfef49b473c3f63e4b6ed7c18f777864f6 100644 GIT binary patch delta 99 zcmV-p0G$8W1=$6Vm;^2Y>GYADPXrKQaBz|VBoKZ)*>Z#wecui#vO|Ag z36mrN5|d*AEE6n4I$TwAWpZ;|M`?9)WpHq1QV5RdZ!>b6iJhb#rBKaAjOBXL4a=Y-L=NtpXd9#sO9kg`uy{ T7LxU5_xGSpA4=FslPm(Q;6N=X diff --git a/.idea/modules.xml b/.idea/modules.xml index e0a9141b..70316e59 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -2,7 +2,7 @@ - + diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ColliMagazzinoRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ColliMagazzinoRESTConsumer.java index 93daa408..25af3c1a 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ColliMagazzinoRESTConsumer.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ColliMagazzinoRESTConsumer.java @@ -178,10 +178,10 @@ public class ColliMagazzinoRESTConsumer extends _BaseRESTConsumer{ } - public static void distribuisciCollo(MtbColt mtbColtToDistribute, Runnable onComplete, RunnableArgs onFailed) { + public static void distribuisciCollo(MtbColt mtbColtToDistribute, DistribuzioneColloDTO.CriterioDistribuzione criterioDistribuzione, Runnable onComplete, RunnableArgs onFailed) { DistribuzioneColloDTO distribuzioneColloDTO = new DistribuzioneColloDTO() - .setCriterioDistribuzione(DistribuzioneColloDTO.CriterioDistribuzione.UPDATE) + .setCriterioDistribuzione(criterioDistribuzione) .setDataCollo(mtbColtToDistribute.getDataColloS()) .setNumCollo(mtbColtToDistribute.getNumCollo()) .setGestione(mtbColtToDistribute.getGestione()) diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/DistribuzioneColloDTO.java b/app/src/main/java/it/integry/integrywmsnative/core/REST/model/DistribuzioneColloDTO.java index bb84832d..a67a4428 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/DistribuzioneColloDTO.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/REST/model/DistribuzioneColloDTO.java @@ -63,7 +63,8 @@ public class DistribuzioneColloDTO { } public enum CriterioDistribuzione { - UPDATE("U"); //UPDATE COLLO GIA' ESISTENTE + UPDATE("U"), //UPDATE COLLO GIA' ESISTENTE + SPLIT_ORDINE("O"); //UPDATE COLLO GIA' ESISTENTE private String text; CriterioDistribuzione(String text) { diff --git a/app/src/main/java/it/integry/integrywmsnative/core/context/AppContext.java b/app/src/main/java/it/integry/integrywmsnative/core/context/AppContext.java new file mode 100644 index 00000000..8343e531 --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/core/context/AppContext.java @@ -0,0 +1,10 @@ +package it.integry.integrywmsnative.core.context; + +public class AppContext { + + public AppContext() { + + } + + +} diff --git a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityExceptions.java b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityExceptions.java index 3af4dec0..70d6e73e 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityExceptions.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityExceptions.java @@ -8,6 +8,7 @@ import android.util.Log; import com.crashlytics.android.Crashlytics; import com.orhanobut.logger.Logger; +import it.integry.integrywmsnative.BuildConfig; import it.integry.integrywmsnative.core.REST.CommonRESTException; import it.integry.integrywmsnative.view.dialogs.DialogSimpleMessageHelper; @@ -30,9 +31,12 @@ public class UtilityExceptions { if(errorMessage == null) errorMessage = ex.getMessage(); DialogSimpleMessageHelper.makeErrorDialog(context, new SpannableString(errorMessage), null, null).show(); - if(sendEmail) UtilityLogger.errorMe(ex); - Crashlytics.logException(ex.getCause()); + if(!BuildConfig.DEBUG) { + if(sendEmail) UtilityLogger.errorMe(ex); + + Crashlytics.logException(ex.getCause()); + } } } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/picking_libero/viewmodel/PickingLiberoViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/picking_libero/viewmodel/PickingLiberoViewModel.java index ad82b9f6..7b358468 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/picking_libero/viewmodel/PickingLiberoViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/picking_libero/viewmodel/PickingLiberoViewModel.java @@ -3,8 +3,10 @@ package it.integry.integrywmsnative.gest.picking_libero.viewmodel; import android.app.Activity; import android.app.ProgressDialog; import android.text.SpannableString; +import android.view.View; import com.annimon.stream.Stream; +import com.google.android.material.bottomsheet.BottomSheetBehavior; import java.math.BigDecimal; import java.util.ArrayList; @@ -12,6 +14,7 @@ import java.util.Date; import java.util.Iterator; import java.util.List; +import androidx.annotation.NonNull; import androidx.core.content.ContextCompat; import androidx.databinding.Observable; import androidx.databinding.ObservableArrayList; @@ -38,6 +41,7 @@ import it.integry.integrywmsnative.core.model.MtbColt; import it.integry.integrywmsnative.core.model.secondary.GestioneEnum; import it.integry.integrywmsnative.core.utility.UtilityBarcode; import it.integry.integrywmsnative.core.utility.UtilityExceptions; +import it.integry.integrywmsnative.core.utility.UtilityNumber; import it.integry.integrywmsnative.core.utility.UtilityProgress; import it.integry.integrywmsnative.core.utility.UtilityString; import it.integry.integrywmsnative.databinding.ActivityPickingLiberoBinding; @@ -61,6 +65,8 @@ public class PickingLiberoViewModel implements IRecyclerItemClicked { public BindableBoolean thereIsAnyRowInUL = new BindableBoolean(); public BindableBoolean thereIsAnOpenULWithoutRows = new BindableBoolean(); + private BottomSheetBehavior mBottomSheetBehavior; + private PickingLiberoActivity mContext; private ActivityPickingLiberoBinding mBinding; private PickingLiberoHelper mHelper; @@ -75,6 +81,8 @@ public class PickingLiberoViewModel implements IRecyclerItemClicked { initObservable(); initRecyclerView(); + + initBottomSheetActions(); } @@ -178,6 +186,26 @@ public class PickingLiberoViewModel implements IRecyclerItemClicked { mBinding.pickingLiberoMainList.setAdapter(null); } + private void initBottomSheetActions() { + mBinding.bg.setOnClickListener(v -> mBottomSheetBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED)); + + mBottomSheetBehavior = BottomSheetBehavior.from(mBinding.bottomSheetActions); + + mBottomSheetBehavior.setBottomSheetCallback(new BottomSheetBehavior.BottomSheetCallback() { + @Override + public void onStateChanged(@NonNull View bottomSheet, int newState) { + if (newState == BottomSheetBehavior.STATE_COLLAPSED) + mBinding.bg.setVisibility(View.GONE); + } + + @Override + public void onSlide(@NonNull View bottomSheet, float slideOffset) { + mBinding.bg.setVisibility(View.VISIBLE); + mBinding.bg.setAlpha(slideOffset); + } + }); + } + public void onBackPressed() { if(thereIsAnOpenedUL.get()) { @@ -505,6 +533,40 @@ public class PickingLiberoViewModel implements IRecyclerItemClicked { @Override public void onItemClick(MtbColr item, int position) { + mBottomSheetBehavior.setState(BottomSheetBehavior.STATE_EXPANDED); + MtbColr clickedItem = mtbColt.get().getMtbColr().get(position); + + mBinding.bottomSheetActionsTitle.setText(clickedItem.getDescrizione()); + mBinding.bottomSheetActionsSubtitle.setText(clickedItem.getCodMart()); + + mBinding.bottomSheetActionsDeleteBtn.setOnClickListener(v -> onItemDelete(item)); + + mBinding.bottomSheetActionsQuantity.setText(UtilityNumber.decimalToString(clickedItem.getQtaCol()) + " " + clickedItem.getMtbAart().getUntMis()); + } + + + private void onItemDelete(MtbColr mtbColrToDelete) { + mBottomSheetBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED); + + MtbColr mtbColrToDeleteClone = (MtbColr) mtbColrToDelete.clone(); + + mtbColrToDeleteClone + .setRiga(null) + .setDatetimeRow(new Date()) + .setQtaCol(mtbColrToDeleteClone.getQtaCol().multiply(new BigDecimal(-1))) + .setOperation(CommonModelConsts.OPERATION.DELETE); + + MtbColt mtbColtClone = (MtbColt) mtbColt.get().clone(); + mtbColtClone.setMtbColr(new ObservableArrayList<>()); + mtbColtClone.getMtbColr().add(mtbColrToDeleteClone); + mtbColtClone.setOperation(CommonModelConsts.OPERATION.INSERT_OR_UPDATE); + + ProgressDialog progressDialog = UtilityProgress.createDefaultProgressDialog(mContext); + + ColliMagazzinoRESTConsumer.saveCollo(mtbColtClone, value -> { + progressDialog.dismiss(); + mtbColt.get().getMtbColr().remove(mtbColrToDelete); + }, ex -> UtilityExceptions.defaultException(mContext, ex, progressDialog)); } } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/viewmodel/RettificaGiacenzeViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/viewmodel/RettificaGiacenzeViewModel.java index 3fb0ff5c..a51fb212 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/viewmodel/RettificaGiacenzeViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/viewmodel/RettificaGiacenzeViewModel.java @@ -519,16 +519,6 @@ public class RettificaGiacenzeViewModel implements IRecyclerItemClicked }).show(); - - - - - - - - - - } private void onItemDelete(MtbColr mtbColrToDelete) { diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/viewmodel/VenditaOrdineInevasoViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/viewmodel/VenditaOrdineInevasoViewModel.java index 8d9a536a..9e26aee9 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/viewmodel/VenditaOrdineInevasoViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/viewmodel/VenditaOrdineInevasoViewModel.java @@ -21,6 +21,7 @@ import it.integry.integrywmsnative.core.REST.consumers.BarcodeRESTConsumer; import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; import it.integry.integrywmsnative.core.REST.consumers.PrinterRESTConsumer; +import it.integry.integrywmsnative.core.REST.model.DistribuzioneColloDTO; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.model.CommonModelConsts; @@ -688,7 +689,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO MtbColt cloneMtbColt = (MtbColt) mArticoliInColloBottomSheetViewModel.mtbColt.get().clone(); - ColliMagazzinoRESTConsumer.distribuisciCollo(cloneMtbColt, onComplete, + ColliMagazzinoRESTConsumer.distribuisciCollo(cloneMtbColt, DistribuzioneColloDTO.CriterioDistribuzione.UPDATE, onComplete, ex -> UtilityExceptions.defaultException(mActivity, ex, progress)); } diff --git a/app/src/main/res/layout/activity_picking_libero.xml b/app/src/main/res/layout/activity_picking_libero.xml index d76ca5cf..4de2c5e9 100644 --- a/app/src/main/res/layout/activity_picking_libero.xml +++ b/app/src/main/res/layout/activity_picking_libero.xml @@ -192,6 +192,109 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +