Fix su gestione istanze del menu principale.
Parametrizzato il Pickibg Libero in modo che possa lavorare anche con la lavorazione.
This commit is contained in:
@@ -75,7 +75,7 @@ android {
|
||||
abortOnError false
|
||||
}
|
||||
|
||||
dynamicFeatures = [":dynamic__base", ":dynamic_vgalimenti", ":dynamic_ime", ":dynamic_frudis", ":dynamic_saporiveri_pv", ":dynamic_saporiveri"]
|
||||
dynamicFeatures = [":dynamic__base", ":dynamic_vgalimenti", ":dynamic_ime", ":dynamic_frudis", ":dynamic_saporiveri_pv", ":dynamic_saporiveri", ':dynamic_gramm']
|
||||
|
||||
|
||||
}
|
||||
@@ -87,14 +87,14 @@ dependencies {
|
||||
})
|
||||
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
|
||||
implementation 'com.orhanobut:logger:2.2.0'
|
||||
implementation 'com.google.firebase:firebase-core:17.4.3'
|
||||
implementation 'com.google.firebase:firebase-core:17.5.0'
|
||||
implementation 'com.google.firebase:firebase-crash:16.2.1'
|
||||
implementation 'com.google.firebase:firebase-perf:19.0.7'
|
||||
implementation 'com.google.firebase:firebase-crashlytics:17.0.1'
|
||||
implementation 'androidx.appcompat:appcompat:1.1.0'
|
||||
implementation 'com.google.firebase:firebase-perf:19.0.8'
|
||||
implementation 'com.google.firebase:firebase-crashlytics:17.2.1'
|
||||
implementation 'androidx.appcompat:appcompat:1.2.0'
|
||||
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
|
||||
implementation 'com.google.android.material:material:1.3.0-alpha01'
|
||||
implementation 'androidx.constraintlayout:constraintlayout:2.0.0-beta6'
|
||||
implementation 'com.google.android.material:material:1.3.0-alpha02'
|
||||
implementation 'androidx.constraintlayout:constraintlayout:2.0.1'
|
||||
implementation 'androidx.cardview:cardview:1.0.0'
|
||||
implementation 'androidx.recyclerview:recyclerview:1.1.0'
|
||||
implementation 'androidx.preference:preference:1.1.1'
|
||||
|
||||
@@ -161,7 +161,7 @@ public class MainActivity extends BaseActivity
|
||||
BaseMenuConfiguration.MenuItem menuItem = getMenuItem(id);
|
||||
|
||||
if(menuItem != null) {
|
||||
fragment = menuItem.getFragmentClass();
|
||||
fragment = menuItem.getFragmentFactory().run();
|
||||
this.adaptViewToFragment(fragment);
|
||||
} else {
|
||||
switch (id) {
|
||||
@@ -261,9 +261,6 @@ public class MainActivity extends BaseActivity
|
||||
for(int i = 0; i < count; i++) {
|
||||
getSupportFragmentManager().popBackStack();
|
||||
}
|
||||
|
||||
openMain();
|
||||
|
||||
}
|
||||
|
||||
private void adaptViewToFragment(Fragment fragment){
|
||||
|
||||
@@ -53,4 +53,8 @@ public class MainApplication extends Application {
|
||||
super.onLowMemory();
|
||||
}
|
||||
|
||||
public static void exit() {
|
||||
System.exit(0);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -7,7 +7,6 @@ import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import it.integry.integrywmsnative.core.class_router.exceptions.MethodPathNotRegisteredException;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
||||
|
||||
public class ClassRouter {
|
||||
|
||||
@@ -20,7 +19,7 @@ public class ClassRouter {
|
||||
|
||||
private static Context context;
|
||||
|
||||
private static List<Pair<PATH, Class>> mRouteClasses = new ArrayList<>();
|
||||
private static List<Pair<PATH, Object>> mRouteClasses = new ArrayList<>();
|
||||
|
||||
public static void init(Context context) {
|
||||
ClassRouter.context = context;
|
||||
@@ -50,7 +49,13 @@ public class ClassRouter {
|
||||
//throw new MethodPathAlreadyDeclaredException(path);
|
||||
}
|
||||
|
||||
mRouteClasses.add(new Pair<>(path, clazz));
|
||||
try {
|
||||
mRouteClasses.add(new Pair<>(path, clazz.newInstance()));
|
||||
} catch (IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
} catch (InstantiationException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
public static void deregisterPath(PATH path) {
|
||||
@@ -67,11 +72,11 @@ public class ClassRouter {
|
||||
throw new MethodPathNotRegisteredException(path);
|
||||
}
|
||||
|
||||
Class clazz = mRouteClasses.get(getClassIndex(path)).second;
|
||||
Object instance = mRouteClasses.get(getClassIndex(path)).second;
|
||||
|
||||
return (T)clazz.newInstance();
|
||||
return (T)instance;
|
||||
|
||||
} catch (InstantiationException | MethodPathNotRegisteredException | IllegalAccessException ex) {
|
||||
} catch (MethodPathNotRegisteredException ex) {
|
||||
// UtilityExceptions.defaultException(null, ex, true);
|
||||
}
|
||||
|
||||
|
||||
@@ -8,6 +8,8 @@ import androidx.fragment.app.Fragment;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableWithReturn;
|
||||
|
||||
public class BaseMenuConfiguration {
|
||||
|
||||
|
||||
@@ -65,7 +67,7 @@ public class BaseMenuConfiguration {
|
||||
@StringRes private int mTitleText;
|
||||
@DrawableRes private int mTitleIcon;
|
||||
@DrawableRes private int mDrawerIcon;
|
||||
private Fragment fragmentClass;
|
||||
private RunnableWithReturn<Fragment> fragmentFactory;
|
||||
|
||||
public int getID() {
|
||||
return mID;
|
||||
@@ -103,12 +105,12 @@ public class BaseMenuConfiguration {
|
||||
return this;
|
||||
}
|
||||
|
||||
public Fragment getFragmentClass() {
|
||||
return fragmentClass;
|
||||
public RunnableWithReturn<Fragment> getFragmentFactory() {
|
||||
return fragmentFactory;
|
||||
}
|
||||
|
||||
public MenuItem setFragmentClass(Fragment fragmentClass) {
|
||||
this.fragmentClass = fragmentClass;
|
||||
public MenuItem setFragmentFactory(RunnableWithReturn<Fragment> fragmentFactory) {
|
||||
this.fragmentFactory = fragmentFactory;
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package it.integry.integrywmsnative.core.class_router.configs;
|
||||
|
||||
import it.integry.integrywmsnative.R;
|
||||
import it.integry.integrywmsnative.core.model.secondary.GestioneEnum;
|
||||
import it.integry.integrywmsnative.gest.accettazione.MainAccettazioneFragment;
|
||||
import it.integry.integrywmsnative.gest.picking_libero.PickingLiberoFragment;
|
||||
import it.integry.integrywmsnative.gest.prod_accettazione_ord_produzione.ProdOrdineProduzioneElencoFragment;
|
||||
@@ -16,112 +17,114 @@ import it.integry.integrywmsnative.gest.versamento_merce.VersamentoMerceFragment
|
||||
public class MenuConfiguration extends BaseMenuConfiguration {
|
||||
|
||||
|
||||
|
||||
public MenuConfiguration() {
|
||||
|
||||
this
|
||||
.addGroup(
|
||||
new MenuGroup()
|
||||
.setGroupText(R.string.purchase)
|
||||
.setGroupId(R.id.nav_group_acquisto)
|
||||
.addGroup(
|
||||
new MenuGroup()
|
||||
.setGroupText(R.string.purchase)
|
||||
.setGroupId(R.id.nav_group_acquisto)
|
||||
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_accettazione)
|
||||
.setTitleText(R.string.accettazione_title_fragment)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_accettazione)
|
||||
.setDrawerIcon(R.drawable.ic_black_download)
|
||||
.setFragmentClass(MainAccettazioneFragment.newInstance()))
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_accettazione)
|
||||
.setTitleText(R.string.accettazione_title_fragment)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_accettazione)
|
||||
.setDrawerIcon(R.drawable.ic_black_download)
|
||||
.setFragmentFactory(MainAccettazioneFragment::newInstance))
|
||||
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_resi_fornitore)
|
||||
.setTitleText(R.string.fragment_ultime_arrivi_fornitore_title)
|
||||
.setTitleIcon(R.drawable.ic_latest_delivery)
|
||||
.setDrawerIcon(R.drawable.ic_black_latest_delivery)
|
||||
.setFragmentClass(UltimiArriviFornitoreFragment.newInstance()))
|
||||
).addGroup(
|
||||
new MenuGroup()
|
||||
.setGroupText(R.string.checkout)
|
||||
.setGroupId(R.id.nav_group_spedizione)
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_resi_fornitore)
|
||||
.setTitleText(R.string.fragment_ultime_arrivi_fornitore_title)
|
||||
.setTitleIcon(R.drawable.ic_latest_delivery)
|
||||
.setDrawerIcon(R.drawable.ic_black_latest_delivery)
|
||||
.setFragmentFactory(UltimiArriviFornitoreFragment::newInstance))
|
||||
).addGroup(
|
||||
new MenuGroup()
|
||||
.setGroupText(R.string.checkout)
|
||||
.setGroupId(R.id.nav_group_spedizione)
|
||||
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_spedizione)
|
||||
.setTitleText(R.string.vendita_title_fragment)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_spedizione)
|
||||
.setDrawerIcon(R.drawable.ic_black_upload)
|
||||
.setFragmentClass(MainVenditaFragment.newInstance()))
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_spedizione)
|
||||
.setTitleText(R.string.vendita_title_fragment)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_spedizione)
|
||||
.setDrawerIcon(R.drawable.ic_black_upload)
|
||||
.setFragmentFactory(MainVenditaFragment::newInstance))
|
||||
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_free_picking)
|
||||
.setTitleText(R.string.free_picking)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_picking_libero)
|
||||
.setDrawerIcon(R.drawable.ic_black_barcode_scanner)
|
||||
.setFragmentClass(PickingLiberoFragment.newInstance()))
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_free_picking)
|
||||
.setTitleText(R.string.free_picking)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_picking_libero)
|
||||
.setDrawerIcon(R.drawable.ic_black_barcode_scanner)
|
||||
.setFragmentFactory(() -> PickingLiberoFragment.newInstance(GestioneEnum.VENDITA)))
|
||||
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_resi_cliente)
|
||||
.setTitleText(R.string.fragment_ultime_consegne_cliente_title)
|
||||
.setTitleIcon(R.drawable.ic_latest_delivery_customer)
|
||||
.setDrawerIcon(R.drawable.ic_black_latest_delivery)
|
||||
.setFragmentClass(UltimeConsegneClienteFragment.newInstance()))
|
||||
).addGroup(new MenuGroup()
|
||||
.setGroupText(R.string.manufacture)
|
||||
.setGroupId(R.id.nav_group_produzione)
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_resi_cliente)
|
||||
.setTitleText(R.string.fragment_ultime_consegne_cliente_title)
|
||||
.setTitleIcon(R.drawable.ic_latest_delivery_customer)
|
||||
.setDrawerIcon(R.drawable.ic_black_latest_delivery)
|
||||
.setFragmentFactory(UltimeConsegneClienteFragment::newInstance))
|
||||
).addGroup(new MenuGroup()
|
||||
.setGroupText(R.string.manufacture)
|
||||
.setGroupId(R.id.nav_group_produzione)
|
||||
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_prod_ordine_produzione)
|
||||
.setTitleText(R.string.prod_ordine_produzione_title_fragment)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_accettazione)
|
||||
.setDrawerIcon(R.drawable.ic_black_external)
|
||||
.setFragmentClass(ProdOrdineProduzioneElencoFragment.newInstance()))
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_prod_ordine_produzione)
|
||||
.setTitleText(R.string.prod_ordine_produzione_title_fragment)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_prod_accettazione_produzione)
|
||||
.setDrawerIcon(R.drawable.ic_black_external)
|
||||
.setFragmentFactory(ProdOrdineProduzioneElencoFragment::newInstance))
|
||||
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_prod_ordine_lavorazione)
|
||||
.setTitleText(R.string.prod_ordine_lavorazione_title_fragment)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_spedizione)
|
||||
.setDrawerIcon(R.drawable.ic_black_external)
|
||||
.setFragmentClass(ProdOrdineLavorazioneElencoFragment.newInstance()))
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_prod_ordine_lavorazione)
|
||||
.setTitleText(R.string.prod_ordine_lavorazione_title_fragment)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_prod_picking_lavorazione)
|
||||
.setDrawerIcon(R.drawable.ic_black_external)
|
||||
.setFragmentFactory(ProdOrdineLavorazioneElencoFragment::newInstance))
|
||||
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_prod_versamento_materiale)
|
||||
.setTitleText(R.string.prod_versamento_materiale_title_fragment)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_prod_versamento_materiale)
|
||||
.setDrawerIcon(R.drawable.ic_black_external)
|
||||
.setFragmentClass(ProdVersamentoMaterialeFragment.newInstance()))
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_free_lav_picking)
|
||||
.setTitleText(it.integry.integrywmsnative.R.string.free_lav_picking)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_prod_picking_libero)
|
||||
.setDrawerIcon(it.integry.integrywmsnative.R.drawable.ic_black_barcode_scanner)
|
||||
.setFragmentFactory(() -> PickingLiberoFragment.newInstance(GestioneEnum.LAVORAZIONE)))
|
||||
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_prod_recupero_materiale)
|
||||
.setTitleText(R.string.prod_recupero_materiale_title_fragment)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_prod_recupero_materiale)
|
||||
.setDrawerIcon(R.drawable.ic_black_external)
|
||||
.setFragmentClass(ProdRecuperoMaterialeFragment.newInstance()))
|
||||
)
|
||||
.addGroup(
|
||||
new MenuGroup()
|
||||
.setGroupText(R.string.internal_handling)
|
||||
.setGroupId(R.id.nav_group_movimentazione_interna)
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_prod_versamento_materiale)
|
||||
.setTitleText(R.string.prod_versamento_materiale_title_fragment)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_prod_versamento_materiale)
|
||||
.setDrawerIcon(R.drawable.ic_black_external)
|
||||
.setFragmentFactory(ProdVersamentoMaterialeFragment::newInstance))
|
||||
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_versamento_merce)
|
||||
.setTitleText(R.string.versamento_merce_fragment_title)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_versamento_merce)
|
||||
.setDrawerIcon(R.drawable.ic_black_load_shelf)
|
||||
.setFragmentClass(VersamentoMerceFragment.newInstance()))
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_prod_recupero_materiale)
|
||||
.setTitleText(R.string.prod_recupero_materiale_title_fragment)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_prod_recupero_materiale)
|
||||
.setDrawerIcon(R.drawable.ic_black_external)
|
||||
.setFragmentFactory(ProdRecuperoMaterialeFragment::newInstance))
|
||||
)
|
||||
.addGroup(
|
||||
new MenuGroup()
|
||||
.setGroupText(R.string.internal_handling)
|
||||
.setGroupId(R.id.nav_group_movimentazione_interna)
|
||||
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_rettifica_giacenze)
|
||||
.setTitleText(R.string.rettifica_giacenze_fragment_title)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_rettifica_giacenze)
|
||||
.setDrawerIcon(R.drawable.ic_black_empty_box)
|
||||
.setFragmentClass(RettificaGiacenzeFragment.newInstance()))
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_versamento_merce)
|
||||
.setTitleText(R.string.versamento_merce_fragment_title)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_versamento_merce)
|
||||
.setDrawerIcon(R.drawable.ic_black_load_shelf)
|
||||
.setFragmentFactory(VersamentoMerceFragment::newInstance))
|
||||
|
||||
.addItem(new MenuItem()
|
||||
.setID(R.id.nav_rettifica_giacenze)
|
||||
.setTitleText(R.string.rettifica_giacenze_fragment_title)
|
||||
.setTitleIcon(R.drawable.ic_dashboard_rettifica_giacenze)
|
||||
.setDrawerIcon(R.drawable.ic_black_empty_box)
|
||||
.setFragmentFactory(RettificaGiacenzeFragment::newInstance))
|
||||
|
||||
|
||||
);
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ import java.io.File;
|
||||
import java.io.FileWriter;
|
||||
import java.io.PrintWriter;
|
||||
|
||||
import it.integry.integrywmsnative.BuildConfig;
|
||||
import it.integry.integrywmsnative.MainApplication;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityLogger;
|
||||
import it.integry.integrywmsnative.view.dialogs.exception.DialogException;
|
||||
|
||||
@@ -41,7 +41,7 @@ public class ExceptionsHandler implements Thread.UncaughtExceptionHandler {
|
||||
UtilityLogger.errorMe(new Exception(ex));
|
||||
} catch (Exception e) {
|
||||
Log.e(TAG, "Exception Logger failed!", e);
|
||||
System.exit(0);
|
||||
MainApplication.exit();
|
||||
}
|
||||
|
||||
appendToFile(new Exception(ex));
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
package it.integry.integrywmsnative.core.expansion;
|
||||
|
||||
public interface RunnableWithReturn<R> {
|
||||
|
||||
R run();
|
||||
|
||||
}
|
||||
@@ -3,38 +3,36 @@ package it.integry.integrywmsnative.gest.main;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.Bundle;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
|
||||
import androidx.appcompat.widget.AppCompatTextView;
|
||||
import androidx.databinding.DataBindingUtil;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.recyclerview.widget.GridLayoutManager;
|
||||
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
|
||||
import it.integry.integrywmsnative.MainActivity;
|
||||
import it.integry.integrywmsnative.MainApplication;
|
||||
import it.integry.integrywmsnative.R;
|
||||
import it.integry.integrywmsnative.core.class_router.interfaces.IOrdiniVendita;
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableArgss;
|
||||
import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer;
|
||||
import it.integry.integrywmsnative.core.rest.watcher.ServerStatusChecker;
|
||||
import it.integry.integrywmsnative.core.class_router.BaseCustomConfiguration;
|
||||
import it.integry.integrywmsnative.core.class_router.ClassRouter;
|
||||
import it.integry.integrywmsnative.core.class_router.configs.BaseMenuConfiguration;
|
||||
import it.integry.integrywmsnative.core.class_router.configs.MenuConfiguration;
|
||||
import it.integry.integrywmsnative.core.class_router.interfaces.ICustomConfiguration;
|
||||
import it.integry.integrywmsnative.core.class_router.interfaces.IOrdiniVendita;
|
||||
import it.integry.integrywmsnative.core.data_recover.ColliDataRecover;
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableArgss;
|
||||
import it.integry.integrywmsnative.core.interfaces.IScrollableFragment;
|
||||
import it.integry.integrywmsnative.core.interfaces.ITitledFragment;
|
||||
import it.integry.integrywmsnative.core.model.MtbColt;
|
||||
import it.integry.integrywmsnative.core.model.secondary.GestioneEnum;
|
||||
import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer;
|
||||
import it.integry.integrywmsnative.core.rest.watcher.ServerStatusChecker;
|
||||
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityResources;
|
||||
@@ -99,10 +97,7 @@ public class MainFragment extends Fragment implements ITitledFragment, IScrollab
|
||||
private void init() {
|
||||
ServerStatusChecker.getInstance().addCallback(value -> {
|
||||
if (value && mBindings.noConnectionTopLayout.isExpanded()) {
|
||||
|
||||
collapseNoConnectionLayout();
|
||||
|
||||
|
||||
} else if (!value && !mBindings.noConnectionTopLayout.isExpanded()) {
|
||||
expandNoConnectionLayout();
|
||||
}
|
||||
|
||||
@@ -41,6 +41,7 @@ import it.integry.integrywmsnative.core.model.MtbAart;
|
||||
import it.integry.integrywmsnative.core.model.MtbColr;
|
||||
import it.integry.integrywmsnative.core.model.MtbColt;
|
||||
import it.integry.integrywmsnative.core.model.VtbDest;
|
||||
import it.integry.integrywmsnative.core.model.secondary.GestioneEnum;
|
||||
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityProgress;
|
||||
@@ -84,13 +85,18 @@ public class PickingLiberoFragment extends Fragment implements ITitledFragment,
|
||||
|
||||
private Dialog mCurrentProgress;
|
||||
|
||||
private GestioneEnum mCurrentGestione;
|
||||
|
||||
public PickingLiberoFragment() {
|
||||
// Required empty public constructor
|
||||
}
|
||||
|
||||
public static PickingLiberoFragment newInstance() {
|
||||
public static PickingLiberoFragment newInstance(GestioneEnum gestioneEnum) {
|
||||
PickingLiberoFragment fragment = new PickingLiberoFragment();
|
||||
Bundle args = new Bundle();
|
||||
|
||||
args.putString("gestione", gestioneEnum.getText());
|
||||
|
||||
fragment.setArguments(args);
|
||||
return fragment;
|
||||
}
|
||||
@@ -104,6 +110,8 @@ public class PickingLiberoFragment extends Fragment implements ITitledFragment,
|
||||
@Override
|
||||
public void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
mCurrentGestione = GestioneEnum.fromString(getArguments().getString("gestione"));
|
||||
}
|
||||
|
||||
|
||||
@@ -120,10 +128,6 @@ public class PickingLiberoFragment extends Fragment implements ITitledFragment,
|
||||
|
||||
mViewModel.setListener(this);
|
||||
|
||||
// mViewModel.init(getActivity(), mBindings, mToolbarTitleText, () -> {
|
||||
// ((IPoppableActivity) getActivity()).pop();
|
||||
// });
|
||||
|
||||
mBindings.setLifecycleOwner(this);
|
||||
mBindings.setView(this);
|
||||
|
||||
@@ -135,7 +139,7 @@ public class PickingLiberoFragment extends Fragment implements ITitledFragment,
|
||||
this.initRecyclerView();
|
||||
|
||||
boolean flagAskCliente = SettingsManager.iDB().isFlagAskClienteInPickingLibero();
|
||||
mViewModel.init(flagAskCliente);
|
||||
mViewModel.init(flagAskCliente, mCurrentGestione);
|
||||
|
||||
return mBindings.getRoot();
|
||||
}
|
||||
|
||||
@@ -51,6 +51,7 @@ public class PickingLiberoViewModel {
|
||||
|
||||
|
||||
private boolean mFlagAskCliente;
|
||||
private GestioneEnum mDefaultGestione;
|
||||
|
||||
|
||||
private Listener mListener;
|
||||
@@ -68,8 +69,9 @@ public class PickingLiberoViewModel {
|
||||
}
|
||||
|
||||
|
||||
public void init(boolean flagAskCliente) {
|
||||
this.mFlagAskCliente = flagAskCliente;
|
||||
public void init(boolean flagAskCliente, GestioneEnum defaultGestione) {
|
||||
this.mFlagAskCliente = defaultGestione == GestioneEnum.VENDITA && flagAskCliente;
|
||||
this.mDefaultGestione = defaultGestione;
|
||||
}
|
||||
|
||||
|
||||
@@ -190,7 +192,8 @@ public class PickingLiberoViewModel {
|
||||
private void createNewLU_PostClienteAsk(Integer customNumCollo, String customSerCollo, VtbDest vtbDest, Runnable onComplete) {
|
||||
MtbColt mtbColt = new MtbColt();
|
||||
mtbColt.initDefaultFields();
|
||||
mtbColt.setGestione(GestioneEnum.VENDITA)
|
||||
mtbColt.setGestione(mDefaultGestione)
|
||||
.setPosizione(SettingsManager.i().userSession.depo.getCodMdep())
|
||||
.setSegno(-1)
|
||||
.setOperation(CommonModelConsts.OPERATION.INSERT_OR_UPDATE);
|
||||
|
||||
@@ -246,8 +249,8 @@ public class PickingLiberoViewModel {
|
||||
if (mtbAart.isFlagQtaCnfFissaBoolean()) {
|
||||
qtaCnfDaPrelevare = mtbAart.getQtaCnf();
|
||||
|
||||
if(manualPickDTO.isEanPeso()) {
|
||||
if(mtbAart.getUntMisRifPeso() == MtbAart.UntMisRifPesoEnum.M) {
|
||||
if (manualPickDTO.isEanPeso()) {
|
||||
if (mtbAart.getUntMisRifPeso() == MtbAart.UntMisRifPesoEnum.M) {
|
||||
if (UtilityBigDecimal.equalsTo(mtbAart.getPesoKg(), BigDecimal.ZERO)) {
|
||||
this.sendError(new InvalidPesoKGException());
|
||||
} else {
|
||||
@@ -262,9 +265,10 @@ public class PickingLiberoViewModel {
|
||||
|
||||
|
||||
if (qtaColDaPrelevare != null && numCnfDaPrelevare == null) {
|
||||
if(!mtbAart.isFlagQtaCnfFissaBoolean()) {
|
||||
if (!mtbAart.isFlagQtaCnfFissaBoolean()) {
|
||||
numCnfDaPrelevare = UtilityBigDecimal.divideAndRoundToInteger(qtaColDaPrelevare, mtbAart.getQtaCnf());
|
||||
if(UtilityBigDecimal.equalsTo(numCnfDaPrelevare, BigDecimal.ZERO)) numCnfDaPrelevare = BigDecimal.ONE;
|
||||
if (UtilityBigDecimal.equalsTo(numCnfDaPrelevare, BigDecimal.ZERO))
|
||||
numCnfDaPrelevare = BigDecimal.ONE;
|
||||
qtaCnfDaPrelevare = UtilityBigDecimal.divide(qtaColDaPrelevare, numCnfDaPrelevare);
|
||||
} else {
|
||||
numCnfDaPrelevare = UtilityBigDecimal.divideToInteger(qtaColDaPrelevare, mtbAart.getQtaCnf());
|
||||
@@ -551,7 +555,6 @@ public class PickingLiberoViewModel {
|
||||
loadRifULFromMtbColr(mtbColrToUpdate, mtbColtRif -> {
|
||||
|
||||
|
||||
|
||||
BigDecimal totalQtaAvailable = null;
|
||||
BigDecimal totalNumCnfAvailable = null;
|
||||
BigDecimal qtaCnfAvailable = null;
|
||||
@@ -694,7 +697,7 @@ public class PickingLiberoViewModel {
|
||||
|
||||
public void closeLU(Runnable onComplete) {
|
||||
if (mCurrentMtbColt == null) {
|
||||
if(onComplete != null) onComplete.run();
|
||||
if (onComplete != null) onComplete.run();
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -707,7 +710,7 @@ public class PickingLiberoViewModel {
|
||||
this.sendOnLoadingEnded();
|
||||
|
||||
this.mCurrentMtbColt = null;
|
||||
if(onComplete != null) onComplete.run();
|
||||
if (onComplete != null) onComplete.run();
|
||||
});
|
||||
} else {
|
||||
mColliMagazzinoRESTConsumer.updateDataFine(mCurrentMtbColt, () -> {
|
||||
@@ -715,7 +718,7 @@ public class PickingLiberoViewModel {
|
||||
this.sendOnLoadingEnded();
|
||||
|
||||
this.mCurrentMtbColt = null;
|
||||
if(onComplete != null) onComplete.run();
|
||||
if (onComplete != null) onComplete.run();
|
||||
}, this::sendError);
|
||||
}
|
||||
}, this::sendError);
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
<vector android:height="128dp" android:viewportHeight="512"
|
||||
android:viewportWidth="512" android:width="128dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="#2958B7" android:pathData="M394.7,53.3H117.3L64,128v298.7c0,17.7 14.3,32 32,32h320c17.7,0 32,-14.3 32,-32V128L394.7,53.3z"/>
|
||||
<path android:fillColor="#0B44A0" android:pathData="M128.3,74.7L90.2,128H192c0,35.3 28.7,64 64,64s64,-28.7 64,-64h101.8l-38.1,-53.3H128.3z"/>
|
||||
<path android:fillColor="#3DDAE2" android:pathData="M328.8,232l-84.2,84.3l-40.1,-40.1l-23.2,23.2l63.3,63.2L352,255.2L328.8,232z"/>
|
||||
</vector>
|
||||
@@ -0,0 +1,8 @@
|
||||
<vector android:height="128dp" android:viewportHeight="512"
|
||||
android:viewportWidth="512" android:width="128dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="#455A64" android:pathData="M384,42.7H277.3c0,11.8 -9.6,21.3 -21.3,21.3s-21.3,-9.6 -21.3,-21.3H128c-23.5,0 -42.7,19.2 -42.7,42.7v341.3c0,23.5 19.2,42.7 42.7,42.7h256c23.5,0 42.7,-19.2 42.7,-42.7V85.3C426.7,61.9 407.5,42.7 384,42.7z"/>
|
||||
<path android:fillColor="#FFFFFF" android:pathData="M384,437.3H128c-6.4,0 -10.7,-4.3 -10.7,-10.7V85.3c0,-6.4 4.3,-10.7 10.7,-10.7h256c6.4,0 10.7,4.3 10.7,10.7v341.3C394.7,433.1 390.4,437.3 384,437.3z"/>
|
||||
<path android:fillColor="#90A4AE" android:pathData="M277.3,42.7c0,11.8 -9.6,21.3 -21.3,21.3s-21.3,-9.6 -21.3,-21.3H160v42.7c0,11.8 9.6,21.3 21.3,21.3h149.3c11.8,0 21.3,-9.6 21.3,-21.3V42.7H277.3z"/>
|
||||
<path android:fillColor="#90A4AE" android:pathData="M256,0c-23.5,0 -42.7,19.2 -42.7,42.7s19.2,42.7 42.7,42.7s42.7,-19.2 42.7,-42.7S279.5,0 256,0zM256,64c-11.8,0 -21.3,-9.6 -21.3,-21.3s9.6,-21.3 21.3,-21.3s21.3,9.6 21.3,21.3S267.8,64 256,64z"/>
|
||||
<path android:fillColor="#2958B7" android:pathData="M326.4,198.4l-96,96l-44.8,-45.9l-26.7,26.7l72.5,71.5l121.6,-121.6L326.4,198.4z"/>
|
||||
</vector>
|
||||
@@ -0,0 +1,13 @@
|
||||
<vector android:height="128dp" android:viewportHeight="512"
|
||||
android:viewportWidth="512" android:width="128dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="#607D8B" android:pathData="M139.8,352c-7.5,0 -12.8,-5.3 -13.9,-12.8L98.1,103.5c-2.1,-17 -16,-28.8 -32,-28.8H53.3V96h12.8c5.3,0 9.6,4.3 10.7,9.6l27.8,236.8c2.1,18.1 17,30.9 35.2,30.9H256V352H139.8z"/>
|
||||
<path android:fillColor="#FFC107" android:pathData="M149.3,330.7h309.3v42.7H149.3V330.7z"/>
|
||||
<path android:fillColor="#37474F" android:pathData="M437.3,405.3c0,17.7 -14.3,32 -32,32s-32,-14.3 -32,-32s14.3,-32 32,-32S437.3,387.7 437.3,405.3z"/>
|
||||
<path android:fillColor="#37474F" android:pathData="M234.7,405.3c0,17.7 -14.3,32 -32,32s-32,-14.3 -32,-32s14.3,-32 32,-32S234.7,387.7 234.7,405.3z"/>
|
||||
<path android:fillColor="#607D8B" android:pathData="M416,405.3c0,5.9 -4.8,10.7 -10.7,10.7s-10.7,-4.8 -10.7,-10.7s4.8,-10.7 10.7,-10.7S416,399.5 416,405.3z"/>
|
||||
<path android:fillColor="#607D8B" android:pathData="M213.3,405.3c0,5.9 -4.8,10.7 -10.7,10.7s-10.7,-4.8 -10.7,-10.7s4.8,-10.7 10.7,-10.7S213.3,399.5 213.3,405.3z"/>
|
||||
<path android:fillColor="#2958B7" android:pathData="M405.3,330.7H192c-11.8,0 -21.3,-9.6 -21.3,-21.3V96c0,-11.7 9.6,-21.3 21.3,-21.3h213.3c11.8,0 21.3,9.6 21.3,21.3v213.3C426.7,321.1 417.1,330.7 405.3,330.7z"/>
|
||||
<path android:fillColor="#0000A5" android:pathData="M320,117.3h-42.7c-6.4,0 -10.7,-4.2 -10.7,-10.7c0,-6.4 4.3,-10.7 10.7,-10.7H320c6.4,0 10.7,4.3 10.7,10.7C330.7,113.1 326.4,117.3 320,117.3z"/>
|
||||
<path android:fillColor="#0000A5" android:pathData="M320,256h-42.7c-6.4,0 -10.7,-4.3 -10.7,-10.7c0,-6.4 4.3,-10.7 10.7,-10.7H320c6.4,0 10.7,4.3 10.7,10.7C330.7,251.8 326.4,256 320,256z"/>
|
||||
<path android:fillColor="#182CB7" android:pathData="M170.7,192h256v21.3h-256V192z"/>
|
||||
</vector>
|
||||
@@ -186,6 +186,7 @@
|
||||
|
||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
|
||||
|
||||
@@ -227,6 +227,7 @@
|
||||
<string name="permissions_denied">Tutti i permessi sono stati declinati, riapri l\'applicazione per continuare.</string>
|
||||
<string name="notification_update_download">Download aggiornamento</string>
|
||||
<string name="free_picking">Picking libero</string>
|
||||
<string name="free_lav_picking">Picking libero</string>
|
||||
<string name="free_picking_suggestion_1">Per iniziare clicca sul + in basso a destra</string>
|
||||
<string name="free_picking_suggestion_2">Scansiona un articolo per iniziare</string>
|
||||
<string name="free_picking_title_fragment">Picking libero</string>
|
||||
@@ -262,11 +263,11 @@
|
||||
<string name="general">Generale</string>
|
||||
<string name="purchase">Acquisti</string>
|
||||
<string name="checkout">Vendita</string>
|
||||
<string name="manufacture">Lavorazione</string>
|
||||
<string name="manufacture">Lav. terzi / Trasf. interni</string>
|
||||
<string name="production">Produzione</string>
|
||||
<string name="internal_handling">Movimentazione interna</string>
|
||||
<string name="prod_ordine_produzione_title_fragment">Accettazione da produzione</string>
|
||||
<string name="prod_ordine_lavorazione_title_fragment">Picking per lavorazione</string>
|
||||
<string name="prod_ordine_produzione_title_fragment">Accettazione da ordine</string>
|
||||
<string name="prod_ordine_lavorazione_title_fragment">Picking da ordine</string>
|
||||
<string name="prod_versamento_materiale_title_fragment">Versamento materiale</string>
|
||||
<string name="prod_recupero_materiale_title_fragment">Recupero materiale</string>
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
<item name="nav_rettifica_giacenze" type="id" />
|
||||
<item name="nav_versamento_merce" type="id" />
|
||||
<item name="nav_free_picking" type="id" />
|
||||
<item name="nav_free_lav_picking" type="id" />
|
||||
<item name="nav_resi_fornitore" type="id" />
|
||||
<item name="nav_resi_cliente" type="id" />
|
||||
<item name="nav_prod_ordine_produzione" type="id" />
|
||||
|
||||
@@ -227,6 +227,7 @@
|
||||
<string name="permissions_denied">All permissions are required, please reopen the app.</string>
|
||||
<string name="notification_update_download">Downloading update</string>
|
||||
<string name="free_picking">Free Picking</string>
|
||||
<string name="free_lav_picking">Free Picking</string>
|
||||
<string name="free_picking_suggestion_1">Please press + button to start with picking</string>
|
||||
<string name="free_picking_suggestion_2">Scan an item to start</string>
|
||||
<string name="error_multiple_gest">Can\'t load orders of different type</string>
|
||||
@@ -267,7 +268,7 @@
|
||||
<string name="general">General</string>
|
||||
<string name="purchase">Purchase</string>
|
||||
<string name="checkout">Check out</string>
|
||||
<string name="manufacture">Manufacture</string>
|
||||
<string name="manufacture">Manufacture / Internal movement</string>
|
||||
<string name="production">Production</string>
|
||||
<string name="internal_handling">Internal handling</string>
|
||||
<string name="prod_ordine_produzione_title_fragment">Production picking</string>
|
||||
@@ -323,4 +324,5 @@
|
||||
<string name="basket">Basket</string>
|
||||
<string name="use">Use</string>
|
||||
<string name="back">Back</string>
|
||||
<string name="title_dynamic_gramm">Gramm Customization</string>
|
||||
</resources>
|
||||
|
||||
Reference in New Issue
Block a user