diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml
new file mode 100644
index 00000000..0c0c3383
--- /dev/null
+++ b/.idea/deploymentTargetDropDown.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/migrations.xml b/.idea/migrations.xml
new file mode 100644
index 00000000..f8051a6f
--- /dev/null
+++ b/.idea/migrations.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index f92c2109..86dfa2ba 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -10,8 +10,8 @@ apply plugin: 'com.google.gms.google-services'
android {
- def appVersionCode = 387
- def appVersionName = '1.34.03'
+ def appVersionCode = 388
+ def appVersionName = '1.34.04'
signingConfigs {
release {
diff --git a/app/src/main/java/it/integry/integrywmsnative/core/model/MtbAartWithFornitore.java b/app/src/main/java/it/integry/integrywmsnative/core/model/MtbAartWithFornitore.java
deleted file mode 100644
index e6b06b50..00000000
--- a/app/src/main/java/it/integry/integrywmsnative/core/model/MtbAartWithFornitore.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package it.integry.integrywmsnative.core.model;
-
-public class MtbAartWithFornitore extends MtbAart {
-
- private String codArtFor;
-
- public String getCodArtFor() {
- return codArtFor;
- }
-
- public MtbAartWithFornitore setCodArtFor(String codArtFor) {
- this.codArtFor = codArtFor;
- return this;
- }
-}
diff --git a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ArticoloRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ArticoloRESTConsumer.java
index 040b0f2d..26a6e35c 100644
--- a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ArticoloRESTConsumer.java
+++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ArticoloRESTConsumer.java
@@ -1,6 +1,5 @@
package it.integry.integrywmsnative.core.rest.consumers;
-import com.annimon.stream.Collectors;
import com.annimon.stream.Stream;
import com.google.gson.reflect.TypeToken;
@@ -19,6 +18,7 @@ import it.integry.integrywmsnative.core.model.MtbUntMis;
import it.integry.integrywmsnative.core.model.dto.StatoArticoloDTO;
import it.integry.integrywmsnative.core.rest.RESTBuilder;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
+import it.integry.integrywmsnative.core.rest.model.articolo.RetrieveArticoloByCodMartRequestDTO;
import it.integry.integrywmsnative.core.utility.UtilityQuery;
import retrofit2.Call;
import retrofit2.Callback;
@@ -59,26 +59,28 @@ public class ArticoloRESTConsumer extends _BaseRESTConsumer {
public static void getByCodMartsStatic(List codMartToFind, RunnableArgs> onComplete, RunnableArgs onFailed) {
- String joinedCods = Stream.of(codMartToFind)
+ var codMarts = Stream.of(codMartToFind)
.withoutNulls()
- .distinct()
- .collect(Collectors.joining(","));
+ .distinct().toList();
ArticoloRESTConsumerService articoloRESTConsumer = RESTBuilder.getService(ArticoloRESTConsumerService.class);
- articoloRESTConsumer.getByCodMart(joinedCods).enqueue(new Callback<>() {
- @Override
- public void onResponse(Call> call, Response> response) {
- analyzeAnswer(response, "getByCodMart", (m) -> {
- onComplete.run(response.body().getEntityList());
- }, onFailed);
- }
+ articoloRESTConsumer
+ .getByCodMart(new RetrieveArticoloByCodMartRequestDTO()
+ .setCodMarts(codMarts))
+ .enqueue(new Callback<>() {
+ @Override
+ public void onResponse(Call> call, Response> response) {
+ analyzeAnswer(response, "getByCodMart", (m) -> {
+ onComplete.run(response.body().getEntityList());
+ }, onFailed);
+ }
- @Override
- public void onFailure(Call> call, Throwable t) {
- onFailed.run(new Exception(t));
- }
- });
+ @Override
+ public void onFailure(Call> call, Throwable t) {
+ onFailed.run(new Exception(t));
+ }
+ });
}
@@ -103,22 +105,25 @@ public class ArticoloRESTConsumer extends _BaseRESTConsumer {
public void getByCodMart(String codMartToFind, RunnableArgs onComplete, RunnableArgs onFailed) {
ArticoloRESTConsumerService articoloRESTConsumer = RESTBuilder.getService(ArticoloRESTConsumerService.class);
- articoloRESTConsumer.getByCodMart(codMartToFind).enqueue(new Callback<>() {
- @Override
- public void onResponse(Call> call, Response> response) {
- analyzeAnswer(response, "getByCodMart", (m) -> {
- if (response.body().getEntityList() != null && !response.body().getEntityList().isEmpty()) {
- onComplete.run(response.body().getEntityList().get(0));
- } else onComplete.run(null);
+ articoloRESTConsumer.getByCodMart(
+ new RetrieveArticoloByCodMartRequestDTO()
+ .setCodMarts(Collections.singletonList(codMartToFind)))
+ .enqueue(new Callback<>() {
+ @Override
+ public void onResponse(Call> call, Response> response) {
+ analyzeAnswer(response, "getByCodMart", (m) -> {
+ if (response.body().getEntityList() != null && !response.body().getEntityList().isEmpty()) {
+ onComplete.run(response.body().getEntityList().get(0));
+ } else onComplete.run(null);
- }, onFailed);
- }
+ }, onFailed);
+ }
- @Override
- public void onFailure(Call> call, Throwable t) {
- onFailed.run(new Exception(t));
- }
- });
+ @Override
+ public void onFailure(Call> call, Throwable t) {
+ onFailed.run(new Exception(t));
+ }
+ });
}
diff --git a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ArticoloRESTConsumerService.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ArticoloRESTConsumerService.java
index 687dbdf7..61cca9b4 100644
--- a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ArticoloRESTConsumerService.java
+++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ArticoloRESTConsumerService.java
@@ -5,7 +5,9 @@ import java.util.List;
import it.integry.integrywmsnative.core.model.MtbAart;
import it.integry.integrywmsnative.core.model.dto.StatoArticoloDTO;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
+import it.integry.integrywmsnative.core.rest.model.articolo.RetrieveArticoloByCodMartRequestDTO;
import retrofit2.Call;
+import retrofit2.http.Body;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Query;
@@ -16,8 +18,8 @@ public interface ArticoloRESTConsumerService {
@POST("SM2getArticoloByBarcode")
Call> getByBarcodeProd(@Query("barcode") String barcodeProd);
- @GET("SM2getArticoloByCodMart")
- Call> getByCodMart(@Query("codMart") String barcodeProd);
+ @POST("wms/articolo/retrieveByCodMart")
+ Call> getByCodMart(@Body RetrieveArticoloByCodMartRequestDTO retrieveArticoloByCodMartRequest);
@GET("getProductLotStatus")
Call>> getStatoPartita(@Query("codMart") String codMart, @Query("partitaMag") String partitaMag);
diff --git a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ColliMagazzinoRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ColliMagazzinoRESTConsumer.java
index aaf83cdf..de65aede 100644
--- a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ColliMagazzinoRESTConsumer.java
+++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ColliMagazzinoRESTConsumer.java
@@ -58,7 +58,9 @@ public class ColliMagazzinoRESTConsumer extends _BaseRESTConsumer {
public void saveCollo(MtbColt mtbColtToSave, RunnableArgs onComplete, RunnableArgs onFailed) {
MtbColt mtbColtToSaveClone = (MtbColt) mtbColtToSave.clone();
- mtbColtToSave.setOperation(CommonModelConsts.OPERATION.INSERT_OR_UPDATE);
+ mtbColtToSaveClone.setOperation(CommonModelConsts.OPERATION.INSERT_OR_UPDATE);
+ mtbColtToSaveClone.setOnlyPkMaster(false);
+
mtbColtToSaveClone.setMtbColr(new ObservableArrayList<>());
diff --git a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/InventarioRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/InventarioRESTConsumer.java
index 796f1d6f..10fb6f71 100644
--- a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/InventarioRESTConsumer.java
+++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/InventarioRESTConsumer.java
@@ -70,7 +70,7 @@ public class InventarioRESTConsumer extends _BaseRESTConsumer {
var request = new InsertInventarioRequestDTO()
.setMtbInvent(inventarioToInsert);
- var inventarioRESTConsumerService = RESTBuilder.getService(InventarioRESTConsumerService.class, 120);
+ var inventarioRESTConsumerService = RESTBuilder.getService(InventarioRESTConsumerService.class, 300);
inventarioRESTConsumerService
.insert(inventarioToInsert.getIdInventario(), request)
.enqueue(new Callback<>() {
diff --git a/app/src/main/java/it/integry/integrywmsnative/core/rest/model/articolo/RetrieveArticoloByCodMartRequestDTO.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/articolo/RetrieveArticoloByCodMartRequestDTO.java
new file mode 100644
index 00000000..8a7f93c2
--- /dev/null
+++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/articolo/RetrieveArticoloByCodMartRequestDTO.java
@@ -0,0 +1,17 @@
+package it.integry.integrywmsnative.core.rest.model.articolo;
+
+import java.util.List;
+
+public class RetrieveArticoloByCodMartRequestDTO {
+
+ private List codMarts;
+
+ public List getCodMarts() {
+ return codMarts;
+ }
+
+ public RetrieveArticoloByCodMartRequestDTO setCodMarts(List codMarts) {
+ this.codMarts = codMarts;
+ return this;
+ }
+}
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_picking/AccettazionePickingActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_picking/AccettazionePickingActivity.java
index b7509dec..b758172f 100644
--- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_picking/AccettazionePickingActivity.java
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_picking/AccettazionePickingActivity.java
@@ -178,7 +178,7 @@ public class AccettazionePickingActivity extends BaseActivity implements Accetta
v -> initBottomSheetDialogFilter(filterChipDTO));
switch (filterChipDTO.getID()) {
- case AccettazionePickingBindings.COD_ART_FILTER_ID:
+ case AccettazionePickingBindings.COD_ART_FILTER_ID -> {
mAppliedFilterViewModel.getCurrentCodArtPredicate().addOnPropertyChangedCallback(new OnGeneralChangedCallback() {
@Override
public void run() {
@@ -199,8 +199,8 @@ public class AccettazionePickingActivity extends BaseActivity implements Accetta
}
});
filterChipView.setOnResetClicked(() -> mAppliedFilterViewModel.getCurrentCodArtPredicate().set(null));
- break;
- case AccettazionePickingBindings.DESCR_FILTER_ID:
+ }
+ case AccettazionePickingBindings.DESCR_FILTER_ID -> {
mAppliedFilterViewModel.getCurrentDescrPredicate().addOnPropertyChangedCallback(new OnGeneralChangedCallback() {
@Override
public void run() {
@@ -221,8 +221,8 @@ public class AccettazionePickingActivity extends BaseActivity implements Accetta
}
});
filterChipView.setOnResetClicked(() -> mAppliedFilterViewModel.getCurrentDescrPredicate().set(null));
- break;
- case AccettazionePickingBindings.POS_FILTER_ID:
+ }
+ case AccettazionePickingBindings.POS_FILTER_ID -> {
mAppliedFilterViewModel.getCurrentPosPredicate().addOnPropertyChangedCallback(new OnGeneralChangedCallback() {
@Override
public void run() {
@@ -243,7 +243,7 @@ public class AccettazionePickingActivity extends BaseActivity implements Accetta
}
});
filterChipView.setOnResetClicked(() -> mAppliedFilterViewModel.getCurrentPosPredicate().set(null));
- break;
+ }
}
this.mBindings.filterChipsGroup.addView(filterChipView);
@@ -262,43 +262,39 @@ public class AccettazionePickingActivity extends BaseActivity implements Accetta
.getFilterLayoutView();
switch (filterChipDTO.getID()) {
- case AccettazionePickingBindings.COD_ART_FILTER_ID:
- ((FilterCodArtLayoutView) filterLayoutView)
- .setAll(mAppliedFilterViewModel.getAllCodArts())
- .setAvailable(mAppliedFilterViewModel.getAvailableCodArts())
- .setOnFilterApplied(mAppliedFilterViewModel::setCodArtFilter)
- .setPreselected(Stream.of(Objects.requireNonNull(mViewModel.getPickingList().getValue()))
- .filter(mAppliedFilterViewModel.getCurrentCodArtPredicate().get() == null ?
- x -> false :
- mAppliedFilterViewModel.getCurrentCodArtPredicate().get())
- .map(x -> x.getSitArtOrdDTO().getCodMart())
- .toList());
- break;
- case AccettazionePickingBindings.DESCR_FILTER_ID:
- ((FilterDescrLayoutView) filterLayoutView)
- .setAll(mAppliedFilterViewModel.getAllDescrs())
- .setAvailable(mAppliedFilterViewModel.getAvailableDescrs())
- .setOnFilterApplied(mAppliedFilterViewModel::setDescrFilter)
- .setPreselected(Stream.of(Objects.requireNonNull(mViewModel.getPickingList().getValue()))
- .filter(mAppliedFilterViewModel.getCurrentDescrPredicate().get() == null ?
- x -> false :
- mAppliedFilterViewModel.getCurrentDescrPredicate().get())
- .map(x -> x.getSitArtOrdDTO().getDescrizioneEstesaArt())
- .toList());
- break;
- case AccettazionePickingBindings.POS_FILTER_ID:
- ((FilterPosizioneLayoutView) filterLayoutView)
- .setAll(mAppliedFilterViewModel.getAllPos())
- .setAvailable(mAppliedFilterViewModel.getAvailablePos())
- .setOnFilterApplied(mAppliedFilterViewModel::setPosFilter)
- .setPreselected(Stream.of(Objects.requireNonNull(mViewModel.getPickingList().getValue()))
- .filter(mAppliedFilterViewModel.getCurrentPosPredicate().get() == null ?
- x -> false :
- mAppliedFilterViewModel.getCurrentPosPredicate().get())
- .map(x -> x.getMtbAart().getPosizione())
- .toList());
- break;
-
+ case AccettazionePickingBindings.COD_ART_FILTER_ID ->
+ ((FilterCodArtLayoutView) filterLayoutView)
+ .setAll(mAppliedFilterViewModel.getAllCodArts())
+ .setAvailable(mAppliedFilterViewModel.getAvailableCodArts())
+ .setOnFilterApplied(mAppliedFilterViewModel::setCodArtFilter)
+ .setPreselected(Stream.of(Objects.requireNonNull(mViewModel.getPickingList().getValue()))
+ .filter(mAppliedFilterViewModel.getCurrentCodArtPredicate().get() == null ?
+ x -> false :
+ mAppliedFilterViewModel.getCurrentCodArtPredicate().get())
+ .map(x -> x.getSitArtOrdDTO().getCodMart())
+ .toList());
+ case AccettazionePickingBindings.DESCR_FILTER_ID ->
+ ((FilterDescrLayoutView) filterLayoutView)
+ .setAll(mAppliedFilterViewModel.getAllDescrs())
+ .setAvailable(mAppliedFilterViewModel.getAvailableDescrs())
+ .setOnFilterApplied(mAppliedFilterViewModel::setDescrFilter)
+ .setPreselected(Stream.of(Objects.requireNonNull(mViewModel.getPickingList().getValue()))
+ .filter(mAppliedFilterViewModel.getCurrentDescrPredicate().get() == null ?
+ x -> false :
+ mAppliedFilterViewModel.getCurrentDescrPredicate().get())
+ .map(x -> x.getSitArtOrdDTO().getDescrizioneEstesaArt())
+ .toList());
+ case AccettazionePickingBindings.POS_FILTER_ID ->
+ ((FilterPosizioneLayoutView) filterLayoutView)
+ .setAll(mAppliedFilterViewModel.getAllPos())
+ .setAvailable(mAppliedFilterViewModel.getAvailablePos())
+ .setOnFilterApplied(mAppliedFilterViewModel::setPosFilter)
+ .setPreselected(Stream.of(Objects.requireNonNull(mViewModel.getPickingList().getValue()))
+ .filter(mAppliedFilterViewModel.getCurrentPosPredicate().get() == null ?
+ x -> false :
+ mAppliedFilterViewModel.getCurrentPosPredicate().get())
+ .map(x -> x.getMtbAart().getPosizione())
+ .toList());
}
if (!filterLayoutView.isAdded())
@@ -373,9 +369,6 @@ public class AccettazionePickingActivity extends BaseActivity implements Accetta
}
private void refreshList() {
- //this.onLoadingStarted();
-
- //new Thread(() -> {
runOnUiThread(() -> {
List tmpList;
@@ -393,7 +386,6 @@ public class AccettazionePickingActivity extends BaseActivity implements Accetta
this.mAccettazioneMutableData.addAll(list);
this.noItemsToPick.set(!isThereAnyItemToPick(tmpList));
- //this.onLoadingEnded();
});
}
@@ -402,21 +394,11 @@ public class AccettazionePickingActivity extends BaseActivity implements Accetta
.filter(x -> !x.isHidden() && UtilityBigDecimal.greaterThan(x.getSitArtOrdDTO().getQtaDaEvadere(), BigDecimal.ZERO))
.toList();
- List sortedList = null;
-
- switch (mCurrentOrderBy) {
- case COD_ART_FOR:
- sortedList = convertDataModelToListModel__CodArtForn(tmpList);
- break;
- case DESCR_ART:
- sortedList = convertDataModelToListModel__DescrArt(tmpList);
- break;
- case RAG_SOC_COM:
- sortedList = convertDataModelToListModel__RagSocCom(tmpList);
- break;
- }
-
- return sortedList;
+ return switch (mCurrentOrderBy) {
+ case COD_ART_FOR -> convertDataModelToListModel__CodArtForn(tmpList);
+ case DESCR_ART -> convertDataModelToListModel__DescrArt(tmpList);
+ case RAG_SOC_COM -> convertDataModelToListModel__RagSocCom(tmpList);
+ };
}
private List convertDataModelToListModel__CodArtForn(List dataList) {
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_rientro_merce/ProdRientroMerceViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_rientro_merce/ProdRientroMerceViewModel.java
index 57df812f..cd1ba4f9 100644
--- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_rientro_merce/ProdRientroMerceViewModel.java
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_rientro_merce/ProdRientroMerceViewModel.java
@@ -2,6 +2,8 @@ package it.integry.integrywmsnative.gest.prod_rientro_merce;
import androidx.lifecycle.MutableLiveData;
+import com.annimon.stream.Stream;
+
import java.util.List;
import javax.inject.Inject;
@@ -11,6 +13,7 @@ import it.integry.integrywmsnative.core.interfaces.viewmodel_listeners.IOrdersLo
import it.integry.integrywmsnative.core.rest.consumers.MesRESTConsumer;
import it.integry.integrywmsnative.core.settings.SettingsManager;
import it.integry.integrywmsnative.gest.prod_versamento_materiale.dto.OrdineLavorazioneDTO;
+import it.integry.integrywmsnative.gest.prod_versamento_materiale.dto.OrdineLavorazioneStatoEnum;
import it.integry.integrywmsnative.gest.spedizione.exceptions.OrdersLoadException;
public class ProdRientroMerceViewModel {
@@ -32,7 +35,14 @@ public class ProdRientroMerceViewModel {
String codAnag = SettingsManager.iDB().getFilterFornitoreProd();
this.mMesRESTConsumer.getOrdiniLavorazione("I", null, codAnag, ordiniLavorazioneList -> {
- this.mOrdiniLavorazioneAperti.postValue(ordiniLavorazioneList);
+ List filteredList = null;
+
+ if(ordiniLavorazioneList != null)
+ filteredList = Stream.of(ordiniLavorazioneList)
+ .filter(x -> x.getStatoEnum() != OrdineLavorazioneStatoEnum.PROGRAMMATO)
+ .toList();
+
+ this.mOrdiniLavorazioneAperti.postValue(filteredList);
this.sendOnOrdersLoadingEnded();
}, ex -> this.sendError(new OrdersLoadException(ex)));
}
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/RettificaGiacenzeViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/RettificaGiacenzeViewModel.java
index 4f91e780..9f6c688b 100644
--- a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/RettificaGiacenzeViewModel.java
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/RettificaGiacenzeViewModel.java
@@ -183,7 +183,13 @@ public class RettificaGiacenzeViewModel {
mRettificaGiacenzeRESTConsumer.searchArtForn(codAlis, queryText, listaArts -> {
this.sendOnLoadingEnded();
- List mtbAarts = Stream.of(listaArts).map(x -> (MtbAart) x).toList();
+ List mtbAarts = null;
+
+ if (listaArts != null)
+ mtbAarts = Stream.of(listaArts)
+ .map(x -> (MtbAart) x.getMtbAart())
+ .toList();
+
dispatchArts(mtbAarts);
}, this::sendError);
}
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/dto/SearchArticoloByBarcodeOrCodMartRequestDTO.java b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/dto/SearchArticoloByBarcodeOrCodMartRequestDTO.java
new file mode 100644
index 00000000..f823ad5a
--- /dev/null
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/dto/SearchArticoloByBarcodeOrCodMartRequestDTO.java
@@ -0,0 +1,15 @@
+package it.integry.integrywmsnative.gest.rettifica_giacenze.dto;
+
+public class SearchArticoloByBarcodeOrCodMartRequestDTO {
+
+ private String codMartOrBarcode;
+
+ public String getCodMartOrBarcode() {
+ return codMartOrBarcode;
+ }
+
+ public SearchArticoloByBarcodeOrCodMartRequestDTO setCodMartOrBarcode(String codMartOrBarcode) {
+ this.codMartOrBarcode = codMartOrBarcode;
+ return this;
+ }
+}
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/dto/SearchArticoloByBarcodeOrCodMartResponseDTO.java b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/dto/SearchArticoloByBarcodeOrCodMartResponseDTO.java
new file mode 100644
index 00000000..0df89be1
--- /dev/null
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/dto/SearchArticoloByBarcodeOrCodMartResponseDTO.java
@@ -0,0 +1,60 @@
+package it.integry.integrywmsnative.gest.rettifica_giacenze.dto;
+
+import java.math.BigDecimal;
+
+import it.integry.integrywmsnative.core.model.MtbAart;
+
+public class SearchArticoloByBarcodeOrCodMartResponseDTO {
+
+ private MtbAart mtbAart;
+ private BigDecimal qtaEsistente;
+ private BigDecimal qtaImpegnata;
+ private BigDecimal numCnfEsistente;
+ private BigDecimal numCnfImpegnata;
+
+
+ public MtbAart getMtbAart() {
+ return mtbAart;
+ }
+
+ public SearchArticoloByBarcodeOrCodMartResponseDTO setMtbAart(MtbAart mtbAart) {
+ this.mtbAart = mtbAart;
+ return this;
+ }
+
+ public BigDecimal getQtaEsistente() {
+ return qtaEsistente;
+ }
+
+ public SearchArticoloByBarcodeOrCodMartResponseDTO setQtaEsistente(BigDecimal qtaEsistente) {
+ this.qtaEsistente = qtaEsistente;
+ return this;
+ }
+
+ public BigDecimal getQtaImpegnata() {
+ return qtaImpegnata;
+ }
+
+ public SearchArticoloByBarcodeOrCodMartResponseDTO setQtaImpegnata(BigDecimal qtaImpegnata) {
+ this.qtaImpegnata = qtaImpegnata;
+ return this;
+ }
+
+ public BigDecimal getNumCnfEsistente() {
+ return numCnfEsistente;
+ }
+
+ public SearchArticoloByBarcodeOrCodMartResponseDTO setNumCnfEsistente(BigDecimal numCnfEsistente) {
+ this.numCnfEsistente = numCnfEsistente;
+ return this;
+ }
+
+ public BigDecimal getNumCnfImpegnata() {
+ return numCnfImpegnata;
+ }
+
+ public SearchArticoloByBarcodeOrCodMartResponseDTO setNumCnfImpegnata(BigDecimal numCnfImpegnata) {
+ this.numCnfImpegnata = numCnfImpegnata;
+ return this;
+ }
+}
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/dto/SearchArticoloByCodArtFornOrDescrizioneRequestDTO.java b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/dto/SearchArticoloByCodArtFornOrDescrizioneRequestDTO.java
new file mode 100644
index 00000000..f0930080
--- /dev/null
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/dto/SearchArticoloByCodArtFornOrDescrizioneRequestDTO.java
@@ -0,0 +1,27 @@
+package it.integry.integrywmsnative.gest.rettifica_giacenze.dto;
+
+public class SearchArticoloByCodArtFornOrDescrizioneRequestDTO {
+
+ private String codAlis;
+
+ private String codArtFornOrDescrizione;
+
+
+ public String getCodAlis() {
+ return codAlis;
+ }
+
+ public SearchArticoloByCodArtFornOrDescrizioneRequestDTO setCodAlis(String codAlis) {
+ this.codAlis = codAlis;
+ return this;
+ }
+
+ public String getCodArtFornOrDescrizione() {
+ return codArtFornOrDescrizione;
+ }
+
+ public SearchArticoloByCodArtFornOrDescrizioneRequestDTO setCodArtFornOrDescrizione(String codArtFornOrDescrizione) {
+ this.codArtFornOrDescrizione = codArtFornOrDescrizione;
+ return this;
+ }
+}
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/dto/SearchArticoloByCodArtFornOrDescrizioneResponseDTO.java b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/dto/SearchArticoloByCodArtFornOrDescrizioneResponseDTO.java
new file mode 100644
index 00000000..aa460d45
--- /dev/null
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/dto/SearchArticoloByCodArtFornOrDescrizioneResponseDTO.java
@@ -0,0 +1,28 @@
+package it.integry.integrywmsnative.gest.rettifica_giacenze.dto;
+
+import it.integry.integrywmsnative.core.model.MtbAart;
+
+public class SearchArticoloByCodArtFornOrDescrizioneResponseDTO {
+
+ private MtbAart mtbAart;
+
+ private String codArtFor;
+
+ public MtbAart getMtbAart() {
+ return mtbAart;
+ }
+
+ public SearchArticoloByCodArtFornOrDescrizioneResponseDTO setMtbAart(MtbAart mtbAart) {
+ this.mtbAart = mtbAart;
+ return this;
+ }
+
+ public String getCodArtFor() {
+ return codArtFor;
+ }
+
+ public SearchArticoloByCodArtFornOrDescrizioneResponseDTO setCodArtFor(String codArtFor) {
+ this.codArtFor = codArtFor;
+ return this;
+ }
+}
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/rest/RettificaGiacenzeRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/rest/RettificaGiacenzeRESTConsumer.java
index 366b0211..a08054f6 100644
--- a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/rest/RettificaGiacenzeRESTConsumer.java
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/rest/RettificaGiacenzeRESTConsumer.java
@@ -1,25 +1,28 @@
package it.integry.integrywmsnative.gest.rettifica_giacenze.rest;
+import com.annimon.stream.Stream;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.Collections;
+import java.util.List;
import javax.inject.Singleton;
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.model.MtbAart;
-import it.integry.integrywmsnative.core.model.MtbAartWithFornitore;
import it.integry.integrywmsnative.core.model.MtbColt;
import it.integry.integrywmsnative.core.rest.RESTBuilder;
import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers._BaseRESTConsumer;
import it.integry.integrywmsnative.core.rest.model.SaveDocFromPickingRequestDTO;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
-import it.integry.integrywmsnative.core.settings.SettingsManager;
-import it.integry.integrywmsnative.core.utility.UtilityDB;
import it.integry.integrywmsnative.gest.rettifica_giacenze.dto.FornitoreDTO;
+import it.integry.integrywmsnative.gest.rettifica_giacenze.dto.SearchArticoloByBarcodeOrCodMartRequestDTO;
+import it.integry.integrywmsnative.gest.rettifica_giacenze.dto.SearchArticoloByBarcodeOrCodMartResponseDTO;
+import it.integry.integrywmsnative.gest.rettifica_giacenze.dto.SearchArticoloByCodArtFornOrDescrizioneRequestDTO;
+import it.integry.integrywmsnative.gest.rettifica_giacenze.dto.SearchArticoloByCodArtFornOrDescrizioneResponseDTO;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
@@ -45,49 +48,56 @@ public class RettificaGiacenzeRESTConsumer extends _BaseRESTConsumer {
}
- public void searchArtForn(String codAlis, String codArtForOrDescr, RunnableArgs> onComplete, RunnableArgs onFailed) {
- String sql = "SELECT mtb_aart.*, mtb_lisa.cod_art_for from mtb_lisa, mtb_aart, mtb_part " +
- " WHERE mtb_lisa.cod_alis = " + UtilityDB.valueToString(codAlis) +
- " AND mtb_lisa.cod_mart = mtb_aart.cod_mart " +
- " AND mtb_lisa.cod_mart = mtb_part.cod_mart " +
- " AND mtb_part.cod_mdep = '" + SettingsManager.i().getUserSession().getDepo().getCodMdep() + "' " +
- " AND (mtb_aart.descrizione_estesa LIKE '%" + codArtForOrDescr + "%' OR cod_art_for LIKE '%" + codArtForOrDescr + "%') " +
- " ORDER BY ABS(mtb_part.qta_esistente) DESC, mtb_aart.descrizione_estesa";
+ public void searchArtForn(String codAlis, String codArtForOrDescr, RunnableArgs> onComplete, RunnableArgs onError) {
+ final RettificaGiacenzeRESTConsumerService service = RESTBuilder.getService(RettificaGiacenzeRESTConsumerService.class);
+ service.searchByCodArtFornOrDescrizione(new SearchArticoloByCodArtFornOrDescrizioneRequestDTO()
+ .setCodAlis(codAlis)
+ .setCodArtFornOrDescrizione(codArtForOrDescr))
+ .enqueue(new Callback<>() {
+ @Override
+ public void onResponse(Call>> call,
+ Response>> response) {
+ analyzeAnswer(response, "searchByCodArtFornOrDescrizione", onComplete, onError);
+ }
+
+ @Override
+ public void onFailure(Call>> call, Throwable t) {
+ onError.run(new Exception(t));
+ }
+ });
+
- Type typeOfObjectsList = new TypeToken>() {
- }.getType();
- mSystemRestConsumer.>processSql(sql, typeOfObjectsList, value -> {
- if (onComplete != null) onComplete.run(value);
- }, onFailed);
}
- public void searchArtInt(String codMartOrBarcodeOrDescr, RunnableArgs> onComplete, RunnableArgs onFailed) {
- String sql = "SELECT DISTINCT mtb_aart.*," +
- " qta_esistente, " +
- " qta_imp_cli + qta_imp_lav AS qta_impegnata, " +
- " num_esistente AS num_cnf_esistente, " +
- " num_imp_cli + num_imp_lav AS num_cnf_impegnata " +
- " FROM mtb_aart " +
- " LEFT OUTER JOIN mvw_barcode on mtb_aart.cod_mart = mvw_barcode.cod_mart " +
- " LEFT OUTER JOIN mtb_part mp on mtb_aart.cod_mart = mp.cod_mart " +
- " AND mp.cod_mdep = '" + SettingsManager.i().getUserSession().getDepo().getCodMdep() + "'" +
- " WHERE CASE" +
- " WHEN LEN(mvw_barcode.cod_barre) > 13 THEN mvw_barcode.cod_barre " +
- " ELSE Replicate('0', 13 - len(mvw_barcode.cod_barre))+ mvw_barcode.cod_barre " +
- " END LIKE '%' + CASE " +
- " WHEN LEN('" + codMartOrBarcodeOrDescr + "') > 13 THEN '" + codMartOrBarcodeOrDescr + "' " +
- " ELSE Replicate('0', 13 - len('" + codMartOrBarcodeOrDescr + "')) + '" + codMartOrBarcodeOrDescr + "'" +
- " END " +
- "OR mtb_aart.cod_mart = '" + codMartOrBarcodeOrDescr + "' " +
- "OR mtb_aart.descrizione_estesa LIKE '%" + codMartOrBarcodeOrDescr + "%'";
+ public void searchArtInt(String codMartOrBarcodeOrDescr, RunnableArgs> onComplete, RunnableArgs onError) {
+ final RettificaGiacenzeRESTConsumerService service = RESTBuilder.getService(RettificaGiacenzeRESTConsumerService.class);
+ service.searchByCodMartOrBarcode(new SearchArticoloByBarcodeOrCodMartRequestDTO()
+ .setCodMartOrBarcode(codMartOrBarcodeOrDescr))
+ .enqueue(new Callback<>() {
+ @Override
+ public void onResponse(Call>> call,
+ Response>> response) {
+ analyzeAnswer(response, "searchByCodMartOrBarcode", data -> {
- Type typeOfObjectsList = new TypeToken>() {
- }.getType();
- mSystemRestConsumer.>processSql(sql, typeOfObjectsList, value -> {
- if (onComplete != null) onComplete.run(value);
- }, onFailed);
+ var listToReturn = Stream.of(data)
+ .map(x -> x.getMtbAart()
+ .setQtaEsistente(x.getQtaEsistente())
+ .setQtaImpegnata(x.getQtaImpegnata())
+ .setNumCnfEsistente(x.getNumCnfEsistente())
+ .setNumCnfImpegnata(x.getNumCnfImpegnata()))
+ .toList();
+
+ onComplete.run(listToReturn);
+ }, onError);
+ }
+
+ @Override
+ public void onFailure(Call>> call, Throwable t) {
+ onError.run(new Exception(t));
+ }
+ });
}
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/rest/RettificaGiacenzeRESTConsumerService.java b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/rest/RettificaGiacenzeRESTConsumerService.java
index fd6ae1d7..499cc387 100644
--- a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/rest/RettificaGiacenzeRESTConsumerService.java
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/rest/RettificaGiacenzeRESTConsumerService.java
@@ -1,7 +1,13 @@
package it.integry.integrywmsnative.gest.rettifica_giacenze.rest;
+import java.util.List;
+
import it.integry.integrywmsnative.core.rest.model.SaveDocFromPickingRequestDTO;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
+import it.integry.integrywmsnative.gest.rettifica_giacenze.dto.SearchArticoloByBarcodeOrCodMartRequestDTO;
+import it.integry.integrywmsnative.gest.rettifica_giacenze.dto.SearchArticoloByBarcodeOrCodMartResponseDTO;
+import it.integry.integrywmsnative.gest.rettifica_giacenze.dto.SearchArticoloByCodArtFornOrDescrizioneRequestDTO;
+import it.integry.integrywmsnative.gest.rettifica_giacenze.dto.SearchArticoloByCodArtFornOrDescrizioneResponseDTO;
import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.POST;
@@ -9,6 +15,14 @@ import retrofit2.http.POST;
public interface RettificaGiacenzeRESTConsumerService {
+ @POST("wms/articolo/searchByCodArtFornOrDescrizione")
+ Call>> searchByCodArtFornOrDescrizione(
+ @Body SearchArticoloByCodArtFornOrDescrizioneRequestDTO searchArticoloByCodArtFornOrDescrizioneRequest);
+
+ @POST("wms/articolo/searchByCodMartOrBarcode")
+ Call>> searchByCodMartOrBarcode(
+ @Body SearchArticoloByBarcodeOrCodMartRequestDTO searchArticoloByBarcodeOrCodMartRequest);
+
@POST("saveDocFromPickingPvm")
Call> saveDocFromPickingPvm(@Body SaveDocFromPickingRequestDTO saveDocFromPickingRequestDTO);