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 {
|
android {
|
||||||
|
|
||||||
def appVersionCode = 19
|
def appVersionCode = 20
|
||||||
def appVersionName = '1.0.16'
|
def appVersionName = '1.0.17'
|
||||||
|
|
||||||
signingConfigs {
|
signingConfigs {
|
||||||
release {
|
release {
|
||||||
|
|||||||
@ -210,6 +210,7 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IR
|
|||||||
.setData(ord.getDataOrdS())
|
.setData(ord.getDataOrdS())
|
||||||
.setNumero(ord.getNumOrd())
|
.setNumero(ord.getNumOrd())
|
||||||
.setCodAnagOrd(ord.getCodAnagOrd())
|
.setCodAnagOrd(ord.getCodAnagOrd())
|
||||||
|
.setCodAnagClie(groupedOrdine.codAnagClie)
|
||||||
.setRagSocOrd(ord.getRagSocOrd())
|
.setRagSocOrd(ord.getRagSocOrd())
|
||||||
.setPesoTotale(ord.getPesoTotale() != null ? ord.getPesoTotale().floatValue() : null)
|
.setPesoTotale(ord.getPesoTotale() != null ? ord.getPesoTotale().floatValue() : null)
|
||||||
.setBarcode(ord.getBarcode())
|
.setBarcode(ord.getBarcode())
|
||||||
@ -256,7 +257,7 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IR
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void initRecyclerView() {
|
private void initRecyclerView() {
|
||||||
mAdapter = new MainListVenditaAdapter(getActivity(), groupedOrdiniInevasi, onGroupSelectionChanged);
|
mAdapter = new MainListVenditaAdapter(getActivity(), groupedOrdiniInevasi, onGroupSelectionChanged, onSingleSelectionChanged);
|
||||||
mBinding.venditaMainList.setAdapter(mAdapter);
|
mBinding.venditaMainList.setAdapter(mAdapter);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -264,6 +265,28 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IR
|
|||||||
mAdapter.updateItems(groupedOrdiniInevasi);
|
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 -> {
|
RunnableArgs<OrdineVenditaGroupedInevasoDTO> onGroupSelectionChanged = dto -> {
|
||||||
List<OrdineVenditaGroupedInevasoDTO> selectedOrders = mHelper.getSelectedOrders(groupedOrdiniInevasi);
|
List<OrdineVenditaGroupedInevasoDTO> selectedOrders = mHelper.getSelectedOrders(groupedOrdiniInevasi);
|
||||||
|
|
||||||
|
|||||||
@ -8,6 +8,7 @@ import android.view.LayoutInflater;
|
|||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.widget.CheckBox;
|
import android.widget.CheckBox;
|
||||||
|
import android.widget.CompoundButton;
|
||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
@ -24,6 +25,7 @@ public class MainListVenditaAdapter extends RecyclerView.Adapter<MainListVendita
|
|||||||
private Context mContext;
|
private Context mContext;
|
||||||
private List<OrdineVenditaGroupedInevasoDTO> mDataset;
|
private List<OrdineVenditaGroupedInevasoDTO> mDataset;
|
||||||
private RunnableArgs<OrdineVenditaGroupedInevasoDTO> mOnGroupSelected;
|
private RunnableArgs<OrdineVenditaGroupedInevasoDTO> mOnGroupSelected;
|
||||||
|
private RunnableArgs<OrdineVenditaGroupedInevasoDTO.Ordine> mOnSingleSelectionChanged;
|
||||||
|
|
||||||
private Pools.SynchronizedPool sPool = new Pools.SynchronizedPool(2000);
|
private Pools.SynchronizedPool sPool = new Pools.SynchronizedPool(2000);
|
||||||
private Pools.SynchronizedPool sPoolClienti = new Pools.SynchronizedPool(3000);
|
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)
|
// 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;
|
mContext = context;
|
||||||
mDataset = myDataset;
|
mDataset = myDataset;
|
||||||
mOnGroupSelected = onGroupSelected;
|
mOnGroupSelected = onGroupSelected;
|
||||||
|
mOnSingleSelectionChanged = onSingleSelectionChanged;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void updateItems(List<OrdineVenditaGroupedInevasoDTO> updatedDataset) {
|
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);
|
.inflate(R.layout.vendita_main_list_group_model, holder.mLinearLayoutGroupItemContainer, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
View groupModelView = groupModelViewPool;
|
View ordineView = groupModelViewPool;
|
||||||
holder.views.add(groupModelView);
|
holder.views.add(ordineView);
|
||||||
|
|
||||||
|
|
||||||
groupModelView.setVisibility(View.VISIBLE);
|
ordineView.setVisibility(View.VISIBLE);
|
||||||
|
|
||||||
if (i % 2 == 1) {
|
if (i % 2 == 1) {
|
||||||
groupModelView.setBackgroundColor(mContext.getResources().getColor(R.color.letturaFacilitataBG));
|
ordineView.setBackgroundColor(mContext.getResources().getColor(R.color.letturaFacilitataBG));
|
||||||
} else {
|
} 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.setChecked(ordine.checkBox);
|
||||||
|
|
||||||
|
checkBox.setOnCheckedChangeListener((buttonView, isChecked) -> {
|
||||||
|
ordine.checkBox = checkBox.isChecked();
|
||||||
|
mOnSingleSelectionChanged.run(ordine);
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
ordine.checkBoxCallback.add(checkBox::setChecked);
|
ordine.checkBoxCallback.add(checkBox::setChecked);
|
||||||
|
|
||||||
groupModelView.setOnClickListener(view -> {
|
ordineView.setOnClickListener(view -> {
|
||||||
checkBox.toggle();
|
checkBox.toggle();
|
||||||
ordine.checkBox = checkBox.isChecked();
|
//ordine.checkBox = checkBox.isChecked();
|
||||||
mOnGroupSelected.run(mDataset.get(finalPosition));
|
//mOnGroupSelected.run(mDataset.get(finalPosition));
|
||||||
// mCheckBoxCallback.onToggle(checkBox.isChecked());
|
|
||||||
});
|
});
|
||||||
|
|
||||||
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));
|
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));
|
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));
|
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));
|
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;
|
List<OrdineVenditaGroupedInevasoDTO.Cliente> subGroupClienti = ordine.clienti;
|
||||||
|
|
||||||
clientLinearLayout.removeAllViews();
|
clientLinearLayout.removeAllViews();
|
||||||
@ -172,7 +180,7 @@ public class MainListVenditaAdapter extends RecyclerView.Adapter<MainListVendita
|
|||||||
clientLinearLayout.addView(groupClienteModelView);
|
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 rifOrd;
|
||||||
private String gestione;
|
private String gestione;
|
||||||
|
|
||||||
|
private String codAnagClie;
|
||||||
|
|
||||||
public List<Cliente> clienti;
|
public List<Cliente> clienti;
|
||||||
|
|
||||||
public boolean checkBox;
|
public boolean checkBox;
|
||||||
@ -158,6 +160,15 @@ public class OrdineVenditaGroupedInevasoDTO implements Cloneable, Serializable,
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getCodAnagClie() {
|
||||||
|
return codAnagClie;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Ordine setCodAnagClie(String codAnagClie) {
|
||||||
|
this.codAnagClie = codAnagClie;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
public List<Cliente> getClienti() {
|
public List<Cliente> getClienti() {
|
||||||
return clienti;
|
return clienti;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user