Compare commits
23 Commits
v1.44.07(4
...
v1.44.12(4
| Author | SHA1 | Date | |
|---|---|---|---|
| a4fcc87088 | |||
| 63f9912347 | |||
| b887172032 | |||
| 6229a1a4b1 | |||
| a9028e65d9 | |||
| ba413e4d05 | |||
| 6f759d969d | |||
| 6f06eaf0a0 | |||
| 993191c083 | |||
| 329d53f8d0 | |||
| c3c3d32dfe | |||
| 1756124b89 | |||
| 5bc3619d6b | |||
| 7ec04ac8da | |||
| 8d93f3bb61 | |||
| b31ea475c6 | |||
| a7e8ec4d99 | |||
| 677ee127ff | |||
| a02035e9b8 | |||
| b61948dac3 | |||
| deee26d55b | |||
| 00443b46c8 | |||
| 9228eaf01b |
5
.idea/fileTemplates/Android Dialog.java
generated
5
.idea/fileTemplates/Android Dialog.java
generated
@@ -122,5 +122,10 @@ Create the following layout resource file [dialog_${dashName}.xml]
|
||||
alertDialog.setOnShowListener(this);
|
||||
return alertDialog;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dismiss() {
|
||||
if(getDialog() != null) getDialog().dismiss();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -10,8 +10,8 @@ apply plugin: 'com.google.gms.google-services'
|
||||
|
||||
android {
|
||||
|
||||
def appVersionCode = 476
|
||||
def appVersionName = '1.44.07'
|
||||
def appVersionCode = 481
|
||||
def appVersionName = '1.44.12'
|
||||
|
||||
signingConfigs {
|
||||
release {
|
||||
|
||||
@@ -116,6 +116,10 @@ import it.integry.integrywmsnative.view.dialogs.ask_cliente.DialogAskClienteModu
|
||||
import it.integry.integrywmsnative.view.dialogs.ask_commessa.DialogAskCommessaComponent;
|
||||
import it.integry.integrywmsnative.view.dialogs.ask_linea_prod.DialogAskLineaProdComponent;
|
||||
import it.integry.integrywmsnative.view.dialogs.ask_linea_prod.DialogAskLineaProdModule;
|
||||
import it.integry.integrywmsnative.view.dialogs.ask_livello_posizione.DialogAskLivelloPosizioneComponent;
|
||||
import it.integry.integrywmsnative.view.dialogs.ask_livello_posizione.DialogAskLivelloPosizioneModule;
|
||||
import it.integry.integrywmsnative.view.dialogs.ask_position_of_lu.DialogAskPositionOfLUComponent;
|
||||
import it.integry.integrywmsnative.view.dialogs.ask_position_of_lu.DialogAskPositionOfLUModule;
|
||||
import it.integry.integrywmsnative.view.dialogs.ask_unknown_barcode_notes.DialogAskUnknownBarcodeNotesComponent;
|
||||
import it.integry.integrywmsnative.view.dialogs.ask_unknown_barcode_notes.DialogAskUnknownBarcodeNotesModule;
|
||||
import it.integry.integrywmsnative.view.dialogs.ask_vettore.DialogAskVettoreComponent;
|
||||
@@ -233,7 +237,9 @@ import it.integry.integrywmsnative.view.dialogs.update_available.DialogUpdateAva
|
||||
DialogAskVettoreModule.class,
|
||||
DialogCreateNewArtModule.class,
|
||||
DialogSwitchUserDepoModule.class,
|
||||
DialogUpdateAvailableModule.class
|
||||
DialogUpdateAvailableModule.class,
|
||||
DialogAskPositionOfLUModule.class,
|
||||
DialogAskLivelloPosizioneModule.class
|
||||
})
|
||||
public interface MainApplicationComponent {
|
||||
|
||||
@@ -392,6 +398,11 @@ public interface MainApplicationComponent {
|
||||
|
||||
DialogUpdateAvailableComponent.Factory dialogUpdateAvailableComponent();
|
||||
|
||||
DialogAskPositionOfLUComponent.Factory dialogAskPositionOfLUComponent();
|
||||
|
||||
DialogAskLivelloPosizioneComponent.Factory dialogAskLivelloPosizioneComponent();
|
||||
|
||||
|
||||
void inject(MainApplication mainApplication);
|
||||
|
||||
void inject(AppContext mainApplication);
|
||||
|
||||
@@ -4,6 +4,7 @@ import android.content.Intent;
|
||||
import android.content.SharedPreferences;
|
||||
import android.content.res.Resources;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.text.Html;
|
||||
import android.text.SpannableString;
|
||||
import android.view.Gravity;
|
||||
@@ -92,6 +93,9 @@ public class AccettazioneOrdiniPickingActivity extends BaseActivity implements A
|
||||
@Inject
|
||||
DialogInputQuantityV2View mDialogInputQuantityV2View;
|
||||
|
||||
@Inject
|
||||
Handler handler;
|
||||
|
||||
private final AccettazionePickingFiltroOrdineViewModel mAppliedFilterViewModel = new AccettazionePickingFiltroOrdineViewModel();
|
||||
|
||||
private BottomSheetFragmentLUContentViewModel mBottomSheetFragmentLUContentViewModel;
|
||||
@@ -650,8 +654,16 @@ public class AccettazioneOrdiniPickingActivity extends BaseActivity implements A
|
||||
this.fabPopupMenu.dismiss();
|
||||
this.onLoadingStarted();
|
||||
|
||||
this.mViewModel.createNewLU(null, null, null, false, () -> {
|
||||
this.onLoadingEnded();
|
||||
executorService.execute(() -> {
|
||||
try {
|
||||
//Aggiunto perchè a volte rimaneva il dialog di caricamento avanti a tutto
|
||||
Thread.sleep(1000);
|
||||
} catch (InterruptedException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
this.mViewModel.createNewLU(null, null, null, false, () -> {
|
||||
this.onLoadingEnded();
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
@@ -740,7 +752,9 @@ public class AccettazioneOrdiniPickingActivity extends BaseActivity implements A
|
||||
|
||||
@Override
|
||||
public void onInfoAggiuntiveRequest(RunnableArgss<String, ObservableMtbTcol> onComplete) {
|
||||
DialogInfoAggiuntiveLUView.newInstance(onComplete, this::onLoadingEnded).show(getSupportFragmentManager(), DialogInfoAggiuntiveLUView.class.getName());
|
||||
handler.post(() -> {
|
||||
DialogInfoAggiuntiveLUView.newInstance(onComplete, this::onLoadingEnded).show(getSupportFragmentManager(), DialogInfoAggiuntiveLUView.class.getName());
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -781,7 +795,7 @@ public class AccettazioneOrdiniPickingActivity extends BaseActivity implements A
|
||||
public void onRowSaved() {
|
||||
runOnUiThread(() -> {
|
||||
Snackbar.make(mBindings.getRoot(), R.string.data_saved, Snackbar.LENGTH_SHORT)
|
||||
.setBackgroundTint(getResources().getColor(R. color. green_500))
|
||||
.setBackgroundTint(getResources().getColor(R.color.green_500))
|
||||
.show();
|
||||
});
|
||||
}
|
||||
@@ -828,7 +842,7 @@ public class AccettazioneOrdiniPickingActivity extends BaseActivity implements A
|
||||
runOnUiThread(() -> {
|
||||
noLUPresent.set(false);
|
||||
Snackbar.make(mBindings.getRoot(), R.string.data_saved, Snackbar.LENGTH_SHORT)
|
||||
.setBackgroundTint(getResources().getColor(R. color. green_500))
|
||||
.setBackgroundTint(getResources().getColor(R.color.green_500))
|
||||
.show();
|
||||
|
||||
this.mBottomSheetFragmentLUContentViewModel.setMtbColt(mtbColt);
|
||||
|
||||
@@ -99,7 +99,7 @@ public class ArticoliInGiacenzaFragment extends BaseFragment implements ITitledF
|
||||
}
|
||||
|
||||
private void choosePosition(RunnableArgs<MtbDepoPosizione> onComplete) {
|
||||
DialogAskPositionOfLUView.makeBase(false, (status, mtbDepoPosizione) -> {
|
||||
DialogAskPositionOfLUView.newInstance(false, (status, mtbDepoPosizione) -> {
|
||||
|
||||
if (status == DialogConsts.Results.ABORT) {
|
||||
popMe();
|
||||
@@ -107,7 +107,7 @@ public class ArticoliInGiacenzaFragment extends BaseFragment implements ITitledF
|
||||
onComplete.run(mtbDepoPosizione);
|
||||
}
|
||||
|
||||
}, this::onError)
|
||||
})
|
||||
.show(requireActivity().getSupportFragmentManager(), "tag");
|
||||
}
|
||||
|
||||
|
||||
@@ -945,11 +945,21 @@ public class PickingLiberoViewModel {
|
||||
var closeUDSRequest = new CloseUDSRequestDTO()
|
||||
.setMtbColt(mCurrentMtbColt);
|
||||
|
||||
if (this.mDefaultGestione == GestioneEnum.LAVORAZIONE) {
|
||||
if (this.mDefaultGestione == GestioneEnum.LAVORAZIONE && SettingsManager.iDB().isProduzioneGeneraDocScar()) {
|
||||
|
||||
if(SettingsManager.iDB().getInternalCodAnags() == null || SettingsManager.iDB().getInternalCodAnags().isEmpty()) {
|
||||
this.sendError(new Exception("Nessuna anagrafica aziendale configurata. Assicurarsi di aver abilitato il flag FLAG_USE_COD_ANAG_AZIENDALE."));
|
||||
return;
|
||||
}
|
||||
|
||||
closeUDSRequest
|
||||
.setCreateDocument(SettingsManager.iDB().isProduzioneGeneraDocScar())
|
||||
.setDocumentCodDtip(SettingsManager.iDB().getProduzioneCodDtipScar())
|
||||
.setDocumentCodAnag(SettingsManager.iDB().getInternalCodAnags().stream().filter(InternalCodAnagsDTO::isFornitore).findFirst().get().getCodAnag());
|
||||
.setDocumentCodAnag(SettingsManager.iDB().getInternalCodAnags().stream()
|
||||
.filter(InternalCodAnagsDTO::isFornitore)
|
||||
.findFirst()
|
||||
.get()
|
||||
.getCodAnag());
|
||||
}
|
||||
|
||||
this.mColliScaricoRESTConsumer.closeUDS(closeUDSRequest, response -> {
|
||||
|
||||
@@ -252,7 +252,7 @@ public class ProdRiposizionamentoDaProdFragment extends BaseFragment implements
|
||||
};
|
||||
|
||||
private void choosePosition(RunnableArgs<MtbDepoPosizione> onComplete) {
|
||||
DialogAskPositionOfLUView.makeBase(false, (status, mtbDepoPosizione) -> {
|
||||
DialogAskPositionOfLUView.newInstance(false, (status, mtbDepoPosizione) -> {
|
||||
|
||||
if (status == DialogConsts.Results.ABORT) {
|
||||
popMe();
|
||||
@@ -260,7 +260,7 @@ public class ProdRiposizionamentoDaProdFragment extends BaseFragment implements
|
||||
onComplete.run(mtbDepoPosizione);
|
||||
}
|
||||
|
||||
}, this::onError)
|
||||
})
|
||||
.show(requireActivity().getSupportFragmentManager(), "tag");
|
||||
}
|
||||
|
||||
|
||||
@@ -224,7 +224,7 @@ public class ProdVersamentoMaterialeFragment extends BaseFragment implements Pro
|
||||
// }
|
||||
|
||||
private void choosePosition(RunnableArgs<MtbDepoPosizione> onComplete) {
|
||||
DialogAskPositionOfLUView.makeBase(false, (status, mtbDepoPosizione) -> {
|
||||
DialogAskPositionOfLUView.newInstance(false, (status, mtbDepoPosizione) -> {
|
||||
|
||||
if (status == DialogConsts.Results.ABORT) {
|
||||
popMe();
|
||||
@@ -232,7 +232,7 @@ public class ProdVersamentoMaterialeFragment extends BaseFragment implements Pro
|
||||
onComplete.run(mtbDepoPosizione);
|
||||
}
|
||||
|
||||
}, this::onError)
|
||||
})
|
||||
.show(requireActivity().getSupportFragmentManager(), "tag");
|
||||
}
|
||||
|
||||
|
||||
@@ -95,7 +95,7 @@ public class ProdVersamentoMaterialeInBufferFragment extends BaseFragment implem
|
||||
|
||||
|
||||
private void choosePosition() {
|
||||
DialogAskPositionOfLUView.makeBase(true, (status, mtbDepoPosizione) -> {
|
||||
DialogAskPositionOfLUView.newInstance(true, (status, mtbDepoPosizione) -> {
|
||||
|
||||
if (status == DialogConsts.Results.ABORT) {
|
||||
popMe();
|
||||
@@ -105,7 +105,7 @@ public class ProdVersamentoMaterialeInBufferFragment extends BaseFragment implem
|
||||
});
|
||||
}
|
||||
|
||||
}, this::onError)
|
||||
})
|
||||
.show(requireActivity().getSupportFragmentManager(), "tag");
|
||||
}
|
||||
|
||||
|
||||
@@ -529,7 +529,7 @@ public class RettificaGiacenzeFragment extends BaseFragment implements ITitledFr
|
||||
DialogYesNoView.newInstance(null, "Vuoi cambiare la posizione della UL corrente?", result -> {
|
||||
switch (result) {
|
||||
case YES:
|
||||
DialogAskPositionOfLUView.makeBase(false, (status, mtbDepoPosizione) -> {
|
||||
DialogAskPositionOfLUView.newInstance(false, (status, mtbDepoPosizione) -> {
|
||||
if (status == DialogConsts.Results.ABORT) {
|
||||
onComplete.run(false, null);
|
||||
} else {
|
||||
@@ -539,7 +539,7 @@ public class RettificaGiacenzeFragment extends BaseFragment implements ITitledFr
|
||||
onComplete.run(true, null);
|
||||
}
|
||||
}
|
||||
}, this::onError)
|
||||
})
|
||||
.show(requireActivity().getSupportFragmentManager(), "tag");
|
||||
break;
|
||||
|
||||
|
||||
@@ -958,13 +958,13 @@ public class SpedizioneActivity extends BaseActivity implements SpedizioneViewMo
|
||||
DialogYesNoView.newInstance(null, "Vuoi cambiare la posizione della UL corrente?", result -> {
|
||||
switch (result) {
|
||||
case YES:
|
||||
DialogAskPositionOfLUView.makeBase(false, (status, mtbDepoPosizione) -> {
|
||||
DialogAskPositionOfLUView.newInstance(false, (status, mtbDepoPosizione) -> {
|
||||
if (status == DialogConsts.Results.ABORT) {
|
||||
onComplete.run(false, null);
|
||||
} else {
|
||||
onComplete.run(true, mtbDepoPosizione);
|
||||
}
|
||||
}, this::onError).show(getSupportFragmentManager(), "tag");
|
||||
}).show(getSupportFragmentManager(), "tag");
|
||||
break;
|
||||
|
||||
case NO:
|
||||
|
||||
@@ -2024,7 +2024,6 @@ public class SpedizioneViewModel {
|
||||
}
|
||||
|
||||
public void closeOrder() {
|
||||
this.sendOnLoadingStarted();
|
||||
if (SettingsManager.iDB().isFlagPrintEtichetteOnOrderClose() || SettingsManager.iDB().isFlagPrintPackingListOnOrderClose()) {
|
||||
this.sendOnCloseOrderPrintRequest(this::onCloseOrderPrintRequest);
|
||||
} else {
|
||||
|
||||
@@ -2,6 +2,7 @@ package it.integry.integrywmsnative.gest.versamento_merce;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.text.Html;
|
||||
import android.text.SpannableString;
|
||||
import android.view.LayoutInflater;
|
||||
@@ -34,8 +35,8 @@ import it.integry.integrywmsnative.core.model.secondary.GestioneEnum;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
||||
import it.integry.integrywmsnative.databinding.FragmentMainVersamentoMerceBinding;
|
||||
import it.integry.integrywmsnative.gest.spedizione.model.PickedQuantityDTO;
|
||||
import it.integry.integrywmsnative.view.dialogs.DialogAskLivelloPosizione;
|
||||
import it.integry.integrywmsnative.view.dialogs.DialogCommon;
|
||||
import it.integry.integrywmsnative.view.dialogs.ask_livello_posizione.DialogAskLivelloPosizioneView;
|
||||
import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageView;
|
||||
import it.integry.integrywmsnative.view.dialogs.choose_arts_from_mtbcolr_list.DialogChooseArtsFromMtbColrList;
|
||||
import it.integry.integrywmsnative.view.dialogs.input_quantity_v2.DialogInputQuantityV2DTO;
|
||||
@@ -51,6 +52,9 @@ public class VersamentoMerceFragment extends BaseFragment implements ITitledFrag
|
||||
@Inject
|
||||
DialogInputQuantityV2View mDialogInputQuantityV2View;
|
||||
|
||||
@Inject
|
||||
Handler handler;
|
||||
|
||||
private FragmentMainVersamentoMerceBinding mBindings = null;
|
||||
|
||||
private final List<Runnable> mOnPreDestroyList = new ArrayList<>();
|
||||
@@ -151,25 +155,26 @@ public class VersamentoMerceFragment extends BaseFragment implements ITitledFrag
|
||||
|
||||
@Override
|
||||
public void onLivelloPosizioneRequired(MtbDepoPosizione posizione, RunnableArgs<MtbDepoPosizione> onComplete) {
|
||||
this.getActivity().runOnUiThread(() -> {
|
||||
DialogAskLivelloPosizione.make(getActivity(), posizione, false, onComplete, this::onError);
|
||||
handler.post(() -> {
|
||||
DialogAskLivelloPosizioneView.newInstance(posizione, false, onComplete, this::onError)
|
||||
.show(requireActivity().getSupportFragmentManager(), "ask-livello-posizione");
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onSpostamentoTraDepConfirmRequired(String sourceCodMdep, String destinationCodMdep, RunnableArgs<Boolean> onComplete) {
|
||||
this.getActivity().runOnUiThread(() -> {
|
||||
handler.post(() -> {
|
||||
DialogSimpleMessageView.makeWarningDialog(Html.fromHtml("Stai spostando una UL dal deposito <b>" + sourceCodMdep + "</b> al deposito <b>" + destinationCodMdep + "</b>"),
|
||||
null,
|
||||
() -> onComplete.run(true),
|
||||
() -> onComplete.run(false))
|
||||
.show(getActivity().getSupportFragmentManager(), "tag");
|
||||
.show(requireActivity().getSupportFragmentManager(), "tag");
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onArtsChooseRequired(List<MtbColr> mtbColrList, RunnableArgs<List<MtbColr>> onComplete, Runnable onAbort) {
|
||||
this.requireActivity().runOnUiThread(() -> {
|
||||
handler.post(() -> {
|
||||
DialogChooseArtsFromMtbColrList
|
||||
.newInstance(mtbColrList, data -> {
|
||||
if(data == null || data.isEmpty()) {
|
||||
|
||||
@@ -1,162 +0,0 @@
|
||||
package it.integry.integrywmsnative.view.dialogs;
|
||||
|
||||
import android.app.Dialog;
|
||||
import android.content.Context;
|
||||
|
||||
import android.graphics.Color;
|
||||
import android.graphics.drawable.ColorDrawable;
|
||||
import android.text.Editable;
|
||||
import android.text.TextWatcher;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
|
||||
import com.google.android.material.textfield.TextInputLayout;
|
||||
|
||||
import it.integry.integrywmsnative.R;
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||
import it.integry.integrywmsnative.core.model.MtbDepoPosizione;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityDialog;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityFocus;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityPosizione;
|
||||
|
||||
public class DialogAskLivelloPosizione {
|
||||
|
||||
|
||||
private Context mContext;
|
||||
private MtbDepoPosizione mtbDepoPosizione;
|
||||
|
||||
private Dialog mDialog;
|
||||
|
||||
private RunnableArgs<MtbDepoPosizione> onComplete;
|
||||
private RunnableArgs<Exception> onFailed;
|
||||
|
||||
private TextInputLayout livelloTextInputLayout;
|
||||
|
||||
private boolean completedFLow = false;
|
||||
|
||||
public static void make(FragmentActivity activity, MtbDepoPosizione mtbDepoPosizione, boolean canAbort, RunnableArgs<MtbDepoPosizione> onComplete, RunnableArgs<Exception> onFailed) {
|
||||
activity.runOnUiThread(() -> {
|
||||
new DialogAskLivelloPosizione(activity, mtbDepoPosizione, canAbort, onComplete, onFailed).mDialog.show();
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
public DialogAskLivelloPosizione(Context context, MtbDepoPosizione mtbDepoPosizione, boolean canAbort, RunnableArgs<MtbDepoPosizione> onComplete, RunnableArgs<Exception> onFailed) {
|
||||
mContext = context;
|
||||
this.mtbDepoPosizione = mtbDepoPosizione;
|
||||
this.onComplete = onComplete;
|
||||
this.onFailed = onFailed;
|
||||
|
||||
LayoutInflater inflater = (LayoutInflater) context.getSystemService( Context.LAYOUT_INFLATER_SERVICE );
|
||||
View currentView = inflater.inflate(R.layout.dialog_ask_livello_of_position, null, false);
|
||||
|
||||
mDialog = new Dialog(mContext);
|
||||
mDialog.setContentView(currentView);
|
||||
mDialog.setCanceledOnTouchOutside(false);
|
||||
mDialog.setCancelable(false);
|
||||
mDialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
|
||||
|
||||
UtilityDialog.setTo90PercentWidth(mContext, mDialog);
|
||||
|
||||
mDialog.setOnDismissListener(dialog -> {
|
||||
if(!completedFLow) onComplete.run(null);
|
||||
});
|
||||
|
||||
mDialog.setOnShowListener(dialog -> {
|
||||
|
||||
if(!canAbort) currentView.findViewById(R.id.button_abort).setVisibility(View.GONE);
|
||||
|
||||
|
||||
currentView.findViewById(R.id.button_confirm).setOnClickListener(v -> {
|
||||
String levelNumber = ((TextView)currentView.findViewById(R.id.level_number)).getText().toString();
|
||||
onLevelConfirm(levelNumber);
|
||||
});
|
||||
|
||||
currentView.findViewById(R.id.button_abort).setOnClickListener(v -> {
|
||||
onLevelAbort();
|
||||
});
|
||||
|
||||
livelloTextInputLayout = currentView.findViewById(R.id.level_number_layout);
|
||||
|
||||
|
||||
UtilityFocus.focusTextBox(mContext, livelloTextInputLayout.getEditText());
|
||||
livelloTextInputLayout.getEditText().addTextChangedListener(new TextWatcher() {
|
||||
@Override
|
||||
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTextChanged(CharSequence s, int start, int before, int count) {
|
||||
if(livelloTextInputLayout.getEditText().getText() != null) {
|
||||
validateLevel(livelloTextInputLayout.getEditText().getText().toString());
|
||||
} else resetLevelError();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void afterTextChanged(Editable s) {
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
private void onLevelConfirm(String levelString) {
|
||||
|
||||
String newPosizione = mtbDepoPosizione.getPosizione().substring(0, mtbDepoPosizione.getPosizione().length()-1);
|
||||
newPosizione += levelString;
|
||||
|
||||
MtbDepoPosizione foundPosizione = UtilityPosizione.getFromCache(newPosizione);
|
||||
|
||||
if(foundPosizione != null) {
|
||||
resetLevelError();
|
||||
|
||||
completedFLow = true;
|
||||
onComplete.run(foundPosizione);
|
||||
mDialog.dismiss();
|
||||
|
||||
|
||||
} else {
|
||||
setLevelError(mContext.getResources().getString(R.string.not_valid));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void validateLevel(String levelString) {
|
||||
String newPosizione = mtbDepoPosizione.getPosizione().substring(0, mtbDepoPosizione.getPosizione().length()-1);
|
||||
newPosizione += levelString;
|
||||
|
||||
if(UtilityPosizione.getFromCache(newPosizione) != null) {
|
||||
resetLevelError();
|
||||
} else setLevelError(mContext.getResources().getString(R.string.not_valid));
|
||||
}
|
||||
|
||||
private void setLevelError(String message){
|
||||
livelloTextInputLayout.setErrorEnabled(true);
|
||||
livelloTextInputLayout.setError(message);
|
||||
livelloTextInputLayout.setErrorIconDrawable(null);
|
||||
}
|
||||
|
||||
private void resetLevelError() {
|
||||
livelloTextInputLayout.setError(null);
|
||||
}
|
||||
|
||||
|
||||
private void onLevelAbort() {
|
||||
completedFLow = true;
|
||||
onComplete.run(null);
|
||||
mDialog.dismiss();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
package it.integry.integrywmsnative.view.dialogs.ask_livello_posizione;
|
||||
|
||||
import dagger.Subcomponent;
|
||||
|
||||
@Subcomponent
|
||||
public interface DialogAskLivelloPosizioneComponent {
|
||||
|
||||
@Subcomponent.Factory
|
||||
interface Factory {
|
||||
DialogAskLivelloPosizioneComponent create();
|
||||
}
|
||||
|
||||
void inject(DialogAskLivelloPosizioneView dialogAskLivelloPosizioneView);
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package it.integry.integrywmsnative.view.dialogs.ask_livello_posizione;
|
||||
|
||||
import dagger.Module;
|
||||
import dagger.Provides;
|
||||
|
||||
@Module(subcomponents = DialogAskLivelloPosizioneComponent.class)
|
||||
public class DialogAskLivelloPosizioneModule {
|
||||
|
||||
@Provides
|
||||
DialogAskLivelloPosizioneViewModel providesDialogAskLivelloPosizioneViewModel() {
|
||||
return new DialogAskLivelloPosizioneViewModel();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,177 @@
|
||||
package it.integry.integrywmsnative.view.dialogs.ask_livello_posizione;
|
||||
|
||||
import android.app.Dialog;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.os.Bundle;
|
||||
import android.text.Editable;
|
||||
import android.text.TextWatcher;
|
||||
import android.view.LayoutInflater;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
|
||||
|
||||
import javax.inject.Inject;
|
||||
|
||||
import it.integry.integrywmsnative.MainApplication;
|
||||
import it.integry.integrywmsnative.R;
|
||||
import it.integry.integrywmsnative.core.expansion.BaseDialogFragment;
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||
import it.integry.integrywmsnative.core.model.MtbDepoPosizione;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityFocus;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityPosizione;
|
||||
import it.integry.integrywmsnative.databinding.DialogAskLivelloPosizioneBinding;
|
||||
|
||||
public class DialogAskLivelloPosizioneView extends BaseDialogFragment {
|
||||
|
||||
@Inject
|
||||
DialogAskLivelloPosizioneViewModel mViewModel;
|
||||
|
||||
private MtbDepoPosizione mtbDepoPosizione;
|
||||
|
||||
private boolean canAbort;
|
||||
private RunnableArgs<MtbDepoPosizione> onComplete;
|
||||
private RunnableArgs<Exception> onFailed;
|
||||
|
||||
private DialogAskLivelloPosizioneBinding mBindings;
|
||||
private Context mContext;
|
||||
|
||||
private boolean completedFLow = false;
|
||||
|
||||
//Pass here all external parameters
|
||||
public static DialogAskLivelloPosizioneView newInstance(MtbDepoPosizione mtbDepoPosizione, boolean canAbort, RunnableArgs<MtbDepoPosizione> onComplete, RunnableArgs<Exception> onFailed) {
|
||||
return new DialogAskLivelloPosizioneView(mtbDepoPosizione, canAbort, onComplete, onFailed);
|
||||
}
|
||||
|
||||
private DialogAskLivelloPosizioneView(MtbDepoPosizione mtbDepoPosizione, boolean canAbort, RunnableArgs<MtbDepoPosizione> onComplete, RunnableArgs<Exception> onFailed) {
|
||||
super();
|
||||
|
||||
this.mtbDepoPosizione = mtbDepoPosizione;
|
||||
this.onComplete = onComplete;
|
||||
this.onFailed = onFailed;
|
||||
this.canAbort = canAbort;
|
||||
|
||||
MainApplication.appComponent
|
||||
.dialogAskLivelloPosizioneComponent()
|
||||
.create()
|
||||
.inject(this);
|
||||
}
|
||||
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) {
|
||||
this.mContext = requireContext();
|
||||
|
||||
mBindings = DialogAskLivelloPosizioneBinding.inflate(LayoutInflater.from(this.mContext), null, false);
|
||||
mBindings.setLifecycleOwner(this);
|
||||
|
||||
setCancelable(false);
|
||||
|
||||
var alertDialogBuilder = new MaterialAlertDialogBuilder(this.mContext)
|
||||
.setView(mBindings.getRoot())
|
||||
.setCancelable(isCancelable())
|
||||
.setPositiveButton(R.string.confirm, (dialogInterface, i) -> {
|
||||
String levelNumber = mBindings.levelNumber.getText().toString();
|
||||
onLevelConfirm(levelNumber);
|
||||
});
|
||||
|
||||
if (canAbort)
|
||||
alertDialogBuilder.setNeutralButton(R.string.abort, ((dialogInterface, i) -> {
|
||||
onLevelAbort();
|
||||
}));
|
||||
|
||||
var alertDialog = alertDialogBuilder.create();
|
||||
|
||||
alertDialog.setCanceledOnTouchOutside(isCancelable());
|
||||
alertDialog.setOnShowListener(this);
|
||||
return alertDialog;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dismiss() {
|
||||
if (getDialog() != null) getDialog().dismiss();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onShow(DialogInterface dialogInterface) {
|
||||
|
||||
UtilityFocus.focusTextBox(mContext, mBindings.levelNumberLayout.getEditText());
|
||||
mBindings.levelNumberLayout.getEditText().addTextChangedListener(new TextWatcher() {
|
||||
@Override
|
||||
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTextChanged(CharSequence s, int start, int before, int count) {
|
||||
if (mBindings.levelNumberLayout.getEditText().getText() != null) {
|
||||
validateLevel(mBindings.levelNumberLayout.getEditText().getText().toString());
|
||||
} else resetLevelError();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void afterTextChanged(Editable s) {
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDismiss(@NonNull DialogInterface dialog) {
|
||||
super.onDismiss(dialog);
|
||||
|
||||
if(!completedFLow) onComplete.run(null);
|
||||
}
|
||||
|
||||
|
||||
private void onLevelConfirm(String levelString) {
|
||||
|
||||
String newPosizione = mtbDepoPosizione.getPosizione().substring(0, mtbDepoPosizione.getPosizione().length() - 1);
|
||||
newPosizione += levelString;
|
||||
|
||||
MtbDepoPosizione foundPosizione = UtilityPosizione.getFromCache(newPosizione);
|
||||
|
||||
if (foundPosizione != null) {
|
||||
resetLevelError();
|
||||
|
||||
completedFLow = true;
|
||||
onComplete.run(foundPosizione);
|
||||
dismiss();
|
||||
|
||||
|
||||
} else {
|
||||
setLevelError(mContext.getResources().getString(R.string.not_valid));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void validateLevel(String levelString) {
|
||||
String newPosizione = mtbDepoPosizione.getPosizione().substring(0, mtbDepoPosizione.getPosizione().length() - 1);
|
||||
newPosizione += levelString;
|
||||
|
||||
if (UtilityPosizione.getFromCache(newPosizione) != null) {
|
||||
resetLevelError();
|
||||
} else setLevelError(mContext.getResources().getString(R.string.not_valid));
|
||||
}
|
||||
|
||||
private void setLevelError(String message) {
|
||||
mBindings.levelNumberLayout.setErrorEnabled(true);
|
||||
mBindings.levelNumberLayout.setError(message);
|
||||
mBindings.levelNumberLayout.setErrorIconDrawable(null);
|
||||
}
|
||||
|
||||
private void resetLevelError() {
|
||||
mBindings.levelNumberLayout.setError(null);
|
||||
}
|
||||
|
||||
|
||||
private void onLevelAbort() {
|
||||
completedFLow = true;
|
||||
onComplete.run(null);
|
||||
dismiss();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
package it.integry.integrywmsnative.view.dialogs.ask_livello_posizione;
|
||||
|
||||
public class DialogAskLivelloPosizioneViewModel {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package it.integry.integrywmsnative.view.dialogs.ask_position_of_lu;
|
||||
|
||||
import dagger.Subcomponent;
|
||||
|
||||
@Subcomponent
|
||||
public interface DialogAskPositionOfLUComponent {
|
||||
|
||||
@Subcomponent.Factory
|
||||
interface Factory {
|
||||
DialogAskPositionOfLUComponent create();
|
||||
}
|
||||
|
||||
void inject(DialogAskPositionOfLUView dialogAskPositionOfLUView);
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package it.integry.integrywmsnative.view.dialogs.ask_position_of_lu;
|
||||
|
||||
import dagger.Module;
|
||||
import dagger.Provides;
|
||||
|
||||
@Module(subcomponents = DialogAskPositionOfLUComponent.class)
|
||||
public class DialogAskPositionOfLUModule {
|
||||
|
||||
@Provides
|
||||
DialogAskPositionOfLUViewModel providesDialogAskPositionOfLUViewModel() {
|
||||
return new DialogAskPositionOfLUViewModel();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
package it.integry.integrywmsnative.view.dialogs.ask_position_of_lu;
|
||||
|
||||
import android.app.Dialog;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.os.Bundle;
|
||||
import android.text.Editable;
|
||||
@@ -20,7 +21,10 @@ import com.google.android.material.textfield.TextInputLayout;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import javax.inject.Inject;
|
||||
|
||||
import it.integry.barcode_base_android_library.model.BarcodeScanDTO;
|
||||
import it.integry.integrywmsnative.MainApplication;
|
||||
import it.integry.integrywmsnative.R;
|
||||
import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO;
|
||||
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
||||
@@ -33,41 +37,49 @@ import it.integry.integrywmsnative.core.utility.UtilityPosizione;
|
||||
import it.integry.integrywmsnative.databinding.DialogAskPositionOfLuBinding;
|
||||
import it.integry.integrywmsnative.view.dialogs.DialogConsts;
|
||||
|
||||
public class DialogAskPositionOfLUView extends BaseDialogFragment implements DialogInterface.OnShowListener {
|
||||
public class DialogAskPositionOfLUView extends BaseDialogFragment {
|
||||
|
||||
|
||||
@Inject
|
||||
DialogAskPositionOfLUViewModel mViewModel;
|
||||
|
||||
private DialogAskPositionOfLuBinding mBindings;
|
||||
private DialogAskPositionOfLUAdapter viewpagerAdapter;
|
||||
private int mBarcodeScannerIstanceID;
|
||||
|
||||
private boolean mCheckForLineaProd;
|
||||
private Context mContext;
|
||||
private int mBarcodeScannerInstanceID;
|
||||
|
||||
private MtbDepoPosizione currentMtbDepoPosizione;
|
||||
|
||||
private RunnableArgss<DialogConsts.Results, MtbDepoPosizione> onComplete;
|
||||
private RunnableArgs<Exception> onFailed;
|
||||
|
||||
private TextInputLayout livelloTextInputLayout;
|
||||
private boolean mCheckForLineaProd = false;
|
||||
private RunnableArgss<DialogConsts.Results, MtbDepoPosizione> onComplete = null;
|
||||
|
||||
private boolean completedFlow = false;
|
||||
private TextInputLayout livelloTextInputLayout;
|
||||
|
||||
public static DialogAskPositionOfLUView makeBase(boolean checkForLineaProd, RunnableArgss<DialogConsts.Results, MtbDepoPosizione> onComplete, RunnableArgs<Exception> onFailed) {
|
||||
return new DialogAskPositionOfLUView(checkForLineaProd, onComplete, onFailed);
|
||||
//Pass here all external parameters
|
||||
public static DialogAskPositionOfLUView newInstance(boolean checkForLineaProd, RunnableArgss<DialogConsts.Results, MtbDepoPosizione> onComplete) {
|
||||
return new DialogAskPositionOfLUView(checkForLineaProd, onComplete);
|
||||
}
|
||||
|
||||
private DialogAskPositionOfLUView(boolean checkForLineaProd, RunnableArgss<DialogConsts.Results, MtbDepoPosizione> onComplete, RunnableArgs<Exception> onFailed) {
|
||||
private DialogAskPositionOfLUView(boolean checkForLineaProd, RunnableArgss<DialogConsts.Results, MtbDepoPosizione> onComplete) {
|
||||
super();
|
||||
|
||||
this.mCheckForLineaProd = checkForLineaProd;
|
||||
this.onComplete = onComplete;
|
||||
this.onFailed = onFailed;
|
||||
|
||||
MainApplication.appComponent
|
||||
.dialogAskPositionOfLUComponent()
|
||||
.create()
|
||||
.inject(this);
|
||||
}
|
||||
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) {
|
||||
this.initBarcode();
|
||||
this.mContext = requireContext();
|
||||
|
||||
mBindings = DialogAskPositionOfLuBinding.inflate(LayoutInflater.from(requireActivity()), null, false);
|
||||
mBindings = DialogAskPositionOfLuBinding.inflate(LayoutInflater.from(this.mContext), null, false);
|
||||
mBindings.setLifecycleOwner(this);
|
||||
|
||||
List<Integer> views = new ArrayList<>();
|
||||
@@ -78,11 +90,16 @@ public class DialogAskPositionOfLUView extends BaseDialogFragment implements Dia
|
||||
mBindings.viewpager.setAdapter(viewpagerAdapter);
|
||||
mBindings.viewpager.beginFakeDrag();
|
||||
|
||||
var alertDialog = new MaterialAlertDialogBuilder(requireContext())
|
||||
this.initBarcode();
|
||||
|
||||
setCancelable(false);
|
||||
|
||||
var alertDialog = new MaterialAlertDialogBuilder(this.mContext)
|
||||
.setView(mBindings.getRoot())
|
||||
.setCancelable(false)
|
||||
.setCancelable(isCancelable())
|
||||
.create();
|
||||
alertDialog.setCanceledOnTouchOutside(false);
|
||||
|
||||
alertDialog.setCanceledOnTouchOutside(isCancelable());
|
||||
alertDialog.setOnShowListener(this);
|
||||
return alertDialog;
|
||||
}
|
||||
@@ -97,6 +114,11 @@ public class DialogAskPositionOfLUView extends BaseDialogFragment implements Dia
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dismiss() {
|
||||
if (getDialog() != null) getDialog().dismiss();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onShow(DialogInterface dialog) {
|
||||
((AppCompatTextView) viewpagerAdapter.getPage(0)
|
||||
@@ -142,7 +164,7 @@ public class DialogAskPositionOfLUView extends BaseDialogFragment implements Dia
|
||||
}
|
||||
|
||||
private void initBarcode() {
|
||||
mBarcodeScannerIstanceID = BarcodeManager.addCallback(new BarcodeCallbackDTO()
|
||||
mBarcodeScannerInstanceID = BarcodeManager.addCallback(new BarcodeCallbackDTO()
|
||||
.setOnScanSuccessful(onScanSuccessfull)
|
||||
.setOnScanFailed(this::onError));
|
||||
|
||||
@@ -151,7 +173,7 @@ public class DialogAskPositionOfLUView extends BaseDialogFragment implements Dia
|
||||
|
||||
@Override
|
||||
public void onDismiss(@NonNull DialogInterface dialog) {
|
||||
BarcodeManager.removeCallback(mBarcodeScannerIstanceID);
|
||||
BarcodeManager.removeCallback(mBarcodeScannerInstanceID);
|
||||
if (!completedFlow) onComplete.run(DialogConsts.Results.ABORT, null);
|
||||
super.onDismiss(dialog);
|
||||
}
|
||||
@@ -237,4 +259,5 @@ public class DialogAskPositionOfLUView extends BaseDialogFragment implements Dia
|
||||
onComplete.run(DialogConsts.Results.ABORT, null);
|
||||
dismiss();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
package it.integry.integrywmsnative.view.dialogs.ask_position_of_lu;
|
||||
|
||||
public class DialogAskPositionOfLUViewModel {
|
||||
|
||||
}
|
||||
@@ -290,6 +290,7 @@ public class DialogInputQuantityV2View extends BaseDialogFragment implements Dia
|
||||
}
|
||||
|
||||
private void dismiss(DialogInputQuantityV2ResultDTO result, boolean shouldCloseLu) {
|
||||
super.dismiss();
|
||||
if (this.mOnComplete != null) {
|
||||
if(result == null) {
|
||||
mOnAbort.run();
|
||||
@@ -297,7 +298,6 @@ public class DialogInputQuantityV2View extends BaseDialogFragment implements Dia
|
||||
this.mOnComplete.run(result, shouldCloseLu);
|
||||
}
|
||||
}
|
||||
super.dismiss();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -1,17 +1,16 @@
|
||||
package it.integry.integrywmsnative.view.dialogs.scan_art;
|
||||
|
||||
import android.app.Dialog;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.graphics.Color;
|
||||
import android.graphics.drawable.ColorDrawable;
|
||||
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 com.annimon.stream.Stream;
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@@ -19,6 +18,7 @@ import javax.inject.Inject;
|
||||
|
||||
import it.integry.barcode_base_android_library.model.BarcodeScanDTO;
|
||||
import it.integry.integrywmsnative.MainApplication;
|
||||
import it.integry.integrywmsnative.R;
|
||||
import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO;
|
||||
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
||||
import it.integry.integrywmsnative.core.expansion.BaseDialogFragment;
|
||||
@@ -37,6 +37,8 @@ public class DialogScanArtView extends BaseDialogFragment implements DialogScanA
|
||||
@Inject
|
||||
DialogScanArtViewModel mViewModel;
|
||||
|
||||
private Context mContext;
|
||||
|
||||
private final boolean mForceOnlyUL;
|
||||
|
||||
private DialogScanArtBinding mBindings;
|
||||
@@ -53,44 +55,57 @@ public class DialogScanArtView extends BaseDialogFragment implements DialogScanA
|
||||
|
||||
private DialogScanArtView(boolean forceOnlyUL, RunnableArgssss<DialogConsts.Results, MtbAart, Ean128Model, MtbColr> onItemChoosed, RunnableArgs<MtbDepoPosizione> onMagazzinoAutomaticoPickingRequest) {
|
||||
super();
|
||||
|
||||
mForceOnlyUL = forceOnlyUL;
|
||||
onPickingCompleted = onItemChoosed;
|
||||
this.onMagazzinoAutomaticoPickingRequest = onMagazzinoAutomaticoPickingRequest;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
|
||||
this.initBarcode();
|
||||
|
||||
mBindings = DialogScanArtBinding.inflate(inflater, container, false);
|
||||
mBindings.setLifecycleOwner(this);
|
||||
|
||||
MainApplication.appComponent
|
||||
.dialogScanArtComponent()
|
||||
.create()
|
||||
.inject(this);
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) {
|
||||
this.mContext = requireContext();
|
||||
|
||||
this.initBarcode();
|
||||
|
||||
mBindings = DialogScanArtBinding.inflate(LayoutInflater.from(this.mContext), null, false);
|
||||
mBindings.setLifecycleOwner(this);
|
||||
|
||||
this.mViewModel
|
||||
.setForceOnlyUL(mForceOnlyUL)
|
||||
.setListener(this);
|
||||
|
||||
getDialog().setCanceledOnTouchOutside(false);
|
||||
getDialog().getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
|
||||
setCancelable(false);
|
||||
|
||||
mBindings.buttonNo.setOnClickListener(v -> {
|
||||
onPickingCompleted.run(DialogConsts.Results.ABORT, null, null, null);
|
||||
dismiss();
|
||||
});
|
||||
var alertDialog = new MaterialAlertDialogBuilder(this.mContext)
|
||||
.setView(mBindings.getRoot())
|
||||
.setCancelable(isCancelable())
|
||||
.setNegativeButton(R.string.abort, (dialogInterfact, i) -> {
|
||||
onPickingCompleted.run(DialogConsts.Results.ABORT, null, null, null);
|
||||
})
|
||||
.create();
|
||||
|
||||
return mBindings.getRoot();
|
||||
alertDialog.setCanceledOnTouchOutside(isCancelable());
|
||||
alertDialog.setOnShowListener(this);
|
||||
|
||||
return alertDialog;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dismiss() {
|
||||
if (getDialog() != null) getDialog().dismiss();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void onDismiss(@NonNull DialogInterface dialog) {
|
||||
BarcodeManager.removeCallback(mBarcodeScannerIstanceID);
|
||||
BarcodeManager.enable();
|
||||
super.onDismiss(dialog);
|
||||
}
|
||||
|
||||
@@ -99,7 +114,6 @@ public class DialogScanArtView extends BaseDialogFragment implements DialogScanA
|
||||
mBarcodeScannerIstanceID = BarcodeManager.addCallback(new BarcodeCallbackDTO()
|
||||
.setOnScanSuccessful(onScanSuccessfull)
|
||||
.setOnScanFailed(this::onError));
|
||||
BarcodeManager.enable();
|
||||
setBarcodeListener(true);
|
||||
}
|
||||
|
||||
@@ -140,11 +154,4 @@ public class DialogScanArtView extends BaseDialogFragment implements DialogScanA
|
||||
dismiss();
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
@Override
|
||||
public void onError(Exception ex) {
|
||||
super.onError(ex);
|
||||
BarcodeManager.enable();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -35,7 +35,7 @@ public class DialogScanOrCreateLUView extends BaseDialogFragment implements Dial
|
||||
DialogScanOrCreateLUViewModel mViewModel;
|
||||
|
||||
private DialogScanOrCreateLuBinding mBindings;
|
||||
private int mBarcodeScannerIstanceID;
|
||||
private int mBarcodeScannerInstanceID;
|
||||
|
||||
private final RunnableArgss<MtbColt, Boolean> mOnComplete;
|
||||
private MtbColt openedMtbColt;
|
||||
@@ -109,15 +109,22 @@ public class DialogScanOrCreateLUView extends BaseDialogFragment implements Dial
|
||||
.setView(mBindings.getRoot())
|
||||
.setCancelable(isCancelable())
|
||||
.create();
|
||||
alertDialog.setCanceledOnTouchOutside(false);
|
||||
|
||||
alertDialog.setCanceledOnTouchOutside(isCancelable());
|
||||
alertDialog.setOnShowListener(this);
|
||||
alertDialog.setOnDismissListener(this);
|
||||
|
||||
return alertDialog;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dismiss() {
|
||||
if(getDialog() != null) getDialog().dismiss();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDismiss(@NonNull DialogInterface dialog) {
|
||||
BarcodeManager.removeCallback(mBarcodeScannerIstanceID);
|
||||
BarcodeManager.enable();
|
||||
BarcodeManager.removeCallback(mBarcodeScannerInstanceID);
|
||||
if (openedMtbColt == null) {
|
||||
mOnComplete.run(null, false);
|
||||
}
|
||||
@@ -125,8 +132,10 @@ public class DialogScanOrCreateLUView extends BaseDialogFragment implements Dial
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
private void initBarcode() {
|
||||
mBarcodeScannerIstanceID = BarcodeManager.addCallback(new BarcodeCallbackDTO()
|
||||
mBarcodeScannerInstanceID = BarcodeManager.addCallback(new BarcodeCallbackDTO()
|
||||
.setOnScanSuccessful(onScanSuccessfull)
|
||||
.setOnScanFailed(this::onError));
|
||||
BarcodeManager.enable();
|
||||
@@ -165,6 +174,7 @@ public class DialogScanOrCreateLUView extends BaseDialogFragment implements Dial
|
||||
public void onLUOpened(MtbColt mtbColt, boolean created) {
|
||||
this.openedMtbColt = mtbColt;
|
||||
mOnComplete.run(mtbColt, created);
|
||||
|
||||
dismiss();
|
||||
}
|
||||
|
||||
|
||||
@@ -1,68 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<layout xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
<data>
|
||||
<import type="android.text.Html" />
|
||||
<import type="it.integry.integrywmsnative.R" />
|
||||
<variable
|
||||
name="mContext"
|
||||
type="android.content.Context" />
|
||||
</data>
|
||||
|
||||
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:orientation="vertical" android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
app:cardCornerRadius="12dp"
|
||||
app:cardElevation="0dp">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical">
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@color/light_blue_300"
|
||||
android:gravity="center_horizontal">
|
||||
|
||||
<ImageView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:src="@drawable/ic_error_white_24dp"
|
||||
android:layout_margin="24dp"/>
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:paddingTop="24dp"
|
||||
android:paddingLeft="24dp"
|
||||
android:paddingRight="24dp">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/title_text"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
style="@style/TextViewMaterial.Dialog.HeadlineText"
|
||||
android:text="@string/placement"
|
||||
android:gravity="center_horizontal"/>
|
||||
|
||||
|
||||
<include
|
||||
layout="@layout/dialog_ask_position_of_lu__page2" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
</androidx.cardview.widget.CardView>
|
||||
|
||||
</layout>
|
||||
58
app/src/main/res/layout/dialog_ask_livello_posizione.xml
Normal file
58
app/src/main/res/layout/dialog_ask_livello_posizione.xml
Normal file
@@ -0,0 +1,58 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<layout xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:orientation="vertical" android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
app:cardCornerRadius="16dp"
|
||||
app:cardElevation="0dp">
|
||||
|
||||
|
||||
<androidx.appcompat.widget.LinearLayoutCompat
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:paddingHorizontal="16dp"
|
||||
android:paddingVertical="16dp">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
style="@style/MaterialAlertDialog.Material3.Title.Icon.CenterStacked"
|
||||
android:layout_width="36dp"
|
||||
android:layout_height="36dp"
|
||||
android:src="@drawable/ic_error_white_24dp"
|
||||
app:tint="?colorPrimary" />
|
||||
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/title_text"
|
||||
style="@style/MaterialAlertDialog.Material3.Title.Text.CenterStacked"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_horizontal"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:text="@string/placement" />
|
||||
|
||||
|
||||
|
||||
<com.google.android.material.textfield.TextInputLayout
|
||||
android:id="@+id/level_number_layout"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="16dp"
|
||||
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox">
|
||||
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:id="@+id/level_number"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/level"
|
||||
android:inputType="number"
|
||||
style="@style/TextInputEditText.OutlinePrimary"/>
|
||||
|
||||
</com.google.android.material.textfield.TextInputLayout>
|
||||
|
||||
|
||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||
</androidx.cardview.widget.CardView>
|
||||
</layout>
|
||||
@@ -1,11 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<layout xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
<data>
|
||||
<import type="android.text.Html" />
|
||||
<import type="it.integry.integrywmsnative.R" />
|
||||
</data>
|
||||
|
||||
|
||||
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:orientation="vertical" android:layout_width="match_parent"
|
||||
@@ -50,5 +44,4 @@
|
||||
|
||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||
</androidx.cardview.widget.CardView>
|
||||
|
||||
</layout>
|
||||
@@ -11,72 +11,54 @@
|
||||
app:cardCornerRadius="16dp"
|
||||
app:cardElevation="0dp">
|
||||
|
||||
|
||||
<androidx.appcompat.widget.LinearLayoutCompat
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical">
|
||||
android:orientation="vertical"
|
||||
android:paddingStart="24dp"
|
||||
android:paddingTop="24dp"
|
||||
android:paddingEnd="24dp"
|
||||
android:paddingBottom="12dp">
|
||||
|
||||
|
||||
<androidx.appcompat.widget.LinearLayoutCompat
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/title_text"
|
||||
style="@style/TextViewMaterial.Dialog.HeadlineText"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:paddingStart="24dp"
|
||||
android:paddingTop="24dp"
|
||||
android:paddingEnd="24dp"
|
||||
android:paddingBottom="12dp">
|
||||
android:gravity="center_horizontal"
|
||||
android:text="@string/extra_item" />
|
||||
|
||||
<androidx.appcompat.widget.LinearLayoutCompat
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:layout_marginTop="24dp"
|
||||
android:orientation="horizontal">
|
||||
|
||||
|
||||
<com.google.android.material.progressindicator.CircularProgressIndicator
|
||||
android:id="@+id/progressBar"
|
||||
style="?attr/circularProgressIndicatorStyle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:indeterminate="true"
|
||||
app:trackCornerRadius="4dp" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/title_text"
|
||||
style="@style/TextViewMaterial.Dialog.HeadlineText"
|
||||
android:layout_width="match_parent"
|
||||
style="@style/AppTheme.NewMaterial.Text"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:layout_marginStart="8dp"
|
||||
android:layout_marginEnd="12dp"
|
||||
android:gravity="center_horizontal"
|
||||
android:text="@string/extra_item" />
|
||||
|
||||
<androidx.appcompat.widget.LinearLayoutCompat
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:layout_marginTop="24dp"
|
||||
android:orientation="horizontal">
|
||||
|
||||
|
||||
<com.google.android.material.progressindicator.CircularProgressIndicator
|
||||
android:id="@+id/progressBar"
|
||||
style="?attr/circularProgressIndicatorStyle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:indeterminate="true"
|
||||
app:trackCornerRadius="4dp"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
style="@style/AppTheme.NewMaterial.Text"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:layout_marginStart="8dp"
|
||||
android:layout_marginEnd="12dp"
|
||||
android:gravity="center_horizontal"
|
||||
android:text="@string/scan_item"
|
||||
android:textSize="16sp" />
|
||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button_no"
|
||||
style="@style/Button.DangerOutline"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:layout_marginTop="16dp"
|
||||
android:text="@string/abort"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:strokeColor="@color/red_400" />
|
||||
|
||||
android:text="@string/scan_item"
|
||||
android:textSize="16sp" />
|
||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||
|
||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||
|
||||
</androidx.cardview.widget.CardView>
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user