diff --git a/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseActivity.java b/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseActivity.java index 3492a787..c0123045 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseActivity.java @@ -49,7 +49,7 @@ public class BaseActivity extends AppCompatActivity { public void onError(Exception ex) { this.runOnUiThread(() -> { this.closeProgress(); - UtilityExceptions.defaultException(this, ex, mCurrentProgress); + UtilityExceptions.defaultException(this, ex); BarcodeManager.enable(); }); } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseFragment.java b/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseFragment.java index a6f5dd6a..b3ac95dc 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseFragment.java @@ -84,7 +84,7 @@ public abstract class BaseFragment extends Fragment { public void onError(Exception ex) { requireActivity().runOnUiThread(() -> { this.closeProgress(); - UtilityExceptions.defaultException(getActivity(), ex, mCurrentProgress); + UtilityExceptions.defaultException(getActivity(), ex); BarcodeManager.enable(); }); } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/update/UpdatesManager.java b/app/src/main/java/it/integry/integrywmsnative/core/update/UpdatesManager.java index 3ba6afeb..02e7c1e8 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/update/UpdatesManager.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/update/UpdatesManager.java @@ -61,8 +61,8 @@ public class UpdatesManager { String destination = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS) + "/"; - var progressDialog = DialogProgressView.newInstance("Download", null, false); - progressDialog.show(mContext.getSupportFragmentManager(), "tag"); + var progressDialogBuilder = new DialogProgressView("Download", null, false); + progressDialogBuilder.show(mContext.getSupportFragmentManager(), "tag"); var fileDownloader = new FileDownloader() @@ -70,13 +70,13 @@ public class UpdatesManager { .setUrlString(downloadURL) .setOnProgressUpdate(progress -> { mContext.runOnUiThread(() -> { - progressDialog.setProgress(progress); + progressDialogBuilder.setProgress(progress); }); }) .setOnDownloadCompleted(destPath -> { mContext.runOnUiThread(() -> { - progressDialog.dismiss(); + progressDialogBuilder.dismiss(); Uri fileLoc; Intent intent; 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 f26eb245..16151678 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 @@ -15,7 +15,6 @@ import it.integry.integrywmsnative.core.exception.InvalidConnectionException; import it.integry.integrywmsnative.core.exception.InvalidLUException; import it.integry.integrywmsnative.core.exception.InvalidLUGestioneException; import it.integry.integrywmsnative.core.rest.CommonRESTException; -import it.integry.integrywmsnative.view.dialogs.DialogProgressView; import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageView; public class UtilityExceptions { @@ -25,12 +24,6 @@ public class UtilityExceptions { InvalidLUGestioneException.class, InvalidLUException.class }; - - public static void defaultException(Context context, Exception ex, DialogProgressView progressDialog) { - defaultException(context, ex); - if (progressDialog != null && progressDialog.isVisible()) progressDialog.dismiss(); - } - public static void defaultException(Context context, Exception ex) { defaultException(context, ex, false); } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityProgress.java b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityProgress.java index e59ad18b..88197d06 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityProgress.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityProgress.java @@ -7,7 +7,7 @@ import it.integry.integrywmsnative.view.dialogs.DialogProgressView; public class UtilityProgress { public static DialogProgressView createDefaultProgressDialog(FragmentActivity mContext) { - var progress = DialogProgressView.newInstance(); + var progress = DialogProgressView.newInstance(null, null, true); progress.show(mContext.getSupportFragmentManager(), "tag"); return progress; } 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 cf747b03..33ddd09d 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 @@ -798,7 +798,7 @@ public class AccettazionePickingActivity extends BaseActivity implements Accetta if (ex instanceof InvalidPesoKGException) { UtilityToast.showToast(ex.getMessage()); } else { - UtilityExceptions.defaultException(this, ex, mCurrentProgress); + UtilityExceptions.defaultException(this, ex); } BarcodeManager.enable(); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/main/MainActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/main/MainActivity.java index effe259b..d3e84641 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/main/MainActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/main/MainActivity.java @@ -49,7 +49,7 @@ import it.integry.integrywmsnative.core.utility.UtilityContext; import it.integry.integrywmsnative.databinding.ActivityMainBinding; import it.integry.integrywmsnative.gest.login.LoginActivity; import it.integry.integrywmsnative.gest.settings.MainSettingsFragment; -import it.integry.integrywmsnative.view.dialogs.input_quantity_v2.DialogInputQuantityV2View; +import it.integry.integrywmsnative.view.dialogs.DialogProgressView; public class MainActivity extends BaseActivity implements NavigationView.OnNavigationItemSelectedListener, IPoppableActivity { @@ -71,9 +71,8 @@ public class MainActivity extends BaseActivity @Inject UpdatesManager updatesManager; - @Inject - DialogInputQuantityV2View mDialogInputQuantityV2View; + DialogProgressView mDialogProgressView; @Override protected void onCreate(Bundle savedInstanceState) { @@ -81,6 +80,7 @@ public class MainActivity extends BaseActivity MainApplication.appComponent .mainActivityComponent() + .create() .inject(this); @@ -108,14 +108,6 @@ public class MainActivity extends BaseActivity init(); - -// mDialogInputQuantityV2View -// .setDialogInputQuantityV2DTO(new DialogInputQuantityV2DTO() -// .setMtbAart(new MtbAart() -// .setCodMart("AAAA") -// .setFlagQtaCnfFissa("S"))) -// .show(getSupportFragmentManager(), "tag"); - } private void startLoginActivity() { diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/main/MainFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/main/MainFragment.java index 135c0c21..dd2d7314 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/main/MainFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/main/MainFragment.java @@ -241,18 +241,18 @@ public class MainFragment extends Fragment implements ITitledFragment, IScrollab private void initGestMenu() { int menuSpanCount = 2; - if(UtilityDimension.getDisplayInchs(this.getActivity()) > 8) menuSpanCount = 4; - else if(UtilityDimension.getDisplayInchs(this.getActivity()) > 6.5) menuSpanCount = 3; + if (UtilityDimension.getDisplayInchs(this.getActivity()) > 8) menuSpanCount = 4; + else if (UtilityDimension.getDisplayInchs(this.getActivity()) > 6.5) menuSpanCount = 3; MenuConfiguration baseMenuConfiguration = new MenuConfiguration(); List menuGroups = baseMenuConfiguration.getGroups(); - for(int i = 0; i < menuGroups.size(); i++) { + for (int i = 0; i < menuGroups.size(); i++) { try { BaseMenuConfiguration.MenuGroup menuGroup = menuGroups.get(i); - if(menuService.isGroupEnabled(menuGroup)) { + if (menuService.isGroupEnabled(menuGroup)) { FragmentMainMenuGroupLayoutBinding groupBinding = DataBindingUtil.inflate(mLayoutInflater, R.layout.fragment_main_menu_group_layout, null, false); @@ -261,8 +261,8 @@ public class MainFragment extends Fragment implements ITitledFragment, IScrollab List enableMenuItems = new ArrayList<>(); - for(int j = 0; j < menuGroup.getItems().size(); j++) { - if(menuService.isItemEnabled(menuGroup.getItems().get(j))) { + for (int j = 0; j < menuGroup.getItems().size(); j++) { + if (menuService.isItemEnabled(menuGroup.getItems().get(j))) { enableMenuItems.add(menuGroup.getItems().get(j)); } } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/picking_libero/PickingLiberoFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/picking_libero/PickingLiberoFragment.java index 30043550..9f558e1b 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/picking_libero/PickingLiberoFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/picking_libero/PickingLiberoFragment.java @@ -171,10 +171,10 @@ public class PickingLiberoFragment extends BaseFragment implements ITitledFragme private void initRecyclerView() { mBindings.pickingLiberoMainList.setNestedScrollingEnabled(false); mBindings.pickingLiberoMainList.setHasFixedSize(true); - mBindings.pickingLiberoMainList.setLayoutManager(new LinearLayoutManager(getActivity())); + mBindings.pickingLiberoMainList.setLayoutManager(new LinearLayoutManager(requireActivity())); - SimpleDividerItemDecoration itemDecorator = new SimpleDividerItemDecoration(getActivity(), SimpleDividerItemDecoration.VERTICAL); - itemDecorator.setDrawable(ContextCompat.getDrawable(getActivity(), R.drawable.divider)); + SimpleDividerItemDecoration itemDecorator = new SimpleDividerItemDecoration(requireActivity(), SimpleDividerItemDecoration.VERTICAL); + itemDecorator.setDrawable(ContextCompat.getDrawable(requireActivity(), R.drawable.divider)); mBindings.pickingLiberoMainList.addItemDecoration(itemDecorator); } @@ -277,7 +277,7 @@ public class PickingLiberoFragment extends BaseFragment implements ITitledFragme if (ex instanceof InvalidPesoKGException) { UtilityToast.showToast(ex.getMessage()); } else { - UtilityExceptions.defaultException(getActivity(), ex, mCurrentProgress); + UtilityExceptions.defaultException(getActivity(), ex); } BarcodeManager.enable(); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/PickingResiActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/PickingResiActivity.java index e08796cc..075e8628 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/PickingResiActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/PickingResiActivity.java @@ -287,7 +287,7 @@ public class PickingResiActivity extends BaseActivity implements BottomSheetFrag if (ex instanceof InvalidPesoKGException) { UtilityToast.showToast(ex.getMessage()); } else { - UtilityExceptions.defaultException(this, ex, mCurrentProgress); + UtilityExceptions.defaultException(this, ex); } BarcodeManager.enable(); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/RettificaGiacenzeFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/RettificaGiacenzeFragment.java index 1aa73508..5e9c664c 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/RettificaGiacenzeFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/RettificaGiacenzeFragment.java @@ -63,7 +63,7 @@ import it.integry.integrywmsnative.view.dialogs.choose_art_from_lista_arts.Dialo import it.integry.integrywmsnative.view.dialogs.input_quantity_v2.DialogInputQuantityV2DTO; import it.integry.integrywmsnative.view.dialogs.input_quantity_v2.DialogInputQuantityV2View; import it.integry.integrywmsnative.view.dialogs.scan_or_create_lu.DialogScanOrCreateLUView; -import it.integry.integrywmsnative.view.dialogs.yes_no.DialogYesNo; +import it.integry.integrywmsnative.view.dialogs.yes_no.DialogYesNoView; public class RettificaGiacenzeFragment extends BaseFragment implements ITitledFragment, ILifecycleFragment, RettificaGiacenzeViewModel.Listener, BottomSheetMtbColrEditView.Listener { @@ -341,7 +341,7 @@ public class RettificaGiacenzeFragment extends BaseFragment implements ITitledFr if (ex instanceof InvalidPesoKGException) { UtilityToast.showToast(ex.getMessage()); } else { - UtilityExceptions.defaultException(requireActivity(), ex, mCurrentProgress); + UtilityExceptions.defaultException(requireActivity(), ex); } } @@ -476,7 +476,7 @@ public class RettificaGiacenzeFragment extends BaseFragment implements ITitledFr @Override public void onLUPositionChangeRequest(RunnableArgss onComplete) { - DialogYesNo.make(getActivity(), "Posiziona UL", "Vuoi cambiare la posizione della UL corrente?", result -> { + new DialogYesNoView(requireActivity(), "Posiziona UL", "Vuoi cambiare la posizione della UL corrente?", result -> { switch (result) { case YES: DialogAskPositionOfLU.makeBase(getActivity(), false, (status, mtbDepoPosizione) -> { diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/SpedizioneActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/SpedizioneActivity.java index 9be4a9cb..6d653b16 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/SpedizioneActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/SpedizioneActivity.java @@ -75,11 +75,11 @@ import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageView; import it.integry.integrywmsnative.view.dialogs.choose_art_from_lista_arts.DialogChooseArtFromListaArts; import it.integry.integrywmsnative.view.dialogs.choose_batch_lot.DialogChooseBatchLotView; import it.integry.integrywmsnative.view.dialogs.info_aggiuntive_lu.InfoAggiuntiveLUDialog; -import it.integry.integrywmsnative.view.dialogs.input_peso_lu.DialogInputPeso; +import it.integry.integrywmsnative.view.dialogs.input_peso_lu.DialogInputPesoLuView; import it.integry.integrywmsnative.view.dialogs.input_quantity_v2.DialogInputQuantityV2DTO; import it.integry.integrywmsnative.view.dialogs.input_quantity_v2.DialogInputQuantityV2View; import it.integry.integrywmsnative.view.dialogs.scan_art.DialogScanArtView; -import it.integry.integrywmsnative.view.dialogs.yes_no.DialogYesNo; +import it.integry.integrywmsnative.view.dialogs.yes_no.DialogYesNoView; public class SpedizioneActivity extends BaseActivity implements SpedizioneViewModel.Listener, BottomSheetFragmentLUContentViewModel.Listener, BottomSheetFragmentLUContentView.Listener { @@ -722,9 +722,15 @@ public class SpedizioneActivity extends BaseActivity implements SpedizioneViewMo @Override public void onLUPesoRequired(String codTcol, BigDecimal netWeightKG, BigDecimal grossWeightKG, RunnableArgsss onComplete) { - DialogInputPeso.make(this, codTcol, netWeightKG, grossWeightKG, (newCodTcol, newNetWeight, newGrossWeight) -> { - onComplete.run(newCodTcol, netWeightKG, grossWeightKG); - }).show(); +// DialogInputPesoView.make(this, codTcol, netWeightKG, grossWeightKG, (newCodTcol, newNetWeight, newGrossWeight) -> { +// onComplete.run(newCodTcol, netWeightKG, grossWeightKG); +// }).show(); + + + new DialogInputPesoLuView(null, new BigDecimal(50), new BigDecimal(55), (newCodTcol, newNetWeight, newGrossWeight) -> { +// onComplete.run(newCodTcol, netWeightKG, grossWeightKG); + }) + .show(getSupportFragmentManager(), "tag"); } @Override @@ -856,7 +862,7 @@ public class SpedizioneActivity extends BaseActivity implements SpedizioneViewMo @Override public void onLUPositionChangeRequest(RunnableArgss onComplete) { - DialogYesNo.make(this, "Posiziona UL", "Vuoi cambiare la posizione della UL corrente?", result -> { + new DialogYesNoView(this, "Posiziona UL", "Vuoi cambiare la posizione della UL corrente?", result -> { switch (result) { case YES: DialogAskPositionOfLU.makeBase(this, false, (status, mtbDepoPosizione) -> { diff --git a/app/src/main/java/it/integry/integrywmsnative/ui/filter_chips/FilterChipView.java b/app/src/main/java/it/integry/integrywmsnative/ui/filter_chips/FilterChipView.java index 77ecb181..2ce2ba26 100644 --- a/app/src/main/java/it/integry/integrywmsnative/ui/filter_chips/FilterChipView.java +++ b/app/src/main/java/it/integry/integrywmsnative/ui/filter_chips/FilterChipView.java @@ -29,13 +29,13 @@ public class FilterChipView extends Chip { this.defaultChipBackgroundColor = getChipBackgroundColor(); this.defaultChipTextColor = getTextColors(); - setShapeAppearanceModel( - getShapeAppearanceModel() - .withCornerSize(4) - .toBuilder() - .build()); - - setChipMinHeight(getChipMinHeight() * 1.25f); +// setShapeAppearanceModel( +// getShapeAppearanceModel() +// .withCornerSize(4) +// .toBuilder() +// .build()); +// +// setChipMinHeight(getChipMinHeight() * 1.25f); setOnCloseIconClickListener(v -> { if (onResetClicked != null) onResetClicked.run(); diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/DialogProgressView.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/DialogProgressView.java index 810f8b24..be4fabb7 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/DialogProgressView.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/DialogProgressView.java @@ -1,18 +1,16 @@ package it.integry.integrywmsnative.view.dialogs; -import android.graphics.Color; -import android.graphics.drawable.ColorDrawable; +import android.app.Dialog; import android.os.Build; import android.os.Bundle; import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import androidx.databinding.DataBindingUtil; import androidx.fragment.app.DialogFragment; +import com.google.android.material.dialog.MaterialAlertDialogBuilder; + import javax.inject.Singleton; import it.integry.integrywmsnative.R; @@ -29,36 +27,51 @@ public class DialogProgressView extends DialogFragment { private boolean indeterminateProgress; public static DialogProgressView newInstance(String title, String subtitle, boolean indeterminate) { - return new DialogProgressView() - .setIndeterminateProgress(indeterminate) - .setTitle(title) - .setSubtitle(subtitle); + return new DialogProgressView(title, subtitle, indeterminate); } public static DialogProgressView newInstance() { return newInstance(null, null, true); } - @Nullable - @Override - public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { - mBindings = DataBindingUtil.inflate(inflater, R.layout.dialog_progress, container, false); - - setCancelable(false); - getDialog().getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); - - mBindings.setTitle(UtilityString.isNullOrEmpty(title) ? requireActivity().getString(R.string.loading) : title); - - mBindings.setSubtitle(subtitle); - mBindings.progressBar.setIndeterminate(isIndeterminateProgress()); - - if(!isIndeterminateProgress()){ - mBindings.progressBar.setMax(100); - } - - return mBindings.getRoot(); + public DialogProgressView(String title, String subtitle, boolean indeterminate) { + this.setTitle(title); + this.setSubtitle(subtitle); + this.setIndeterminateProgress(indeterminate); } + @NonNull + @Override + public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { + mBindings = DialogProgressBinding.inflate(LayoutInflater.from(requireContext())); + + mBindings.setTitle(UtilityString.isNullOrEmpty(title) ? requireContext().getString(R.string.loading) : title); + if (!UtilityString.isNullOrEmpty(subtitle)) mBindings.setSubtitle(subtitle); + + mBindings.progressBar.setIndeterminate(isIndeterminateProgress()); + if (!isIndeterminateProgress()) mBindings.progressBar.setMax(100); + + return new MaterialAlertDialogBuilder(requireContext()) + .setView(mBindings.getRoot()) + .setCancelable(false) + .create(); + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getSubtitle() { + return subtitle; + } + + public void setSubtitle(String subtitle) { + this.subtitle = subtitle; + } public boolean isIndeterminateProgress() { return indeterminateProgress; @@ -69,17 +82,6 @@ public class DialogProgressView extends DialogFragment { return this; } - - public DialogProgressView setTitle(String title) { - this.title = title; - return this; - } - - public DialogProgressView setSubtitle(String subtitle) { - this.subtitle = subtitle; - return this; - } - public void setProgress(int progress) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { mBindings.progressBar.setProgress(progress, true); diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_peso_lu/DialogInputPeso.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_peso_lu/DialogInputPeso.java deleted file mode 100644 index df570d41..00000000 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_peso_lu/DialogInputPeso.java +++ /dev/null @@ -1,135 +0,0 @@ -package it.integry.integrywmsnative.view.dialogs.input_peso_lu; - -import android.app.Dialog; -import android.content.Context; -import android.graphics.Color; -import android.graphics.drawable.ColorDrawable; -import android.view.LayoutInflater; -import android.widget.ArrayAdapter; - -import androidx.databinding.DataBindingUtil; -import androidx.fragment.app.FragmentActivity; - -import com.annimon.stream.Optional; -import com.annimon.stream.Stream; - -import java.math.BigDecimal; -import java.util.List; - -import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.di.BindableString; -import it.integry.integrywmsnative.core.expansion.RunnableArgsss; -import it.integry.integrywmsnative.core.model.MtbTCol; -import it.integry.integrywmsnative.core.rest.consumers.MagazzinoRESTConsumer; -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.databinding.DialogInputPesoLuBinding; -import it.integry.integrywmsnative.view.dialogs.DialogProgressView; - -public class DialogInputPeso { - - - private final FragmentActivity mContext; - private final DialogInputPesoLuBinding mBindings; - private final DialogInputPesoViewModel mViewModel; - private final Dialog currentDialog; - - private List codTcolList = null; - private ArrayAdapter codTcolArrayAdapter = null; - - public static Dialog make(final FragmentActivity context, String codTcol, BigDecimal netWeight, BigDecimal grossWeight, RunnableArgsss onDialogDismiss) { - return new DialogInputPeso(context, codTcol, netWeight, grossWeight, onDialogDismiss).currentDialog; - } - - - private DialogInputPeso(final FragmentActivity context, String codTcol, BigDecimal netWeight, BigDecimal grossWeight, RunnableArgsss onDialogDismiss) { - this.mContext = context; - - - LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); - mBindings = DataBindingUtil.inflate(inflater, R.layout.dialog_input_peso_lu, null, false); - - currentDialog = new Dialog(context); - currentDialog.setContentView(mBindings.getRoot()); - - currentDialog.setCanceledOnTouchOutside(false); - currentDialog.setCancelable(false); - currentDialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); - - mViewModel = new DialogInputPesoViewModel(); - mViewModel.codTcol.set(codTcol); - mViewModel.netWeight.set(UtilityNumber.decimalToString(netWeight)); - mViewModel.grossWeight.set(UtilityNumber.decimalToString(grossWeight)); - - mBindings.setViewModel(mViewModel); - - mBindings.buttonConfirm.setOnClickListener(v -> { - currentDialog.dismiss(); - - String newCodTcol = null; - - if(mViewModel.codTcol.get() != null) { - Optional newCodTcolOptional = Stream.of(codTcolList) - .filter(x -> (x.getCodTcol() + " - " + x.getDescrizione()).equalsIgnoreCase(mViewModel.codTcol.get())) - .findSingle(); - - if(newCodTcolOptional.isPresent()) newCodTcol = newCodTcolOptional.get().getCodTcol(); - } - - - BigDecimal netWeightDecimal = new BigDecimal(mViewModel.netWeight.get()); - BigDecimal grossWeightDecimal = new BigDecimal(mViewModel.grossWeight.get()); - - onDialogDismiss.run(newCodTcol, netWeightDecimal, grossWeightDecimal); - }); - - - this.init(); - } - - - - - private void init() { - - final DialogProgressView progressDialog = UtilityProgress.createDefaultProgressDialog(mContext); - - MagazzinoRESTConsumer.getTipiColloStatic(codTcols -> { - this.codTcolList = codTcols; - - List codTcolDescriptions = Stream.of(codTcols) - .map(codTcol -> codTcol.getCodTcol() + " - " + codTcol.getDescrizione()) - .toList(); - - if(mViewModel.codTcol.get() != null) { - Optional newCodTcol = Stream.of(codTcols) - .filter(x -> x.getCodTcol().equalsIgnoreCase(mViewModel.codTcol.get())) - .map(codTcol -> codTcol.getCodTcol() + " - " + codTcol.getDescrizione()) - .findSingle(); - - if(newCodTcol.isPresent()) mViewModel.codTcol.set(newCodTcol.get()); - } - - codTcolArrayAdapter = new ArrayAdapter(mContext, R.layout.array_adapter_single_item); - codTcolArrayAdapter.addAll(codTcolDescriptions); - mBindings.filledExposedDropdownCodTcol.setAdapter(codTcolArrayAdapter); - - progressDialog.dismiss(); - - }, ex -> { - UtilityExceptions.defaultException(mContext, ex, progressDialog); - }); - - } - - - public class DialogInputPesoViewModel { - public BindableString codTcol = new BindableString(); - public BindableString netWeight = new BindableString(); - public BindableString grossWeight = new BindableString(); - - } - - -} diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_peso_lu/DialogInputPesoLuView.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_peso_lu/DialogInputPesoLuView.java new file mode 100644 index 00000000..c8128b6b --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_peso_lu/DialogInputPesoLuView.java @@ -0,0 +1,114 @@ +package it.integry.integrywmsnative.view.dialogs.input_peso_lu; + +import android.app.Dialog; +import android.os.Bundle; +import android.view.LayoutInflater; +import android.widget.ArrayAdapter; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.fragment.app.DialogFragment; + +import com.annimon.stream.Optional; +import com.annimon.stream.Stream; +import com.google.android.material.dialog.MaterialAlertDialogBuilder; + +import java.math.BigDecimal; +import java.util.List; + +import it.integry.integrywmsnative.R; +import it.integry.integrywmsnative.core.di.BindableString; +import it.integry.integrywmsnative.core.expansion.RunnableArgsss; +import it.integry.integrywmsnative.core.model.MtbTCol; +import it.integry.integrywmsnative.core.rest.consumers.MagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.utility.UtilityExceptions; +import it.integry.integrywmsnative.core.utility.UtilityNumber; +import it.integry.integrywmsnative.databinding.DialogInputPesoLuBinding; + +public class DialogInputPesoLuView extends DialogFragment { + + private DialogInputPesoLuBinding mBindings; + private RunnableArgsss onDialogDismiss; + + public BindableString codTcol = new BindableString(); + public BindableString netWeight = new BindableString(); + public BindableString grossWeight = new BindableString(); + + + private List codTcolList = null; + private ArrayAdapter codTcolArrayAdapter = null; + + + public DialogInputPesoLuView(String codTcol, BigDecimal netWeight, BigDecimal grossWeight, RunnableArgsss onDialogDismiss) { + this.onDialogDismiss = onDialogDismiss; + + this.codTcol.set(codTcol); + this.netWeight.set(UtilityNumber.decimalToString(netWeight)); + this.grossWeight.set(UtilityNumber.decimalToString(grossWeight)); + } + + @NonNull + @Override + public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { + mBindings = DialogInputPesoLuBinding.inflate(LayoutInflater.from(requireContext()), null, false); + mBindings.setView(this); + + this.init(); + + return new MaterialAlertDialogBuilder(requireContext()) + .setView(mBindings.getRoot()) + .setCancelable(false) + .setPositiveButton(R.string.confirm, (dialog, which) -> { + String newCodTcol = null; + + if(codTcol.get() != null) { + Optional newCodTcolOptional = Stream.of(codTcolList) + .filter(x -> (x.getCodTcol() + " - " + x.getDescrizione()).equalsIgnoreCase(codTcol.get())) + .findSingle(); + + if(newCodTcolOptional.isPresent()) newCodTcol = newCodTcolOptional.get().getCodTcol(); + } + + + BigDecimal netWeightDecimal = new BigDecimal(netWeight.get()); + BigDecimal grossWeightDecimal = new BigDecimal(grossWeight.get()); + + onDialogDismiss.run(newCodTcol, netWeightDecimal, grossWeightDecimal); + }) + .create(); + } + + private void init() { + +// final DialogProgressView progressDialog = UtilityProgress.createDefaultProgressDialog(mContext); + + MagazzinoRESTConsumer.getTipiColloStatic(codTcols -> { + this.codTcolList = codTcols; + + List codTcolDescriptions = Stream.of(codTcols) + .map(codTcol -> codTcol.getCodTcol() + " - " + codTcol.getDescrizione()) + .toList(); + + if(codTcol.get() != null) { + Optional newCodTcol = Stream.of(codTcols) + .filter(x -> x.getCodTcol().equalsIgnoreCase(codTcol.get())) + .map(codTcol -> codTcol.getCodTcol() + " - " + codTcol.getDescrizione()) + .findSingle(); + + if(newCodTcol.isPresent()) codTcol.set(newCodTcol.get()); + } + + codTcolArrayAdapter = new ArrayAdapter(requireContext(), R.layout.array_adapter_single_item); + codTcolArrayAdapter.addAll(codTcolDescriptions); + mBindings.filledExposedDropdownCodTcol.setAdapter(codTcolArrayAdapter); + +// progressDialog.dismiss(); + + }, ex -> { + UtilityExceptions.defaultException(requireContext(), ex); + }); + + } + + +} diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/yes_no/DialogYesNo.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/yes_no/DialogYesNo.java deleted file mode 100644 index 1692625b..00000000 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/yes_no/DialogYesNo.java +++ /dev/null @@ -1,52 +0,0 @@ -package it.integry.integrywmsnative.view.dialogs.yes_no; - -import android.app.Dialog; -import android.content.Context; -import android.graphics.Color; -import android.graphics.drawable.ColorDrawable; -import android.view.LayoutInflater; - -import androidx.databinding.DataBindingUtil; -import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.expansion.RunnableArgs; -import it.integry.integrywmsnative.databinding.DialogYesNoBinding; -import it.integry.integrywmsnative.view.dialogs.DialogConsts; - -public class DialogYesNo { - - private Dialog currentDialog; - - public static Dialog make(final Context context, final String title, final String description, RunnableArgs onDialogDismiss) { - return new DialogYesNo(context, title, description, onDialogDismiss).currentDialog; - } - - private DialogYesNo(Context context, String title, String description, RunnableArgs onDialogDismiss) { - LayoutInflater inflater = (LayoutInflater) context.getSystemService( Context.LAYOUT_INFLATER_SERVICE ); - DialogYesNoBinding bindings = DataBindingUtil.inflate(inflater, R.layout.dialog_yes_no, null, false); - - currentDialog = new Dialog(context); - - currentDialog.setContentView(bindings.getRoot()); - - currentDialog.setCancelable(false); - currentDialog.setCanceledOnTouchOutside(false); - currentDialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); - - bindings.titleText.setText(title); - bindings.descriptionText.setText(description); - - bindings.buttonYes.setOnClickListener(v -> { - onDialogDismiss.run(DialogConsts.Results.YES); - currentDialog.dismiss(); - }); - - bindings.buttonNo.setOnClickListener(v -> { - onDialogDismiss.run(DialogConsts.Results.NO); - currentDialog.dismiss(); - }); - - - } - - -} diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/yes_no/DialogYesNoView.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/yes_no/DialogYesNoView.java new file mode 100644 index 00000000..edf0ccf5 --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/yes_no/DialogYesNoView.java @@ -0,0 +1,68 @@ +package it.integry.integrywmsnative.view.dialogs.yes_no; + +import android.content.Context; +import android.view.LayoutInflater; + +import com.google.android.material.dialog.MaterialAlertDialogBuilder; + +import it.integry.integrywmsnative.core.expansion.RunnableArgs; +import it.integry.integrywmsnative.databinding.DialogYesNoBinding; +import it.integry.integrywmsnative.view.dialogs.DialogConsts; + +public class DialogYesNoView extends MaterialAlertDialogBuilder { + + + + public DialogYesNoView(Context context, final String title, final String description, RunnableArgs onDialogDismiss) { + super(context); + + var binding = DialogYesNoBinding.inflate(LayoutInflater.from(context)); +// binding.setView(this); + + binding.executePendingBindings(); + +// this.qtaResidua.set(qtaResidua); + + this.setTitle(title); + this.setMessage(description); +// this.setView(binding.getRoot()); + + this.setPositiveButton("Ok", (dialog, which) -> { + if (onDialogDismiss != null) onDialogDismiss.run(DialogConsts.Results.YES); + }); + + this.setNegativeButton("Annulla", (dialog, which) -> { + if (onDialogDismiss != null) onDialogDismiss.run(DialogConsts.Results.NO); + }); + } + +// private DialogYesNo(Context context, String title, String description, RunnableArgs onDialogDismiss) { +// LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); +// DialogYesNoBinding bindings = DataBindingUtil.inflate(inflater, R.layout.dialog_yes_no, null, false); +// +// currentDialog = new Dialog(context); +// +// currentDialog.setContentView(bindings.getRoot()); +// +// currentDialog.setCancelable(false); +// currentDialog.setCanceledOnTouchOutside(false); +// currentDialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); +// +// bindings.titleText.setText(title); +// bindings.descriptionText.setText(description); +// +// bindings.buttonYes.setOnClickListener(v -> { +// onDialogDismiss.run(DialogConsts.Results.YES); +// currentDialog.dismiss(); +// }); +// +// bindings.buttonNo.setOnClickListener(v -> { +// onDialogDismiss.run(DialogConsts.Results.NO); +// currentDialog.dismiss(); +// }); +// +// +// } + + +} diff --git a/app/src/main/res/layout/dialog_input_peso_lu.xml b/app/src/main/res/layout/dialog_input_peso_lu.xml index 9cde4db6..f95eabf4 100644 --- a/app/src/main/res/layout/dialog_input_peso_lu.xml +++ b/app/src/main/res/layout/dialog_input_peso_lu.xml @@ -1,188 +1,164 @@ - + + + + + + + name="view" + type="it.integry.integrywmsnative.view.dialogs.input_peso_lu.DialogInputPesoLuView" /> - - + android:orientation="vertical" + android:paddingHorizontal="16dp" + android:paddingVertical="16dp"> - + + + - - - - - - - - + android:orientation="vertical"> + android:gravity="center_horizontal" + android:text="@string/action_insert_weight" /> - + + + + + + + + + + android:hint="@string/lu_type"> - - - - - - - - - + android:ellipsize="end" + android:imeOptions="actionNext" + android:inputType="textNoSuggestions" + android:nextFocusForward="@id/filled_exposed_dropdown_vettore" + android:singleLine="true" + app:binding="@{view.codTcol}" /> - + + + + + + + + + + + + android:hint="@string/gross_weight" + android:inputType="numberDecimal" + app:binding="@{view.grossWeight}" /> + - - - - - - - + android:hint="@string/net_weight" + android:inputType="numberDecimal" + app:binding="@{view.netWeight}" /> - + + - + - - - - - - - - - - - - - - - - - - - - + diff --git a/app/src/main/res/layout/dialog_progress.xml b/app/src/main/res/layout/dialog_progress.xml index b9d76f88..325fc237 100644 --- a/app/src/main/res/layout/dialog_progress.xml +++ b/app/src/main/res/layout/dialog_progress.xml @@ -3,91 +3,60 @@ - - - - + - - - + + + + + + + + + + + android:orientation="vertical" + android:paddingLeft="24dp" + android:paddingTop="24dp" + android:paddingRight="24dp"> - + android:gravity="center_horizontal" + android:text="@{title}" + tools:text="Loading" /> + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_main_ordini_uscita.xml b/app/src/main/res/layout/fragment_main_ordini_uscita.xml index d341dd88..cd68b974 100644 --- a/app/src/main/res/layout/fragment_main_ordini_uscita.xml +++ b/app/src/main/res/layout/fragment_main_ordini_uscita.xml @@ -24,9 +24,10 @@ android:background="@android:color/white" tools:context=".gest.vendita.MainVenditaFragment"> - + android:layout_height="match_parent" + android:orientation="vertical"> + android:layout_height="match_parent"/> - + + style="?attr/floatingActionButtonPrimaryStyle" /> \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_main_ordini_uscita__list_group_model.xml b/app/src/main/res/layout/fragment_main_ordini_uscita__list_group_model.xml index d23a78a2..a5b55962 100644 --- a/app/src/main/res/layout/fragment_main_ordini_uscita__list_group_model.xml +++ b/app/src/main/res/layout/fragment_main_ordini_uscita__list_group_model.xml @@ -17,6 +17,7 @@ android:layout_height="wrap_content" android:paddingStart="2dp" android:paddingEnd="4dp" + android:paddingVertical="2dp" android:orientation="horizontal"> @@ -24,33 +25,29 @@ + android:layout_height="match_parent" /> - - + android:layout_alignParentEnd="true"> - + diff --git a/app/src/main/res/layout/fragment_main_ordini_uscita__list_model.xml b/app/src/main/res/layout/fragment_main_ordini_uscita__list_model.xml index 054d7c6e..2ee259a8 100644 --- a/app/src/main/res/layout/fragment_main_ordini_uscita__list_model.xml +++ b/app/src/main/res/layout/fragment_main_ordini_uscita__list_model.xml @@ -1,45 +1,32 @@ - - - - + android:enabled="false"/> - - - - - - diff --git a/app/src/main/res/layout/fragment_picking_libero.xml b/app/src/main/res/layout/fragment_picking_libero.xml index 1df81499..66b71f75 100644 --- a/app/src/main/res/layout/fragment_picking_libero.xml +++ b/app/src/main/res/layout/fragment_picking_libero.xml @@ -1,26 +1,23 @@ - + xmlns:fab="http://schemas.android.com/apk/res-auto" + xmlns:tools="http://schemas.android.com/tools"> + - - - + - - - - - - - + android:paddingEnd="2dp" + tools:itemCount="3" + tools:listitem="@layout/lista_picking_libero_list_model" /> + app:layout_constraintGuide_percent="0.35" /> + app:layout_constraintRight_toLeftOf="@id/free_picking__suggestion_1__guideline_right" + app:layout_constraintTop_toBottomOf="@id/free_picking__suggestion_1__guideline_top" + app:visibility="@{view.thereIsntAnOpenedUL}"> + android:gravity="center_horizontal" + android:text="@string/free_picking_suggestion_1" + android:textColor="@android:color/black" + android:textSize="18sp" /> + app:layout_constraintRight_toLeftOf="@id/free_picking__suggestion_1__guideline_right" + app:layout_constraintTop_toBottomOf="@id/free_picking__suggestion_1__guideline_top" + app:visibility="@{view.thereIsAnOpenULWithoutRows}"> + android:gravity="center_horizontal" + android:text="@string/free_picking_suggestion_2" + android:textColor="@android:color/black" + android:textSize="18sp" /> - - - - + style="?attr/floatingActionButtonPrimaryStyle" /> - - - + style="?attr/floatingActionButtonSecondaryStyle" /> + + + + + + + + + + + + + + + + + + android:focusable="true" + android:visibility="gone" /> + + diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index f896ab54..c654f14d 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -1,118 +1,62 @@ - + - #1A73E8 - #0049b4 - #4db6ac - #459B90 - #387ef5 - #3f3f51b5 - #757575 - - @color/green_500 - @color/orange_700 - #eeeeee - - - #B2000000 - #FFFFFF - #fafafa - #88BCBCBC - #f1f1f1 - #808080 - - - #bdbdbd - #f5f5f5 - - - - #E8F0FE - #C9D5F0 - - - - #1A1A73E8 - #331A73E8 - #4D1A73E8 - #661A73E8 - #801A73E8 - #991A73E8 - #B31A73E8 - #CC1A73E8 - #E61A73E8 - - - #2d42a5f5 - - #BBDEFB - #64B5F6 - #42A5F5 - #2196F3 - #1E88E5 - #1976D2 - #1565C0 - - #795548 - - #C8E6C9 - #A5D6A7 - #81c784 - #66bb6a - #884CAF50 - #4CAF50 - #43A047 - #388E3C - #2e7d32 - #1b5e20 - - - #FAFAFA - #F5F5F5 - #eeeeee - #e0e0e0 - #BDBDBD - #9E9E9E - #757575 - #616161 - #424242 - - #813f51b5 - - #5C6BC0 - #3F51B5 - #3949AB - #303F9F - - - - #B3E5FC - #81D4FA - #4fc3f7 - #29B6F6 - #03A9F4 - #039BE5 - #0288D1 - #0277BD - - - #88FB8C00 - #FB8C00 - #F57C00 - #EF6C00 - - - #ef9a9a - #e57373 - #EF5350 - #F44336 - #E53935 - #D32F2F - - - #009688 - - #FFF9C4 - #FDD835 - #F9A825 - + #4c4dcf + #4C4DCF + #FFFFFF + #E1DFFF + #08006C + #0059C5 + #FFFFFF + #D8E2FF + #001A43 + #795369 + #FFFFFF + #FFD8EC + #2E1125 + #BA1A1A + #FFDAD6 + #FFFFFF + #410002 + #F6FEFF + #001F24 + #F6FEFF + #001F24 + #E4E1EC + #47464F + #777680 + #D0F8FF + #00363D + #C1C1FF + #000000 + #4C4DCF + #4C4DCF + #C1C1FF + #160AA2 + #3231B6 + #E1DFFF + #AEC6FF + #002E6C + #004397 + #D8E2FF + #E9B9D3 + #46263A + #5F3C51 + #FFD8EC + #FFB4AB + #93000A + #690005 + #FFDAD6 + #001F24 + #97F0FF + #001F24 + #97F0FF + #47464F + #C8C5D0 + #918F9A + #001F24 + #97F0FF + #4C4DCF + #000000 + #C1C1FF + #C1C1FF diff --git a/app/src/main/res/values/custom_colors.xml b/app/src/main/res/values/custom_colors.xml new file mode 100644 index 00000000..f896ab54 --- /dev/null +++ b/app/src/main/res/values/custom_colors.xml @@ -0,0 +1,118 @@ + + + #1A73E8 + #0049b4 + #4db6ac + #459B90 + #387ef5 + #3f3f51b5 + #757575 + + @color/green_500 + @color/orange_700 + #eeeeee + + + #B2000000 + #FFFFFF + #fafafa + #88BCBCBC + #f1f1f1 + #808080 + + + #bdbdbd + #f5f5f5 + + + + #E8F0FE + #C9D5F0 + + + + #1A1A73E8 + #331A73E8 + #4D1A73E8 + #661A73E8 + #801A73E8 + #991A73E8 + #B31A73E8 + #CC1A73E8 + #E61A73E8 + + + #2d42a5f5 + + #BBDEFB + #64B5F6 + #42A5F5 + #2196F3 + #1E88E5 + #1976D2 + #1565C0 + + #795548 + + #C8E6C9 + #A5D6A7 + #81c784 + #66bb6a + #884CAF50 + #4CAF50 + #43A047 + #388E3C + #2e7d32 + #1b5e20 + + + #FAFAFA + #F5F5F5 + #eeeeee + #e0e0e0 + #BDBDBD + #9E9E9E + #757575 + #616161 + #424242 + + #813f51b5 + + #5C6BC0 + #3F51B5 + #3949AB + #303F9F + + + + #B3E5FC + #81D4FA + #4fc3f7 + #29B6F6 + #03A9F4 + #039BE5 + #0288D1 + #0277BD + + + #88FB8C00 + #FB8C00 + #F57C00 + #EF6C00 + + + #ef9a9a + #e57373 + #EF5350 + #F44336 + #E53935 + #D32F2F + + + #009688 + + #FFF9C4 + #FDD835 + #F9A825 + + diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index 3191c452..fa26836b 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -1,23 +1,23 @@ - + - - - - diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml new file mode 100644 index 00000000..99866d1a --- /dev/null +++ b/app/src/main/res/values/themes.xml @@ -0,0 +1,31 @@ + + + +