Finish v1.46.10(498)

This commit is contained in:
Giuseppe Scorrano 2025-05-05 17:00:40 +02:00
commit 339a5e5b68
11 changed files with 74 additions and 31 deletions

View File

@ -10,8 +10,8 @@ apply plugin: 'com.google.gms.google-services'
android {
def appVersionCode = 495
def appVersionName = '1.46.07'
def appVersionCode = 498
def appVersionName = '1.46.10'
signingConfigs {
release {

View File

@ -97,6 +97,7 @@ public class DBSettingsModel {
private List<String> allowedCodMgrpForArtCreation;
private boolean flagAccettazioneGroupListForn = false;
private boolean flagSpedizioneEnableFastPicking = false;
private boolean flagAccettazioneBollaEditableQtaTot = true;
public boolean isFlagSpedizioneEnableFakeGiacenza() {
return flagSpedizioneEnableFakeGiacenza;
@ -815,4 +816,12 @@ public class DBSettingsModel {
public void setFlagSpedizioneEnableFastPicking(boolean flagSpedizioneEnableFastPicking) {
this.flagSpedizioneEnableFastPicking = flagSpedizioneEnableFastPicking;
}
public boolean isFlagAccettazioneBollaEditableQtaTot() {
return flagAccettazioneBollaEditableQtaTot;
}
public void setFlagAccettazioneBollaEditableQtaTot(boolean flagAccettazioneBollaEditableQtaTot) {
this.flagAccettazioneBollaEditableQtaTot = flagAccettazioneBollaEditableQtaTot;
}
}

View File

@ -564,6 +564,12 @@ public class SettingsManager {
.setKeySection("ENABLE_FAST_PICKING")
.setSetter(dbSettingsModelIstance::setFlagSpedizioneEnableFastPicking)
.setDefaultValue(false));
stbGestSetupReaderList.add(new StbGestSetupReader<>(Boolean.class)
.setGestName("PICKING")
.setSection("ACCETTAZIONE_BOLLA")
.setKeySection("FLAG_QTA_TOT_EDITABLE")
.setSetter(dbSettingsModelIstance::setFlagAccettazioneBollaEditableQtaTot)
.setDefaultValue(true));
stbGestSetupReaderList.add(new StbGestSetupReader<>(String.class)
.setGestName("PICKING")

View File

@ -620,6 +620,7 @@ public class AccettazioneBollaPickingActivity extends BaseActivity implements Ac
.setDataScad(dataScad)
.setCanPartitaMagBeChanged(canPartitaMagBeChanged)
.setCanLUBeClosed(true)
.setQtaTotEditable(SettingsManager.iDB().isFlagAccettazioneBollaEditableQtaTot())
.setCanOverflowOrderQuantity(canOverflowQuantity)
.setDisableTracciabilitaCheck(SettingsManager.iDB().isFlagAccettazioneBollaDisableMandatoryTracciabilita());

View File

@ -338,6 +338,8 @@ public class PickingLiberoViewModel {
if (this.mFlagAskCliente) {
var data = this.sendLUClienteRequired();
if (data == null) return;
vtbDest = data.first;
codJcom = data.second;
}
@ -648,7 +650,6 @@ public class PickingLiberoViewModel {
}
private void executeDepositChangeIfNeeded(MtbColt refMtbColt) throws Exception {
//Considero solo la prima UDC scansionata
boolean shouldChangeCodMdep = refMtbColt != null && !refMtbColt.getCodMdep().equalsIgnoreCase(mCurrentMtbColt.getCodMdep()) &&
@ -860,7 +861,7 @@ public class PickingLiberoViewModel {
if (this.mDefaultGestione == GestioneEnum.LAVORAZIONE && SettingsManager.iDB().isProduzioneGeneraDocScar()) {
if(SettingsManager.iDB().getInternalCodAnags() == null || SettingsManager.iDB().getInternalCodAnags().isEmpty())
if (SettingsManager.iDB().getInternalCodAnags() == null || SettingsManager.iDB().getInternalCodAnags().isEmpty())
throw new Exception("Nessuna anagrafica aziendale configurata. Assicurarsi di aver abilitato il flag FLAG_USE_COD_ANAG_AZIENDALE.");
closeUDSRequest

View File

@ -201,6 +201,8 @@ public class VerificaGiacenzeFragment extends BaseFragment implements ITitledFra
barcodeScannerIstanceID = BarcodeManager.addCallback(new BarcodeCallbackDTO()
.setOnScanSuccessful(onScanSuccessful)
.setOnScanFailed(ex -> UtilityExceptions.defaultException(requireContext(), ex, false)));
BarcodeManager.enable(barcodeScannerIstanceID);
}
private final RunnableArgs<BarcodeScanDTO> onScanSuccessful = data -> {
@ -209,12 +211,12 @@ public class VerificaGiacenzeFragment extends BaseFragment implements ITitledFra
executorService.execute(() -> {
try {
this.mViewModel.processBarcodeDTO(data);
this.onLoadingEnded();
} catch (Exception e) {
this.onError(e);
}
});
this.onLoadingEnded();
};
@ -279,6 +281,7 @@ public class VerificaGiacenzeFragment extends BaseFragment implements ITitledFra
.setTotalNumCnfOrd(incomingNumCnf)
.setPartitaMag(partitaMag)
.setDataScad(dataScad)
.setCanInputZeroQuantity(true)
.setCanLUBeClosed(false);
if (!dialogInputQuantityV2View.isVisible())

View File

@ -4,6 +4,7 @@ import android.content.DialogInterface;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.os.Bundle;
import android.os.Handler;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -63,6 +64,9 @@ public class DialogAskClienteView extends BaseDialogFragment {
@Inject
DialogProgressView dialogProgressView;
@Inject
Handler handler;
public static DialogAskClienteView newInstance(@NotNull RunnableArgss<VtbDest, String> onComplete, @NotNull Runnable onAbort) {
return new DialogAskClienteView(onComplete, onAbort);
}
@ -119,6 +123,8 @@ public class DialogAskClienteView extends BaseDialogFragment {
DialogAskCliente_Page1ViewModel viewModel1 = (DialogAskCliente_Page1ViewModel) mAdapter.getViewModel(R.layout.dialog_ask_cliente__page1);
DialogAskCliente_Page2ViewModel viewModel2 = (DialogAskCliente_Page2ViewModel) mAdapter.getViewModel(R.layout.dialog_ask_cliente__page2);
viewModel1.setHandler(handler);
viewModel1.setOnConfirmClickListener(() -> {
String codAnag = viewModel1.getCurrentCliente();

View File

@ -1,6 +1,7 @@
package it.integry.integrywmsnative.view.dialogs.ask_cliente.viewmodel;
import android.content.Context;
import android.os.Handler;
import android.widget.AutoCompleteTextView;
import androidx.databinding.ObservableArrayList;
@ -37,9 +38,15 @@ public class DialogAskCliente_Page1ViewModel implements IDialogAskClienteViewMod
private Runnable onConfirmClickListener;
private Runnable onAbortClickListener;
private Handler handler;
public DialogAskCliente_Page1ViewModel() {
}
public void setHandler(Handler handler){
this.handler = handler;
}
@Override
public void setContext(Context context) {
this.mContext = context;
@ -147,33 +154,33 @@ public class DialogAskCliente_Page1ViewModel implements IDialogAskClienteViewMod
private void initializeAdapter(ArrayList<DialogAskClienteClienteDTO> items) {
handler.post(() -> {
var orderedList = Stream.of(items)
.sortBy(x -> x.getRagSoc() != null ? x.getRagSoc() : "")
.toList();
var orderedList = Stream.of(items)
.sortBy(x -> x.getRagSoc() != null ? x.getRagSoc() : "")
.toList();
DialogAskCliente_Page1_Cliente_ArrayAdapter adapter = new DialogAskCliente_Page1_Cliente_ArrayAdapter(mContext, orderedList);
DialogAskCliente_Page1_Cliente_ArrayAdapter adapter = new DialogAskCliente_Page1_Cliente_ArrayAdapter(mContext, orderedList);
AutoCompleteTextView editTextDropdownCliente = mBinding.dropdownCliente;
editTextDropdownCliente.setThreshold(0);
editTextDropdownCliente.setAdapter(adapter);
editTextDropdownCliente.setOnItemClickListener((parent, view, position, id) -> {
refreshCodJcoms(items.get(position));
});
AutoCompleteTextView editTextDropdownCliente = mBinding.dropdownCliente;
editTextDropdownCliente.setThreshold(0);
editTextDropdownCliente.setAdapter(adapter);
editTextDropdownCliente.setOnItemClickListener((parent, view, position, id) -> {
refreshCodJcoms(items.get(position));
});
DialogAskCliente_Page1_Commessa_ArrayAdapter commessaAdapter = new DialogAskCliente_Page1_Commessa_ArrayAdapter(mContext);
AutoCompleteTextView editTextDropdownCommessa = mBinding.dropdownCommessa;
editTextDropdownCommessa.setThreshold(0);
editTextDropdownCommessa.setAdapter(commessaAdapter);
DialogAskCliente_Page1_Commessa_ArrayAdapter commessaAdapter = new DialogAskCliente_Page1_Commessa_ArrayAdapter(mContext);
AutoCompleteTextView editTextDropdownCommessa = mBinding.dropdownCommessa;
editTextDropdownCommessa.setThreshold(0);
editTextDropdownCommessa.setAdapter(commessaAdapter);
codJcoms.addOnListChangedCallback(new OnListGeneralChangedCallback() {
@Override
public void onChanged(ObservableList sender) {
commessaAdapter.clear();
commessaAdapter.addAll(codJcoms);
}
codJcoms.addOnListChangedCallback(new OnListGeneralChangedCallback() {
@Override
public void onChanged(ObservableList sender) {
commessaAdapter.clear();
commessaAdapter.addAll(codJcoms);
}
});
});
}

View File

@ -92,7 +92,7 @@ public class DialogChooseArtFromListaArtsView extends BaseDialogFragment {
@Override
public void onDismiss(@NonNull DialogInterface dialog) {
dismiss();
//dismiss();
}
public void dismiss(MtbAart item) {

View File

@ -41,6 +41,7 @@ public class DialogInputQuantityV2DTO {
private boolean isNotesAllowed = false;
private boolean isNotesMandatory = false;
private boolean isNumCnfEditable = true;
private boolean isQtaTotEditable = true;
private boolean isFocusOnStart = true;
private boolean canLUBeClosed;
private boolean saveOnImeDone = false;
@ -323,6 +324,15 @@ public class DialogInputQuantityV2DTO {
return this;
}
public boolean isQtaTotEditable() {
return isQtaTotEditable;
}
public DialogInputQuantityV2DTO setQtaTotEditable(boolean qtaTotEditable) {
this.isQtaTotEditable = qtaTotEditable;
return this;
}
public RunnableArgsWithReturn<DialogInputQuantityV2ViewModel, String> getSuggestPartitaMag() {
return suggestPartitaMag;
}

View File

@ -397,7 +397,7 @@ public class DialogInputQuantityV2View extends BaseDialogFragment implements Dia
toggleTextInputLayoutError(textColorsNumCnf, this.mBindings.inputNumCnfLayout, value);
if (this.mViewModel.mtbAart.get().isFlagQtaCnfFissaBoolean()) {
this.enabledQtaTot.set(!value);
this.enabledQtaTot.set(this.mDialogInputQuantityV2DTO.isQtaTotEditable() && !value);
} else {
if (value) {
if (this.mViewModel.blockedQtaCnf.get()) {
@ -407,7 +407,7 @@ public class DialogInputQuantityV2View extends BaseDialogFragment implements Dia
}
} else {
if (!this.enabledQtaTot.get()) {
this.enabledQtaTot.set(true);
this.enabledQtaTot.set(this.mDialogInputQuantityV2DTO.isQtaTotEditable());
} else if (!this.enabledQtaCnf.get()) {
this.enabledQtaCnf.set(true);
}
@ -426,7 +426,7 @@ public class DialogInputQuantityV2View extends BaseDialogFragment implements Dia
}
} else {
if (!this.enabledQtaTot.get()) {
this.enabledQtaTot.set(true);
this.enabledQtaTot.set(this.mDialogInputQuantityV2DTO.isQtaTotEditable());
} else if (!this.enabledNumCnf.get()) {
this.enabledNumCnf.set(this.mDialogInputQuantityV2DTO.isNumCnfEditable());
}