Finish v1_6_0(61)
This commit is contained in:
commit
715c25b99f
BIN
.idea/caches/build_file_checksums.ser
generated
BIN
.idea/caches/build_file_checksums.ser
generated
Binary file not shown.
@ -17,8 +17,8 @@ apply plugin: 'com.google.gms.google-services'
|
|||||||
|
|
||||||
android {
|
android {
|
||||||
|
|
||||||
def appVersionCode = 60
|
def appVersionCode = 61
|
||||||
def appVersionName = '1.5.0'
|
def appVersionName = '1.6.0'
|
||||||
|
|
||||||
signingConfigs {
|
signingConfigs {
|
||||||
release {
|
release {
|
||||||
|
|||||||
@ -24,6 +24,7 @@ public class DBSettingsModel {
|
|||||||
private boolean flagAskClienteInPickingLibero;
|
private boolean flagAskClienteInPickingLibero;
|
||||||
|
|
||||||
private boolean flagCanAddExtraItemSpedizione;
|
private boolean flagCanAddExtraItemSpedizione;
|
||||||
|
private boolean flagCanAutoOpenNewULAccettazione;
|
||||||
|
|
||||||
public List<String> getAvailableProfiles() {
|
public List<String> getAvailableProfiles() {
|
||||||
return availableProfiles;
|
return availableProfiles;
|
||||||
@ -120,4 +121,13 @@ public class DBSettingsModel {
|
|||||||
this.flagCanAddExtraItemSpedizione = flagCanAddExtraItemSpedizione;
|
this.flagCanAddExtraItemSpedizione = flagCanAddExtraItemSpedizione;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isFlagCanAutoOpenNewULAccettazione() {
|
||||||
|
return flagCanAutoOpenNewULAccettazione;
|
||||||
|
}
|
||||||
|
|
||||||
|
public DBSettingsModel setFlagCanAutoOpenNewULAccettazione(boolean flagCanAutoOpenNewULAccettazione) {
|
||||||
|
this.flagCanAutoOpenNewULAccettazione = flagCanAutoOpenNewULAccettazione;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -195,7 +195,14 @@ public class SettingsManager {
|
|||||||
GestSetupRESTConsumer.getBooleanValue("PICKING", "SPEDIZIONE", "FLAG_CAN_ADD_EXTRA_ITEMS", valueCanAddExtraItemSpedizione -> {
|
GestSetupRESTConsumer.getBooleanValue("PICKING", "SPEDIZIONE", "FLAG_CAN_ADD_EXTRA_ITEMS", valueCanAddExtraItemSpedizione -> {
|
||||||
dbSettingsModelIstance.setFlagCanAddExtraItemSpedizione(valueCanAddExtraItemSpedizione);
|
dbSettingsModelIstance.setFlagCanAddExtraItemSpedizione(valueCanAddExtraItemSpedizione);
|
||||||
|
|
||||||
if(onComplete != null) onComplete.run();
|
GestSetupRESTConsumer.getBooleanValue("PICKING", "ACCETTAZIONE", "FLAG_AUTO_OPEN_NEW_UL", valueCanAutoOpenNewUL -> {
|
||||||
|
dbSettingsModelIstance.setFlagCanAutoOpenNewULAccettazione(valueCanAutoOpenNewUL);
|
||||||
|
|
||||||
|
if(onComplete != null) onComplete.run();
|
||||||
|
|
||||||
|
}, ex -> {
|
||||||
|
if(onFailed != null) onFailed.run(ex);
|
||||||
|
});
|
||||||
|
|
||||||
}, ex -> {
|
}, ex -> {
|
||||||
if(onFailed != null) onFailed.run(ex);
|
if(onFailed != null) onFailed.run(ex);
|
||||||
|
|||||||
@ -328,10 +328,17 @@ public class AccettazioneOrdineAccettazioneInevasoViewModel implements IOnColloC
|
|||||||
|
|
||||||
if(!thereIsAnOpenedUL()){
|
if(!thereIsAnOpenedUL()){
|
||||||
|
|
||||||
this.createNewUL(null, null, progressDialog, false, () -> {
|
if(SettingsManager.iDB().isFlagCanAutoOpenNewULAccettazione()) {
|
||||||
|
this.createNewUL(null, null, progressDialog, false, () -> {
|
||||||
|
BarcodeManager.enable();
|
||||||
|
this.searchArtInList(mtbAartList.get(0), ean128Model);
|
||||||
|
});
|
||||||
|
} else {
|
||||||
BarcodeManager.enable();
|
BarcodeManager.enable();
|
||||||
this.searchArtInList(mtbAartList.get(0), ean128Model);
|
progressDialog.dismiss();
|
||||||
});
|
|
||||||
|
showPleaseOpenULDialog();
|
||||||
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
this.searchArtInList(mtbAartList.get(0), ean128Model);
|
this.searchArtInList(mtbAartList.get(0), ean128Model);
|
||||||
@ -387,6 +394,12 @@ public class AccettazioneOrdineAccettazioneInevasoViewModel implements IOnColloC
|
|||||||
null, null).show();
|
null, null).show();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void showPleaseOpenULDialog() {
|
||||||
|
DialogSimpleMessageHelper.makeWarningDialog(mActivity,
|
||||||
|
new SpannableString(mActivity.getResources().getText(R.string.please_open_lu)),
|
||||||
|
null, null).show();
|
||||||
|
}
|
||||||
|
|
||||||
public void showOrderDialog() {
|
public void showOrderDialog() {
|
||||||
|
|
||||||
AlertDialog dialog = new AlertDialog.Builder(mActivity)
|
AlertDialog dialog = new AlertDialog.Builder(mActivity)
|
||||||
|
|||||||
@ -5,7 +5,6 @@ import androidx.databinding.ObservableArrayList;
|
|||||||
import androidx.databinding.ObservableField;
|
import androidx.databinding.ObservableField;
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||||
import android.text.SpannableString;
|
import android.text.SpannableString;
|
||||||
import android.view.View;
|
|
||||||
|
|
||||||
import com.annimon.stream.Stream;
|
import com.annimon.stream.Stream;
|
||||||
import com.tfb.fbtoast.FBToast;
|
import com.tfb.fbtoast.FBToast;
|
||||||
@ -27,6 +26,7 @@ import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsume
|
|||||||
import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback;
|
import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback;
|
||||||
import it.integry.integrywmsnative.core.REST.consumers.PosizioniRESTConsumer;
|
import it.integry.integrywmsnative.core.REST.consumers.PosizioniRESTConsumer;
|
||||||
import it.integry.integrywmsnative.core.REST.consumers.PrinterRESTConsumer;
|
import it.integry.integrywmsnative.core.REST.consumers.PrinterRESTConsumer;
|
||||||
|
import it.integry.integrywmsnative.core.REST.model.Ean128Model;
|
||||||
import it.integry.integrywmsnative.core.REST.model.Ean13PesoModel;
|
import it.integry.integrywmsnative.core.REST.model.Ean13PesoModel;
|
||||||
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
||||||
import it.integry.integrywmsnative.core.class_router.ClassRouter;
|
import it.integry.integrywmsnative.core.class_router.ClassRouter;
|
||||||
@ -45,7 +45,9 @@ import it.integry.integrywmsnative.core.model.secondary.GestioneEnum;
|
|||||||
import it.integry.integrywmsnative.core.report.ReportManager;
|
import it.integry.integrywmsnative.core.report.ReportManager;
|
||||||
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityBarcode;
|
import it.integry.integrywmsnative.core.utility.UtilityBarcode;
|
||||||
|
import it.integry.integrywmsnative.core.utility.UtilityDate;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
||||||
|
import it.integry.integrywmsnative.core.utility.UtilityLogger;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityPosizione;
|
import it.integry.integrywmsnative.core.utility.UtilityPosizione;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityProgress;
|
import it.integry.integrywmsnative.core.utility.UtilityProgress;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityString;
|
import it.integry.integrywmsnative.core.utility.UtilityString;
|
||||||
@ -60,6 +62,7 @@ import it.integry.integrywmsnative.view.bottomsheet.interfaces.IOnColloClosedCal
|
|||||||
import it.integry.integrywmsnative.view.bottomsheet.viewmodel.ArticoliInColloBottomSheetViewModel;
|
import it.integry.integrywmsnative.view.bottomsheet.viewmodel.ArticoliInColloBottomSheetViewModel;
|
||||||
|
|
||||||
import it.integry.integrywmsnative.view.dialogs.DialogCommon;
|
import it.integry.integrywmsnative.view.dialogs.DialogCommon;
|
||||||
|
import it.integry.integrywmsnative.view.dialogs.DialogConsts;
|
||||||
import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper;
|
import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper;
|
||||||
import it.integry.integrywmsnative.view.dialogs.ask_should_print.DialogAskShouldPrint;
|
import it.integry.integrywmsnative.view.dialogs.ask_should_print.DialogAskShouldPrint;
|
||||||
import it.integry.integrywmsnative.view.dialogs.input_quantity.DialogInputQuantity;
|
import it.integry.integrywmsnative.view.dialogs.input_quantity.DialogInputQuantity;
|
||||||
@ -125,9 +128,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
|
|||||||
});
|
});
|
||||||
|
|
||||||
mBindings.addExtraItemsToolbar.setOnClickListener((v -> {
|
mBindings.addExtraItemsToolbar.setOnClickListener((v -> {
|
||||||
DialogScanArt.make(mActivity, (status, mtbAart) -> {
|
addExtraItem();
|
||||||
|
|
||||||
}).show();
|
|
||||||
}));
|
}));
|
||||||
|
|
||||||
mHelper = new VenditaOrdineInevasoHelper(mActivity);
|
mHelper = new VenditaOrdineInevasoHelper(mActivity);
|
||||||
@ -1243,4 +1244,129 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
private void addExtraItem() {
|
||||||
|
DialogScanArt.make(mActivity, (status, mtbAart, ean128Model) -> {
|
||||||
|
if(status == DialogConsts.Results.YES) {
|
||||||
|
this.dispatchExtraItem(mtbAart, ean128Model);
|
||||||
|
}
|
||||||
|
}).show();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void dispatchExtraItem(MtbAart mtbAart, Ean128Model ean128Model){
|
||||||
|
DialogInputQuantity.DTO qtaDto = new DialogInputQuantity.DTO();
|
||||||
|
|
||||||
|
qtaDto.setMtbAart(mtbAart);
|
||||||
|
|
||||||
|
qtaDto.setQtaCnf(mtbAart.getQtaCnf());
|
||||||
|
qtaDto.setNumCnf(1);
|
||||||
|
qtaDto.setQtaTot(mtbAart.getQtaCnf());
|
||||||
|
|
||||||
|
qtaDto.setQtaDaEvadere(new BigDecimal(-1));
|
||||||
|
qtaDto.setQtaDisponibile(new BigDecimal(-1));
|
||||||
|
|
||||||
|
qtaDto.setCanPartitaMagBeChanged(true);
|
||||||
|
qtaDto.setCanDataScadBeChanged(true);
|
||||||
|
|
||||||
|
|
||||||
|
if(ean128Model != null){
|
||||||
|
if(!UtilityString.isNullOrEmpty(ean128Model.BatchLot)) {
|
||||||
|
qtaDto.setBatchLot(ean128Model.BatchLot);
|
||||||
|
qtaDto.setCanPartitaMagBeChanged(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
if(!UtilityString.isNullOrEmpty(ean128Model.BestBefore)){
|
||||||
|
qtaDto.setDataScad(UtilityDate.recognizeDate(ean128Model.BestBefore));
|
||||||
|
qtaDto.setCanDataScadBeChanged(false);
|
||||||
|
} else if(!UtilityString.isNullOrEmpty(ean128Model.Expiry)) {
|
||||||
|
qtaDto.setDataScad(UtilityDate.recognizeDate(ean128Model.Expiry));
|
||||||
|
qtaDto.setCanDataScadBeChanged(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (Exception e) {
|
||||||
|
UtilityLogger.errorMe(e);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if(ean128Model.Count != null && ean128Model.Count > 0) {
|
||||||
|
qtaDto.setNumCnf(ean128Model.Count);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ean128Model.NetWeightKg != null && ean128Model.NetWeightKg > 0) {
|
||||||
|
qtaDto.setQtaTot(new BigDecimal(ean128Model.NetWeightKg));
|
||||||
|
} else {
|
||||||
|
qtaDto.setQtaTot(qtaDto.getQtaCnf().multiply(new BigDecimal(qtaDto.getNumCnf())));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// qtaDto.setShouldAskDataScad(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
DialogInputQuantity.makeBase(mActivity, qtaDto, true, (quantityDTO) -> {
|
||||||
|
onExtraItemDispatched(mtbAart, quantityDTO, false);
|
||||||
|
}, () -> {
|
||||||
|
BarcodeManager.enable();
|
||||||
|
}).show();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void onExtraItemDispatched(MtbAart item, QuantityDTO quantityDTO, boolean closeUL){
|
||||||
|
final ProgressDialog progress = ProgressDialog.show(mActivity, mActivity.getText(R.string.waiting),
|
||||||
|
mActivity.getText(R.string.loading) + " ...", true);
|
||||||
|
|
||||||
|
final MtbColr mtbColr = new MtbColr()
|
||||||
|
.setCodMart(item.getCodMart())
|
||||||
|
.setPartitaMag(UtilityString.empty2null(quantityDTO.batchLot.get()))
|
||||||
|
.setQtaCol(quantityDTO.qtaTot.getBigDecimal())
|
||||||
|
.setQtaCnf(quantityDTO.qtaCnf.getBigDecimal())
|
||||||
|
.setNumCnf(quantityDTO.numCnf.getBigDecimal())
|
||||||
|
.setDescrizione(item.getDescrizioneEstesa())
|
||||||
|
.setDatetimeRow(new Date());
|
||||||
|
|
||||||
|
|
||||||
|
mtbColr.setOperation(CommonModelConsts.OPERATION.INSERT_OR_UPDATE);
|
||||||
|
|
||||||
|
MtbColt cloneMtbColt = (MtbColt) mArticoliInColloBottomSheetViewModel.mtbColt.get().clone();
|
||||||
|
cloneMtbColt.setOperation(CommonModelConsts.OPERATION.NO_OP);
|
||||||
|
|
||||||
|
cloneMtbColt.setMtbColr(new ObservableArrayList());
|
||||||
|
cloneMtbColt.getMtbColr().add(mtbColr);
|
||||||
|
|
||||||
|
ColliMagazzinoRESTConsumer.saveCollo(cloneMtbColt, new ISimpleOperationCallback<MtbColt>() {
|
||||||
|
@Override
|
||||||
|
public void onSuccess(MtbColt value) {
|
||||||
|
|
||||||
|
mtbColr
|
||||||
|
.setDataCollo(value.getDataColloS())
|
||||||
|
.setNumCollo(value.getNumCollo())
|
||||||
|
.setGestione(value.getGestione())
|
||||||
|
.setSerCollo(value.getSerCollo())
|
||||||
|
.setRiga(value.getMtbColr().get(0).getRiga())
|
||||||
|
.setUntMis(item.getUntMis())
|
||||||
|
.setMtbAart(item);
|
||||||
|
|
||||||
|
|
||||||
|
mArticoliInColloBottomSheetViewModel.mtbColt.get().getMtbColr().add(mtbColr);
|
||||||
|
|
||||||
|
//Chiamato removeListFilter perché cosi mi cancella tutti i dati di pick temporanei
|
||||||
|
removeListFilter();
|
||||||
|
|
||||||
|
|
||||||
|
FBToast.successToast(mActivity,mActivity.getResources().getString(R.string.data_saved) ,FBToast.LENGTH_SHORT);
|
||||||
|
|
||||||
|
progress.dismiss();
|
||||||
|
|
||||||
|
if(closeUL) onColloClosed(null);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onFailed(Exception ex) {
|
||||||
|
UtilityExceptions.defaultException(mActivity, ex, progress);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -19,6 +19,7 @@ import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO;
|
|||||||
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
||||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
import it.integry.integrywmsnative.core.expansion.RunnableArgss;
|
import it.integry.integrywmsnative.core.expansion.RunnableArgss;
|
||||||
|
import it.integry.integrywmsnative.core.expansion.RunnableArgsss;
|
||||||
import it.integry.integrywmsnative.core.model.MtbAart;
|
import it.integry.integrywmsnative.core.model.MtbAart;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityBarcode;
|
import it.integry.integrywmsnative.core.utility.UtilityBarcode;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityDate;
|
import it.integry.integrywmsnative.core.utility.UtilityDate;
|
||||||
@ -36,14 +37,14 @@ public class DialogScanArt {
|
|||||||
private Context mContext;
|
private Context mContext;
|
||||||
private Dialog mDialog;
|
private Dialog mDialog;
|
||||||
|
|
||||||
private RunnableArgss<DialogConsts.Results, MtbAart> mOnItemChoosed;
|
private RunnableArgsss<DialogConsts.Results, MtbAart, Ean128Model> mOnItemChoosed;
|
||||||
|
|
||||||
public static Dialog make(final Context context, RunnableArgss<DialogConsts.Results, MtbAart> onItemChoosed) {
|
public static Dialog make(final Context context, RunnableArgsss<DialogConsts.Results, MtbAart, Ean128Model> onItemChoosed) {
|
||||||
return new DialogScanArt(context, onItemChoosed).mDialog;
|
return new DialogScanArt(context, onItemChoosed).mDialog;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private DialogScanArt(Context context, RunnableArgss<DialogConsts.Results, MtbAart> onItemChoosed) {
|
private DialogScanArt(Context context, RunnableArgsss<DialogConsts.Results, MtbAart, Ean128Model> onItemChoosed) {
|
||||||
mContext = context;
|
mContext = context;
|
||||||
mOnItemChoosed = onItemChoosed;
|
mOnItemChoosed = onItemChoosed;
|
||||||
|
|
||||||
@ -59,7 +60,7 @@ public class DialogScanArt {
|
|||||||
|
|
||||||
|
|
||||||
bindings.buttonNo.setOnClickListener(v -> {
|
bindings.buttonNo.setOnClickListener(v -> {
|
||||||
mOnItemChoosed.run(DialogConsts.Results.ABORT, null);
|
mOnItemChoosed.run(DialogConsts.Results.ABORT, null, null);
|
||||||
mDialog.dismiss();
|
mDialog.dismiss();
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -155,7 +156,7 @@ public class DialogScanArt {
|
|||||||
BarcodeManager.enable();
|
BarcodeManager.enable();
|
||||||
progressDialog.dismiss();
|
progressDialog.dismiss();
|
||||||
|
|
||||||
mOnItemChoosed.run(DialogConsts.Results.YES, mtbAartList.get(0));
|
mOnItemChoosed.run(DialogConsts.Results.YES, mtbAartList.get(0), ean128Model);
|
||||||
mDialog.dismiss();
|
mDialog.dismiss();
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -30,6 +30,7 @@
|
|||||||
<string name="permission_request_message">Questi permessi sono necessari al funzionamento dell\'app</string>
|
<string name="permission_request_message">Questi permessi sono necessari al funzionamento dell\'app</string>
|
||||||
<string name="picking_not_available">Picking non disponibile</string>
|
<string name="picking_not_available">Picking non disponibile</string>
|
||||||
<string name="scan_item">Scansiona il codice a barre di un <b>articolo</b></string>
|
<string name="scan_item">Scansiona il codice a barre di un <b>articolo</b></string>
|
||||||
|
<string name="please_open_lu">Prima di procedere apri una <b>nuova UL</b></string>
|
||||||
<string name="extra_item">Articolo extra</string>
|
<string name="extra_item">Articolo extra</string>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -150,6 +150,7 @@
|
|||||||
|
|
||||||
<string name="already_used_anonymous_barcode">The scanned label has already been used</string>
|
<string name="already_used_anonymous_barcode">The scanned label has already been used</string>
|
||||||
<string name="no_result_from_barcode">The scanned barcode did not produce any results</string>
|
<string name="no_result_from_barcode">The scanned barcode did not produce any results</string>
|
||||||
|
<string name="please_open_lu">Before continuing open new LU</string>
|
||||||
<string name="multiple_results_from_barcode">The scanned barcode produced multiple results</string>
|
<string name="multiple_results_from_barcode">The scanned barcode produced multiple results</string>
|
||||||
|
|
||||||
<string name="filtered_arts_in_list">Item filter applied</string>
|
<string name="filtered_arts_in_list">Item filter applied</string>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user