From 08bdd094825d9a7a645c75f0e33169eef03f0da0 Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Mon, 4 Mar 2019 19:00:22 +0100 Subject: [PATCH 01/17] Disabilitato recupera UL in Accettazione --- .../AccettazioneOrdineInevasoActivity.java | 2 +- ...eOnOrdineAccettazioneInevasoViewModel.java | 24 ++++++++------ .../viewmodel/ListaBancaliViewModel.java | 31 ------------------- 3 files changed, 15 insertions(+), 42 deletions(-) diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/AccettazioneOrdineInevasoActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/AccettazioneOrdineInevasoActivity.java index 1b19bb7d..30e3e340 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/AccettazioneOrdineInevasoActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/AccettazioneOrdineInevasoActivity.java @@ -110,7 +110,7 @@ public class AccettazioneOrdineInevasoActivity extends AppCompatActivity { public void startListaBancaliRegistratiActivity(ArrayList mtbColts){ - Intent myIntent = ListaBancaliActivity.createIntent(this, mtbColts, true, PrinterRESTConsumer.Type.SECONDARIA); + Intent myIntent = ListaBancaliActivity.createIntent(this, mtbColts, false, PrinterRESTConsumer.Type.SECONDARIA); this.startActivityForResult(myIntent, PICK_UL_REQUEST); } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOnOrdineAccettazioneInevasoViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOnOrdineAccettazioneInevasoViewModel.java index 2180a140..9939fc97 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOnOrdineAccettazioneInevasoViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOnOrdineAccettazioneInevasoViewModel.java @@ -667,16 +667,20 @@ public class AccettazioneOnOrdineAccettazioneInevasoViewModel implements IOnColl MtbColr currentRow = mtbColt.getMtbColr().get(i); - Stream.of(this.groupedOrdini) - .filter(x -> - x.getQtaDaEvadere().floatValue() > 0 && - x.getMtbAart().getCodMart().equalsIgnoreCase(currentRow.getCodMart()) && - x.getCodJcom().equalsIgnoreCase(currentRow.getCodJcom()) && - x.getRigaOrd() == currentRow.getRigaOrd() && - x.getDataOrd().equals(currentRow.getDataOrdD()) && - x.getNumOrd() == currentRow.getNumOrd() - ) - .forEach(x -> x.setQtaRiservate(x.getQtaRiservate().add(currentRow.getQtaCol()))); + if(currentRow.getRigaOrd() != null) { + + Stream.of(this.groupedOrdini) + .filter(x -> + x.getQtaDaEvadere().floatValue() > 0 && + x.getMtbAart().getCodMart().equalsIgnoreCase(currentRow.getCodMart()) && + x.getCodJcom().equalsIgnoreCase(currentRow.getCodJcom()) && + x.getRigaOrd() == currentRow.getRigaOrd() && + x.getDataOrd().equals(currentRow.getDataOrdD()) && + x.getNumOrd() == currentRow.getNumOrd() + ) + .forEach(x -> x.setQtaRiservate(x.getQtaRiservate().add(currentRow.getQtaCol()))); + + } } } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/lista_bancali/viewmodel/ListaBancaliViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/lista_bancali/viewmodel/ListaBancaliViewModel.java index a5f0d4dd..602c831a 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/lista_bancali/viewmodel/ListaBancaliViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/lista_bancali/viewmodel/ListaBancaliViewModel.java @@ -69,37 +69,6 @@ public class ListaBancaliViewModel implements IRecyclerItemClicked { }, ex -> UtilityExceptions.defaultException(mContext, ex, progress)); - /*String sql = "SELECT *, mtb_aart.descrizione, mtb_aart.unt_mis " + - "FROM mtb_colr " + - "LEFT OUTER JOIN mtb_aart ON mtb_colr.cod_mart = mtb_aart.cod_mart " + - "WHERE " + - "mtb_colr.data_collo = " + UtilityDB.valueToString(item.getDataColloD()) + " AND " + - "mtb_colr.ser_collo = " + UtilityDB.valueToString(item.getSerCollo()) + " AND " + - "mtb_colr.num_collo = " + UtilityDB.valueToString(item.getNumCollo()) + " AND " + - "mtb_colr.gestione = " + UtilityDB.valueToString(item.getGestione()); - - - Type typeOfObjectsList = new TypeToken>() {}.getType(); - SystemRESTConsumer.processSql(sql, typeOfObjectsList, new ISimpleOperationCallback>() { - @Override - public void onSuccess(List value) { - ObservableArrayList mtbColrObservableArrayList = new ObservableArrayList<>(); - mtbColrObservableArrayList.addAll(value); - item.setMtbColr(mtbColrObservableArrayList); - - progress.dismiss(); - - mContext.startContenutoBancaleActivity(item); - - } - - @Override - public void onFailed(Exception ex) { - UtilityExceptions.defaultException(mContext, ex, progress); - } - }); - */ - } catch (Exception e) { e.printStackTrace(); From c856a2b0e8b917785438287cb461f8997aa3dbc5 Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Tue, 5 Mar 2019 09:29:03 +0100 Subject: [PATCH 02/17] Fix su spazio in barcode reader. --- .../integrywmsnative/core/utility/UtilityBarcode.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityBarcode.java b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityBarcode.java index 75ec4e7a..a22b6e49 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityBarcode.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityBarcode.java @@ -51,8 +51,14 @@ public class UtilityBarcode { public static Integer getNumColloFromULAnonima(String barcode) { - if(barcode != null){ - return Integer.parseInt(barcode.substring(3)); + if(!UtilityString.isNullOrEmpty(barcode)) { + barcode = barcode.trim(); + + if(barcode.length() <= 7){ + return Integer.parseInt(barcode.substring(3)); + } else + return null; + } else return null; } From c1b9c3693b83c8b7643aa6da2406d5918ee3e1b0 Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Tue, 5 Mar 2019 12:52:33 +0100 Subject: [PATCH 03/17] Implementato salvataggio filtro ordine in JSON --- .../integrywmsnative/core/model/MtbColt.java | 20 ++++++++++++++----- .../core/utility/UtilityBarcode.java | 2 +- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/it/integry/integrywmsnative/core/model/MtbColt.java b/app/src/main/java/it/integry/integrywmsnative/core/model/MtbColt.java index 99cdda0a..7f27189c 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/model/MtbColt.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/model/MtbColt.java @@ -15,6 +15,7 @@ import java.util.List; import it.integry.integrywmsnative.core.model.secondary.GestioneEnum; import it.integry.integrywmsnative.core.settings.SettingsManager; +import it.integry.integrywmsnative.core.utility.UtilityDB; import it.integry.integrywmsnative.core.utility.UtilityDate; import it.integry.integrywmsnative.core.utility.UtilityLogger; @@ -673,10 +674,10 @@ public class MtbColt extends EntityBase implements Parcelable { public void generaFiltroOrdineFromDTO(List filtroOrdineDtos) { - String xmlPrefix = ""; - String xmlSuffix = ""; + String xmlPrefix = "{\"whereCond\": \""; + String xmlSuffix = "\"}"; - StringBuilder xmlContent = new StringBuilder(); + StringBuilder whereCond = new StringBuilder(); if(filtroOrdineDtos != null && filtroOrdineDtos.size() > 0) { @@ -684,7 +685,16 @@ public class MtbColt extends EntityBase implements Parcelable { FiltroOrdineDTO x = filtroOrdineDtos.get(i); try { - xmlContent.append("" + x.getGestioneOrd() + "" + UtilityDate.formatDate(x.getDataOrdD(), UtilityDate.COMMONS_DATE_FORMATS.YMD_SLASH) + "" + x.getNumOrd() + ""); + whereCond.append(String.format("(dtb_ordt.gestione = %s AND dtb_ordt.data_ord = %s and dtb_ordt.num_ord = %s)", + UtilityDB.valueToString(x.getGestioneOrd()), + UtilityDB.valueToString(UtilityDate.formatDate(x.getDataOrdD(), UtilityDate.COMMONS_DATE_FORMATS.YMD_SLASH)), + UtilityDB.valueToString(x.getNumOrd()))); + + if(i < filtroOrdineDtos.size()-1) { + whereCond.append(" OR "); + } + + //whereCond.append("" + x.getGestioneOrd() + "" + UtilityDate.formatDate(x.getDataOrdD(), UtilityDate.COMMONS_DATE_FORMATS.YMD_SLASH) + "" + x.getNumOrd() + ""); } catch (Exception e) { e.printStackTrace(); } @@ -692,7 +702,7 @@ public class MtbColt extends EntityBase implements Parcelable { } - this.filtroOrdini = xmlPrefix + xmlContent + xmlSuffix; + this.filtroOrdini = xmlPrefix + whereCond + xmlSuffix; } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityBarcode.java b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityBarcode.java index a22b6e49..471b81fb 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityBarcode.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityBarcode.java @@ -41,7 +41,7 @@ public class UtilityBarcode { } - return barcodeScanDTO != null && isPosizione; + return isPosizione; } public static boolean isEanPeso(BarcodeScanDTO barcodeScanDTO) { From d0aed1ed17a2abeb844211041a61c39bbf79a9a3 Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Wed, 6 Mar 2019 10:17:42 +0100 Subject: [PATCH 04/17] Rimosso executePendingTransaction(). --- app/src/main/java/it/integry/integrywmsnative/MainActivity.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/java/it/integry/integrywmsnative/MainActivity.java b/app/src/main/java/it/integry/integrywmsnative/MainActivity.java index 077425f2..26ab1acf 100644 --- a/app/src/main/java/it/integry/integrywmsnative/MainActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/MainActivity.java @@ -236,7 +236,7 @@ public class MainActivity extends AppCompatActivity if(addToBackStack) ft.addToBackStack(fragment.getTag()); ft.commit(); - fragmentManager.executePendingTransactions(); + //fragmentManager.executePendingTransactions(); } } From 06a55e2a5c292e3bfe0b3552126c434f805a83a8 Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Thu, 7 Mar 2019 18:22:55 +0100 Subject: [PATCH 05/17] #A0000173088: Fix su lettura ul anonima. --- .githooks/commit-msg | 43 +++++++++++++++++++ .../REST/watcher/ServerStatusChecker.java | 1 - .../core/utility/UtilityBarcode.java | 6 +-- .../gest/main/MainFragment.java | 8 +++- .../PointMobileBarcodeReader.java | 6 +-- 5 files changed, 52 insertions(+), 12 deletions(-) create mode 100644 .githooks/commit-msg diff --git a/.githooks/commit-msg b/.githooks/commit-msg new file mode 100644 index 00000000..cc47bcff --- /dev/null +++ b/.githooks/commit-msg @@ -0,0 +1,43 @@ +#!/bin/sh +# +# An example hook script to check the commit log message. +# Called by "git commit" with one argument, the name of the file +# that has the commit message. The hook should exit with non-zero +# status after issuing an appropriate message if it wants to stop the +# commit. The hook is allowed to edit the commit message file. +# +# To enable this hook, rename this file to "commit-msg". + +# Uncomment the below to add a Signed-off-by line to the message. +# Doing this in a hook is a bad idea in general, but the prepare-commit-msg +# hook is more suited to it. +# +# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p') +# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1" + +# This example catches duplicate Signed-off-by lines. + +USER_EMAIL=$(git log -1 --format=format:%ae HEAD) +USER_NAME=$(git log -1 --format=format:%an HEAD) +COMMIT_MESSAGE=$(cat $1) + +if [[ $COMMIT_MESSAGE == "#"* ]]; +then + ACTIVITY_ID=$(echo $COMMIT_MESSAGE | awk '{print $1;}') + ACTIVITY_ID=$(echo $ACTIVITY_ID | tr -d : | tr -d "#") + + echo "Riconosciuta attivita: " $ACTIVITY_ID + curl -X POST "http://192.168.2.215:8080/ems-api/activity/createFromCommit?profileDb=INTEGRY&committerEmail=$USER_EMAIL" \ + -d "commitMessage=$COMMIT_MESSAGE" + +fi + + +#echo "TESTO: " $COMMIT_MESSAGE + + +#test "" = "$(grep '^Signed-off-by: ' "$1" | +# sort | uniq -c | sed -e '/^[ ]*1[ ]/d')" || { +# echo >&2 Duplicate Signed-off-by lines. +# exit 1 +#} diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/watcher/ServerStatusChecker.java b/app/src/main/java/it/integry/integrywmsnative/core/REST/watcher/ServerStatusChecker.java index b974b8c6..29a812be 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/watcher/ServerStatusChecker.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/REST/watcher/ServerStatusChecker.java @@ -40,7 +40,6 @@ public class ServerStatusChecker { public void addCallback(RunnableArgs callback){ this.mCallback.add(callback); - } public void removeCallback(RunnableArgs callback){ diff --git a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityBarcode.java b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityBarcode.java index 471b81fb..d451690a 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityBarcode.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityBarcode.java @@ -54,11 +54,7 @@ public class UtilityBarcode { if(!UtilityString.isNullOrEmpty(barcode)) { barcode = barcode.trim(); - if(barcode.length() <= 7){ - return Integer.parseInt(barcode.substring(3)); - } else - return null; - + return Integer.parseInt(barcode.substring(3)); } else return null; } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/main/MainFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/main/MainFragment.java index 2353a371..d433b2b8 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/main/MainFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/main/MainFragment.java @@ -145,7 +145,13 @@ public class MainFragment extends Fragment implements ITitledFragment, IScrollab cyclicRecover(sessionsIterator, onComplete, onFailed); }, ex -> { - onFailed.run(ex); + + if(ex.getMessage().contains("Dati collo non corretti")) { + ColliDataRecover.closeSession(recoveredMtbColtID); + } else { + onFailed.run(ex); + } + cyclicRecover(sessionsIterator, onComplete, onFailed); }); } else { diff --git a/pointmobilescannerlibrary/src/main/java/it/integry/pointmobilescannerlibrary/PointMobileBarcodeReader.java b/pointmobilescannerlibrary/src/main/java/it/integry/pointmobilescannerlibrary/PointMobileBarcodeReader.java index 0e21237a..89525723 100644 --- a/pointmobilescannerlibrary/src/main/java/it/integry/pointmobilescannerlibrary/PointMobileBarcodeReader.java +++ b/pointmobilescannerlibrary/src/main/java/it/integry/pointmobilescannerlibrary/PointMobileBarcodeReader.java @@ -27,9 +27,6 @@ public class PointMobileBarcodeReader implements BarcodeReaderInterface { private static String TAG = PointMobileBarcodeReader.class.getName(); - - private int mBackupResultType = ScanConst.ResultType.DCD_RESULT_COPYPASTE; - public PointMobileBarcodeReader(Context context) { this.mContext = context; @@ -51,8 +48,7 @@ public class PointMobileBarcodeReader implements BarcodeReaderInterface { public void init() throws BarcodeAdapterNotFoundException { if(isRightAdapter()){ try{ - - mBackupResultType = mScanManager.aDecodeGetResultType(); + mScanManager.aDecodeSetTerminator(ScanConst.Terminator.DCD_TERMINATOR_NONE); mScanManager.aDecodeSetResultType(ScanConst.ResultType.DCD_RESULT_USERMSG); } catch (Exception ex) { throw new BarcodeAdapterNotFoundException(getAdapterName()); From 3573480ca1837db8bf6598744b04444f853c46da Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Mon, 11 Mar 2019 12:39:17 +0100 Subject: [PATCH 06/17] Completata implementazione ordini di lavorazione in accettazione --- .../MainAccettazioneFragment.java | 125 +++++++++--------- .../dto/OrdineAccettazioneDTO.java | 5 + ...eOnOrdineAccettazioneInevasoViewModel.java | 18 ++- 3 files changed, 83 insertions(+), 65 deletions(-) diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/MainAccettazioneFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/MainAccettazioneFragment.java index 1c527bc4..cd886fff 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/MainAccettazioneFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/MainAccettazioneFragment.java @@ -22,6 +22,7 @@ import android.widget.Toast; import com.annimon.stream.Stream; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -147,8 +148,6 @@ public class MainAccettazioneFragment extends Fragment implements ISearcableFrag private void groupOrdiniAndMakeRecycler(List ordini){ - String prevCodAnag = ""; - for(OrdineAccettazioneInevasoDTO ordine : ordini){ if(UtilityString.isNullOrEmpty(ordine.codJcom) || ordine.codJcom.equalsIgnoreCase(CommonConst.Config.COMMESSA_MAG)){ ordine.codJcom = CommonConst.Config.COMMESSA_MAG; @@ -159,84 +158,82 @@ public class MainAccettazioneFragment extends Fragment implements ISearcableFrag groupedOrdiniInevasi = new ArrayList<>(); //Splitto gli ordini per codAnagClie - for(int i = 0; i < ordini.size(); i++){ - if(prevCodAnag.equalsIgnoreCase(ordini.get(i).codAnagOrd)) continue; - else prevCodAnag = ordini.get(i).codAnagOrd; + List groupedOrdini = Stream.of(ordini) + .map(x -> { + OrdineAccettazioneGroupedInevasoDTO groupedOrdine = new OrdineAccettazioneGroupedInevasoDTO(); - OrdineAccettazioneGroupedInevasoDTO groupedOrdine = new OrdineAccettazioneGroupedInevasoDTO(); + groupedOrdine.codAnagForn = x.codAnagOrd; + groupedOrdine.nomeFornitore = x.ragSocOrd; + groupedOrdine.ordini = new ArrayList<>(); - groupedOrdine.codAnagForn = ordini.get(i).codAnagOrd; - groupedOrdine.nomeFornitore = ordini.get(i).ragSocOrd; - groupedOrdine.ordini = new ArrayList<>(); - - List filteredByCodAnagOrders = - Coollection - .from(ordini) - .where("codAnagOrd", Coollection.eq(ordini.get(i).codAnagOrd)).all(); + return groupedOrdine; + }) + .distinctBy(x -> x.codAnagForn + "_" + x.nomeFornitore) + .toList(); - int prevNumOrd = -1; - String prevDataOrd = ""; + Stream.of(groupedOrdini).forEach(groupedOrdine -> { //Splitto gli ordini di ogni fornitore per data e numero - for(int j = 0; j < filteredByCodAnagOrders.size(); j++) { - if( prevNumOrd == filteredByCodAnagOrders.get(j).numero && - prevDataOrd.equalsIgnoreCase(filteredByCodAnagOrders.get(j).data)) continue; + List tmpOrd = Stream.of(ordini) + .filter(x -> x.codAnagOrd.equals(groupedOrdine.codAnagForn)) + .map(x -> { - else { - prevNumOrd = filteredByCodAnagOrders.get(j).numero; - prevDataOrd = filteredByCodAnagOrders.get(j).data; - } + OrdineAccettazioneGroupedInevasoDTO.Ordine rigaOrdine = new OrdineAccettazioneGroupedInevasoDTO.Ordine(); - OrdineAccettazioneGroupedInevasoDTO.Ordine rigaOrdine = new OrdineAccettazioneGroupedInevasoDTO.Ordine(); + rigaOrdine.data = x.data; + rigaOrdine.numero = x.numero; + rigaOrdine.codAnagOrd = x.codAnagOrd; + rigaOrdine.ragSocOrd = x.ragSocOrd; + rigaOrdine.pesoTotale = x.pesoTotale; + rigaOrdine.barcode = x.barcode; + rigaOrdine.termCons = x.termCons; + rigaOrdine.dataCons = x.dataCons; + rigaOrdine.rifOrd = x.rifOrd; + rigaOrdine.clienti = new ArrayList<>(); - rigaOrdine.data = filteredByCodAnagOrders.get(j).data; - rigaOrdine.numero = filteredByCodAnagOrders.get(j).numero; - rigaOrdine.codAnagOrd = filteredByCodAnagOrders.get(j).codAnagOrd; - rigaOrdine.ragSocOrd = filteredByCodAnagOrders.get(j).ragSocOrd; - rigaOrdine.pesoTotale = filteredByCodAnagOrders.get(j).pesoTotale; - rigaOrdine.barcode = filteredByCodAnagOrders.get(j).barcode; - rigaOrdine.termCons = filteredByCodAnagOrders.get(j).termCons; - rigaOrdine.dataCons = filteredByCodAnagOrders.get(j).dataCons; - rigaOrdine.rifOrd = filteredByCodAnagOrders.get(j).rifOrd; - rigaOrdine.clienti = new ArrayList<>(); + return rigaOrdine; + }) + .distinctBy(x -> x.barcode) + .toList(); + + + Stream.of(tmpOrd) + .forEach(rigaOrdine -> { + + Stream.of(ordini) + .filter(x -> + x.codAnagOrd.equals(rigaOrdine.codAnagOrd) && + x.numero == rigaOrdine.numero && + x.data.equals(rigaOrdine.data)) + .forEach(x -> { + OrdineAccettazioneGroupedInevasoDTO.Cliente cliente = new OrdineAccettazioneGroupedInevasoDTO.Cliente(); + + cliente.codJcom = x.codJcom; + cliente.ragSocCom = x.ragSocCom; + cliente.descrCom = x.descrizioneCom; + cliente.dataCons = x.dataCons; + cliente.numCnf = x.numCnf; + cliente.rifOrd = x.rifOrd; + + rigaOrdine.clienti.add(cliente); + }); + +// List filteredByCodAnagAndDateAndNumberOrders = Stream.of(tmpOrd) +// .filter(x -> +// x.codAnagOrd.equals(rigaOrdine.codAnagOrd) && +// x.numero == rigaOrdine.numero && +// x.data.equals(rigaOrdine.data)).toList(); - List filteredByCodAnagAndDateAndNumberOrders = - Coollection - .from(ordini) - .where("codAnagOrd", Coollection.eq(filteredByCodAnagOrders.get(j).codAnagOrd)) - .and("numero", Coollection.eq(filteredByCodAnagOrders.get(j).numero)) - .and("data", Coollection.eq(filteredByCodAnagOrders.get(j).data)).all(); + groupedOrdine.ordini.add(rigaOrdine); - - String prevCodJcomAndDataCons = ""; - - //Splitto gli ordini per codJcom e dataCons - for(int k = 0; k < filteredByCodAnagAndDateAndNumberOrders.size(); k++) { - if(prevCodJcomAndDataCons.equalsIgnoreCase(filteredByCodAnagAndDateAndNumberOrders.get(k).codJcom + "_" + filteredByCodAnagAndDateAndNumberOrders.get(k).dataCons)) continue; - else prevCodJcomAndDataCons = filteredByCodAnagAndDateAndNumberOrders.get(k).codJcom + "_" + filteredByCodAnagAndDateAndNumberOrders.get(k).dataCons; - - OrdineAccettazioneGroupedInevasoDTO.Cliente cliente = new OrdineAccettazioneGroupedInevasoDTO.Cliente(); - - cliente.codJcom = filteredByCodAnagAndDateAndNumberOrders.get(k).codJcom; - cliente.ragSocCom = filteredByCodAnagAndDateAndNumberOrders.get(k).ragSocCom; - cliente.descrCom = filteredByCodAnagAndDateAndNumberOrders.get(k).descrizioneCom; - cliente.dataCons = filteredByCodAnagAndDateAndNumberOrders.get(k).dataCons; - cliente.numCnf = filteredByCodAnagAndDateAndNumberOrders.get(k).numCnf; - cliente.rifOrd = filteredByCodAnagAndDateAndNumberOrders.get(k).rifOrd; - - rigaOrdine.clienti.add(cliente); - } - - - groupedOrdine.ordini.add(rigaOrdine); - } + }); groupedOrdiniInevasi.add(groupedOrdine); - } + }); mAdapter = new MainListAccettazioneAdapter(getActivity(), groupedOrdiniInevasi, onGroupSelectionChanged); mBinding.accettazioneMainList.setAdapter(mAdapter); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/dto/OrdineAccettazioneDTO.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/dto/OrdineAccettazioneDTO.java index aed2be5f..6d06f8ac 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/dto/OrdineAccettazioneDTO.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/dto/OrdineAccettazioneDTO.java @@ -12,6 +12,7 @@ import java.util.List; import it.integry.integrywmsnative.core.model.MtbAart; import it.integry.integrywmsnative.core.model.MtbColt; +import it.integry.integrywmsnative.core.model.secondary.GestioneEnum; /** * Created by GiuseppeS on 06/03/2018. @@ -129,6 +130,10 @@ public class OrdineAccettazioneDTO implements Parcelable { return gestioneOrd; } + public GestioneEnum getGestioneOrdEnum() { + return GestioneEnum.fromString(gestioneOrd); + } + public String getDataCons() { return dataCons; } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOnOrdineAccettazioneInevasoViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOnOrdineAccettazioneInevasoViewModel.java index 9939fc97..9bc7c55c 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOnOrdineAccettazioneInevasoViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOnOrdineAccettazioneInevasoViewModel.java @@ -49,6 +49,7 @@ import it.integry.integrywmsnative.gest.accettazione_ordine_inevaso.core.MainLis import it.integry.integrywmsnative.gest.accettazione_ordine_inevaso.dto.AccettazioneOrdineInevasoOrderBy; import it.integry.integrywmsnative.gest.accettazione_ordine_inevaso.rest.OrdineAccettazioneInevasoRESTConsumerService; import it.integry.integrywmsnative.gest.accettazione_ordine_inevaso.views.NoteAggiuntiveNuovaULDialog; +import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaGroupedInevasoDTO; import it.integry.integrywmsnative.ui.StatusBarAlert; import it.integry.integrywmsnative.view.bottomsheet.interfaces.IOnColloClosedCallback; import it.integry.integrywmsnative.view.bottomsheet.viewmodel.ArticoliInColloBottomSheetViewModel; @@ -75,6 +76,8 @@ public class AccettazioneOnOrdineAccettazioneInevasoViewModel implements IOnColl private AccettazioneOrdineInevasoOrderBy.Enum currentOrderBy = AccettazioneOrdineInevasoOrderBy.Enum.COD_ART_FOR; private MainListOrdineAccettazioneAdapter mAdapter; + private GestioneEnum defaultGestioneOfUL = null; + public AccettazioneOnOrdineAccettazioneInevasoViewModel(AccettazioneOrdineInevasoActivity activity, ArticoliInColloBottomSheetViewModel articoliInColloBottomSheetViewModel, List orders) { this.mActivity = activity; this.mArticoliInColloBottomSheetViewModel = articoliInColloBottomSheetViewModel; @@ -102,6 +105,18 @@ public class AccettazioneOnOrdineAccettazioneInevasoViewModel implements IOnColl groupedRighe = helper.getOrdiniRaggruppatiPerCodArtForn(groupedOrdini, true); initRecyclerView(groupedRighe); + + + //Definizione della gestione collo di default + List foundGestioni = Stream.of(groupedOrdini) + .map(OrdineAccettazioneDTO.Riga::getGestioneOrdEnum) + .withoutNulls() + .distinctBy(x -> x) + .toList(); + + if(foundGestioni != null && foundGestioni.size() == 1){ + defaultGestioneOfUL = foundGestioni.get(0); + } } @@ -396,7 +411,8 @@ public class AccettazioneOnOrdineAccettazioneInevasoViewModel implements IOnColl if(defaultPosAccettazioneDTO != null && !UtilityString.isNullOrEmpty(defaultPosAccettazioneDTO.value)) defaultPosAccettazione = defaultPosAccettazioneDTO.value; MtbColt mtbColt = new MtbColt(); - mtbColt .setGestione(GestioneEnum.ACQUISTO) + mtbColt + .setGestione(defaultGestioneOfUL) .setPreparatoDa(SettingsManager.i().user.fullname) .setAnnotazioni(noteString) .setPosizione(defaultPosAccettazione) From a88d59f1d7074784b89aaf26dc79ead2b02870cb Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Tue, 19 Mar 2019 10:07:24 +0100 Subject: [PATCH 07/17] Completata implementazione dell'elevatedToolbar e rimossa la WaterfallTollbar --- .idea/caches/build_file_checksums.ser | Bin 844 -> 785 bytes .idea/gradle.xml | 1 - .idea/modules.xml | 1 - app/build.gradle | 1 - .../integrywmsnative/MainActivity.java | 5 +- .../MainAccettazioneFragment.java | 7 - .../integrywmsnative/ui/ElevatedToolbar.java | 134 +++++++++++++++--- settings.gradle | 2 +- 8 files changed, 117 insertions(+), 34 deletions(-) diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser index 5c9f83fa5706be4d80973e8c5c91f015d2d6340c..89b931ac606d58c478499382e0b6de68c80fc0c9 100644 GIT binary patch delta 65 zcmV-H0KWgs29XAkm;{wG+$NEnOaTg!>7NjUavpC0H`rLBC*8+Ix5VI+m;oFRMiMrF XKsqVm5Y1KiDFwW)lf(htliUJuc)1(K delta 105 zcmV-v0G9ue2FwPKm;_lcR}_()OaTj#>7NkpOvZ`u=kVkX$2*KMNsP*qm;oFRZUtup zT>%ezD489-Q2Y4Zlf(ht5*~M9bY*g8VQg$)bZ>8LVqtQVaRC<)lNY->ZW3Dk?9{ua Lb^P3ilb-@|NQ*9I diff --git a/.idea/gradle.xml b/.idea/gradle.xml index b17be737..d0657fda 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -13,7 +13,6 @@