Inizio implementazione DialogFiltroAvanzatoVendita

This commit is contained in:
2018-12-03 11:02:40 +01:00
parent 61287648e5
commit 4afe613189
11 changed files with 160 additions and 3 deletions

View File

@@ -14,12 +14,15 @@ import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.ImageButton;
import butterknife.BindView;
import butterknife.ButterKnife;
import it.integry.integrywmsnative.core.REST.watcher.ServerStatusChecker;
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
import it.integry.integrywmsnative.core.interfaces.IFilterableFragment;
import it.integry.integrywmsnative.core.interfaces.IRecyclerFragment;
import it.integry.integrywmsnative.core.interfaces.ISelectAllFragment;
import it.integry.integrywmsnative.core.settings.SettingsManager;
import it.integry.integrywmsnative.core.utility.UtilitySettings;
import it.integry.integrywmsnative.gest.accettazione.MainAccettazioneFragment;
@@ -35,6 +38,8 @@ public class MainActivity extends AppCompatActivity
implements NavigationView.OnNavigationItemSelectedListener {
@BindView(R.id.main_search) SearchView mSearchView;
@BindView(R.id.main_select_all) ImageButton mSelectAll;
@BindView(R.id.main_filter) ImageButton mFilterBtn;
@BindView(R.id.nav_view) NavigationView mNavigationView;
@@ -198,6 +203,22 @@ public class MainActivity extends AppCompatActivity
if(fragment instanceof IRecyclerFragment) {
((IRecyclerFragment) fragment).setWaterfallToolbar(mWaterfallToolbar);
}
if(fragment instanceof ISelectAllFragment && ((ISelectAllFragment)fragment).isEnabled()) {
mSelectAll.setVisibility(View.VISIBLE);
mSelectAll.setOnClickListener(v -> ((ISelectAllFragment)fragment).onSelectAll());
} else {
mSelectAll.setVisibility(View.GONE);
mSelectAll.setOnClickListener(null);
}
if(fragment instanceof IFilterableFragment) {
mFilterBtn.setVisibility(View.VISIBLE);
mFilterBtn.setOnClickListener(v -> ((IFilterableFragment)fragment).onFilterClick());
} else {
mFilterBtn.setVisibility(View.GONE);
mFilterBtn.setOnClickListener(null);
}
}
private void changeContentFragment(Fragment fragment){

View File

@@ -0,0 +1,7 @@
package it.integry.integrywmsnative.core.interfaces;
public interface IFilterableFragment {
void onFilterClick();
}

View File

@@ -0,0 +1,9 @@
package it.integry.integrywmsnative.core.interfaces;
public interface ISelectAllFragment {
boolean isEnabled();
void onSelectAll();
}

View File

@@ -7,7 +7,6 @@ import android.databinding.DataBindingUtil;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.text.Html;
import android.text.SpannableString;
import android.view.LayoutInflater;
@@ -25,7 +24,9 @@ import butterknife.OnClick;
import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.REST.CommonRESTException;
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.interfaces.IFilterableFragment;
import it.integry.integrywmsnative.core.interfaces.IRecyclerFragment;
import it.integry.integrywmsnative.core.interfaces.ISelectAllFragment;
import it.integry.integrywmsnative.core.model.MtbColt;
import it.integry.integrywmsnative.core.settings.SettingsManager;
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
@@ -40,7 +41,7 @@ import it.integry.integrywmsnative.gest.vendita_ordine_inevaso.VenditaOrdineInev
import it.integry.integrywmsnative.view.dialogs.DialogSimpleMessageHelper;
import it.integry.plugins.waterfalltoolbar.WaterfallToolbar;
public class MainVenditaFragment extends Fragment implements ITitledFragment, IRecyclerFragment {
public class MainVenditaFragment extends Fragment implements ITitledFragment, IRecyclerFragment, ISelectAllFragment, IFilterableFragment {
private static WaterfallToolbar mWaterfallToolbar;
@@ -296,5 +297,30 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IR
@Override
public void setWaterfallToolbar(WaterfallToolbar waterfallToolbar) {
mWaterfallToolbar = waterfallToolbar;
}
@Override
public boolean isEnabled() {
return SettingsManager.iDB().isFlagMultiClienteOrdV();
}
@Override
public void onSelectAll() {
if(groupedOrdiniInevasi != null && groupedOrdiniInevasi.size() > 0) {
if(mHelper.getSelectedOrders(groupedOrdiniInevasi).size() > 0){
mHelper.deselectAll(groupedOrdiniInevasi);
} else {
//Selezionare solo quelli attualmente a video
mHelper.selectAll(groupedOrdiniInevasi);
}
}
}
@Override
public void onFilterClick() {
}
}

View File

@@ -197,6 +197,24 @@ public class VenditaHelper {
public void selectAll(List<OrdineVenditaGroupedInevasoDTO> groupedOrdiniInevasi) {
toggleSelection(groupedOrdiniInevasi, true);
}
public void deselectAll(List<OrdineVenditaGroupedInevasoDTO> groupedOrdiniInevasi) {
toggleSelection(groupedOrdiniInevasi, false);
}
public void toggleSelection(List<OrdineVenditaGroupedInevasoDTO> groupedOrdiniInevasi, boolean value) {
for(int i = 0; i < groupedOrdiniInevasi.size(); i++){
for(int j = 0; j < groupedOrdiniInevasi.get(i).ordini.size(); j++){
groupedOrdiniInevasi.get(i).ordini.get(j).setCheckbox(value);
}
}
}

View File

@@ -0,0 +1,17 @@
package it.integry.integrywmsnative.gest.vendita.dialogs;
import android.app.AlertDialog;
import android.content.Context;
public class DialogVenditaFiltroAvanzato {
private static Context currentContext;
public static AlertDialog makeBase(final Context context) {
currentContext = context;
return null;
}
}