diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/MainAccettazioneFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/MainAccettazioneFragment.java index 77a0cdb0..40678e0e 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/MainAccettazioneFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/MainAccettazioneFragment.java @@ -166,6 +166,7 @@ public class MainAccettazioneFragment extends Fragment implements ISearcableFrag return groupedOrdine; }) .distinctBy(x -> x.codAnagForn + "_" + x.nomeFornitore) + .sortBy(x -> x.nomeFornitore) .toList(); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOnOrdineAccettazioneInevasoViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOnOrdineAccettazioneInevasoViewModel.java index d7c97e89..84400e7d 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOnOrdineAccettazioneInevasoViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOnOrdineAccettazioneInevasoViewModel.java @@ -396,7 +396,7 @@ public class AccettazioneOnOrdineAccettazioneInevasoViewModel implements IOnColl } ProgressDialog finalProgress = progress; - NoteAggiuntiveNuovaULDialog.show(mActivity, new NoteAggiuntiveNuovaULDialog.Callback() { + NoteAggiuntiveNuovaULDialog.make(mActivity, new NoteAggiuntiveNuovaULDialog.Callback() { @Override public void onSuccess(String noteString) { @@ -507,7 +507,7 @@ public class AccettazioneOnOrdineAccettazioneInevasoViewModel implements IOnColl public void onAbort() { finalProgress.dismiss(); } - }); + }).show(); } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/views/NoteAggiuntiveNuovaULDialog.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/views/NoteAggiuntiveNuovaULDialog.java index 79e5a62d..6133b8c2 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/views/NoteAggiuntiveNuovaULDialog.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/views/NoteAggiuntiveNuovaULDialog.java @@ -1,59 +1,57 @@ package it.integry.integrywmsnative.gest.accettazione_ordine_inevaso.views; +import android.app.Dialog; import android.content.Context; import com.google.android.material.textfield.TextInputEditText; import androidx.appcompat.app.AlertDialog; + +import android.graphics.Color; +import android.graphics.drawable.ColorDrawable; +import android.view.LayoutInflater; import android.view.ViewGroup; import android.widget.RelativeLayout; +import androidx.databinding.DataBindingUtil; import it.integry.integrywmsnative.R; import it.integry.integrywmsnative.core.utility.UtilityDimension; +import it.integry.integrywmsnative.databinding.DialogNoteAggiuntiveNuovaUlBinding; public class NoteAggiuntiveNuovaULDialog { + private Dialog currentDialog; + public interface Callback { void onSuccess(String noteString); void onAbort(); } + public static Dialog make(Context context, final Callback callback) { + return new NoteAggiuntiveNuovaULDialog(context, callback).currentDialog; + } - public static void show(Context mContext, final Callback callback){ + private NoteAggiuntiveNuovaULDialog(Context context, final Callback callback){ - RelativeLayout relativeLayout = new RelativeLayout(mContext); + LayoutInflater inflater = (LayoutInflater) context.getSystemService( Context.LAYOUT_INFLATER_SERVICE ); + DialogNoteAggiuntiveNuovaUlBinding bindings = DataBindingUtil.inflate(inflater, R.layout.dialog_note_aggiuntive_nuova_ul, null, false); - relativeLayout.setLayoutParams( - new RelativeLayout.LayoutParams( - RelativeLayout.LayoutParams.MATCH_PARENT, - RelativeLayout.LayoutParams.MATCH_PARENT)); + currentDialog = new Dialog(context); + currentDialog.setContentView(bindings.getRoot()); - relativeLayout.setPadding(UtilityDimension.convertSizeToDP(mContext, 22), - UtilityDimension.convertSizeToDP(mContext, 8), - UtilityDimension.convertSizeToDP(mContext, 24), - 0); + currentDialog.setCanceledOnTouchOutside(false); + currentDialog.setCancelable(false); + currentDialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); - final TextInputEditText mTextInputEditText = new TextInputEditText(mContext); - mTextInputEditText.setHint(R.string.hint_additional_notes); + bindings.buttonConfirm.setOnClickListener(v -> { + currentDialog.dismiss(); + callback.onSuccess(bindings.additionalNotesText.getText().toString()); + }); - ViewGroup.LayoutParams layoutParams = new ViewGroup.LayoutParams( - ViewGroup.LayoutParams.MATCH_PARENT, - ViewGroup.LayoutParams.WRAP_CONTENT); + bindings.buttonAbort.setOnClickListener(v -> { + currentDialog.dismiss(); + callback.onAbort(); + }); - mTextInputEditText.setLayoutParams(layoutParams); - relativeLayout.addView(mTextInputEditText); - - AlertDialog dialog = new AlertDialog.Builder(mContext) - .setTitle(mContext.getText(R.string.action_create_ul)) - .setMessage(R.string.dialog_message_additional_notes) - - .setCancelable(false) - - .setView(relativeLayout) - - .setPositiveButton(R.string.confirm, (dialog1, which) -> callback.onSuccess(mTextInputEditText.getText().toString())) - .setNegativeButton(R.string.abort, (dialogInterface, i) -> callback.onAbort()) - .create(); - dialog.show(); } } diff --git a/app/src/main/res/layout/dialog_note_aggiuntive_nuova_ul.xml b/app/src/main/res/layout/dialog_note_aggiuntive_nuova_ul.xml new file mode 100644 index 00000000..8468bd05 --- /dev/null +++ b/app/src/main/res/layout/dialog_note_aggiuntive_nuova_ul.xml @@ -0,0 +1,131 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file