Aggiunta ricerca barcode articolo con conversione da 8 a 13 caratteri

This commit is contained in:
Valerio Castellana 2022-02-14 15:44:50 +01:00
parent 47f29899a2
commit 692a350128

View File

@ -4,6 +4,8 @@ import androidx.lifecycle.MutableLiveData;
import com.annimon.stream.Stream;
import org.apache.commons.lang3.StringUtils;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
@ -68,8 +70,8 @@ public class DocInterniEditFormViewModel {
}
public void editRow(SqlMtbColr row,boolean flagTracciabilita) {
this.listener.onEditRowRequest(row,flagTracciabilita);
public void editRow(SqlMtbColr row, boolean flagTracciabilita) {
this.listener.onEditRowRequest(row, flagTracciabilita);
}
private Integer getNextIdRiga() {
@ -91,7 +93,8 @@ public class DocInterniEditFormViewModel {
}, this::sendError);
}, this::sendError);
}
public void deleteDocument() {
public void deleteDocument() {
this.sendOnLoadingStarted();
docInterniRESTConsumer.saveDoc(this.getSaveDto(), obj -> {
SqlMtbColt document = this.getDocument();
@ -117,7 +120,7 @@ public void deleteDocument() {
}
SqlMtbColr row = this.getRowForArticolo(articolo);
this.sendOnLoadingEnded();
this.editRow(row,articolo.getFlagTracciabilita().equalsIgnoreCase("S"));
this.editRow(row, articolo.getFlagTracciabilita().equalsIgnoreCase("S"));
}
@ -148,7 +151,12 @@ public void deleteDocument() {
}
private GrigliaAcquistiChildDTO searchArticolo(String filter) {
return Stream.of(this.productsList).filter(dto -> filter.equalsIgnoreCase(dto.getCodMart()) || filter.equalsIgnoreCase(dto.getBarcode())).findFirstOrElse(null);
return Stream.of(this.productsList).filter(dto ->
filter.equalsIgnoreCase(dto.getCodMart())
|| filter.equalsIgnoreCase(dto.getBarcode())
|| StringUtils.leftPad(filter, 13, '0').equalsIgnoreCase(dto.getCodMart())
|| StringUtils.leftPad(filter, 13, '0').equalsIgnoreCase(dto.getBarcode())
).findFirstOrElse(null);
}
private SaveDTO getSaveDto() {
@ -251,7 +259,7 @@ public void deleteDocument() {
}
public GrigliaAcquistiChildDTO getArticoloByCodMart(String codMart) {
return Stream.of(productsList).filter(prod->prod.codMart.equalsIgnoreCase(codMart)).findFirstOrElse(null);
return Stream.of(productsList).filter(prod -> prod.codMart.equalsIgnoreCase(codMart)).findFirstOrElse(null);
}
public interface Listener extends ILoadingListener {
@ -260,7 +268,7 @@ public void deleteDocument() {
void onRowsChanged(List<SqlMtbColr> rows);
void onEditRowRequest(SqlMtbColr row,boolean flagTracciabilita);
void onEditRowRequest(SqlMtbColr row, boolean flagTracciabilita);
void onDocumentHoldRequest();