diff --git a/.idea/runConfigurations/app.xml b/.idea/runConfigurations/app.xml
index 17b791c7..2845a8ea 100644
--- a/.idea/runConfigurations/app.xml
+++ b/.idea/runConfigurations/app.xml
@@ -6,7 +6,7 @@
-
+
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/MainVenditaFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/MainVenditaFragment.java
index fdd4d488..ce689be6 100644
--- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/MainVenditaFragment.java
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/MainVenditaFragment.java
@@ -324,28 +324,46 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IS
.toList();
if (foundGestioni != null && foundGestioni.size() > 1) {
- DialogSimpleMessageHelper.makeErrorDialog(getContext(), new SpannableString(getString(R.string.error_multiple_gest)), null, () -> {
- onFailed.run();
- }).show();
+ DialogSimpleMessageHelper.makeErrorDialog(getContext(), new SpannableString(getString(R.string.error_multiple_gest)), null, onFailed::run).show();
return;
}
//Definizione del deposito di default
List foundCodMdep = Stream.of(selectedOrders)
.map(OrdineVenditaInevasoDTO::getCodMdep)
- .withoutNulls()
+// .withoutNulls()
.distinctBy(x -> x)
.toList();
if (foundCodMdep != null && foundCodMdep.size() > 1) {
- DialogSimpleMessageHelper.makeErrorDialog(getContext(), new SpannableString(getString(R.string.error_multiple_cod_mdep_ordv)), null, () -> {
- onFailed.run();
- }).show();
+ DialogSimpleMessageHelper.makeErrorDialog(getContext(), new SpannableString(getString(R.string.error_multiple_cod_mdep_ordv)), null, onFailed::run).show();
return;
}
- }
- onComplete.run();
+
+ //NON-BLOCKING CHECKS
+
+ //Definizione del codJfas di default
+ List foundCodJfas = Stream.of(selectedOrders)
+ .map(OrdineVenditaInevasoDTO::getCodJfas)
+// .withoutNulls()
+ .distinctBy(x -> x)
+ .toList();
+
+ if (foundCodJfas != null && foundCodJfas.size() > 1) {
+ DialogSimpleMessageHelper.makeWarningDialog(getContext(), new SpannableString(getString(R.string.error_multiple_cod_jfas_ordp)), null, () -> {
+
+
+ onComplete.run();
+
+
+ }).show();
+ } else {
+ onComplete.run();
+ }
+ } else {
+ onComplete.run();
+ }
}
private void startVenditaActivity(List ordini, List selectedOrders, List mtbColtList) {
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dto/OrdineVenditaInevasoDTO.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dto/OrdineVenditaInevasoDTO.java
index d267e73f..e7482603 100644
--- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dto/OrdineVenditaInevasoDTO.java
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dto/OrdineVenditaInevasoDTO.java
@@ -50,6 +50,7 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
private int colliRiservati;
private String existCollo;
private String nomeAgente;
+ private String codJfas;
public BindableBoolean selected;
@@ -107,6 +108,7 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
colliRiservati = in.readInt();
existCollo = in.readString();
nomeAgente = in.readString();
+ codJfas = in.readString();
selected = new BindableBoolean(in.readByte() == 0x01);
}
@@ -165,6 +167,7 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
dest.writeInt(colliRiservati);
dest.writeString(existCollo);
dest.writeString(nomeAgente);
+ dest.writeString(codJfas);
dest.writeByte(selected.get() ? (byte) 1 : (byte) 0);
}
@@ -544,6 +547,15 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
return this;
}
+ public String getCodJfas() {
+ return codJfas;
+ }
+
+ public OrdineVenditaInevasoDTO setCodJfas(String codJfas) {
+ this.codJfas = codJfas;
+ return this;
+ }
+
public boolean isSelected() {
return selected.get();
}
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/viewmodel/VenditaOrdineInevasoViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/viewmodel/VenditaOrdineInevasoViewModel.java
index f2f93dd4..d8997675 100644
--- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/viewmodel/VenditaOrdineInevasoViewModel.java
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/viewmodel/VenditaOrdineInevasoViewModel.java
@@ -94,6 +94,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
private String defaultRifOrdOfUL = null;
private Integer defaultNumOrdOfUL = null;
private Date defaultDataOrdOfUL = null;
+ private String defaultCodJFasOfUL = null;
private Integer mtbColtSessionID = null;
@@ -179,7 +180,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
//Definizione del deposito di default
List foundCodMdep = Stream.of(mTestateOrdini)
.map(OrdineVenditaInevasoDTO::getCodMdep)
- .withoutNulls()
+// .withoutNulls()
.distinctBy(x -> x)
.toList();
@@ -211,7 +212,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
//Definizione del codAnag
List foundCodAnag = Stream.of(mTestateOrdini)
.map(OrdineVenditaInevasoDTO::getCodAnagOrd)
- .withoutNulls()
+// .withoutNulls()
.distinctBy(x -> x)
.toList();
@@ -223,7 +224,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
//Definizione del rifOrd
List foundRifOrd = Stream.of(mTestateOrdini)
.map(OrdineVenditaInevasoDTO::getRifOrd)
- .withoutNulls()
+// .withoutNulls()
.distinctBy(x -> x)
.toList();
@@ -255,6 +256,18 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
defaultDataOrdOfUL = foundDataOrd.get(0);
}
+
+ //Definizione del codJfas
+ List foundCodJfas = Stream.of(mTestateOrdini)
+ .map(OrdineVenditaInevasoDTO::getCodJfas)
+ //.withoutNulls()
+ .distinctBy(x -> x)
+ .toList();
+
+ if(foundCodJfas != null && foundCodJfas.size() == 1){
+ defaultCodJFasOfUL = foundCodJfas.get(0);
+ }
+
}
}
@@ -808,6 +821,10 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
.setCodMdep(defaultCodMdepOfUL)
.setOperation(CommonModelConsts.OPERATION.INSERT_OR_UPDATE);
+ if(defaultGestioneOfUL == GestioneEnum.LAVORAZIONE) {
+ mtbColt.setPosizione(defaultCodJFasOfUL);
+ }
+
if(customNumCollo != null) {
mtbColt.setNumCollo(customNumCollo);
}
diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml
index 3d28cbfc..9efb468f 100644
--- a/app/src/main/res/values-it/strings.xml
+++ b/app/src/main/res/values-it/strings.xml
@@ -202,6 +202,7 @@
Impossibile caricare ordini di diverse gestioni
Non è stato possibile identificare la gestione degli ordini selezionati
Impossibile caricare ordini di diversi depositi
+ Non verrà salvata la linea di produzione poiché stai selezionando ordini di diverse produzioni
Recupero dati
Attendi qualche istante
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 8ed5b9bb..e213b624 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -203,6 +203,7 @@
Can\'t load orders of different type
Can\'t load current order type
Can\'t load orders of different deposits
+ The production line will not be saved because you are selecting orders for different productions
Recovering data
Wait a moment