Finish v1_0_17_(20)
This commit is contained in:
commit
705d6c367e
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 {
|
||||
|
||||
def appVersionCode = 19
|
||||
def appVersionName = '1.0.16'
|
||||
def appVersionCode = 20
|
||||
def appVersionName = '1.0.17'
|
||||
|
||||
signingConfigs {
|
||||
release {
|
||||
|
||||
@ -210,6 +210,7 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IR
|
||||
.setData(ord.getDataOrdS())
|
||||
.setNumero(ord.getNumOrd())
|
||||
.setCodAnagOrd(ord.getCodAnagOrd())
|
||||
.setCodAnagClie(groupedOrdine.codAnagClie)
|
||||
.setRagSocOrd(ord.getRagSocOrd())
|
||||
.setPesoTotale(ord.getPesoTotale() != null ? ord.getPesoTotale().floatValue() : null)
|
||||
.setBarcode(ord.getBarcode())
|
||||
@ -256,7 +257,7 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IR
|
||||
}
|
||||
|
||||
private void initRecyclerView() {
|
||||
mAdapter = new MainListVenditaAdapter(getActivity(), groupedOrdiniInevasi, onGroupSelectionChanged);
|
||||
mAdapter = new MainListVenditaAdapter(getActivity(), groupedOrdiniInevasi, onGroupSelectionChanged, onSingleSelectionChanged);
|
||||
mBinding.venditaMainList.setAdapter(mAdapter);
|
||||
}
|
||||
|
||||
@ -264,6 +265,28 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IR
|
||||
mAdapter.updateItems(groupedOrdiniInevasi);
|
||||
}
|
||||
|
||||
RunnableArgs<OrdineVenditaGroupedInevasoDTO.Ordine> onSingleSelectionChanged = dto -> {
|
||||
List<OrdineVenditaGroupedInevasoDTO> selectedOrders = mHelper.getSelectedOrders(groupedOrdiniInevasi);
|
||||
|
||||
if(!SettingsManager.iDB().isFlagMultiClienteOrdV()){
|
||||
|
||||
if(selectedOrders != null && selectedOrders.size() > 1){
|
||||
for (OrdineVenditaGroupedInevasoDTO selectedOrder : selectedOrders) {
|
||||
if(!dto.getCodAnagClie().equalsIgnoreCase(selectedOrder.codAnagClie)) {
|
||||
Stream.of(selectedOrder.ordini).forEach(x -> x.setCheckbox(false));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(selectedOrders != null && selectedOrders.size() > 0) {
|
||||
mBinding.venditaMainFab.show();
|
||||
}
|
||||
else {
|
||||
mBinding.venditaMainFab.hide();
|
||||
}
|
||||
};
|
||||
|
||||
RunnableArgs<OrdineVenditaGroupedInevasoDTO> onGroupSelectionChanged = dto -> {
|
||||
List<OrdineVenditaGroupedInevasoDTO> selectedOrders = mHelper.getSelectedOrders(groupedOrdiniInevasi);
|
||||
|
||||
|
||||
@ -8,6 +8,7 @@ import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.CheckBox;
|
||||
import android.widget.CompoundButton;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
@ -24,6 +25,7 @@ public class MainListVenditaAdapter extends RecyclerView.Adapter<MainListVendita
|
||||
private Context mContext;
|
||||
private List<OrdineVenditaGroupedInevasoDTO> mDataset;
|
||||
private RunnableArgs<OrdineVenditaGroupedInevasoDTO> mOnGroupSelected;
|
||||
private RunnableArgs<OrdineVenditaGroupedInevasoDTO.Ordine> mOnSingleSelectionChanged;
|
||||
|
||||
private Pools.SynchronizedPool sPool = new Pools.SynchronizedPool(2000);
|
||||
private Pools.SynchronizedPool sPoolClienti = new Pools.SynchronizedPool(3000);
|
||||
@ -41,10 +43,11 @@ public class MainListVenditaAdapter extends RecyclerView.Adapter<MainListVendita
|
||||
}
|
||||
|
||||
// Provide a suitable constructor (depends on the kind of dataset)
|
||||
public MainListVenditaAdapter(Context context, List<OrdineVenditaGroupedInevasoDTO> myDataset, RunnableArgs<OrdineVenditaGroupedInevasoDTO> onGroupSelected) {
|
||||
public MainListVenditaAdapter(Context context, List<OrdineVenditaGroupedInevasoDTO> myDataset, RunnableArgs<OrdineVenditaGroupedInevasoDTO> onGroupSelected, RunnableArgs<OrdineVenditaGroupedInevasoDTO.Ordine> onSingleSelectionChanged) {
|
||||
mContext = context;
|
||||
mDataset = myDataset;
|
||||
mOnGroupSelected = onGroupSelected;
|
||||
mOnSingleSelectionChanged = onSingleSelectionChanged;
|
||||
}
|
||||
|
||||
public void updateItems(List<OrdineVenditaGroupedInevasoDTO> updatedDataset) {
|
||||
@ -108,39 +111,44 @@ public class MainListVenditaAdapter extends RecyclerView.Adapter<MainListVendita
|
||||
.inflate(R.layout.vendita_main_list_group_model, holder.mLinearLayoutGroupItemContainer, false);
|
||||
}
|
||||
|
||||
View groupModelView = groupModelViewPool;
|
||||
holder.views.add(groupModelView);
|
||||
View ordineView = groupModelViewPool;
|
||||
holder.views.add(ordineView);
|
||||
|
||||
|
||||
groupModelView.setVisibility(View.VISIBLE);
|
||||
ordineView.setVisibility(View.VISIBLE);
|
||||
|
||||
if (i % 2 == 1) {
|
||||
groupModelView.setBackgroundColor(mContext.getResources().getColor(R.color.letturaFacilitataBG));
|
||||
ordineView.setBackgroundColor(mContext.getResources().getColor(R.color.letturaFacilitataBG));
|
||||
} else {
|
||||
groupModelView.setBackgroundColor(mContext.getResources().getColor(R.color.white));
|
||||
ordineView.setBackgroundColor(mContext.getResources().getColor(R.color.white));
|
||||
}
|
||||
|
||||
final CheckBox checkBox = groupModelView.findViewById(R.id.vendita_main_list_group_item_container_checkBox);
|
||||
final CheckBox checkBox = ordineView.findViewById(R.id.vendita_main_list_group_item_container_checkBox);
|
||||
checkBox.setChecked(ordine.checkBox);
|
||||
|
||||
checkBox.setOnCheckedChangeListener((buttonView, isChecked) -> {
|
||||
ordine.checkBox = checkBox.isChecked();
|
||||
mOnSingleSelectionChanged.run(ordine);
|
||||
});
|
||||
|
||||
|
||||
ordine.checkBoxCallback.add(checkBox::setChecked);
|
||||
|
||||
groupModelView.setOnClickListener(view -> {
|
||||
ordineView.setOnClickListener(view -> {
|
||||
checkBox.toggle();
|
||||
ordine.checkBox = checkBox.isChecked();
|
||||
mOnGroupSelected.run(mDataset.get(finalPosition));
|
||||
// mCheckBoxCallback.onToggle(checkBox.isChecked());
|
||||
//ordine.checkBox = checkBox.isChecked();
|
||||
//mOnGroupSelected.run(mDataset.get(finalPosition));
|
||||
});
|
||||
|
||||
TextView testataOrdTextView = groupModelView.findViewById(R.id.vendita_main_list_group_item_container_testata_ord);
|
||||
TextView testataOrdTextView = ordineView.findViewById(R.id.vendita_main_list_group_item_container_testata_ord);
|
||||
String testataOrdString = String.format(mContext.getString(R.string.ord_ven_testata), String.valueOf(ordine.getNumero()), UtilityDate.formatDate(ordine.getData(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN));
|
||||
testataOrdTextView.setText(Html.fromHtml(testataOrdString));
|
||||
|
||||
TextView testataDataConsTextView = groupModelView.findViewById(R.id.vendita_main_list_group_item_container_testata_data_cons);
|
||||
TextView testataDataConsTextView = ordineView.findViewById(R.id.vendita_main_list_group_item_container_testata_data_cons);
|
||||
String testataDataConsString = String.format(mContext.getString(R.string.ord_ven_testata_data_cons), UtilityDate.formatDate(ordine.getDataConsD(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN));
|
||||
testataDataConsTextView.setText(Html.fromHtml(testataDataConsString));
|
||||
|
||||
LinearLayout clientLinearLayout = groupModelView.findViewById(R.id.vendita_main_list_group_item_container_clienti_ord);
|
||||
LinearLayout clientLinearLayout = ordineView.findViewById(R.id.vendita_main_list_group_item_container_clienti_ord);
|
||||
List<OrdineVenditaGroupedInevasoDTO.Cliente> subGroupClienti = ordine.clienti;
|
||||
|
||||
clientLinearLayout.removeAllViews();
|
||||
@ -172,7 +180,7 @@ public class MainListVenditaAdapter extends RecyclerView.Adapter<MainListVendita
|
||||
clientLinearLayout.addView(groupClienteModelView);
|
||||
}
|
||||
|
||||
holder.mLinearLayoutGroupItemContainer.addView(groupModelView);
|
||||
holder.mLinearLayoutGroupItemContainer.addView(ordineView);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -35,6 +35,8 @@ public class OrdineVenditaGroupedInevasoDTO implements Cloneable, Serializable,
|
||||
private String rifOrd;
|
||||
private String gestione;
|
||||
|
||||
private String codAnagClie;
|
||||
|
||||
public List<Cliente> clienti;
|
||||
|
||||
public boolean checkBox;
|
||||
@ -158,6 +160,15 @@ public class OrdineVenditaGroupedInevasoDTO implements Cloneable, Serializable,
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getCodAnagClie() {
|
||||
return codAnagClie;
|
||||
}
|
||||
|
||||
public Ordine setCodAnagClie(String codAnagClie) {
|
||||
this.codAnagClie = codAnagClie;
|
||||
return this;
|
||||
}
|
||||
|
||||
public List<Cliente> getClienti() {
|
||||
return clienti;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user