Finish v1.27.6(293)

This commit is contained in:
Valerio Castellana 2022-06-29 16:39:22 +02:00
commit 609b9f1852
6 changed files with 55 additions and 39 deletions

View File

@ -10,8 +10,8 @@ apply plugin: 'com.google.gms.google-services'
android { android {
def appVersionCode = 292 def appVersionCode = 293
def appVersionName = '1.27.5' def appVersionName = '1.27.6'
signingConfigs { signingConfigs {
release { release {

View File

@ -26,7 +26,6 @@ import it.integry.integrywmsnative.core.di.BindableString;
import it.integry.integrywmsnative.core.expansion.BaseActivity; import it.integry.integrywmsnative.core.expansion.BaseActivity;
import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.model.MtbColr; import it.integry.integrywmsnative.core.model.MtbColr;
import it.integry.integrywmsnative.core.utility.UtilityResources;
import it.integry.integrywmsnative.core.utility.UtilityString; import it.integry.integrywmsnative.core.utility.UtilityString;
import it.integry.integrywmsnative.core.utility.UtilityToast; import it.integry.integrywmsnative.core.utility.UtilityToast;
import it.integry.integrywmsnative.databinding.ActivityProdDettaglioLineaBinding; import it.integry.integrywmsnative.databinding.ActivityProdDettaglioLineaBinding;
@ -43,6 +42,7 @@ import it.integry.integrywmsnative.view.dialogs.input_quantity_v2.DialogInputQua
public class ProdDettaglioLineaActivity extends BaseActivity implements ProdDettaglioLineaViewModel.Listener { public class ProdDettaglioLineaActivity extends BaseActivity implements ProdDettaglioLineaViewModel.Listener {
private static final String DATA_KEY_LINE = "keyLinea"; private static final String DATA_KEY_LINE = "keyLinea";
private static final String DATA_KEY_FRAGMENT_LISTENER = "onFragmentClose";
private ActivityProdDettaglioLineaBinding mBinding; private ActivityProdDettaglioLineaBinding mBinding;
public final ObservableField<String> listaOrd = new ObservableField<>(); public final ObservableField<String> listaOrd = new ObservableField<>();
@ -54,6 +54,7 @@ public class ProdDettaglioLineaActivity extends BaseActivity implements ProdDett
public final BindableString codMart = new BindableString(); public final BindableString codMart = new BindableString();
public final BindableString partitaMag = new BindableString(); public final BindableString partitaMag = new BindableString();
public final BindableString productDescription = new BindableString(); public final BindableString productDescription = new BindableString();
private Runnable onResumeRunnable = null;
private int barcodeScannerIstanceID = -1; private int barcodeScannerIstanceID = -1;
@ -120,6 +121,13 @@ public class ProdDettaglioLineaActivity extends BaseActivity implements ProdDett
renderOrdersChips(); renderOrdersChips();
} }
}); });
getSupportFragmentManager()
.setFragmentResultListener(DATA_KEY_FRAGMENT_LISTENER, this, (requestKey, result) -> {
if (onResumeRunnable != null) {
onResumeRunnable.run();
onResumeRunnable = null;
}
});
} }
private void renderOrdersChips() { private void renderOrdersChips() {
@ -210,17 +218,6 @@ public class ProdDettaglioLineaActivity extends BaseActivity implements ProdDett
onBackPressed(); onBackPressed();
} }
public void askForLUBarcode() {
this.onLoadingEnded();
this.runOnUiThread(() -> {
DialogStartProduction.newInstance((dto) -> {
this.mViewModel.checkBarcodeAndStartOrdine(dto);
},
UtilityResources.getString(R.string.title_open_lu),
UtilityResources.getString(R.string.scan_lu_to_recover)
).show(getSupportFragmentManager(), "DialogStartProduction");
});
}
private void initBarcodeReader() { private void initBarcodeReader() {
barcodeScannerIstanceID = BarcodeManager.addCallback(new BarcodeCallbackDTO() barcodeScannerIstanceID = BarcodeManager.addCallback(new BarcodeCallbackDTO()
@ -279,7 +276,7 @@ public class ProdDettaglioLineaActivity extends BaseActivity implements ProdDett
getSupportFragmentManager() getSupportFragmentManager()
.beginTransaction() .beginTransaction()
.add(R.id.frame_layout_container, .add(R.id.frame_layout_container,
ProdRecuperoMaterialeFragment.newInstance(mViewModel.lineaProd.getValue().getCodJfas())) ProdRecuperoMaterialeFragment.newInstance(mViewModel.lineaProd.getValue().getCodJfas(), DATA_KEY_FRAGMENT_LISTENER))
.addToBackStack("ProdRecuperoMaterialeFragment") .addToBackStack("ProdRecuperoMaterialeFragment")
.commit(); .commit();
@ -322,7 +319,18 @@ public class ProdDettaglioLineaActivity extends BaseActivity implements ProdDett
+ "<br /> <br/>" + + "<br /> <br/>" +
"Continuare?"), "Continuare?"),
null, null,
onConfirm, () -> {
DialogSimpleMessageView.makeInfoDialog(
null,
Html.fromHtml("Vuoi recuperare del materiale prima di chiudere gli ordini?"),
null,
() -> {
onResumeRunnable = onConfirm;
this.requestMaterialRecover();
},
onConfirm
).show(getSupportFragmentManager(), "confirmOrderClose");
},
BarcodeManager::enable BarcodeManager::enable
).show(getSupportFragmentManager(), "confirmOrderClose"); ).show(getSupportFragmentManager(), "confirmOrderClose");
}); });

View File

@ -209,9 +209,6 @@ public class ProdDettaglioLineaViewModel {
return lineaProd.getValue(); return lineaProd.getValue();
} }
public void beginMaterialRecover() {
this.mListener.askForLUBarcode();
}
public interface Listener extends ILoadingListener { public interface Listener extends ILoadingListener {
void onError(Exception ex); void onError(Exception ex);
@ -228,8 +225,6 @@ public class ProdDettaglioLineaViewModel {
void onLineStop(); void onLineStop();
void askForLUBarcode();
void confirmOrderClose(Runnable onConfirm); void confirmOrderClose(Runnable onConfirm);
} }

View File

@ -37,18 +37,6 @@ public class DialogStartProduction extends BaseDialogFragment {
return fragment; return fragment;
} }
public static DialogStartProduction newInstance(RunnableArgs<BarcodeScanDTO> onScanSuccessful, String title, String label) {
Bundle args = new Bundle();
DialogStartProduction fragment = new DialogStartProduction();
fragment.setTitle(title);
fragment.setLabel(label);
fragment.setArguments(args);
fragment.setOnScanSuccessful(onScanSuccessful);
return fragment;
}
public String getTitle() { public String getTitle() {
return title; return title;
} }
@ -108,8 +96,8 @@ public class DialogStartProduction extends BaseDialogFragment {
private void processBarcode(BarcodeScanDTO barcodeScanDTO) { private void processBarcode(BarcodeScanDTO barcodeScanDTO) {
if (UtilityBarcode.isEan128(barcodeScanDTO)) { if (UtilityBarcode.isEan128(barcodeScanDTO)) {
this.onScanSuccessful.run(barcodeScanDTO);
this.dismiss(); this.dismiss();
this.onScanSuccessful.run(barcodeScanDTO);
} else { } else {
this.onError(new Exception("Il barcode scansionato non è valido!")); this.onError(new Exception("Il barcode scansionato non è valido!"));
} }

View File

@ -60,6 +60,7 @@ public class ProdRecuperoMaterialeFragment extends BaseFragment implements ITitl
private int barcodeScannerIstanceID = -1; private int barcodeScannerIstanceID = -1;
private String codJfas; private String codJfas;
private String fragmentResultKeyString;
private final ObservableArrayList<HistoryULsListModel> mHistoryULMutableData = new ObservableArrayList<>(); private final ObservableArrayList<HistoryULsListModel> mHistoryULMutableData = new ObservableArrayList<>();
@ -68,13 +69,20 @@ public class ProdRecuperoMaterialeFragment extends BaseFragment implements ITitl
} }
public static ProdRecuperoMaterialeFragment newInstance() { public static ProdRecuperoMaterialeFragment newInstance() {
return newInstance(null); return newInstance(null, null);
}
public static ProdRecuperoMaterialeFragment newInstance(String codJfas, String keyString) {
ProdRecuperoMaterialeFragment fragment = new ProdRecuperoMaterialeFragment();
if (keyString != null) {
fragment.setFragmentResultKeyString(keyString);
}
fragment.setCodJfas(codJfas);
return fragment;
} }
public static ProdRecuperoMaterialeFragment newInstance(String codJfas) { public static ProdRecuperoMaterialeFragment newInstance(String codJfas) {
ProdRecuperoMaterialeFragment fragment = new ProdRecuperoMaterialeFragment(); return newInstance(codJfas, null);
fragment.setCodJfas(codJfas);
return fragment;
} }
@Override @Override
@ -95,6 +103,14 @@ public class ProdRecuperoMaterialeFragment extends BaseFragment implements ITitl
this.initBarcodeReader(); this.initBarcodeReader();
this.initRecyclerView(); this.initRecyclerView();
this.addOnPreDestroy(() -> {
if (!UtilityString.isNullOrEmpty(fragmentResultKeyString)) {
Bundle result = new Bundle();
result.putString(fragmentResultKeyString, "result");
getParentFragmentManager().setFragmentResult(fragmentResultKeyString, result);
}
});
return mBinding.getRoot(); return mBinding.getRoot();
} }
@ -134,6 +150,15 @@ public class ProdRecuperoMaterialeFragment extends BaseFragment implements ITitl
return this; return this;
} }
public String getFragmentResultKeyString() {
return fragmentResultKeyString;
}
public ProdRecuperoMaterialeFragment setFragmentResultKeyString(String fragmentResultKeyString) {
this.fragmentResultKeyString = fragmentResultKeyString;
return this;
}
private final RunnableArgs<BarcodeScanDTO> onScanSuccessful = data -> { private final RunnableArgs<BarcodeScanDTO> onScanSuccessful = data -> {
this.onLoadingStarted(); this.onLoadingStarted();

View File

@ -406,7 +406,7 @@ public class DialogInputQuantityV2View extends BaseDialogFragment implements Dia
this.enabledLUCloseButton.set(this.mDialogInputQuantityV2DTO.isCanLUBeClosed()); this.enabledLUCloseButton.set(this.mDialogInputQuantityV2DTO.isCanLUBeClosed());
this.currentTaraArticolo.set(this.mViewModel.getMtbAart().getTaraKg()); this.currentTaraArticolo.set(this.mViewModel.getMtbAart().getTaraKg());
if (this.mDialogInputQuantityV2DTO.getTotalNumCnfOrd() != null && !this.mDialogInputQuantityV2DTO.getTotalNumCnfOrd().equals(BigDecimal.ZERO) && !(this.mDialogInputQuantityV2DTO.getTotalNumCnfOrd().intValue() == 0)) { if (this.mDialogInputQuantityV2DTO.getMtbAart().isFlagQtaCnfFissaBoolean() && this.mDialogInputQuantityV2DTO.getTotalNumCnfOrd() != null && !this.mDialogInputQuantityV2DTO.getTotalNumCnfOrd().equals(BigDecimal.ZERO) && !(this.mDialogInputQuantityV2DTO.getTotalNumCnfOrd().intValue() == 0)) {
int numCnftoTake = this.mDialogInputQuantityV2DTO.getTotalQtaOrd().divide(this.mDialogInputQuantityV2DTO.getQtaCnfOrd(), 0, RoundingMode.DOWN).intValue(); int numCnftoTake = this.mDialogInputQuantityV2DTO.getTotalQtaOrd().divide(this.mDialogInputQuantityV2DTO.getQtaCnfOrd(), 0, RoundingMode.DOWN).intValue();
this.currentTextNumCnfToTake.set(numCnftoTake); this.currentTextNumCnfToTake.set(numCnftoTake);
int qtaText = this.mDialogInputQuantityV2DTO.getTotalQtaOrd().intValue() % this.mDialogInputQuantityV2DTO.getQtaCnfOrd().intValue(); int qtaText = this.mDialogInputQuantityV2DTO.getTotalQtaOrd().intValue() % this.mDialogInputQuantityV2DTO.getQtaCnfOrd().intValue();