Sostituito fab in doc interni edit form con Material3
This commit is contained in:
@@ -40,7 +40,6 @@ public class DBSettingsModel {
|
||||
private boolean flagOrdinaArticoliOnScan;
|
||||
private boolean flagConsentiFuoriPianoLogistico;
|
||||
private boolean flagConsentiOrdineSenzaGriglia;
|
||||
private String docInterniCheckFornitore;
|
||||
private String produzioneDefaultCodAnag;
|
||||
private boolean flagPrintPackingListOnOrderClose;
|
||||
private boolean flagPrintEtichetteOnOrderClose;
|
||||
@@ -333,15 +332,6 @@ public class DBSettingsModel {
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getDocInterniCheckFornitore() {
|
||||
return docInterniCheckFornitore;
|
||||
}
|
||||
|
||||
public DBSettingsModel setDocInterniCheckFornitore(String docInterniCheckFornitore) {
|
||||
this.docInterniCheckFornitore = docInterniCheckFornitore;
|
||||
return this;
|
||||
}
|
||||
|
||||
public boolean isFlagAccettazioneUseQtaOrd() {
|
||||
return flagAccettazioneUseQtaOrd;
|
||||
}
|
||||
|
||||
@@ -340,11 +340,6 @@ public class SettingsManager {
|
||||
.setSection("ORDINI_A")
|
||||
.setKeySection("FLAG_CONSENTI_ORDINE_SENZA_GRIGLIA")
|
||||
.setSetter(dbSettingsModelIstance::setFlagConsentiOrdineSenzaGriglia));
|
||||
stbGestSetupReaderList.add(new StbGestSetupReader<>(String.class)
|
||||
.setGestName("PVM")
|
||||
.setSection("DOC_INTERNI")
|
||||
.setKeySection("CHECK_FORNITORE")
|
||||
.setSetter(dbSettingsModelIstance::setDocInterniCheckFornitore));
|
||||
stbGestSetupReaderList.add(new StbGestSetupReader<>(Boolean.class)
|
||||
.setGestName("PICKING")
|
||||
.setSection("ACCETTAZIONE")
|
||||
|
||||
@@ -3,9 +3,11 @@ package it.integry.integrywmsnative.gest.contab_doc_interni.edit_form;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.view.Gravity;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.appcompat.widget.PopupMenu;
|
||||
import androidx.databinding.DataBindingUtil;
|
||||
import androidx.databinding.ObservableArrayList;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
@@ -26,7 +28,6 @@ import it.integry.integrywmsnative.core.data_cache.DataCache;
|
||||
import it.integry.integrywmsnative.core.data_store.db.entity.SqlMtbColr;
|
||||
import it.integry.integrywmsnative.core.data_store.db.entity.SqlMtbColt;
|
||||
import it.integry.integrywmsnative.core.data_store.db.repository.MtbColrDataSource;
|
||||
import it.integry.integrywmsnative.core.di.BindableBoolean;
|
||||
import it.integry.integrywmsnative.core.di.BindableInteger;
|
||||
import it.integry.integrywmsnative.core.di.BindableString;
|
||||
import it.integry.integrywmsnative.core.expansion.BaseActivity;
|
||||
@@ -42,7 +43,6 @@ import it.integry.integrywmsnative.gest.contab_doc_interni.dto.TipoDocDTO;
|
||||
import it.integry.integrywmsnative.gest.contab_doc_interni.edit_form.dialog.selectDocRows.DialogSelectDocRowsItemListModel;
|
||||
import it.integry.integrywmsnative.gest.contab_doc_interni.edit_form.dialog.selectDocRows.DialogSelectDocRowsView;
|
||||
import it.integry.integrywmsnative.gest.contab_doc_interni.edit_form.ui.DocumentRowsListAdapter;
|
||||
import it.integry.integrywmsnative.ui.FabMenuCustomAnimations;
|
||||
import it.integry.integrywmsnative.view.bottom_sheet__mtb_colr_edit.BottomSheetMtbColrEditModalView;
|
||||
import it.integry.integrywmsnative.view.dialogs.DialogCommon;
|
||||
import it.integry.integrywmsnative.view.dialogs.available_items.DialogAvailableItemListModel;
|
||||
@@ -77,9 +77,11 @@ public class DocInterniEditFormActivity extends BaseActivity implements DocInter
|
||||
public BindableString codMgrp = new BindableString();
|
||||
public BindableString codAnag = new BindableString();
|
||||
public BindableInteger prodsCount = new BindableInteger(0);
|
||||
public BindableBoolean isDocumentExportable = new BindableBoolean(false);
|
||||
private final ObservableArrayList<SqlMtbColr> documentRowsObservableList = new ObservableArrayList<>();
|
||||
|
||||
|
||||
private PopupMenu fabPopupMenu;
|
||||
|
||||
public static Intent newInstance(Context context, SqlMtbColt document, List<DocumentoArtDTO> arts, TipoDocDTO tipoDoc, DocInterniSetupDTO mDocInterniSetupDTO) {
|
||||
Intent myIntent = new Intent(context, DocInterniEditFormActivity.class);
|
||||
|
||||
@@ -119,6 +121,7 @@ public class DocInterniEditFormActivity extends BaseActivity implements DocInter
|
||||
this.initView();
|
||||
this.initBindables();
|
||||
this.initRecyclerView();
|
||||
this.initFab();
|
||||
}
|
||||
|
||||
private void initBindables() {
|
||||
@@ -151,7 +154,8 @@ public class DocInterniEditFormActivity extends BaseActivity implements DocInter
|
||||
setSupportActionBar(binding.toolbar);
|
||||
binding.toolbar.setTitle(R.string.edit_doc);
|
||||
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
||||
FabMenuCustomAnimations.changeIconOnFocus(binding.closeActivityFab, R.drawable.ic_menu_24dp, R.drawable.ic_close_24dp);
|
||||
|
||||
// FabMenuCustomAnimations.changeIconOnFocus(binding.closeActivityFab, R.drawable.ic_menu_24dp, R.drawable.ic_close_24dp);
|
||||
|
||||
}
|
||||
|
||||
@@ -162,6 +166,7 @@ public class DocInterniEditFormActivity extends BaseActivity implements DocInter
|
||||
|
||||
private void initRecyclerView() {
|
||||
this.viewModel.docRows.observe(this, this::refreshList);
|
||||
|
||||
DocumentRowsListAdapter listAdapter = new DocumentRowsListAdapter(this, documentRowsObservableList);
|
||||
listAdapter.setEmptyView(binding.scanArtSpinner);
|
||||
binding.documentRowsList.setAdapter(listAdapter);
|
||||
@@ -173,11 +178,58 @@ public class DocInterniEditFormActivity extends BaseActivity implements DocInter
|
||||
});
|
||||
}
|
||||
|
||||
private void initFab() {
|
||||
fabPopupMenu = new PopupMenu(this, this.binding.mainFab,
|
||||
(Gravity.END | Gravity.BOTTOM),
|
||||
androidx.appcompat.R.attr.popupMenuStyle,
|
||||
com.google.android.material.R.style.Widget_Material3_PopupMenu_ContextMenu);
|
||||
|
||||
fabPopupMenu.setForceShowIcon(true);
|
||||
fabPopupMenu.getMenuInflater().inflate(R.menu.doc_interni_edit_fab_menu, fabPopupMenu.getMenu());
|
||||
|
||||
|
||||
fabPopupMenu.setOnMenuItemClickListener(item -> {
|
||||
int itemId = item.getItemId();
|
||||
|
||||
if (itemId == R.id.export_document) {
|
||||
viewModel.exportDocument();
|
||||
} else if (itemId == R.id.delete_document) {
|
||||
viewModel.deleteDocument();
|
||||
} else if (itemId == R.id.hold_document) {
|
||||
viewModel.holdDocument();
|
||||
}
|
||||
|
||||
return false;
|
||||
});
|
||||
|
||||
refreshFabMenu();
|
||||
}
|
||||
|
||||
private void refreshFabMenu() {
|
||||
fabPopupMenu.getMenu()
|
||||
.findItem(R.id.export_document)
|
||||
.setVisible(isDocumentExportable());
|
||||
}
|
||||
|
||||
public void showFabMenu() {
|
||||
fabPopupMenu.show();
|
||||
}
|
||||
|
||||
public void closeFabMenu() {
|
||||
fabPopupMenu.dismiss();
|
||||
}
|
||||
|
||||
private void refreshList(List<SqlMtbColr> sqlMtbColrs) {
|
||||
this.documentRowsObservableList.clear();
|
||||
this.documentRowsObservableList.addAll(this.viewModel.docRows.getValue());
|
||||
|
||||
this.prodsCount.set(this.viewModel.docRows.getValue().size());
|
||||
this.refreshFabMenu();
|
||||
}
|
||||
|
||||
private boolean isDocumentExportable() {
|
||||
return prodsCount.get() > 0;
|
||||
}
|
||||
|
||||
public void closeEdit() {
|
||||
this.onBackPressed();
|
||||
@@ -230,7 +282,6 @@ public class DocInterniEditFormActivity extends BaseActivity implements DocInter
|
||||
@Override
|
||||
public void onRowsChanged(List<SqlMtbColr> rows) {
|
||||
this.prodsCount.set(rows.size());
|
||||
this.isDocumentExportable.set(rows.size() > 0);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -283,7 +334,8 @@ public class DocInterniEditFormActivity extends BaseActivity implements DocInter
|
||||
this.onLoadingStarted();
|
||||
this.viewModel.saveRow(row, resultDTO);
|
||||
})
|
||||
.setOnAbort(() -> {})
|
||||
.setOnAbort(() -> {
|
||||
})
|
||||
.show(getSupportFragmentManager(), "tag");
|
||||
}
|
||||
|
||||
@@ -294,7 +346,7 @@ public class DocInterniEditFormActivity extends BaseActivity implements DocInter
|
||||
|
||||
@Override
|
||||
public void onDocDeleted() {
|
||||
this.binding.closeActivityFab.close(true);
|
||||
this.closeFabMenu();
|
||||
this.closeEdit();
|
||||
}
|
||||
|
||||
@@ -338,7 +390,8 @@ public class DocInterniEditFormActivity extends BaseActivity implements DocInter
|
||||
|
||||
DialogSelectDocRowsView.newInstance(dataset, data -> {
|
||||
this.viewModel.dispatchRowEdit((SqlMtbColr) data.getOriginalModel(), articolo.isFlagTracciabilita(), articolo.isUntMisDigitale());
|
||||
}, () -> {})
|
||||
}, () -> {
|
||||
})
|
||||
.show(this.getSupportFragmentManager(), "dialogSelectDocRowsNew");
|
||||
}
|
||||
|
||||
|
||||
@@ -4,9 +4,6 @@ import androidx.lifecycle.MutableLiveData;
|
||||
|
||||
import com.annimon.stream.Stream;
|
||||
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -25,7 +22,6 @@ import it.integry.integrywmsnative.core.interfaces.viewmodel_listeners.ILoadingL
|
||||
import it.integry.integrywmsnative.core.rest.model.Ean128Model;
|
||||
import it.integry.integrywmsnative.core.rest.model.Ean13PesoModel;
|
||||
import it.integry.integrywmsnative.core.rest.model.documento.DocumentoArtDTO;
|
||||
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityBarcode;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityDate;
|
||||
import it.integry.integrywmsnative.gest.contab_doc_interni.dto.ArtDTO;
|
||||
@@ -48,7 +44,6 @@ public class DocInterniEditFormViewModel {
|
||||
private TipoDocDTO tipoDoc;
|
||||
|
||||
private boolean isCheckPartitaMag = false;
|
||||
private JSONObject checkFornitoreRules = null;
|
||||
|
||||
|
||||
public MutableLiveData<SqlMtbColt> document = new MutableLiveData<>();
|
||||
@@ -64,12 +59,6 @@ public class DocInterniEditFormViewModel {
|
||||
}
|
||||
|
||||
public void init() {
|
||||
try {
|
||||
var docInterniCheckFornitore = SettingsManager.iDB().getDocInterniCheckFornitore();
|
||||
this.checkFornitoreRules = docInterniCheckFornitore != null ? new JSONObject(docInterniCheckFornitore) : null;
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user