Merge branch 'develop' into feature/Refactoring_Spedizione
# Conflicts: # app/build.gradle
This commit is contained in:
commit
2e1d4d6325
@ -7,7 +7,7 @@ apply plugin: 'com.google.gms.google-services'
|
||||
|
||||
android {
|
||||
|
||||
def appVersionCode = 137
|
||||
def appVersionCode = 142
|
||||
def appVersionName = '1.13.0'
|
||||
|
||||
signingConfigs {
|
||||
|
||||
@ -13,17 +13,11 @@ public class CheckableOrdineLavoro {
|
||||
|
||||
private ChooseOrdsLavFromListItemModel item;
|
||||
private BindableBoolean checked = new BindableBoolean(false);
|
||||
private BindableBoolean hidden = new BindableBoolean(false);
|
||||
|
||||
private String testata;
|
||||
|
||||
public CheckableOrdineLavoro(ChooseOrdsLavFromListItemModel item) {
|
||||
this.item = item;
|
||||
this.item.getHidden().addOnPropertyChangedCallback(new Observable.OnPropertyChangedCallback() {
|
||||
@Override
|
||||
public void onPropertyChanged(Observable sender, int propertyId) {
|
||||
hidden.set(item.isHidden());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public ChooseOrdsLavFromListItemModel getItem() {
|
||||
@ -33,13 +27,6 @@ public class CheckableOrdineLavoro {
|
||||
public CheckableOrdineLavoro setItem(ChooseOrdsLavFromListItemModel item) {
|
||||
this.item = item;
|
||||
|
||||
this.item.getHidden().addOnPropertyChangedCallback(new Observable.OnPropertyChangedCallback() {
|
||||
@Override
|
||||
public void onPropertyChanged(Observable sender, int propertyId) {
|
||||
hidden.set(item.isHidden());
|
||||
}
|
||||
});
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
@ -52,19 +39,6 @@ public class CheckableOrdineLavoro {
|
||||
return this;
|
||||
}
|
||||
|
||||
public BindableBoolean getHidden() {
|
||||
return hidden;
|
||||
}
|
||||
|
||||
public boolean isHidden() {
|
||||
return hidden.get();
|
||||
}
|
||||
|
||||
public CheckableOrdineLavoro setHidden(BindableBoolean hidden) {
|
||||
this.hidden = hidden;
|
||||
return this;
|
||||
}
|
||||
|
||||
public BindableFloat getQtaCol() {
|
||||
return item.getOrdineLav().getQtaColVersamento();
|
||||
}
|
||||
|
||||
@ -1,6 +1,8 @@
|
||||
package it.integry.integrywmsnative.gest.prod_versamento_materiale.core;
|
||||
|
||||
import android.content.Context;
|
||||
import android.text.Html;
|
||||
import android.text.SpannableString;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.ViewGroup;
|
||||
|
||||
@ -16,6 +18,7 @@ import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
import it.integry.integrywmsnative.R;
|
||||
import it.integry.integrywmsnative.core.di.BindableBoolean;
|
||||
import it.integry.integrywmsnative.core.exception.DateNotRecognizedException;
|
||||
import it.integry.integrywmsnative.core.exception.TimeNotRecognizedException;
|
||||
import it.integry.integrywmsnative.core.model.CheckableOrdineLavoro;
|
||||
@ -28,6 +31,7 @@ import it.integry.integrywmsnative.core.utility.UtilityResources;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityString;
|
||||
import it.integry.integrywmsnative.databinding.FragmentChooseOrdsLavFromListItemModelBinding;
|
||||
import it.integry.integrywmsnative.gest.prod_versamento_materiale.dto.OrdineLavorazioneDTO;
|
||||
import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper;
|
||||
|
||||
public class ChooseOrdsLavFromListAdapter extends RecyclerView.Adapter<ChooseOrdsLavFromListAdapter.ViewHolder> {
|
||||
|
||||
@ -47,40 +51,18 @@ public class ChooseOrdsLavFromListAdapter extends RecyclerView.Adapter<ChooseOrd
|
||||
mDataset = Stream.of(myDataset)
|
||||
.withoutNulls()
|
||||
.map(CheckableOrdineLavoro::new).toList();
|
||||
|
||||
for (int i = 0; i < mDataset.size(); i++) {
|
||||
final CheckableOrdineLavoro itemModel = mDataset.get(i);
|
||||
OrdineLavorazioneDTO ordine = itemModel.getItem().getOrdineLav();
|
||||
itemModel.setTestata(UtilityString.formatHtmlStringFromResId(R.string.ord_testata, String.valueOf(ordine.getNumOrd()), UtilityDate.formatDate(ordine.getDateOrd(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN)).toString());
|
||||
mDatasetPositions.put(itemModel, i);
|
||||
|
||||
itemModel.getHidden().addOnPropertyChangedCallback(new Observable.OnPropertyChangedCallback() {
|
||||
@Override
|
||||
public void onPropertyChanged(Observable sender, int propertyId) {
|
||||
onItemHidden(itemModel);
|
||||
}
|
||||
});
|
||||
itemModel.getChecked().addOnPropertyChangedCallback(new Observable.OnPropertyChangedCallback() {
|
||||
@Override
|
||||
public void onPropertyChanged(Observable sender, int propertyId) {
|
||||
onItemChecked(itemModel);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void onItemHidden(CheckableOrdineLavoro itemModel) {
|
||||
if (itemModel.isHidden()) {
|
||||
mDataset.remove(itemModel);
|
||||
} else {
|
||||
mDataset.add(mDatasetPositions.get(itemModel), itemModel);
|
||||
}
|
||||
calculateMtbColtShare();
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
|
||||
private void onItemChecked(CheckableOrdineLavoro itemModel) {
|
||||
if (itemModel.isChecked() && itemModel.getItem().getOrdineLav().getHrNum() <= 0){
|
||||
DialogSimpleMessageHelper.makeWarningDialog(mContext,
|
||||
new SpannableString(Html.fromHtml("Nessuna risorsa umana registrata per l'ordine selezionato! <br> Per una corretta suddivisione delle quantità registra le risorse.")),
|
||||
null, () -> {
|
||||
itemModel.getChecked().set(false);
|
||||
}).show();
|
||||
return;
|
||||
}
|
||||
if (!itemModel.isChecked()) {
|
||||
itemModel.setQtaCol(0);
|
||||
itemModel.setNumCnf(0);
|
||||
@ -140,7 +122,7 @@ public class ChooseOrdsLavFromListAdapter extends RecyclerView.Adapter<ChooseOrd
|
||||
}
|
||||
}
|
||||
|
||||
public static class ViewHolder extends RecyclerView.ViewHolder {
|
||||
public class ViewHolder extends RecyclerView.ViewHolder {
|
||||
protected FragmentChooseOrdsLavFromListItemModelBinding mViewDataBinding;
|
||||
|
||||
|
||||
@ -149,10 +131,21 @@ public class ChooseOrdsLavFromListAdapter extends RecyclerView.Adapter<ChooseOrd
|
||||
mViewDataBinding = v;
|
||||
}
|
||||
|
||||
public void bind(CheckableOrdineLavoro checkableOrdineLavoro, MtbColr mtbColr) {
|
||||
public void bind(CheckableOrdineLavoro checkableOrdineLavoro, MtbColr mtbColr) throws ParseException, TimeNotRecognizedException, DateNotRecognizedException {
|
||||
mViewDataBinding.setCheckableOrdineLav(checkableOrdineLavoro);
|
||||
mViewDataBinding.setMtbColr(mtbColr);
|
||||
mViewDataBinding.executePendingBindings();
|
||||
|
||||
OrdineLavorazioneDTO ordine = checkableOrdineLavoro.getItem().getOrdineLav();
|
||||
|
||||
checkableOrdineLavoro.setTestata(UtilityString.formatHtmlStringFromResId(R.string.ord_testata, String.valueOf(ordine.getNumOrd()), UtilityDate.formatDate(ordine.getDateOrd(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN)).toString());
|
||||
|
||||
checkableOrdineLavoro.getChecked().resetOnPropertyChangedCallback();
|
||||
checkableOrdineLavoro.getChecked().addOnPropertyChangedCallback(new Observable.OnPropertyChangedCallback() {
|
||||
@Override
|
||||
public void onPropertyChanged(Observable sender, int propertyId) {
|
||||
onItemChecked(checkableOrdineLavoro);
|
||||
}
|
||||
});
|
||||
|
||||
if (!SettingsManager.iDB().isFlagForceAllToColli() && (mtbColr.getMtbAart() == null || mtbColr.getMtbAart().isFlagQtaCnfFissaBoolean())) {
|
||||
String text = UtilityNumber.decimalToString(checkableOrdineLavoro.getQtaCol().get());
|
||||
@ -166,7 +159,6 @@ public class ChooseOrdsLavFromListAdapter extends RecyclerView.Adapter<ChooseOrd
|
||||
mViewDataBinding.qtaTextview.setText(UtilityNumber.decimalToString(checkableOrdineLavoro.getNumCnf().get()) + "\n" + UtilityResources.getString(R.string.unt_mis_col));
|
||||
}
|
||||
|
||||
mViewDataBinding.setMtbColr(mtbColr);
|
||||
mViewDataBinding.executePendingBindings();
|
||||
}
|
||||
}
|
||||
@ -182,7 +174,15 @@ public class ChooseOrdsLavFromListAdapter extends RecyclerView.Adapter<ChooseOrd
|
||||
@Override
|
||||
public void onBindViewHolder(ChooseOrdsLavFromListAdapter.ViewHolder holder, int position) {
|
||||
CheckableOrdineLavoro item = mDataset.get(position);
|
||||
holder.bind(item, mMtbColr);
|
||||
try {
|
||||
holder.bind(item, mMtbColr);
|
||||
} catch (ParseException e) {
|
||||
e.printStackTrace();
|
||||
} catch (TimeNotRecognizedException e) {
|
||||
e.printStackTrace();
|
||||
} catch (DateNotRecognizedException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user