diff --git a/app/build.gradle b/app/build.gradle index 7933c8d4..b1500e42 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -84,10 +84,6 @@ android { } dynamicFeatures = [":dynamic__base",":dynamic_vgalimenti",":dynamic_ime"] - - - - } dependencies { @@ -97,17 +93,17 @@ dependencies { }) implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" implementation 'com.orhanobut:logger:2.2.0' - implementation 'com.google.firebase:firebase-core:17.0.0' + implementation 'com.google.firebase:firebase-core:17.0.1' implementation 'com.google.firebase:firebase-crash:16.2.1' implementation 'com.google.firebase:firebase-perf:18.0.1' implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1' implementation 'androidx.appcompat:appcompat:1.1.0-rc01' implementation 'androidx.legacy:legacy-support-v4:1.0.0' - implementation 'com.google.android.material:material:1.1.0-alpha07' + implementation 'com.google.android.material:material:1.1.0-alpha09' implementation 'androidx.constraintlayout:constraintlayout:2.0.0-beta2' implementation 'androidx.cardview:cardview:1.0.0' - implementation 'androidx.recyclerview:recyclerview:1.1.0-alpha06' - implementation 'androidx.preference:preference:1.1.0-beta01' + implementation 'androidx.recyclerview:recyclerview:1.1.0-beta01' + implementation 'androidx.preference:preference:1.1.0-rc01' implementation 'com.squareup.okhttp3:okhttp:3.12.1' implementation 'com.squareup.retrofit2:retrofit:2.5.0' implementation 'com.squareup.retrofit2:converter-gson:2.5.0' diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index c16498b9..e72614ee 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -16,18 +16,22 @@ android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" - android:usesCleartextTraffic="true" - android:theme="@style/AppTheme"> + android:theme="@style/AppTheme" + android:usesCleartextTraffic="true"> + - - + - + - \ No newline at end of file diff --git a/app/src/main/java/it/integry/integrywmsnative/MainActivity.java b/app/src/main/java/it/integry/integrywmsnative/MainActivity.java index edb62d38..fce98d84 100644 --- a/app/src/main/java/it/integry/integrywmsnative/MainActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/MainActivity.java @@ -22,7 +22,7 @@ import android.view.View; import androidx.fragment.app.FragmentTransaction; -import it.integry.integrywmsnative.core.REST.watcher.ServerStatusChecker; +import it.integry.integrywmsnative.core.rest.watcher.ServerStatusChecker; import it.integry.integrywmsnative.core.interfaces.IFilterableFragment; import it.integry.integrywmsnative.core.interfaces.IPoppableActivity; import it.integry.integrywmsnative.core.interfaces.IScrollableFragment; @@ -44,6 +44,7 @@ import it.integry.integrywmsnative.gest.prod_versamento_materiale.ProdVersamento import it.integry.integrywmsnative.gest.rettifica_giacenze.RettificaGiacenzeFragment; import it.integry.integrywmsnative.gest.settings.MainSettingsFragment; import it.integry.integrywmsnative.gest.ultime_consegne_cliente.UltimeConsegneClienteFragment; +import it.integry.integrywmsnative.gest.ultime_consegne_fornitore.UltimeConsegneFornitoreFragment; import it.integry.integrywmsnative.gest.vendita.MainVenditaFragment; import it.integry.integrywmsnative.gest.versamento_merce.VersamentoMerceFragment; @@ -165,6 +166,11 @@ public class MainActivity extends AppCompatActivity this.adaptViewToFragment(fragment); break; + case R.id.nav_resi_fornitore: + fragment = UltimeConsegneFornitoreFragment.newInstance(); + this.adaptViewToFragment(fragment); + break; + case R.id.nav_resi_cliente: fragment = UltimeConsegneClienteFragment.newInstance(); this.adaptViewToFragment(fragment); diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/BarcodeRESTConsumerService.java b/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/BarcodeRESTConsumerService.java deleted file mode 100644 index 108eb2dc..00000000 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/BarcodeRESTConsumerService.java +++ /dev/null @@ -1,19 +0,0 @@ -package it.integry.integrywmsnative.core.REST.consumers; - -import com.google.gson.JsonObject; - -import it.integry.integrywmsnative.core.REST.model.DistribuzioneColloDTO; -import it.integry.integrywmsnative.core.REST.model.Ean128Model; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; -import retrofit2.Call; -import retrofit2.http.Body; -import retrofit2.http.GET; -import retrofit2.http.POST; -import retrofit2.http.Query; - -public interface BarcodeRESTConsumerService { - - @GET("decodeEan128") - Call> decodeEan128(@Query("ean128") String ean128); - -} diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/SlackMessageDTO.java b/app/src/main/java/it/integry/integrywmsnative/core/REST/model/SlackMessageDTO.java deleted file mode 100644 index a0e838b0..00000000 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/SlackMessageDTO.java +++ /dev/null @@ -1,4 +0,0 @@ -package it.integry.integrywmsnative.core.REST.model; - -public class SlackMessageDTO { -} diff --git a/app/src/main/java/it/integry/integrywmsnative/core/class_router/configs/MenuConfiguration.java b/app/src/main/java/it/integry/integrywmsnative/core/class_router/configs/MenuConfiguration.java index ecc4e5ea..2990acee 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/class_router/configs/MenuConfiguration.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/class_router/configs/MenuConfiguration.java @@ -11,28 +11,26 @@ public class MenuConfiguration extends BaseMenuConfiguration { this .addGroup( new MenuGroup() - .setGroupText(R.string.general) + .setGroupText(R.string.purchase) .addItem(new MenuItem() .setID(R.id.nav_accettazione) .setTitleText(R.string.accettazione_title_fragment) .setTitleIcon(R.drawable.ic_dashboard_accettazione)) + .addItem(new MenuItem() + .setID(R.id.nav_resi_fornitore) + .setTitleText(R.string.fragment_ultime_consegne_fornitore_title) + .setTitleIcon(R.drawable.ic_latest_delivery)) + ).addGroup( + new MenuGroup() + .setGroupText(R.string.checkout) + .addItem(new MenuItem() .setID(R.id.nav_spedizione) .setTitleText(R.string.vendita_title_fragment) .setTitleIcon(R.drawable.ic_dashboard_spedizione)) - .addItem(new MenuItem() - .setID(R.id.nav_rettifica_giacenze) - .setTitleText(R.string.rettifica_giacenze_fragment_title) - .setTitleIcon(R.drawable.ic_dashboard_rettifica_giacenze)) - - .addItem(new MenuItem() - .setID(R.id.nav_versamento_merce) - .setTitleText(R.string.versamento_merce_fragment_title) - .setTitleIcon(R.drawable.ic_dashboard_versamento_merce)) - .addItem(new MenuItem() .setID(R.id.nav_free_picking) .setTitleText(R.string.free_picking) @@ -42,10 +40,8 @@ public class MenuConfiguration extends BaseMenuConfiguration { .setID(R.id.nav_resi_cliente) .setTitleText(R.string.fragment_ultime_consegne_cliente_title) .setTitleIcon(R.drawable.ic_latest_delivery)) - ) - .addGroup( - new MenuGroup() - .setGroupText(R.string.production) + ).addGroup(new MenuGroup() + .setGroupText(R.string.manufacture) .addItem(new MenuItem() .setID(R.id.nav_prod_ordine_produzione) @@ -66,6 +62,22 @@ public class MenuConfiguration extends BaseMenuConfiguration { .setID(R.id.nav_prod_recupero_materiale) .setTitleText(R.string.prod_recupero_materiale_title_fragment) .setTitleIcon(R.drawable.ic_dashboard_prod_recupero_materiale)) + ) + .addGroup( + new MenuGroup() + .setGroupText(R.string.internal_handling) + + .addItem(new MenuItem() + .setID(R.id.nav_versamento_merce) + .setTitleText(R.string.versamento_merce_fragment_title) + .setTitleIcon(R.drawable.ic_dashboard_versamento_merce)) + + .addItem(new MenuItem() + .setID(R.id.nav_rettifica_giacenze) + .setTitleText(R.string.rettifica_giacenze_fragment_title) + .setTitleIcon(R.drawable.ic_dashboard_rettifica_giacenze)) + + ); } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/context/AppContext.java b/app/src/main/java/it/integry/integrywmsnative/core/context/AppContext.java index 45141b68..9aa6a2ea 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/context/AppContext.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/context/AppContext.java @@ -6,12 +6,8 @@ import com.crashlytics.android.Crashlytics; import com.orhanobut.logger.AndroidLogAdapter; import com.orhanobut.logger.Logger; -import java.io.IOException; - import io.fabric.sdk.android.Fabric; import it.integry.integrywmsnative.BuildConfig; -import it.integry.integrywmsnative.core.REST.watcher.ServerStatusChecker; -import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.data_recover.ColliDataRecover; import it.integry.integrywmsnative.core.settings.SettingsManager; import it.integry.integrywmsnative.core.settings.Stash; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/context/MainContext.java b/app/src/main/java/it/integry/integrywmsnative/core/context/MainContext.java index 47eb4330..16ccf091 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/context/MainContext.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/context/MainContext.java @@ -7,7 +7,7 @@ import java.lang.reflect.Method; import androidx.appcompat.app.AppCompatActivity; -import it.integry.integrywmsnative.core.REST.watcher.ServerStatusChecker; +import it.integry.integrywmsnative.core.rest.watcher.ServerStatusChecker; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.class_router.ClassRouter; import it.integry.integrywmsnative.core.settings.SettingsManager; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/model/DtbDocr.java b/app/src/main/java/it/integry/integrywmsnative/core/model/DtbDocr.java new file mode 100644 index 00000000..b7d1bece --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/core/model/DtbDocr.java @@ -0,0 +1,763 @@ +package it.integry.integrywmsnative.core.model; + +import java.math.BigDecimal; +import java.util.Date; + +import it.integry.integrywmsnative.core.utility.UtilityDate; + +public class DtbDocr { + + private String codAnag; + + private String codDtip; + + private String dataDoc; + + private Integer idRiga; + + private Integer numDoc; + + private String serDoc; + + private String codAliq; + + private String codAnagComp; + + private String codArtFor; + + private String codCol; + + private String codDtipComp; + + private String codJcom; + + private String codMart; + + private String codMdep; + + private String codPromo; + + private String codTagl; + + private BigDecimal costoUnt; + + private String dataDocComp; + + private String dataOrd; + + private String descrizione; + + private String descrizioneEstesa; + + private String flagEvasoForzato; + + private BigDecimal importoRiga; + + private BigDecimal numCnf; + + private Integer numDocComp; + + private Integer numOrd; + + private String partitaMag; + + private BigDecimal percGest; + + private BigDecimal percIspe; + + private BigDecimal percOneri; + + private BigDecimal percPromo; + + private BigDecimal percProv; + + private BigDecimal percProv2; + + private BigDecimal pesoLordo; + + private String posizione; + + private BigDecimal qtaCnf; + + private BigDecimal qtaDoc; + + private BigDecimal qtaDoc2; + + private BigDecimal qtaDoc3; + + private BigDecimal rapConv; + + private Integer rigaOrd; + + private BigDecimal sconto5; + + private BigDecimal sconto6; + + private BigDecimal sconto7; + + private BigDecimal sconto8; + + private String serDocComp; + + private String untDoc; + + private String untDoc2; + + private String untDoc3; + + private BigDecimal valGest; + + private BigDecimal valIspe; + + private BigDecimal valOneri; + + private BigDecimal valPromo; + + private BigDecimal valProv; + + private BigDecimal valProv2; + + private BigDecimal valUnt; + + private BigDecimal valUntIva; + + private String codMtip; + + private String matricola; + + private String dataInizComp; + + private String dataFineComp; + + private String codKit; + + private String codAlis; + + private String dataInsRow; + + private String note; + + private int rigaKit; + + private MtbAart mtbAart; + + public String getCodAnag() { + return codAnag; + } + + public DtbDocr setCodAnag(String codAnag) { + this.codAnag = codAnag; + return this; + } + + public String getCodDtip() { + return codDtip; + } + + public DtbDocr setCodDtip(String codDtip) { + this.codDtip = codDtip; + return this; + } + + public String getDataDocS() { + return dataDoc; + } + + public Date getDataDocD() { + return UtilityDate.recognizeDateWithExceptionHandler(getDataDocS()); + } + + public DtbDocr setDataDoc(String dataDoc) { + this.dataDoc = dataDoc; + return this; + } + + public Integer getIdRiga() { + return idRiga; + } + + public DtbDocr setIdRiga(Integer idRiga) { + this.idRiga = idRiga; + return this; + } + + public Integer getNumDoc() { + return numDoc; + } + + public DtbDocr setNumDoc(Integer numDoc) { + this.numDoc = numDoc; + return this; + } + + public String getSerDoc() { + return serDoc; + } + + public DtbDocr setSerDoc(String serDoc) { + this.serDoc = serDoc; + return this; + } + + public String getCodAliq() { + return codAliq; + } + + public DtbDocr setCodAliq(String codAliq) { + this.codAliq = codAliq; + return this; + } + + public String getCodAnagComp() { + return codAnagComp; + } + + public DtbDocr setCodAnagComp(String codAnagComp) { + this.codAnagComp = codAnagComp; + return this; + } + + public String getCodArtFor() { + return codArtFor; + } + + public DtbDocr setCodArtFor(String codArtFor) { + this.codArtFor = codArtFor; + return this; + } + + public String getCodCol() { + return codCol; + } + + public DtbDocr setCodCol(String codCol) { + this.codCol = codCol; + return this; + } + + public String getCodDtipComp() { + return codDtipComp; + } + + public DtbDocr setCodDtipComp(String codDtipComp) { + this.codDtipComp = codDtipComp; + return this; + } + + public String getCodJcom() { + return codJcom; + } + + public DtbDocr setCodJcom(String codJcom) { + this.codJcom = codJcom; + return this; + } + + public String getCodMart() { + return codMart; + } + + public DtbDocr setCodMart(String codMart) { + this.codMart = codMart; + return this; + } + + public String getCodMdep() { + return codMdep; + } + + public DtbDocr setCodMdep(String codMdep) { + this.codMdep = codMdep; + return this; + } + + public String getCodPromo() { + return codPromo; + } + + public DtbDocr setCodPromo(String codPromo) { + this.codPromo = codPromo; + return this; + } + + public String getCodTagl() { + return codTagl; + } + + public DtbDocr setCodTagl(String codTagl) { + this.codTagl = codTagl; + return this; + } + + public BigDecimal getCostoUnt() { + return costoUnt; + } + + public DtbDocr setCostoUnt(BigDecimal costoUnt) { + this.costoUnt = costoUnt; + return this; + } + + public String getDataDocComp() { + return dataDocComp; + } + + public DtbDocr setDataDocComp(String dataDocComp) { + this.dataDocComp = dataDocComp; + return this; + } + + public String getDataOrd() { + return dataOrd; + } + + public DtbDocr setDataOrd(String dataOrd) { + this.dataOrd = dataOrd; + return this; + } + + public String getDescrizione() { + return descrizione; + } + + public DtbDocr setDescrizione(String descrizione) { + this.descrizione = descrizione; + return this; + } + + public String getDescrizioneEstesa() { + return descrizioneEstesa; + } + + public DtbDocr setDescrizioneEstesa(String descrizioneEstesa) { + this.descrizioneEstesa = descrizioneEstesa; + return this; + } + + public String getFlagEvasoForzato() { + return flagEvasoForzato; + } + + public DtbDocr setFlagEvasoForzato(String flagEvasoForzato) { + this.flagEvasoForzato = flagEvasoForzato; + return this; + } + + public BigDecimal getImportoRiga() { + return importoRiga; + } + + public DtbDocr setImportoRiga(BigDecimal importoRiga) { + this.importoRiga = importoRiga; + return this; + } + + public BigDecimal getNumCnf() { + return numCnf; + } + + public DtbDocr setNumCnf(BigDecimal numCnf) { + this.numCnf = numCnf; + return this; + } + + public Integer getNumDocComp() { + return numDocComp; + } + + public DtbDocr setNumDocComp(Integer numDocComp) { + this.numDocComp = numDocComp; + return this; + } + + public Integer getNumOrd() { + return numOrd; + } + + public DtbDocr setNumOrd(Integer numOrd) { + this.numOrd = numOrd; + return this; + } + + public String getPartitaMag() { + return partitaMag; + } + + public DtbDocr setPartitaMag(String partitaMag) { + this.partitaMag = partitaMag; + return this; + } + + public BigDecimal getPercGest() { + return percGest; + } + + public DtbDocr setPercGest(BigDecimal percGest) { + this.percGest = percGest; + return this; + } + + public BigDecimal getPercIspe() { + return percIspe; + } + + public DtbDocr setPercIspe(BigDecimal percIspe) { + this.percIspe = percIspe; + return this; + } + + public BigDecimal getPercOneri() { + return percOneri; + } + + public DtbDocr setPercOneri(BigDecimal percOneri) { + this.percOneri = percOneri; + return this; + } + + public BigDecimal getPercPromo() { + return percPromo; + } + + public DtbDocr setPercPromo(BigDecimal percPromo) { + this.percPromo = percPromo; + return this; + } + + public BigDecimal getPercProv() { + return percProv; + } + + public DtbDocr setPercProv(BigDecimal percProv) { + this.percProv = percProv; + return this; + } + + public BigDecimal getPercProv2() { + return percProv2; + } + + public DtbDocr setPercProv2(BigDecimal percProv2) { + this.percProv2 = percProv2; + return this; + } + + public BigDecimal getPesoLordo() { + return pesoLordo; + } + + public DtbDocr setPesoLordo(BigDecimal pesoLordo) { + this.pesoLordo = pesoLordo; + return this; + } + + public String getPosizione() { + return posizione; + } + + public DtbDocr setPosizione(String posizione) { + this.posizione = posizione; + return this; + } + + public BigDecimal getQtaCnf() { + return qtaCnf; + } + + public DtbDocr setQtaCnf(BigDecimal qtaCnf) { + this.qtaCnf = qtaCnf; + return this; + } + + public BigDecimal getQtaDoc() { + return qtaDoc; + } + + public DtbDocr setQtaDoc(BigDecimal qtaDoc) { + this.qtaDoc = qtaDoc; + return this; + } + + public BigDecimal getQtaDoc2() { + return qtaDoc2; + } + + public DtbDocr setQtaDoc2(BigDecimal qtaDoc2) { + this.qtaDoc2 = qtaDoc2; + return this; + } + + public BigDecimal getQtaDoc3() { + return qtaDoc3; + } + + public DtbDocr setQtaDoc3(BigDecimal qtaDoc3) { + this.qtaDoc3 = qtaDoc3; + return this; + } + + public BigDecimal getRapConv() { + return rapConv; + } + + public DtbDocr setRapConv(BigDecimal rapConv) { + this.rapConv = rapConv; + return this; + } + + public Integer getRigaOrd() { + return rigaOrd; + } + + public DtbDocr setRigaOrd(Integer rigaOrd) { + this.rigaOrd = rigaOrd; + return this; + } + + public BigDecimal getSconto5() { + return sconto5; + } + + public DtbDocr setSconto5(BigDecimal sconto5) { + this.sconto5 = sconto5; + return this; + } + + public BigDecimal getSconto6() { + return sconto6; + } + + public DtbDocr setSconto6(BigDecimal sconto6) { + this.sconto6 = sconto6; + return this; + } + + public BigDecimal getSconto7() { + return sconto7; + } + + public DtbDocr setSconto7(BigDecimal sconto7) { + this.sconto7 = sconto7; + return this; + } + + public BigDecimal getSconto8() { + return sconto8; + } + + public DtbDocr setSconto8(BigDecimal sconto8) { + this.sconto8 = sconto8; + return this; + } + + public String getSerDocComp() { + return serDocComp; + } + + public DtbDocr setSerDocComp(String serDocComp) { + this.serDocComp = serDocComp; + return this; + } + + public String getUntDoc() { + return untDoc; + } + + public DtbDocr setUntDoc(String untDoc) { + this.untDoc = untDoc; + return this; + } + + public String getUntDoc2() { + return untDoc2; + } + + public DtbDocr setUntDoc2(String untDoc2) { + this.untDoc2 = untDoc2; + return this; + } + + public String getUntDoc3() { + return untDoc3; + } + + public DtbDocr setUntDoc3(String untDoc3) { + this.untDoc3 = untDoc3; + return this; + } + + public BigDecimal getValGest() { + return valGest; + } + + public DtbDocr setValGest(BigDecimal valGest) { + this.valGest = valGest; + return this; + } + + public BigDecimal getValIspe() { + return valIspe; + } + + public DtbDocr setValIspe(BigDecimal valIspe) { + this.valIspe = valIspe; + return this; + } + + public BigDecimal getValOneri() { + return valOneri; + } + + public DtbDocr setValOneri(BigDecimal valOneri) { + this.valOneri = valOneri; + return this; + } + + public BigDecimal getValPromo() { + return valPromo; + } + + public DtbDocr setValPromo(BigDecimal valPromo) { + this.valPromo = valPromo; + return this; + } + + public BigDecimal getValProv() { + return valProv; + } + + public DtbDocr setValProv(BigDecimal valProv) { + this.valProv = valProv; + return this; + } + + public BigDecimal getValProv2() { + return valProv2; + } + + public DtbDocr setValProv2(BigDecimal valProv2) { + this.valProv2 = valProv2; + return this; + } + + public BigDecimal getValUnt() { + return valUnt; + } + + public DtbDocr setValUnt(BigDecimal valUnt) { + this.valUnt = valUnt; + return this; + } + + public BigDecimal getValUntIva() { + return valUntIva; + } + + public DtbDocr setValUntIva(BigDecimal valUntIva) { + this.valUntIva = valUntIva; + return this; + } + + public String getCodMtip() { + return codMtip; + } + + public DtbDocr setCodMtip(String codMtip) { + this.codMtip = codMtip; + return this; + } + + public String getMatricola() { + return matricola; + } + + public DtbDocr setMatricola(String matricola) { + this.matricola = matricola; + return this; + } + + public String getDataInizComp() { + return dataInizComp; + } + + public DtbDocr setDataInizComp(String dataInizComp) { + this.dataInizComp = dataInizComp; + return this; + } + + public String getDataFineComp() { + return dataFineComp; + } + + public DtbDocr setDataFineComp(String dataFineComp) { + this.dataFineComp = dataFineComp; + return this; + } + + public String getCodKit() { + return codKit; + } + + public DtbDocr setCodKit(String codKit) { + this.codKit = codKit; + return this; + } + + public String getCodAlis() { + return codAlis; + } + + public DtbDocr setCodAlis(String codAlis) { + this.codAlis = codAlis; + return this; + } + + public String getDataInsRow() { + return dataInsRow; + } + + public DtbDocr setDataInsRow(String dataInsRow) { + this.dataInsRow = dataInsRow; + return this; + } + + public String getNote() { + return note; + } + + public DtbDocr setNote(String note) { + this.note = note; + return this; + } + + public int getRigaKit() { + return rigaKit; + } + + public DtbDocr setRigaKit(int rigaKit) { + this.rigaKit = rigaKit; + return this; + } + + public MtbAart getMtbAart() { + return mtbAart; + } + + public DtbDocr setMtbAart(MtbAart mtbAart) { + this.mtbAart = mtbAart; + return this; + } + + + + public String getStringKeyIdentifier() { + String separator = "|"; + return + this.getCodAnag() + separator + + this.getCodDtip() + separator + + this.getSerDoc() + separator + + UtilityDate.formatDate(this.getDataDocD(), UtilityDate.COMMONS_DATE_FORMATS.YMD_SLASH) + separator + + this.getNumDoc() + separator + + this.getIdRiga(); + } +} diff --git a/app/src/main/java/it/integry/integrywmsnative/core/model/FiltroOrdineDTO.java b/app/src/main/java/it/integry/integrywmsnative/core/model/FiltroOrdineDTO.java index 059eeb96..30d23566 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/model/FiltroOrdineDTO.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/model/FiltroOrdineDTO.java @@ -4,6 +4,8 @@ import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; +import it.integry.integrywmsnative.core.utility.UtilityDate; + public class FiltroOrdineDTO { private String gestioneOrd; @@ -24,9 +26,8 @@ public class FiltroOrdineDTO { return dataOrd; } - public Date getDataOrdD() throws ParseException { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - return sdf.parse(getDataOrdS()); + public Date getDataOrdD() { + return UtilityDate.recognizeDateWithExceptionHandler(getDataOrdS()); } public FiltroOrdineDTO setDataOrd(String dataOrd) { @@ -35,8 +36,7 @@ public class FiltroOrdineDTO { } public FiltroOrdineDTO setDataOrd(Date dataOrd) { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - this.dataOrd = sdf.format(dataOrd); + this.dataOrd = UtilityDate.formatDate(dataOrd, UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH); return this; } @@ -44,13 +44,8 @@ public class FiltroOrdineDTO { return dataCons; } - public Date getDataConsD() throws ParseException { - try { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - return sdf.parse(getDataConsS()); - } catch (Exception ex) { - return null; - } + public Date getDataConsD() { + return UtilityDate.recognizeDateWithExceptionHandler(getDataConsS()); } public FiltroOrdineDTO setDataCons(String dataCons) { @@ -60,8 +55,7 @@ public class FiltroOrdineDTO { public FiltroOrdineDTO setDataCons(Date dataCons) { if(dataCons != null) { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - this.dataCons = sdf.format(dataCons); + this.dataCons = UtilityDate.formatDate(dataCons, UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH); } return this; } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/model/MtbColr.java b/app/src/main/java/it/integry/integrywmsnative/core/model/MtbColr.java index ce33c4d3..705ef07c 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/model/MtbColr.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/model/MtbColr.java @@ -9,6 +9,7 @@ import java.text.SimpleDateFormat; import java.util.Date; import it.integry.integrywmsnative.core.model.secondary.GestioneEnum; +import it.integry.integrywmsnative.core.utility.UtilityDate; import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.core.utility.UtilityLogger; import it.integry.integrywmsnative.core.utility.UtilityString; @@ -266,13 +267,7 @@ public class MtbColr extends EntityBase implements Parcelable { } public Date getDataColloD() { - try{ - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - return sdf.parse(getDataColloS()); - } catch (ParseException pex){ - UtilityLogger.errorMe(pex); - return null; - } + return UtilityDate.recognizeDateWithExceptionHandler(getDataColloS()); } public MtbColr setDataCollo(String dataCollo) { @@ -376,13 +371,7 @@ public class MtbColr extends EntityBase implements Parcelable { } public Date getDataOrdD() { - try{ - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - return sdf.parse(getDataOrdS()); - } catch (ParseException pex){ - UtilityLogger.errorMe(pex); - return null; - } + return UtilityDate.recognizeDateWithExceptionHandler(getDataOrdS()); } public MtbColr setDataOrd(String dataOrd) { @@ -391,8 +380,7 @@ public class MtbColr extends EntityBase implements Parcelable { } public MtbColr setDataOrd(Date dataOrd) { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - this.dataOrd = sdf.format(dataOrd); + this.dataOrd = UtilityDate.formatDate(dataOrd, UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH); return this; } @@ -401,13 +389,7 @@ public class MtbColr extends EntityBase implements Parcelable { } public Date getDataColloRifD() { - try{ - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - return sdf.parse(getDataColloRifS()); - } catch (ParseException pex){ - UtilityLogger.errorMe(pex); - return null; - } + return UtilityDate.recognizeDateWithExceptionHandler(getDataColloRifS()); } public MtbColr setDataColloRif(String dataColloRif) { @@ -416,8 +398,7 @@ public class MtbColr extends EntityBase implements Parcelable { } public MtbColr setDataColloRif(Date dataColloRif) { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - this.dataColloRif = sdf.format(dataColloRif); + this.dataColloRif = UtilityDate.formatDate(dataColloRif, UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH); return this; } @@ -473,9 +454,8 @@ public class MtbColr extends EntityBase implements Parcelable { return datetimeRow; } - public Date getDatetimeRowD() throws ParseException { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - return sdf.parse(getDatetimeRowS()); + public Date getDatetimeRowD() { + return UtilityDate.recognizeDateWithExceptionHandler(getDatetimeRowS()); } public MtbColr setDatetimeRow(String datetimeRow) { @@ -484,8 +464,7 @@ public class MtbColr extends EntityBase implements Parcelable { } public MtbColr setDatetimeRow(Date datetimeRow) { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - this.datetimeRow = sdf.format(datetimeRow); + this.datetimeRow = UtilityDate.formatDate(datetimeRow, UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH); return this; } @@ -542,15 +521,7 @@ public class MtbColr extends EntityBase implements Parcelable { } public Date getDataScadPartitaD() { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - try { - if(!UtilityString.isNullOrEmpty(getDataScadPartitaS())) - return sdf.parse(getDataScadPartitaS()); - else return null; - } catch (Exception ex) { - UtilityLogger.errorMe(ex); - return null; - } + return UtilityDate.recognizeDateWithExceptionHandler(getDataScadPartitaS()); } public MtbColr setDataScadPartita(String dataScadPartita) { @@ -559,10 +530,7 @@ public class MtbColr extends EntityBase implements Parcelable { } public MtbColr setDataScadPartita(Date dataScadPartita) { - if(dataScadPartita != null) { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - this.dataScadPartita = sdf.format(dataScadPartita); - } else this.dataScadPartita = null; + this.dataScadPartita = UtilityDate.formatDate(dataScadPartita, UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH); return this; } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/model/MtbCols.java b/app/src/main/java/it/integry/integrywmsnative/core/model/MtbCols.java index 6b029f90..7704c36c 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/model/MtbCols.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/model/MtbCols.java @@ -4,6 +4,7 @@ import java.text.SimpleDateFormat; import java.util.Date; import it.integry.integrywmsnative.core.settings.SettingsManager; +import it.integry.integrywmsnative.core.utility.UtilityDate; public class MtbCols extends EntityBase { @@ -22,7 +23,7 @@ public class MtbCols extends EntityBase { type = "mtb_cols"; setCodMdep(SettingsManager.i().userSession.depo.getCodMdep()); setModificatoDa(SettingsManager.i().user.fullname); - setDataMove(new Date()); + setDataMove(UtilityDate.getDateInstance()); } public String getDataCollo() { @@ -89,8 +90,7 @@ public class MtbCols extends EntityBase { } public MtbCols setDataMove(Date dataMove) { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - this.dataMove = sdf.format(dataMove); + this.dataMove = UtilityDate.formatDate(dataMove, UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH); return this; } 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 ef7a5dc5..9503f75c 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 @@ -76,8 +76,7 @@ public class MtbColt extends EntityBase { Date dateOrd = UtilityDate.recognizeDate(this.dataOrd); - SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd"); - String dateYMD = sdf.format(dateOrd); + String dateYMD = UtilityDate.formatDate(dateOrd, UtilityDate.COMMONS_DATE_FORMATS.YMD_SLASH); this.filtroOrdini = "" + this.gestione + "" + dateYMD + "" + this.numOrd + ""; } @@ -97,14 +96,14 @@ public class MtbColt extends EntityBase { public MtbColt(){ type = "mtb_colt"; - setDataCollo(new Date()); + setDataCollo(UtilityDate.getDateInstance()); setSerCollo("/"); } public void initDefaultFields() { setCodMdep(SettingsManager.i().userSession.depo.getCodMdep()); setPreparatoDa(SettingsManager.i().user.fullname); - setOraInizPrep(new Date()); + setOraInizPrep(UtilityDate.getDateInstance()); setCodAnag(SettingsManager.iDB().getDefaultCodAnag()); } @@ -145,13 +144,7 @@ public class MtbColt extends EntityBase { } public Date getDataColloD() { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - try { - return sdf.parse(getDataColloS()); - } catch (ParseException e) { - UtilityLogger.errorMe(e); - return null; - } + return UtilityDate.recognizeDateWithExceptionHandler(getDataColloS()); } public MtbColt setDataCollo(String dataCollo) { @@ -160,8 +153,7 @@ public class MtbColt extends EntityBase { } public MtbColt setDataCollo(Date dataCollo) { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - this.dataCollo = sdf.format(dataCollo); + this.dataCollo = UtilityDate.formatDate(dataCollo, UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH); return this; } @@ -328,10 +320,7 @@ public class MtbColt extends EntityBase { } public MtbColt setDataOrdD(Date dataOrd) { - if(dataOrd != null) { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - this.dataOrd = sdf.format(dataOrd); - } else this.dataOrd = null; + this.dataOrd = UtilityDate.formatDate(dataOrd, UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH); return this; } @@ -354,8 +343,7 @@ public class MtbColt extends EntityBase { } public MtbColt setOraInizPrep(Date oraInizPrep) { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - this.oraInizPrep = sdf.format(oraInizPrep); + this.oraInizPrep = UtilityDate.formatDate(oraInizPrep, UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH); return this; } @@ -369,8 +357,7 @@ public class MtbColt extends EntityBase { } public MtbColt setOraFinePrep(Date oraFinePrep) { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - this.oraFinePrep = sdf.format(oraFinePrep); + this.oraFinePrep = UtilityDate.formatDate(oraFinePrep, UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH); return this; } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/report/ReportManager.java b/app/src/main/java/it/integry/integrywmsnative/core/report/ReportManager.java index 407d4f89..da7d70d8 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/report/ReportManager.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/report/ReportManager.java @@ -34,4 +34,24 @@ public class ReportManager { } + public static String getRightReportNameByGestione(GestioneEnum gestione) { + + if(gestione != null){ + + switch (gestione) { + case ACQUISTO: + case PRODUZIONE: + return "EtichettaBancale"; + + case LAVORAZIONE: + return "EtichettaInventario"; + + case VENDITA: + return "EtichettaSpedizione"; + } + + } + return null; + } + } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/CommonRESTException.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/CommonRESTException.java similarity index 81% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/CommonRESTException.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/CommonRESTException.java index 9f7f9bca..36c521a0 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/CommonRESTException.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/CommonRESTException.java @@ -1,18 +1,10 @@ -package it.integry.integrywmsnative.core.REST; - -import android.util.Log; +package it.integry.integrywmsnative.core.rest; import java.net.SocketException; import java.net.SocketTimeoutException; import java.util.HashMap; -import java.util.List; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.model.EsitoType; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.exception.printer.PrinterNotFoundException; -import it.integry.integrywmsnative.core.utility.UtilityString; -import retrofit2.Response; /** * Created by GiuseppeS on 22/03/2018. diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/HttpInterceptor.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/HttpInterceptor.java similarity index 92% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/HttpInterceptor.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/HttpInterceptor.java index 6bd56c67..bebc2ee8 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/HttpInterceptor.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/HttpInterceptor.java @@ -1,11 +1,10 @@ -package it.integry.integrywmsnative.core.REST; +package it.integry.integrywmsnative.core.rest; import android.util.Base64; import java.io.IOException; import it.integry.integrywmsnative.core.settings.SettingsManager; -import it.integry.integrywmsnative.core.utility.UtilityString; import okhttp3.HttpUrl; import okhttp3.Interceptor; import okhttp3.Request; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/RESTBuilder.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/RESTBuilder.java similarity index 85% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/RESTBuilder.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/RESTBuilder.java index 210bd5f2..4d34814d 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/RESTBuilder.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/RESTBuilder.java @@ -1,7 +1,12 @@ -package it.integry.integrywmsnative.core.REST; +package it.integry.integrywmsnative.core.rest; +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; + +import java.sql.Date; import java.util.concurrent.TimeUnit; +import it.integry.integrywmsnative.core.rest.deserializer.DateDeserializer; import it.integry.integrywmsnative.core.settings.SettingsManager; import okhttp3.OkHttpClient; import retrofit2.Retrofit; @@ -47,10 +52,16 @@ public class RESTBuilder { String endpoint = "http://" + host + ":" + port + "/" + (addEmsApi ? "ems-api/" : ""); + Gson gson = new GsonBuilder() + .registerTypeAdapter(Date.class, new DateDeserializer()) + .create(); + + + Retrofit retrofit = new Retrofit.Builder() + .addConverterFactory(GsonConverterFactory.create(gson)) .baseUrl(endpoint) .client(client) - .addConverterFactory(GsonConverterFactory.create()) .build(); 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 similarity index 90% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ArticoloRESTConsumer.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ArticoloRESTConsumer.java index b7e5b40b..111f53b8 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,15 +1,14 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; import com.annimon.stream.Collectors; import com.annimon.stream.Stream; import java.util.List; -import it.integry.integrywmsnative.core.REST.RESTBuilder; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.RESTBuilder; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.model.MtbAart; -import it.integry.integrywmsnative.core.utility.UtilityDB; import retrofit2.Call; import retrofit2.Callback; import retrofit2.Response; 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 similarity index 76% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ArticoloRESTConsumerService.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ArticoloRESTConsumerService.java index 5d476b84..adc6cefc 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 @@ -1,8 +1,6 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; -import java.util.List; - -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.model.MtbAart; import retrofit2.Call; import retrofit2.http.GET; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/BarcodeRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/BarcodeRESTConsumer.java similarity index 81% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/BarcodeRESTConsumer.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/BarcodeRESTConsumer.java index 7ba74db8..0a4eeff4 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/BarcodeRESTConsumer.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/BarcodeRESTConsumer.java @@ -1,10 +1,8 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; -import com.google.gson.JsonObject; - -import it.integry.integrywmsnative.core.REST.RESTBuilder; -import it.integry.integrywmsnative.core.REST.model.Ean128Model; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.RESTBuilder; +import it.integry.integrywmsnative.core.rest.model.Ean128Model; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.plugins.barcode_base_library.model.BarcodeScanDTO; import retrofit2.Call; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/BarcodeRESTConsumerService.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/BarcodeRESTConsumerService.java new file mode 100644 index 00000000..7bf802d8 --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/BarcodeRESTConsumerService.java @@ -0,0 +1,14 @@ +package it.integry.integrywmsnative.core.rest.consumers; + +import it.integry.integrywmsnative.core.rest.model.Ean128Model; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; +import retrofit2.Call; +import retrofit2.http.GET; +import retrofit2.http.Query; + +public interface BarcodeRESTConsumerService { + + @GET("decodeEan128") + Call> decodeEan128(@Query("ean128") String ean128); + +} 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 similarity index 94% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ColliMagazzinoRESTConsumer.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ColliMagazzinoRESTConsumer.java index e317ef75..f4bb9320 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 @@ -1,4 +1,7 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; + +import android.app.ProgressDialog; +import android.content.Context; import com.annimon.stream.Stream; import com.google.gson.Gson; @@ -8,14 +11,13 @@ import org.jetbrains.annotations.NotNull; import java.text.SimpleDateFormat; import java.util.ArrayList; -import java.util.Calendar; import java.util.Iterator; import java.util.List; import it.integry.integrywmsnative.core.CommonConst; -import it.integry.integrywmsnative.core.REST.RESTBuilder; -import it.integry.integrywmsnative.core.REST.model.DistribuzioneColloDTO; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.RESTBuilder; +import it.integry.integrywmsnative.core.rest.model.DistribuzioneColloDTO; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.model.CommonModelConsts; import it.integry.integrywmsnative.core.model.MtbAart; @@ -23,8 +25,9 @@ import it.integry.integrywmsnative.core.model.MtbColr; import it.integry.integrywmsnative.core.model.MtbColt; import it.integry.integrywmsnative.core.model.MtbDepoPosizione; import it.integry.integrywmsnative.core.model.secondary.GestioneEnum; -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.core.utility.UtilityExceptions; import it.integry.integrywmsnative.core.utility.UtilityString; import it.integry.plugins.barcode_base_library.model.BarcodeScanDTO; import retrofit2.Call; @@ -453,5 +456,23 @@ public class ColliMagazzinoRESTConsumer extends _BaseRESTConsumer{ + public static void updateDataFine(Context context, ProgressDialog progress, MtbColt mtbColt, Runnable onComplete) { + + MtbColt cloneMtbColt = (MtbColt) mtbColt.clone(); + cloneMtbColt.setOperation(CommonModelConsts.OPERATION.UPDATE); + cloneMtbColt.setOraFinePrep(UtilityDate.getDateInstance()); + + + ColliMagazzinoRESTConsumer.saveCollo(cloneMtbColt, value -> { + onComplete.run(); + }, ex -> { + UtilityExceptions.defaultException(context, ex, progress); + }); + + } + + + + } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ColliMagazzinoRESTConsumerService.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ColliMagazzinoRESTConsumerService.java similarity index 64% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ColliMagazzinoRESTConsumerService.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ColliMagazzinoRESTConsumerService.java index 7fb6d6d5..e5471436 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ColliMagazzinoRESTConsumerService.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ColliMagazzinoRESTConsumerService.java @@ -1,17 +1,12 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; import com.google.gson.JsonObject; -import java.util.List; - -import it.integry.integrywmsnative.core.REST.model.DistribuzioneColloDTO; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; -import it.integry.integrywmsnative.core.model.MtbColr; +import it.integry.integrywmsnative.core.rest.model.DistribuzioneColloDTO; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.model.MtbColt; -import it.integry.integrywmsnative.core.model.MtbDepoPosizione; import retrofit2.Call; import retrofit2.http.Body; -import retrofit2.http.GET; import retrofit2.http.POST; import retrofit2.http.Query; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/DepositoRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/DepositoRESTConsumer.java similarity index 94% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/DepositoRESTConsumer.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/DepositoRESTConsumer.java index 1f019140..e1a8d5ee 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/DepositoRESTConsumer.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/DepositoRESTConsumer.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; import java.util.List; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/EntityRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/EntityRESTConsumer.java similarity index 95% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/EntityRESTConsumer.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/EntityRESTConsumer.java index 8995ffd4..4d58dc69 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/EntityRESTConsumer.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/EntityRESTConsumer.java @@ -1,9 +1,8 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; import android.util.Log; import com.google.gson.Gson; -import com.google.gson.JsonArray; import com.google.gson.JsonObject; import com.google.gson.reflect.TypeToken; @@ -11,11 +10,10 @@ import java.lang.reflect.Type; import java.util.ArrayList; import java.util.List; -import it.integry.integrywmsnative.core.REST.RESTBuilder; -import it.integry.integrywmsnative.core.REST.model.EsitoType; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.RESTBuilder; +import it.integry.integrywmsnative.core.rest.model.EsitoType; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.model.EntityBase; -import it.integry.integrywmsnative.core.model.MtbColt; import retrofit2.Call; import retrofit2.Callback; import retrofit2.Response; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/EntityRESTConsumerService.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/EntityRESTConsumerService.java similarity index 73% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/EntityRESTConsumerService.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/EntityRESTConsumerService.java index e9fc7319..b0490457 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/EntityRESTConsumerService.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/EntityRESTConsumerService.java @@ -1,12 +1,11 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; import com.google.gson.JsonObject; import java.util.List; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; -import it.integry.integrywmsnative.core.model.EntityBase; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import retrofit2.Call; import retrofit2.http.Body; import retrofit2.http.POST; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/GestSetupRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/GestSetupRESTConsumer.java similarity index 92% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/GestSetupRESTConsumer.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/GestSetupRESTConsumer.java index e7f137fa..2f5eb010 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/GestSetupRESTConsumer.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/GestSetupRESTConsumer.java @@ -1,10 +1,10 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; import android.util.Log; -import it.integry.integrywmsnative.core.REST.RESTBuilder; -import it.integry.integrywmsnative.core.REST.model.GestSetupDTO; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.RESTBuilder; +import it.integry.integrywmsnative.core.rest.model.GestSetupDTO; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.utility.UtilityLogger; import retrofit2.Call; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/GestSetupRESTConsumerService.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/GestSetupRESTConsumerService.java similarity index 69% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/GestSetupRESTConsumerService.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/GestSetupRESTConsumerService.java index 3ae911c7..051b2c12 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/GestSetupRESTConsumerService.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/GestSetupRESTConsumerService.java @@ -1,10 +1,7 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; -import java.util.List; - -import it.integry.integrywmsnative.core.REST.model.AvailableCodMdepsDTO; -import it.integry.integrywmsnative.core.REST.model.GestSetupDTO; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.model.GestSetupDTO; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import retrofit2.Call; import retrofit2.http.GET; import retrofit2.http.Query; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ISimpleOperationCallback.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ISimpleOperationCallback.java similarity index 67% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ISimpleOperationCallback.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ISimpleOperationCallback.java index 3c61004f..ba8a6b72 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ISimpleOperationCallback.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/ISimpleOperationCallback.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; public interface ISimpleOperationCallback { diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/PosizioniRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PosizioniRESTConsumer.java similarity index 93% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/PosizioniRESTConsumer.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PosizioniRESTConsumer.java index ac8c503d..875936ee 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/PosizioniRESTConsumer.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PosizioniRESTConsumer.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; import com.google.gson.reflect.TypeToken; @@ -6,8 +6,8 @@ import java.lang.reflect.Type; import java.util.ArrayList; import java.util.List; -import it.integry.integrywmsnative.core.REST.RESTBuilder; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.RESTBuilder; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.model.MtbColt; import it.integry.integrywmsnative.core.model.MtbDepoPosizione; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/PosizioniRESTConsumerService.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PosizioniRESTConsumerService.java similarity index 75% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/PosizioniRESTConsumerService.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PosizioniRESTConsumerService.java index 4406a07f..f61efcc4 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/PosizioniRESTConsumerService.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PosizioniRESTConsumerService.java @@ -1,8 +1,8 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; import java.util.List; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.model.MtbDepoPosizione; import retrofit2.Call; import retrofit2.http.GET; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/PrinterRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PrinterRESTConsumer.java similarity index 93% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/PrinterRESTConsumer.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PrinterRESTConsumer.java index 3ddaf3ef..9d38a097 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/PrinterRESTConsumer.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PrinterRESTConsumer.java @@ -1,16 +1,15 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; import android.util.Log; import java.util.List; -import it.integry.integrywmsnative.core.REST.RESTBuilder; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.RESTBuilder; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.exception.printer.PrinterNotFoundException; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.model.MtbColt; import it.integry.integrywmsnative.core.utility.UtilityLogger; -import it.integry.integrywmsnative.core.utility.UtilityServer; import it.integry.integrywmsnative.core.utility.UtilityString; import retrofit2.Call; import retrofit2.Callback; @@ -71,7 +70,7 @@ public class PrinterRESTConsumer extends _BaseRESTConsumer { } - public static void getAvailablePrinters(String codMdep, Type printerType, final ISimpleOperationCallback> callback) { + public static void getAvailablePrinters(String codMdep, Type printerType, RunnableArgs> onComplete, RunnableArgs onFailed) { String printerTypeStr = printerType != null ? printerType.toString() : null; @@ -79,14 +78,14 @@ public class PrinterRESTConsumer extends _BaseRESTConsumer { printerService.getAvailablePrinters(codMdep, printerTypeStr).enqueue(new Callback>>() { @Override public void onResponse(Call>> call, Response>> response) { - analyzeAnswer(response, "GetAvailablePrinters", callback); + analyzeAnswer(response, "GetAvailablePrinters", onComplete, onFailed); } @Override public void onFailure(Call>> call, Throwable t) { Log.e("GetAvailablePrinters", t.toString()); UtilityLogger.errorMe(new Exception(t)); - callback.onFailed(new Exception(t)); + onFailed.run(new Exception(t)); } }); } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/PrinterRESTConsumerService.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PrinterRESTConsumerService.java similarity index 83% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/PrinterRESTConsumerService.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PrinterRESTConsumerService.java index 63ef3b2d..e9067533 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/PrinterRESTConsumerService.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PrinterRESTConsumerService.java @@ -1,13 +1,11 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; import java.util.List; -import it.integry.integrywmsnative.core.REST.model.AvailableCodMdepsDTO; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import retrofit2.Call; import retrofit2.http.Field; import retrofit2.http.FormUrlEncoded; -import retrofit2.http.GET; import retrofit2.http.POST; import retrofit2.http.Query; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/SystemRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/SystemRESTConsumer.java similarity index 94% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/SystemRESTConsumer.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/SystemRESTConsumer.java index c9d083f1..bd75142f 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/SystemRESTConsumer.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/SystemRESTConsumer.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; import android.text.TextUtils; import android.util.Log; @@ -16,14 +16,13 @@ import java.util.List; import it.integry.integrywmsnative.BuildConfig; import it.integry.integrywmsnative.core.CommonConst; -import it.integry.integrywmsnative.core.REST.RESTBuilder; -import it.integry.integrywmsnative.core.REST.model.AvailableCodMdepsDTO; -import it.integry.integrywmsnative.core.REST.model.MailRequestDTO; -import it.integry.integrywmsnative.core.REST.model.NativeSqlRequestDTO; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.RESTBuilder; +import it.integry.integrywmsnative.core.rest.model.AvailableCodMdepsDTO; +import it.integry.integrywmsnative.core.rest.model.MailRequestDTO; +import it.integry.integrywmsnative.core.rest.model.NativeSqlRequestDTO; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.model.Azienda; -import it.integry.integrywmsnative.core.model.MtbColt; import it.integry.integrywmsnative.core.settings.SettingsManager; import it.integry.integrywmsnative.core.utility.UtilityLogger; import it.integry.integrywmsnative.core.utility.UtilityString; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/SystemRESTConsumerService.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/SystemRESTConsumerService.java similarity index 70% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/SystemRESTConsumerService.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/SystemRESTConsumerService.java index 4ad90c04..5330f0d7 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/SystemRESTConsumerService.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/SystemRESTConsumerService.java @@ -1,11 +1,11 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; import java.util.List; -import it.integry.integrywmsnative.core.REST.model.AvailableCodMdepsDTO; -import it.integry.integrywmsnative.core.REST.model.MailRequestDTO; -import it.integry.integrywmsnative.core.REST.model.NativeSqlRequestDTO; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.model.AvailableCodMdepsDTO; +import it.integry.integrywmsnative.core.rest.model.MailRequestDTO; +import it.integry.integrywmsnative.core.rest.model.NativeSqlRequestDTO; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import retrofit2.Call; import retrofit2.http.Body; import retrofit2.http.GET; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/_BaseRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/_BaseRESTConsumer.java similarity index 94% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/_BaseRESTConsumer.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/_BaseRESTConsumer.java index 18e96950..ba413697 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/_BaseRESTConsumer.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/_BaseRESTConsumer.java @@ -1,12 +1,12 @@ -package it.integry.integrywmsnative.core.REST.consumers; +package it.integry.integrywmsnative.core.rest.consumers; import android.util.Log; import java.util.List; -import it.integry.integrywmsnative.core.REST.CommonRESTException; -import it.integry.integrywmsnative.core.REST.model.EsitoType; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.CommonRESTException; +import it.integry.integrywmsnative.core.rest.model.EsitoType; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.utility.UtilityString; import retrofit2.Response; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/rest/deserializer/DateDeserializer.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/deserializer/DateDeserializer.java new file mode 100644 index 00000000..5b286de1 --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/deserializer/DateDeserializer.java @@ -0,0 +1,21 @@ +package it.integry.integrywmsnative.core.rest.deserializer; + +import com.google.gson.JsonDeserializationContext; +import com.google.gson.JsonDeserializer; +import com.google.gson.JsonElement; +import com.google.gson.JsonParseException; + +import java.lang.reflect.Type; +import java.util.Date; + +import it.integry.integrywmsnative.core.utility.UtilityDate; + +public class DateDeserializer implements JsonDeserializer { + + @Override + public Date deserialize(JsonElement element, Type arg1, JsonDeserializationContext arg2) throws JsonParseException { + String date = element.getAsString(); + + return UtilityDate.recognizeDateWithExceptionHandler(date); + } +} diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/AvailableCodMdepsDTO.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/AvailableCodMdepsDTO.java similarity index 89% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/model/AvailableCodMdepsDTO.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/model/AvailableCodMdepsDTO.java index befd7941..e26407cd 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/AvailableCodMdepsDTO.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/AvailableCodMdepsDTO.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.core.REST.model; +package it.integry.integrywmsnative.core.rest.model; public class AvailableCodMdepsDTO { diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/DistribuzioneColloDTO.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/DistribuzioneColloDTO.java similarity index 97% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/model/DistribuzioneColloDTO.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/model/DistribuzioneColloDTO.java index a67a4428..2166bc46 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/DistribuzioneColloDTO.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/DistribuzioneColloDTO.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.core.REST.model; +package it.integry.integrywmsnative.core.rest.model; public class DistribuzioneColloDTO { diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/rest/model/ConsegnaClienteDTO.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/DocumentoResoDTO.java similarity index 56% rename from app/src/main/java/it/integry/integrywmsnative/gest/vendita/rest/model/ConsegnaClienteDTO.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/model/DocumentoResoDTO.java index c6331a23..4d92d720 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/rest/model/ConsegnaClienteDTO.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/DocumentoResoDTO.java @@ -1,15 +1,11 @@ -package it.integry.integrywmsnative.gest.vendita.rest.model; +package it.integry.integrywmsnative.core.rest.model; -import java.text.ParseException; -import java.text.SimpleDateFormat; import java.util.Date; -import it.integry.integrywmsnative.core.exception.DateNotRecognizedException; -import it.integry.integrywmsnative.core.exception.TimeNotRecognizedException; +import it.integry.integrywmsnative.core.di.BindableBoolean; import it.integry.integrywmsnative.core.utility.UtilityDate; -import it.integry.integrywmsnative.core.utility.UtilityLogger; -public class ConsegnaClienteDTO { +public class DocumentoResoDTO { private String codAnag; private int counterConsegna; @@ -23,13 +19,24 @@ public class ConsegnaClienteDTO { private String compilatoDa; private String rifOrd; private String dataOrd; + private Integer numOrd; private String dataInizTrasp; + private String gestione; + private String codMdep; + + + public BindableBoolean selected; + + public DocumentoResoDTO() { + this.selected = new BindableBoolean(false); + } + public String getCodAnag() { return codAnag; } - public ConsegnaClienteDTO setCodAnag(String codAnag) { + public DocumentoResoDTO setCodAnag(String codAnag) { this.codAnag = codAnag; return this; } @@ -38,7 +45,7 @@ public class ConsegnaClienteDTO { return counterConsegna; } - public ConsegnaClienteDTO setCounterConsegna(int counterConsegna) { + public DocumentoResoDTO setCounterConsegna(int counterConsegna) { this.counterConsegna = counterConsegna; return this; } @@ -47,7 +54,7 @@ public class ConsegnaClienteDTO { return codDtip; } - public ConsegnaClienteDTO setCodDtip(String codDtip) { + public DocumentoResoDTO setCodDtip(String codDtip) { this.codDtip = codDtip; return this; } @@ -60,7 +67,7 @@ public class ConsegnaClienteDTO { return UtilityDate.recognizeDateWithExceptionHandler(getDataDocS()); } - public ConsegnaClienteDTO setDataDoc(String dataDoc) { + public DocumentoResoDTO setDataDoc(String dataDoc) { this.dataDoc = dataDoc; return this; } @@ -69,7 +76,7 @@ public class ConsegnaClienteDTO { return serDoc; } - public ConsegnaClienteDTO setSerDoc(String serDoc) { + public DocumentoResoDTO setSerDoc(String serDoc) { this.serDoc = serDoc; return this; } @@ -78,7 +85,7 @@ public class ConsegnaClienteDTO { return numDoc; } - public ConsegnaClienteDTO setNumDoc(int numDoc) { + public DocumentoResoDTO setNumDoc(int numDoc) { this.numDoc = numDoc; return this; } @@ -87,7 +94,7 @@ public class ConsegnaClienteDTO { return destinatario; } - public ConsegnaClienteDTO setDestinatario(String destinatario) { + public DocumentoResoDTO setDestinatario(String destinatario) { this.destinatario = destinatario; return this; } @@ -96,7 +103,7 @@ public class ConsegnaClienteDTO { return indirizzo; } - public ConsegnaClienteDTO setIndirizzo(String indirizzo) { + public DocumentoResoDTO setIndirizzo(String indirizzo) { this.indirizzo = indirizzo; return this; } @@ -105,7 +112,7 @@ public class ConsegnaClienteDTO { return ragSoc; } - public ConsegnaClienteDTO setRagSoc(String ragSoc) { + public DocumentoResoDTO setRagSoc(String ragSoc) { this.ragSoc = ragSoc; return this; } @@ -114,7 +121,7 @@ public class ConsegnaClienteDTO { return compilatoDa; } - public ConsegnaClienteDTO setCompilatoDa(String compilatoDa) { + public DocumentoResoDTO setCompilatoDa(String compilatoDa) { this.compilatoDa = compilatoDa; return this; } @@ -123,7 +130,7 @@ public class ConsegnaClienteDTO { return rifOrd; } - public ConsegnaClienteDTO setRifOrd(String rifOrd) { + public DocumentoResoDTO setRifOrd(String rifOrd) { this.rifOrd = rifOrd; return this; } @@ -137,11 +144,20 @@ public class ConsegnaClienteDTO { } - public ConsegnaClienteDTO setDataOrd(String dataOrd) { + public DocumentoResoDTO setDataOrd(String dataOrd) { this.dataOrd = dataOrd; return this; } + public Integer getNumOrd() { + return numOrd; + } + + public DocumentoResoDTO setNumOrd(Integer numOrd) { + this.numOrd = numOrd; + return this; + } + public String getDataInizTraspS() { return dataInizTrasp; } @@ -150,8 +166,39 @@ public class ConsegnaClienteDTO { return UtilityDate.recognizeDateWithExceptionHandler(getDataInizTraspS()); } - public ConsegnaClienteDTO setDataInizTrasp(String dataInizTrasp) { + public DocumentoResoDTO setDataInizTrasp(String dataInizTrasp) { this.dataInizTrasp = dataInizTrasp; return this; } + + public BindableBoolean getSelected() { + return this.selected; + } + + public boolean isSelected() { + return this.selected.get(); + } + + public DocumentoResoDTO setSelected(boolean selected) { + this.selected.set(selected); + return this; + } + + public String getGestione() { + return gestione; + } + + public DocumentoResoDTO setGestione(String gestione) { + this.gestione = gestione; + return this; + } + + public String getCodMdep() { + return codMdep; + } + + public DocumentoResoDTO setCodMdep(String codMdep) { + this.codMdep = codMdep; + return this; + } } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/Ean128Model.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/Ean128Model.java similarity index 99% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/model/Ean128Model.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/model/Ean128Model.java index 99a78afb..6ada378c 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/Ean128Model.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/Ean128Model.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.core.REST.model; +package it.integry.integrywmsnative.core.rest.model; public class Ean128Model { diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/Ean13PesoModel.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/Ean13PesoModel.java similarity index 95% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/model/Ean13PesoModel.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/model/Ean13PesoModel.java index c5436078..3263a3d7 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/Ean13PesoModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/Ean13PesoModel.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.core.REST.model; +package it.integry.integrywmsnative.core.rest.model; public class Ean13PesoModel { diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/EsitoType.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/EsitoType.java similarity index 91% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/model/EsitoType.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/model/EsitoType.java index 394da0ed..d9244d8c 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/EsitoType.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/EsitoType.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.core.REST.model; +package it.integry.integrywmsnative.core.rest.model; /** * Created by GiuseppeS on 06/03/2018. diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/GestSetupDTO.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/GestSetupDTO.java similarity index 51% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/model/GestSetupDTO.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/model/GestSetupDTO.java index 8e883c04..1437a7d9 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/GestSetupDTO.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/GestSetupDTO.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.core.REST.model; +package it.integry.integrywmsnative.core.rest.model; public class GestSetupDTO { diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/MailRequestDTO.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/MailRequestDTO.java similarity index 97% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/model/MailRequestDTO.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/model/MailRequestDTO.java index c2d3989a..ed282c3b 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/MailRequestDTO.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/MailRequestDTO.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.core.REST.model; +package it.integry.integrywmsnative.core.rest.model; public class MailRequestDTO { diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/NativeSqlRequestDTO.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/NativeSqlRequestDTO.java similarity index 56% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/model/NativeSqlRequestDTO.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/model/NativeSqlRequestDTO.java index 36110c61..5684b5a9 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/NativeSqlRequestDTO.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/NativeSqlRequestDTO.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.core.REST.model; +package it.integry.integrywmsnative.core.rest.model; public class NativeSqlRequestDTO { diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/ServiceRESTResponse.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/ServiceRESTResponse.java similarity index 71% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/model/ServiceRESTResponse.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/model/ServiceRESTResponse.java index e8e8b0bb..0f06e9af 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/model/ServiceRESTResponse.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/ServiceRESTResponse.java @@ -1,10 +1,10 @@ -package it.integry.integrywmsnative.core.REST.model; +package it.integry.integrywmsnative.core.rest.model; -import java.text.ParseException; -import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; +import it.integry.integrywmsnative.core.utility.UtilityDate; + /** * Created by GiuseppeS on 06/03/2018. */ @@ -25,12 +25,7 @@ public class ServiceRESTResponse { } public Date getExecDate() { - try { - return new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").parse(execDate); - } catch (Exception e) { - e.printStackTrace(); - } - return null; + return UtilityDate.recognizeDateWithExceptionHandler(execDate); } public String getProfileDB() { diff --git a/app/src/main/java/it/integry/integrywmsnative/core/rest/model/SlackMessageDTO.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/SlackMessageDTO.java new file mode 100644 index 00000000..2efbf28e --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/model/SlackMessageDTO.java @@ -0,0 +1,4 @@ +package it.integry.integrywmsnative.core.rest.model; + +public class SlackMessageDTO { +} 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 similarity index 96% rename from app/src/main/java/it/integry/integrywmsnative/core/REST/watcher/ServerStatusChecker.java rename to app/src/main/java/it/integry/integrywmsnative/core/rest/watcher/ServerStatusChecker.java index 3ce343db..e3996587 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 @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.core.REST.watcher; +package it.integry.integrywmsnative.core.rest.watcher; import android.os.Handler; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/settings/DBSettingsModel.java b/app/src/main/java/it/integry/integrywmsnative/core/settings/DBSettingsModel.java index e7020a28..5a64a1c4 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/settings/DBSettingsModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/settings/DBSettingsModel.java @@ -2,10 +2,9 @@ package it.integry.integrywmsnative.core.settings; import java.util.List; -import it.integry.integrywmsnative.core.REST.model.AvailableCodMdepsDTO; -import it.integry.integrywmsnative.core.REST.model.DistribuzioneColloDTO; +import it.integry.integrywmsnative.core.rest.model.AvailableCodMdepsDTO; +import it.integry.integrywmsnative.core.rest.model.DistribuzioneColloDTO; import it.integry.integrywmsnative.core.model.Azienda; -import it.integry.integrywmsnative.core.model.MtbDepo; import it.integry.integrywmsnative.core.model.MtbDepoPosizione; public class DBSettingsModel { diff --git a/app/src/main/java/it/integry/integrywmsnative/core/settings/SettingsManager.java b/app/src/main/java/it/integry/integrywmsnative/core/settings/SettingsManager.java index f5525c3e..6f8e4ded 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/settings/SettingsManager.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/settings/SettingsManager.java @@ -8,12 +8,11 @@ import java.net.SocketTimeoutException; import java.util.List; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.GestSetupRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.consumers.PosizioniRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.SystemRESTConsumer; -import it.integry.integrywmsnative.core.REST.model.AvailableCodMdepsDTO; +import it.integry.integrywmsnative.core.rest.consumers.GestSetupRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; +import it.integry.integrywmsnative.core.rest.consumers.PosizioniRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer; +import it.integry.integrywmsnative.core.rest.model.AvailableCodMdepsDTO; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.utility.UtilityFirebase; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/settings/SettingsModel.java b/app/src/main/java/it/integry/integrywmsnative/core/settings/SettingsModel.java index e60fed84..bf520924 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/settings/SettingsModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/settings/SettingsModel.java @@ -1,6 +1,6 @@ package it.integry.integrywmsnative.core.settings; -import it.integry.integrywmsnative.core.REST.model.AvailableCodMdepsDTO; +import it.integry.integrywmsnative.core.rest.model.AvailableCodMdepsDTO; public class SettingsModel { 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 615ff2e3..88a572ac 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 @@ -16,7 +16,7 @@ public class UtilityBarcode { } public static boolean isEtichettaAnonimaOfCurrentYear(String barcode) { - Calendar calendar = Calendar.getInstance(); + Calendar calendar = UtilityDate.getCalendarInstance(); int currentYear = calendar.get(Calendar.YEAR); String fullYear = "20" + UtilityBarcode.getAnnoColloFromULAnonima(barcode); diff --git a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityDB.java b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityDB.java index ef3861b9..c80cc30e 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityDB.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityDB.java @@ -7,7 +7,6 @@ public class UtilityDB { public static String valueToString(Object value) { String valueString; - SimpleDateFormat dateFormatFile = new SimpleDateFormat("yyyy-MM-dd"); if (value == null) { valueString = "NULL"; @@ -22,7 +21,8 @@ public class UtilityDB { valueString = "'" + valueString.replaceAll("'","''") + "'"; } } else if (value instanceof Date){ - valueString = "'" + dateFormatFile.format(value) + "'"; + + valueString = "'" + UtilityDate.formatDate((Date) value, UtilityDate.COMMONS_DATE_FORMATS.YMD_DASH) + "'"; } else if (value instanceof Integer) { } else { diff --git a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityDate.java b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityDate.java index 73fc5a39..5aee048c 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityDate.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityDate.java @@ -2,7 +2,10 @@ package it.integry.integrywmsnative.core.utility; import java.text.ParseException; import java.text.SimpleDateFormat; +import java.time.ZoneId; +import java.util.Calendar; import java.util.Date; +import java.util.TimeZone; import it.integry.integrywmsnative.core.exception.DateNotRecognizedException; import it.integry.integrywmsnative.core.exception.TimeNotRecognizedException; @@ -16,8 +19,9 @@ public class UtilityDate { public static class COMMONS_DATE_FORMATS { public static final String DMY_SLASH = "dd/MM/yyyy"; public static final String YMD_SLASH = "yyyy/MM/dd"; - public static final String DMY_TIME_SLASH = DMY_SLASH + " hh:mm"; - public static final String YMD_TIME_SLASH = YMD_SLASH + " hh:mm"; + public static final String YMD_DASH = "yyyy-MM-dd"; + public static final String DMY_TIME_SLASH = DMY_SLASH + " hh:mm:ss"; + public static final String YMD_TIME_SLASH = YMD_SLASH + " hh:mm:ss"; public static final String DM_HUMAN = "dd MMM"; @@ -74,11 +78,27 @@ public class UtilityDate { format = new SimpleDateFormat(dateFormatString); } + format.setTimeZone(TimeZone.getTimeZone("Europe/Rome")); + return format.parse(dateString); } public static String formatDate(Date dateToFormat, String format) { - return new SimpleDateFormat(format).format(dateToFormat); + if(dateToFormat != null) { + SimpleDateFormat sdf = new SimpleDateFormat(format); + sdf.setTimeZone(TimeZone.getTimeZone("Europe/Rome")); + return sdf.format(dateToFormat); + } + else return null; + } + + + public static Date getDateInstance() { + return getCalendarInstance().getTime(); + } + + public static Calendar getCalendarInstance() { + return Calendar.getInstance(TimeZone.getTimeZone("Europe/Rome")); } } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityExceptions.java b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityExceptions.java index cb3dcbce..de25868a 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityExceptions.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityExceptions.java @@ -8,7 +8,7 @@ import com.crashlytics.android.Crashlytics; import com.orhanobut.logger.Logger; import it.integry.integrywmsnative.BuildConfig; -import it.integry.integrywmsnative.core.REST.CommonRESTException; +import it.integry.integrywmsnative.core.rest.CommonRESTException; import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper; public class UtilityExceptions { diff --git a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityLogger.java b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityLogger.java index 6c379f4d..7622df95 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityLogger.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityLogger.java @@ -5,11 +5,9 @@ import com.orhanobut.logger.Logger; import java.io.PrintWriter; import java.io.StringWriter; import java.net.SocketTimeoutException; -import java.text.SimpleDateFormat; -import java.util.Date; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.SystemRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.settings.SettingsManager; @@ -55,8 +53,7 @@ public class UtilityLogger { String currentAzienda = UtilityString.isNullOrEmpty(SettingsManager.i().userSession.profileDB) ? "" : SettingsManager.i().userSession.profileDB; message = message.replace("#azienda_nome#", currentAzienda); - SimpleDateFormat sdf = new SimpleDateFormat("dd MMM yyyy HH:mm:ss"); - message = message.replace("#current_date#", sdf.format(new Date())); + message = message.replace("#current_date#", UtilityDate.formatDate(UtilityDate.getDateInstance(), UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH)); SystemRESTConsumer.sendErrorLogMail(message, onComplete, onFailed); } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityNumber.java b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityNumber.java index e5c0d2fd..041f18c0 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityNumber.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityNumber.java @@ -1,5 +1,7 @@ package it.integry.integrywmsnative.core.utility; +import com.google.android.gms.common.internal.service.Common; + import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.DecimalFormatSymbols; @@ -13,12 +15,12 @@ public class UtilityNumber { public static String decimalToString(Float bigDecimal){ if(bigDecimal == null) return "0"; - return decimalToString(bigDecimal, 3); + return decimalToString(bigDecimal, CommonConst.Config.NUMBER_OF_DECIMAL_DIGITS); } public static String decimalToString(BigDecimal bigDecimal){ if(bigDecimal == null) return "0"; - return decimalToString(bigDecimal, 3); + return decimalToString(bigDecimal, CommonConst.Config.NUMBER_OF_DECIMAL_DIGITS); } public static String decimalToString(BigDecimal bigDecimal, int decimal){ @@ -67,4 +69,20 @@ public class UtilityNumber { return numberString.replaceAll(",", "."); } + + + + public static Float decimalToFloat(BigDecimal bigDecimalValue) { + float multiplier = (float) Math.pow(10, CommonConst.Config.NUMBER_OF_DECIMAL_DIGITS); + + Float floatValue = null; + + if(bigDecimalValue != null) { + int intValue = (int) (bigDecimalValue.floatValue() * multiplier); + floatValue = Float.valueOf(intValue / multiplier); + } + + return floatValue; + } + } 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 7cadd3bb..e018cc91 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 @@ -25,7 +25,7 @@ import java.util.List; import java.util.concurrent.atomic.AtomicInteger; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.CommonRESTException; +import it.integry.integrywmsnative.core.rest.CommonRESTException; import it.integry.integrywmsnative.core.data_cache.DataCache; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.interfaces.ISearcableFragment; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/core/AccettazioneHelper.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/core/AccettazioneHelper.java index 0e91a02a..860fe92e 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/core/AccettazioneHelper.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/core/AccettazioneHelper.java @@ -9,9 +9,9 @@ import com.annimon.stream.Stream; import java.util.ArrayList; import java.util.List; -import it.integry.integrywmsnative.core.REST.RESTBuilder; -import it.integry.integrywmsnative.core.REST.model.EsitoType; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.RESTBuilder; +import it.integry.integrywmsnative.core.rest.model.EsitoType; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.settings.SettingsManager; import it.integry.integrywmsnative.core.utility.UtilityLogger; 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 855b54a2..1dcf6003 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 @@ -13,6 +13,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; +import it.integry.integrywmsnative.core.utility.UtilityDate; /** * Created by GiuseppeS on 06/03/2018. @@ -138,17 +139,12 @@ public class OrdineAccettazioneDTO implements Parcelable { return dataCons; } - public Date getDataOrd() { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - Date dataOrd = null; + public String getDataOrdS() { + return this.dataOrd; + } - try{ - dataOrd = sdf.parse(this.dataOrd); - } catch (Exception ex) { - Log.e("Parsing date", ex.getMessage()); - } - - return dataOrd; + public Date getDataOrdD() { + return UtilityDate.recognizeDateWithExceptionHandler(getDataOrdS()); } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/rest/OrdiniAccettazioneRESTConsumerService.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/rest/OrdiniAccettazioneRESTConsumerService.java index b98162fa..f15e4453 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/rest/OrdiniAccettazioneRESTConsumerService.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/rest/OrdiniAccettazioneRESTConsumerService.java @@ -2,12 +2,11 @@ package it.integry.integrywmsnative.gest.accettazione.rest; import java.util.List; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.gest.accettazione.dto.OrdineAccettazioneDTO; import it.integry.integrywmsnative.gest.accettazione.dto.OrdineAccettazioneInevasoDTO; import retrofit2.Call; import retrofit2.http.GET; -import retrofit2.http.POST; import retrofit2.http.Query; /** 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 88c69e1a..7824542e 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 @@ -11,11 +11,13 @@ import java.util.ArrayList; import java.util.List; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.PrinterRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer; import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.data_cache.DataCache; import it.integry.integrywmsnative.core.model.MtbColt; +import it.integry.integrywmsnative.core.model.secondary.GestioneEnum; +import it.integry.integrywmsnative.core.report.ReportManager; import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.databinding.ActivityAccettazioneOrdineInevasoBinding; import it.integry.integrywmsnative.databinding.FragmentArticoliInColloBottomSheetBinding; @@ -110,7 +112,7 @@ public class AccettazioneOrdineInevasoActivity extends AppCompatActivity { public void startListaBancaliRegistratiActivity(ArrayList mtbColts){ - Intent myIntent = ListaBancaliActivity.createIntent(this, mtbColts, false, PrinterRESTConsumer.Type.SECONDARIA); + Intent myIntent = ListaBancaliActivity.createIntent(this, mtbColts, false, PrinterRESTConsumer.Type.SECONDARIA, ReportManager.getRightReportNameByGestione(GestioneEnum.ACQUISTO)); this.startActivityForResult(myIntent, PICK_UL_REQUEST); } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/core/AccettazioneOrdineInevasoHelper.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/core/AccettazioneOrdineInevasoHelper.java index b13e0536..87593149 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/core/AccettazioneOrdineInevasoHelper.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/core/AccettazioneOrdineInevasoHelper.java @@ -15,6 +15,7 @@ import java.util.List; import it.integry.integrywmsnative.R; import it.integry.integrywmsnative.core.CommonConst; import it.integry.integrywmsnative.core.model.MtbColr; +import it.integry.integrywmsnative.core.utility.UtilityDate; import it.integry.integrywmsnative.core.utility.UtilityString; import it.integry.integrywmsnative.gest.accettazione.dto.OrdineAccettazioneDTO; import it.integry.integrywmsnative.gest.accettazione_ordine_inevaso.dto.AccettazioneOrdineInevasoListViewModel; @@ -299,8 +300,6 @@ public class AccettazioneOrdineInevasoHelper { BigDecimal currentQtaEvasa = item.getQtaRiservate().add(item.getQtaEvasa()); if(mtbColrs != null) { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - List filteredMtbColrs = Stream.of(mtbColrs) .filter(x -> x.getNumOrd() != null) .filter( @@ -308,7 +307,7 @@ public class AccettazioneOrdineInevasoHelper { (x.getCodJcom() != null && x.getCodJcom().equalsIgnoreCase(item.codJcom)) && x.getRigaOrd() == item.rigaOrd && x.getNumOrd() == item.numOrd && - x.getDataOrdS().equals(sdf.format(item.getDataOrd()))).toList(); + x.getDataOrdS().equals(UtilityDate.formatDate(item.getDataOrdD(), UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH))).toList(); for (MtbColr mtbColr : filteredMtbColrs) { diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/core/IOnOrdineAccettazioneRowDispatchCallback.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/core/IOnOrdineAccettazioneRowDispatchCallback.java index 91f1ee83..491ce7a0 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/core/IOnOrdineAccettazioneRowDispatchCallback.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/core/IOnOrdineAccettazioneRowDispatchCallback.java @@ -1,6 +1,6 @@ package it.integry.integrywmsnative.gest.accettazione_ordine_inevaso.core; -import it.integry.integrywmsnative.core.REST.model.Ean128Model; +import it.integry.integrywmsnative.core.rest.model.Ean128Model; import it.integry.integrywmsnative.gest.accettazione.dto.OrdineAccettazioneDTO; public interface IOnOrdineAccettazioneRowDispatchCallback { diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/rest/OrdineAccettazioneInevasoRESTConsumerService.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/rest/OrdineAccettazioneInevasoRESTConsumerService.java index b3713d82..8f836e69 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/rest/OrdineAccettazioneInevasoRESTConsumerService.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/rest/OrdineAccettazioneInevasoRESTConsumerService.java @@ -1,7 +1,5 @@ package it.integry.integrywmsnative.gest.accettazione_ordine_inevaso.rest; -import android.text.TextUtils; - import com.annimon.stream.Stream; import com.google.gson.reflect.TypeToken; @@ -10,8 +8,8 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.consumers.SystemRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; +import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.model.MtbColt; import it.integry.integrywmsnative.core.utility.UtilityDate; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOrdineAccettazioneInevasoViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOrdineAccettazioneInevasoViewModel.java index a83bc2cc..6a035df9 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOrdineAccettazioneInevasoViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOrdineAccettazioneInevasoViewModel.java @@ -12,20 +12,19 @@ import com.tfb.fbtoast.FBToast; import java.math.BigDecimal; import java.util.ArrayList; -import java.util.Date; import java.util.List; import java.util.Objects; import it.integry.integrywmsnative.R; import it.integry.integrywmsnative.core.CommonConst; -import it.integry.integrywmsnative.core.REST.consumers.ArticoloRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.BarcodeRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.GestSetupRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.consumers.PrinterRESTConsumer; -import it.integry.integrywmsnative.core.REST.model.Ean128Model; -import it.integry.integrywmsnative.core.REST.model.Ean13PesoModel; +import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.BarcodeRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.GestSetupRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; +import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer; +import it.integry.integrywmsnative.core.rest.model.Ean128Model; +import it.integry.integrywmsnative.core.rest.model.Ean13PesoModel; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.model.CommonModelConsts; @@ -203,7 +202,7 @@ public class AccettazioneOrdineAccettazioneInevasoViewModel implements IOnColloC List foundRows = Stream.of(groupedOrdini) .filter(x -> x.getNumOrd() == currentMtbColr.getNumOrd() && x.getRigaOrd() == currentMtbColr.getRigaOrd()&& - x.getDataOrd().equals(currentMtbColr.getDataOrdD())) + x.getDataOrdD().equals(currentMtbColr.getDataOrdD())) .toList(); */ @@ -657,7 +656,7 @@ public class AccettazioneOrdineAccettazioneInevasoViewModel implements IOnColloC MtbColt cloneMtbColt = (MtbColt) getColloRef().clone(); cloneMtbColt.setOperation(CommonModelConsts.OPERATION.UPDATE); - cloneMtbColt.setOraFinePrep(new Date()); + cloneMtbColt.setOraFinePrep(UtilityDate.getDateInstance()); ColliMagazzinoRESTConsumer.saveCollo(cloneMtbColt, new ISimpleOperationCallback() { @@ -683,9 +682,7 @@ public class AccettazioneOrdineAccettazioneInevasoViewModel implements IOnColloC return; } - PrinterRESTConsumer.getAvailablePrinters(SettingsManager.i().userSession.depo.getCodMdep(), PrinterRESTConsumer.Type.SECONDARIA, new ISimpleOperationCallback>() { - @Override - public void onSuccess(List value) { + PrinterRESTConsumer.getAvailablePrinters(SettingsManager.i().userSession.depo.getCodMdep(), PrinterRESTConsumer.Type.SECONDARIA, value -> { if(value.size() > 0) { try{ @@ -727,13 +724,9 @@ public class AccettazioneOrdineAccettazioneInevasoViewModel implements IOnColloC String errorMessage = "Nessuna stampante configurata"; DialogSimpleMessageHelper.makeWarningDialog(mActivity, new SpannableString(errorMessage), null, null).show(); } - } - - @Override - public void onFailed(Exception ex) { + }, ex -> { UtilityExceptions.defaultException(mActivity, ex, progress); - } - }); + }); } @@ -792,7 +785,7 @@ public class AccettazioneOrdineAccettazioneInevasoViewModel implements IOnColloC x.getMtbAart().getCodMart().equalsIgnoreCase(currentRow.getCodMart()) && x.getCodJcom().equalsIgnoreCase(currentRow.getCodJcom()) && x.getRigaOrd() == currentRow.getRigaOrd() && - x.getDataOrd().equals(currentRow.getDataOrdD()) && + x.getDataOrdD().equals(currentRow.getDataOrdD()) && x.getNumOrd() == currentRow.getNumOrd() ) .forEach(x -> x.setQtaRiservate(x.getQtaRiservate().add(currentRow.getQtaCol()))); @@ -912,7 +905,7 @@ public class AccettazioneOrdineAccettazioneInevasoViewModel implements IOnColloC .setQtaCol(quantityDTO.qtaTot.getBigDecimal()) .setDescrizione(item.getDescrizioneEstesa()) .setNumOrd(item.getNumOrd()) - .setDataOrd(item.getDataOrd()) + .setDataOrd(item.getDataOrdD()) .setGestioneRif(gestioneRif) .setCodJcom(item.getCodJcom()) .setRigaOrd(item.getRigaOrd()); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/contenuto_bancale/ContenutoBancaleActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/contenuto_bancale/ContenutoBancaleActivity.java index 98b37de3..2c75f894 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/contenuto_bancale/ContenutoBancaleActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/contenuto_bancale/ContenutoBancaleActivity.java @@ -8,12 +8,11 @@ import android.content.Intent; import android.os.Bundle; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.PrinterRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer; import it.integry.integrywmsnative.core.data_cache.DataCache; import it.integry.integrywmsnative.core.model.MtbColt; import it.integry.integrywmsnative.databinding.ActivityContenutoBancaleBinding; import it.integry.integrywmsnative.gest.contenuto_bancale.viewmodel.ContenutoBancaleViewModel; -import it.integry.integrywmsnative.gest.lista_bancali.ListaBancaliActivity; public class ContenutoBancaleActivity extends AppCompatActivity { @@ -25,9 +24,10 @@ public class ContenutoBancaleActivity extends AppCompatActivity { private static final String MtbColtKey = "mtbColtKey"; private static final String CanRecoverUL = "canRecoverUL"; private static final String PrinterType = "printerType"; + private static final String ReportName = "reportName"; } - public static Intent createIntent(Context context, MtbColt item, boolean canRecoverUl, PrinterRESTConsumer.Type printerType) { + public static Intent createIntent(Context context, MtbColt item, boolean canRecoverUl, PrinterRESTConsumer.Type printerType, String reportName) { Intent myIntent = new Intent(context, ContenutoBancaleActivity.class); String keyMtbColt = DataCache.addItem(item); @@ -39,9 +39,8 @@ public class ContenutoBancaleActivity extends AppCompatActivity { String keyPrinterType = DataCache.addItem(printerType); myIntent.putExtra(Key.PrinterType, keyPrinterType); -// myIntent.putExtra(Key.MtbColtKey, item); -// myIntent.putExtra(Key.CanRecoverUL, canRecoverUl); -// myIntent.putExtra(Key.PrinterType, printerType); + String keyReportName = DataCache.addItem(reportName); + myIntent.putExtra(Key.ReportName, keyReportName); return myIntent; } @@ -54,13 +53,11 @@ public class ContenutoBancaleActivity extends AppCompatActivity { boolean canRecoverUL = DataCache.retrieveItem(getIntent().getStringExtra(Key.CanRecoverUL)); MtbColt mtbColt = DataCache.retrieveItem(getIntent().getStringExtra(Key.MtbColtKey)); + String reportName = DataCache.retrieveItem(getIntent().getStringExtra(Key.ReportName)); PrinterRESTConsumer.Type mPrinterType = DataCache.retrieveItem(getIntent().getStringExtra(Key.PrinterType)); -// if(getIntent().hasExtra(Key.PrinterType)) { -// mPrinterType = (PrinterRESTConsumer.Type) getIntent().getSerializableExtra(Key.PrinterType); -// } else mPrinterType = null; - mViewModel = new ContenutoBancaleViewModel(this, mtbColt, canRecoverUL, mPrinterType); + mViewModel = new ContenutoBancaleViewModel(this, mtbColt, canRecoverUL, mPrinterType, reportName); bindings.elevatedToolbar.setNestedScrollView(bindings.scrollView); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/contenuto_bancale/viewmodel/ContenutoBancaleViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/contenuto_bancale/viewmodel/ContenutoBancaleViewModel.java index 5b8a3251..901c17f6 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/contenuto_bancale/viewmodel/ContenutoBancaleViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/contenuto_bancale/viewmodel/ContenutoBancaleViewModel.java @@ -9,12 +9,9 @@ import androidx.recyclerview.widget.DividerItemDecoration; import androidx.recyclerview.widget.LinearLayoutManager; import android.text.SpannableString; -import java.util.List; - import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.DepositoRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.consumers.PrinterRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.DepositoRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer; import it.integry.integrywmsnative.core.data_cache.DataCache; import it.integry.integrywmsnative.core.di.BindableString; import it.integry.integrywmsnative.core.interfaces.IRecyclerItemClicked; @@ -42,13 +39,15 @@ public class ContenutoBancaleViewModel implements IRecyclerItemClicked private ContenutoBancaleListAdapter mAdapter; private PrinterRESTConsumer.Type mPrinterType; + private String mReportName; - public ContenutoBancaleViewModel(ContenutoBancaleActivity context, MtbColt mtbColt, boolean canRecoverUL, PrinterRESTConsumer.Type printerType){ + public ContenutoBancaleViewModel(ContenutoBancaleActivity context, MtbColt mtbColt, boolean canRecoverUL, PrinterRESTConsumer.Type printerType, String defaultReportName){ mContext = context; this.mtbColt = new ObservableField<>(mtbColt); this.isFabVisible.set(true); this.isRecoverFabMenuVisible.set(canRecoverUL); this.mPrinterType = printerType; + this.mReportName = defaultReportName; mContext.bindings.setViewModel(this); @@ -102,15 +101,15 @@ public class ContenutoBancaleViewModel implements IRecyclerItemClicked final ProgressDialog progress = ProgressDialog.show(mContext, mContext.getText(R.string.waiting), mContext.getText(R.string.loading) + " ...", true); - PrinterRESTConsumer.getAvailablePrinters(SettingsManager.i().userSession.depo.getCodMdep(), mPrinterType, new ISimpleOperationCallback>() { - @Override - public void onSuccess(List value) { + PrinterRESTConsumer.getAvailablePrinters(SettingsManager.i().userSession.depo.getCodMdep(), mPrinterType, value -> { if(value.size() > 0) { try { ReportManager.getRightReportNameByGestione(mtbColt.get().getGestioneEnum(), reportName -> { + reportName = mReportName != null ? mReportName : reportName; + PrinterRESTConsumer.printCollo(value.get(0), mtbColt.get(), 1, @@ -134,13 +133,9 @@ public class ContenutoBancaleViewModel implements IRecyclerItemClicked String errorMessage = "Nessuna stampante configurata"; DialogSimpleMessageHelper.makeWarningDialog(mContext, new SpannableString(errorMessage), null, null).show(); } - } - - @Override - public void onFailed(Exception ex) { + }, ex -> { UtilityExceptions.defaultException(mContext, ex, progress); - } - }); + }); } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/lista_bancali/ListaBancaliActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/lista_bancali/ListaBancaliActivity.java index c5449a50..b034afea 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/lista_bancali/ListaBancaliActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/lista_bancali/ListaBancaliActivity.java @@ -10,7 +10,7 @@ import java.util.ArrayList; import java.util.List; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.PrinterRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer; import it.integry.integrywmsnative.core.data_cache.DataCache; import it.integry.integrywmsnative.core.model.MtbColt; import it.integry.integrywmsnative.databinding.ActivityListaBancaliBinding; @@ -23,6 +23,7 @@ public class ListaBancaliActivity extends AppCompatActivity { private static final String MtbColtsKey = "mtbColtsKey"; private static final String CanRecoverUL = "canRecoverUL"; private static final String PrinterType = "printerType"; + private static final String ReportName = "reportName"; } public ActivityListaBancaliBinding bindings; @@ -31,11 +32,30 @@ public class ListaBancaliActivity extends AppCompatActivity { private boolean mCanRecoverUl; private PrinterRESTConsumer.Type mPrinterType; + private String mReportName; private static final int PICK_UL_REQUEST = 1; // The request code + public static Intent createIntent(Context context, ArrayList items, boolean canRecoverUl, PrinterRESTConsumer.Type printerType, String reportName) { + Intent myIntent = new Intent(context, ListaBancaliActivity.class); + + String mtbColtsKey = DataCache.addItem(items); + myIntent.putExtra(Key.MtbColtsKey, mtbColtsKey); + + String canRecoverULKey = DataCache.addItem(canRecoverUl); + myIntent.putExtra(Key.CanRecoverUL, canRecoverULKey); + + String printerTypeKey = DataCache.addItem(printerType); + myIntent.putExtra(Key.PrinterType, printerTypeKey); + + String reportNameKey = DataCache.addItem(reportName); + myIntent.putExtra(Key.ReportName, reportNameKey); + + return myIntent; + } + public static Intent createIntent(Context context, ArrayList items, boolean canRecoverUl, PrinterRESTConsumer.Type printerType) { Intent myIntent = new Intent(context, ListaBancaliActivity.class); @@ -58,11 +78,8 @@ public class ListaBancaliActivity extends AppCompatActivity { mCanRecoverUl = DataCache.retrieveItem(getIntent().getStringExtra(Key.CanRecoverUL)); - mPrinterType = DataCache.retrieveItem(getIntent().getStringExtra(Key.PrinterType)); -// if(getIntent().hasExtra(Key.PrinterType)) { -// mPrinterType = (PrinterRESTConsumer.Type) getIntent().getSerializableExtra(Key.PrinterType); -// } else mPrinterType = null; + mReportName = DataCache.retrieveItem(getIntent().getStringExtra(Key.ReportName)); List mtbColts = DataCache.retrieveItem(getIntent().getStringExtra(Key.MtbColtsKey)); mViewModel = new ListaBancaliViewModel(this, mtbColts); @@ -81,7 +98,7 @@ public class ListaBancaliActivity extends AppCompatActivity { } public void startContenutoBancaleActivity(MtbColt item){ - Intent myIntent = ContenutoBancaleActivity.createIntent(this, item, mCanRecoverUl, mPrinterType); + Intent myIntent = ContenutoBancaleActivity.createIntent(this, item, mCanRecoverUl, mPrinterType, mReportName); startActivityForResult(myIntent, PICK_UL_REQUEST); } 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 341a3370..efe91b42 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 @@ -10,7 +10,7 @@ import androidx.recyclerview.widget.LinearLayoutManager; import java.util.List; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; import it.integry.integrywmsnative.core.interfaces.IRecyclerItemClicked; import it.integry.integrywmsnative.core.model.MtbColr; import it.integry.integrywmsnative.core.model.MtbColt; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/login/core/LoginHelper.java b/app/src/main/java/it/integry/integrywmsnative/gest/login/core/LoginHelper.java index 63632b0e..9156a0b0 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/login/core/LoginHelper.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/login/core/LoginHelper.java @@ -4,10 +4,10 @@ import android.content.Context; import android.util.Log; import it.integry.integrywmsnative.core.CommonConst; -import it.integry.integrywmsnative.core.REST.RESTBuilder; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.model.EsitoType; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.RESTBuilder; +import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; +import it.integry.integrywmsnative.core.rest.model.EsitoType; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.gest.login.dto.LoginAziendaDTO; import it.integry.integrywmsnative.gest.login.dto.LoginDTO; import it.integry.integrywmsnative.gest.login.rest.LoginRESTConsumerService; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/login/rest/LoginRESTConsumerService.java b/app/src/main/java/it/integry/integrywmsnative/gest/login/rest/LoginRESTConsumerService.java index 44fa7ccb..3b4a601e 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/login/rest/LoginRESTConsumerService.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/login/rest/LoginRESTConsumerService.java @@ -1,7 +1,7 @@ package it.integry.integrywmsnative.gest.login.rest; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.gest.login.dto.LoginAziendaDTO; import it.integry.integrywmsnative.gest.login.dto.LoginDTO; import retrofit2.Call; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/login/viewmodel/LoginViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/login/viewmodel/LoginViewModel.java index f72dc910..66389586 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/login/viewmodel/LoginViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/login/viewmodel/LoginViewModel.java @@ -13,9 +13,9 @@ import java.util.List; import it.integry.integrywmsnative.MainActivity; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.consumers.SystemRESTConsumer; -import it.integry.integrywmsnative.core.REST.model.AvailableCodMdepsDTO; +import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; +import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer; +import it.integry.integrywmsnative.core.rest.model.AvailableCodMdepsDTO; import it.integry.integrywmsnative.core.context.MainContext; import it.integry.integrywmsnative.core.di.BindableBoolean; import it.integry.integrywmsnative.core.di.BindableString; 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 eee1f7ee..dc0321ab 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 @@ -4,22 +4,14 @@ package it.integry.integrywmsnative.gest.main; import android.content.Context; import android.os.Bundle; -import androidx.appcompat.app.ActionBar; import androidx.appcompat.widget.AppCompatTextView; import androidx.databinding.DataBindingUtil; import androidx.fragment.app.Fragment; import androidx.recyclerview.widget.GridLayoutManager; -import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; -import android.widget.GridLayout; -import android.widget.ImageView; -import android.widget.LinearLayout; -import android.widget.TextView; - -import net.cachapa.expandablelayout.ExpandableLayout; import java.util.ArrayList; import java.util.Iterator; @@ -27,9 +19,8 @@ import java.util.List; import it.integry.integrywmsnative.MainActivity; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; -import it.integry.integrywmsnative.core.REST.model.DistribuzioneColloDTO; -import it.integry.integrywmsnative.core.REST.watcher.ServerStatusChecker; +import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.rest.watcher.ServerStatusChecker; import it.integry.integrywmsnative.core.class_router.BaseCustomConfiguration; import it.integry.integrywmsnative.core.class_router.ClassRouter; import it.integry.integrywmsnative.core.class_router.configs.BaseMenuConfiguration; @@ -46,7 +37,6 @@ import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.core.utility.UtilityString; import it.integry.integrywmsnative.databinding.FragmentMainBinding; import it.integry.integrywmsnative.databinding.FragmentMainMenuGroupLayoutBinding; -import it.integry.integrywmsnative.databinding.FragmentMainMenuItemLayoutBinding; import it.integry.integrywmsnative.ui.ElevatedToolbar; /** diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/picking_libero/viewmodel/PickingLiberoViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/picking_libero/viewmodel/PickingLiberoViewModel.java index 56b49503..432b8f77 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/picking_libero/viewmodel/PickingLiberoViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/picking_libero/viewmodel/PickingLiberoViewModel.java @@ -11,7 +11,6 @@ import com.tfb.fbtoast.FBToast; import java.math.BigDecimal; import java.util.ArrayList; -import java.util.Date; import java.util.Iterator; import java.util.List; @@ -25,12 +24,12 @@ import androidx.databinding.ObservableList; import androidx.recyclerview.widget.DividerItemDecoration; import androidx.recyclerview.widget.LinearLayoutManager; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.ArticoloRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.BarcodeRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.model.Ean128Model; -import it.integry.integrywmsnative.core.REST.model.Ean13PesoModel; +import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.BarcodeRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; +import it.integry.integrywmsnative.core.rest.model.Ean128Model; +import it.integry.integrywmsnative.core.rest.model.Ean13PesoModel; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.di.BindableBoolean; import it.integry.integrywmsnative.core.expansion.RunnableArgs; @@ -52,7 +51,6 @@ import it.integry.integrywmsnative.core.utility.UtilityString; import it.integry.integrywmsnative.databinding.FragmentPickingLiberoBinding; import it.integry.integrywmsnative.gest.picking_libero.core.PickingLiberoHelper; import it.integry.integrywmsnative.gest.picking_libero.core.PickingLiberoListAdapter; -import it.integry.integrywmsnative.gest.vendita.dto.PickingObjectDTO; import it.integry.integrywmsnative.view.dialogs.DialogConsts; import it.integry.integrywmsnative.view.dialogs.ask_cliente.DialogAskCliente; import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper; @@ -545,7 +543,7 @@ public class PickingLiberoViewModel implements IRecyclerItemClicked { .setQtaCol(quantityDTO.qtaTot.getBigDecimal()) .setQtaCnf(quantityDTO.qtaCnf.getBigDecimal()) .setNumCnf(quantityDTO.numCnf.getBigDecimal()) - .setDatetimeRow(new Date()); + .setDatetimeRow(UtilityDate.getDateInstance()); onComplete.run(mtbColr); }, onAbort).show(); @@ -688,7 +686,7 @@ public class PickingLiberoViewModel implements IRecyclerItemClicked { MtbColt cloneMtbColt = (MtbColt) this.mtbColt.get().clone(); cloneMtbColt.setOperation(CommonModelConsts.OPERATION.UPDATE); - cloneMtbColt.setOraFinePrep(new Date()); + cloneMtbColt.setOraFinePrep(UtilityDate.getDateInstance()); ColliMagazzinoRESTConsumer.saveCollo(cloneMtbColt, new ISimpleOperationCallback() { @@ -741,7 +739,7 @@ public class PickingLiberoViewModel implements IRecyclerItemClicked { mtbColrToDeleteClone .setRiga(null) - .setDatetimeRow(new Date()) + .setDatetimeRow(UtilityDate.getDateInstance()) .setQtaCol(mtbColrToDeleteClone.getQtaCol().multiply(new BigDecimal(-1))) .setOperation(CommonModelConsts.OPERATION.DELETE); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/PickingResiActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/PickingResiActivity.java new file mode 100644 index 00000000..8401c866 --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/PickingResiActivity.java @@ -0,0 +1,580 @@ +package it.integry.integrywmsnative.gest.picking_resi; + +import androidx.appcompat.app.AppCompatActivity; +import androidx.databinding.DataBindingUtil; +import androidx.databinding.ObservableArrayList; +import androidx.databinding.ObservableField; +import androidx.databinding.ObservableList; +import androidx.recyclerview.widget.LinearLayoutManager; + +import android.app.ProgressDialog; +import android.content.Context; +import android.content.Intent; +import android.os.Bundle; +import android.text.SpannableString; + +import com.annimon.stream.Stream; +import com.tfb.fbtoast.FBToast; + +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; + +import it.integry.integrywmsnative.R; +import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer; +import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO; +import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; +import it.integry.integrywmsnative.core.data_cache.DataCache; +import it.integry.integrywmsnative.core.expansion.RunnableArgs; +import it.integry.integrywmsnative.core.model.CommonModelConsts; +import it.integry.integrywmsnative.core.model.MtbColr; +import it.integry.integrywmsnative.core.model.MtbColt; +import it.integry.integrywmsnative.core.report.ReportManager; +import it.integry.integrywmsnative.core.settings.SettingsManager; +import it.integry.integrywmsnative.core.utility.UtilityDate; +import it.integry.integrywmsnative.core.utility.UtilityExceptions; +import it.integry.integrywmsnative.core.utility.UtilityNumber; +import it.integry.integrywmsnative.core.utility.UtilityProgress; +import it.integry.integrywmsnative.core.utility.UtilityString; +import it.integry.integrywmsnative.databinding.ActivityPickingResiBinding; +import it.integry.integrywmsnative.gest.picking_resi.dto.WithdrawableDtbDocr; +import it.integry.integrywmsnative.gest.ultime_consegne_cliente.rest.UltimeConsegneClienteRESTConsumer; +import it.integry.integrywmsnative.gest.picking_resi.core.PickingResiListAdapter; +import it.integry.integrywmsnative.core.rest.model.DocumentoResoDTO; +import it.integry.integrywmsnative.view.bottomsheet.interfaces.IOnColloClosedCallback; +import it.integry.integrywmsnative.view.bottomsheet.viewmodel.ArticoliInColloBottomSheetViewModel; +import it.integry.integrywmsnative.view.dialogs.ask_should_print.DialogAskShouldPrint; +import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper; +import it.integry.integrywmsnative.view.dialogs.input_quantity.DialogInputQuantity; +import it.integry.integrywmsnative.view.dialogs.input_quantity.QuantityDTO; +import it.integry.plugins.barcode_base_library.model.BarcodeScanDTO; + +public class PickingResiActivity extends AppCompatActivity implements IOnColloClosedCallback { + + private List mDocumentiResiList; + public ObservableList mDtbDocrList; + private final List mColliRegistrati = new ArrayList<>(); + + private ActivityPickingResiBinding mBinding; + private ArticoliInColloBottomSheetViewModel mArticoliInColloBottomSheetViewModel; + + public ObservableField currentMtbColt = new ObservableField<>(); + + private PickingResiListAdapter mAdapter; + + private int barcodeScannerIstanceID = -1; + + private String mDefaultGestioneOfUL; + private String mDefaultCodAnagOfUL; + private String mDefaultCodMDepOfUL; + private Integer mDefaultSegnoOfUL; + + public static void startActivity(Context context, List documentoResoDTOList, Integer segno) { + String consegneCacheKey = DataCache.addItem(documentoResoDTOList); + + Intent intent = new Intent(context, PickingResiActivity.class); + intent.putExtra("key", consegneCacheKey); + intent.putExtra("segno", segno); + context.startActivity(intent); + } + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + mBinding = DataBindingUtil.setContentView(this, R.layout.activity_picking_resi); + mBinding.setViewmodel(this); + + this.mDtbDocrList = new ObservableArrayList<>(); + + mArticoliInColloBottomSheetViewModel = new ArticoliInColloBottomSheetViewModel(this, this.mBinding.bottomSheetInclude); + mArticoliInColloBottomSheetViewModel.setOnCloseColloCallbackListener(this); + mArticoliInColloBottomSheetViewModel.setOnItemEditedCallback(this::onItemEdited); + mArticoliInColloBottomSheetViewModel.setOnItemDeletedCallback(this::onItemDeleted); + + + mDocumentiResiList = DataCache.retrieveItem(getIntent().getStringExtra("key")); + mDefaultSegnoOfUL = getIntent().getIntExtra("segno", +1); + + this.initView(); + + + } + + @Override + public boolean onSupportNavigateUp() { + onBackPressed(); + return true; + } + + @Override + public void onBackPressed() { + if(mArticoliInColloBottomSheetViewModel.isExpanded()){ + mArticoliInColloBottomSheetViewModel.collapse(); + } + else if(thereIsAnOpenedUL()) { + mArticoliInColloBottomSheetViewModel.closeCurrentUL(() -> { + BarcodeManager.removeCallback(barcodeScannerIstanceID); + super.onBackPressed(); + }); + + } + else { + BarcodeManager.removeCallback(barcodeScannerIstanceID); + super.onBackPressed(); + } + } + + private void initView() { + barcodeScannerIstanceID = BarcodeManager.addCallback(new BarcodeCallbackDTO() + .setOnScanSuccessfull(this::onScanSuccessful) + .setOnScanFailed(ex -> UtilityExceptions.defaultException(this, ex, false))); + + + setSupportActionBar(this.mBinding.toolbar); + getSupportActionBar().setDisplayHomeAsUpEnabled(true); + + this.mBinding.elevatedToolbar.setRecyclerView(this.mBinding.mainList); + + ProgressDialog progressDialog = UtilityProgress.createDefaultProgressDialog(this); + UltimeConsegneClienteRESTConsumer.loadDocRowFromConsegna(mDocumentiResiList, dtbDocrToPick -> { + progressDialog.dismiss(); + this.mDtbDocrList.addAll(dtbDocrToPick); + + try { + this.initDatiPicking(); + } catch (Exception ex) { + DialogSimpleMessageHelper.showSimpleErrorDialog(this, ex.getMessage()); + } + + this.initList(); + }, ex -> { + UtilityExceptions.defaultException(this, ex, progressDialog); + }); + } + + private void initList() { + + mAdapter = new PickingResiListAdapter(this, this.mDtbDocrList); + mAdapter.setOnItemClicked(this::onOrdineRowDispatch); + + this.mBinding.mainList.setLayoutManager(new LinearLayoutManager(this)); + this.mBinding.mainList.setAdapter(mAdapter); + } + + private void initDatiPicking() throws Exception { + List foundGestioni = Stream.of(this.mDocumentiResiList) + .map(DocumentoResoDTO::getGestione) + .distinct() + .toList(); + + if(foundGestioni.size() > 1) { + throw new Exception("Sono stati caricati documenti con diverse gestioni"); + } else mDefaultGestioneOfUL = foundGestioni.get(0); + + + List foundCodAnags = Stream.of(this.mDocumentiResiList) + .map(DocumentoResoDTO::getCodAnag) + .distinct() + .toList(); + + if(foundCodAnags.size() > 1) { + throw new Exception("Sono stati caricati documenti con diversi codici anagrafici"); + } else mDefaultCodAnagOfUL = foundCodAnags.get(0); + + + List foundCodMdeps = Stream.of(this.mDocumentiResiList) + .map(DocumentoResoDTO::getCodMdep) + .distinct() + .toList(); + + if(foundCodMdeps.size() > 1) { + throw new Exception("Sono stati caricati documenti con diversi codici deposito"); + } else mDefaultCodMDepOfUL = foundCodMdeps.get(0); + + } + + + + + private void onScanSuccessful(BarcodeScanDTO data) { + + } + + public void createNewUL() { + this.createNewUL(null, null, null, false, true, null); + } + + public void createNewUL(Integer customNumCollo, String customSerCollo, ProgressDialog progress, boolean disablePrint, boolean closeProgress, Runnable onComplete) { + this.mBinding.mainFab.close(true); + + if (progress == null){ + progress = UtilityProgress.createDefaultProgressDialog(this); + } + + MtbColt mtbColt = new MtbColt(); + mtbColt.initDefaultFields(); + mtbColt .setGestione(mDefaultGestioneOfUL) + .setSegno(mDefaultSegnoOfUL) + .setCodAnag(mDefaultCodAnagOfUL) + .setCodMdep(mDefaultCodMDepOfUL) + .setOperation(CommonModelConsts.OPERATION.INSERT_OR_UPDATE); + + + if(customNumCollo != null) { + mtbColt.setNumCollo(customNumCollo); + } + + if(!UtilityString.isNullOrEmpty(customSerCollo)) { + mtbColt.setSerCollo(customSerCollo); + } + + + ProgressDialog finalProgress = progress; + ColliMagazzinoRESTConsumer.saveCollo(mtbColt, value -> { + + value.setDisablePrint(disablePrint); + + setULToCurrentContext(value); + + if(closeProgress) finalProgress.dismiss(); + + FBToast.successToast(this, getResources().getString(R.string.data_saved), FBToast.LENGTH_SHORT); + + if(onComplete != null) onComplete.run(); + + }, ex -> { + UtilityExceptions.defaultException(this, ex, finalProgress); + }); + + } + + private void setULToCurrentContext(MtbColt mtbColt){ + if(mtbColt != null && mtbColt.getMtbColr() == null) { + mtbColt.setMtbColr(new ObservableArrayList<>()); + } + + this.currentMtbColt.set(mtbColt); + mArticoliInColloBottomSheetViewModel.mtbColt.set(mtbColt); + } + + + + + public void onOrdineRowDispatch(final WithdrawableDtbDocr item) { + if(currentMtbColt.get() != null){ + + List currentMtbColrs = item.getWithdrawRows(); + + BigDecimal qtaEvasaTotaleInMtbColr = BigDecimal.ZERO; + for (MtbColr mtbColr : currentMtbColrs) { + qtaEvasaTotaleInMtbColr.add(mtbColr.getQtaCol()); + } + + BigDecimal qtaDaEvadere = item.getQtaDoc().subtract(qtaEvasaTotaleInMtbColr); + if(qtaDaEvadere.floatValue() < 0) qtaDaEvadere = BigDecimal.ZERO; + + DialogInputQuantity.DTO dto = new DialogInputQuantity.DTO() + .setBatchLot(item.getPartitaMag()) + .setCodArtFor(item.getCodArtFor()) + .setMtbAart(item.getMtbAart()) + .setQtaDisponibile(qtaDaEvadere) + .setQtaTot(qtaDaEvadere) + .setQtaEvasa(qtaEvasaTotaleInMtbColr) + .setCanPartitaMagBeChanged(false) + .setMaxQta(qtaDaEvadere); + +// if(item.getTempPickData() != null) { +// PickingObjectDTO.PickData tmpPickData = item.getTempPickData(); +// +// if(!UtilityString.isNullOrEmpty(tmpPickData.getBatchLot())) { +// dto.setBatchLot(tmpPickData.getBatchLot()); +// } +// +// if(tmpPickData.getDataScad() != null){ +// dto.setDataScad(tmpPickData.getDataScad()); +// dto.setShouldAskDataScad(true); +// } +// +// boolean useQtaDaEvadere; +// +// if(tmpPickData.getQtaTot() != null) { +// useQtaDaEvadere = qtaDaEvadere.floatValue() < tmpPickData.getQtaTot().floatValue() && item.getMtbAart().isFlagQtaCnfFissa(); +// if(useQtaDaEvadere){ +// dto.setQtaTot(qtaDaEvadere); +// dto.setMaxQta(qtaDaEvadere); +// } else { +// dto.setQtaTot(tmpPickData.getQtaTot()); +// dto.setMaxQta(tmpPickData.getQtaTot()); +// dto.setQtaCnf(tmpPickData.getQtaTot()); +// } +// +// +// if (tmpPickData.getQtaCnf() != null && useQtaDaEvadere) { +// dto.setQtaCnf(tmpPickData.getQtaCnf()); +// } +// } +// +// +// if(dto.getQtaTot() != null && dto.getQtaTot().floatValue() > 0 && dto.getQtaCnf() != null && dto.getQtaCnf().floatValue() > 0) { +// dto.setNumCnf(dto.getQtaTot().divide(dto.getQtaCnf()).intValue()); +// } +// +// +// dto.setCanPartitaMagBeChanged(false); +// dto.setCanDataScadBeChanged(false); +// +// } + + DialogInputQuantity.makeBase(this, dto, false, (quantityDTO, closeUL) -> { + onOrdineRowDispatched(item, quantityDTO, closeUL); + + }, null).show(); + } + } + + + + + private void onOrdineRowDispatched(WithdrawableDtbDocr item, QuantityDTO quantityDTO, boolean closeUL){ + final ProgressDialog progress = UtilityProgress.createDefaultProgressDialog(this); + + final MtbColr mtbColr = new MtbColr() + .setCodMart(item.getCodMart()) + .setPartitaMag(UtilityString.empty2null(quantityDTO.batchLot.get())) + .setQtaCol(quantityDTO.qtaTot.getBigDecimal()) + .setQtaCnf(quantityDTO.qtaCnf.getBigDecimal()) + .setNumCnf(quantityDTO.numCnf.getBigDecimal()) + .setDescrizione(item.getDescrizioneEstesa()) + .setDatetimeRow(UtilityDate.getDateInstance()) + .setNote(item.getStringKeyIdentifier()); + + + + mtbColr.setOperation(CommonModelConsts.OPERATION.INSERT_OR_UPDATE); + + MtbColt cloneMtbColt = (MtbColt) currentMtbColt.get().clone(); + cloneMtbColt.setOperation(CommonModelConsts.OPERATION.NO_OP); + + cloneMtbColt.setMtbColr(new ObservableArrayList()); + cloneMtbColt.getMtbColr().add(mtbColr); + + ColliMagazzinoRESTConsumer.saveCollo(cloneMtbColt, value -> { + + mtbColr + .setDataCollo(value.getDataColloS()) + .setNumCollo(value.getNumCollo()) + .setGestione(value.getGestione()) + .setSerCollo(value.getSerCollo()) + .setRiga(value.getMtbColr().get(0).getRiga()) + .setUntMis(item.getMtbAart().getUntMis()) + .setMtbAart(item.getMtbAart()); + + item.getWithdrawRows().add(mtbColr); + + this.refreshDtbDocrItem(item); + + currentMtbColt.get().getMtbColr().add(mtbColr); + + //Chiamato removeListFilter perché cosi mi cancella tutti i dati di pick temporanei + removeListFilter(); + + FBToast.successToast(this, this.getResources().getString(R.string.data_saved), FBToast.LENGTH_SHORT); + + progress.dismiss(); + +// if(closeUL) onColloClosed(null); + }, ex -> { + UtilityExceptions.defaultException(this, ex, progress); + }); + } + + + @Override + public void onColloClosed(Runnable onComplete) { + if(thereIsAnOpenedUL()) { + + final ProgressDialog progress = UtilityProgress.createDefaultProgressDialog(this); + progress.show(); + + if(thereIsAnyRowInUL()) { + ColliMagazzinoRESTConsumer.updateDataFine( + this, + progress, + currentMtbColt.get(), + () -> printCollo(progress, currentMtbColt.get(), onComplete)); + } else { + deleteCollo(progress, onComplete); + } + + } else { + if(onComplete != null) onComplete.run(); + } + } + + private void onItemEdited(MtbColr mtbColrOriginal, MtbColr mtbColrEdited) { + for(int i = 0; i < mDtbDocrList.size(); i++) { + int foundIndex = mDtbDocrList.get(i).getWithdrawRows().indexOf(mtbColrOriginal); + + if(foundIndex >= 0){ + mDtbDocrList.get(i).getWithdrawRows().remove(foundIndex); + mDtbDocrList.get(i).getWithdrawRows().add(foundIndex, mtbColrEdited); + + refreshDtbDocrItem(this.mDtbDocrList.get(i)); + + break; + } + } + } + + private void onItemDeleted(MtbColr mtbColrDeleted) { + for(int i = 0; i < mDtbDocrList.size(); i++) { + int foundIndex = mDtbDocrList.get(i).getWithdrawRows().indexOf(mtbColrDeleted); + + if(foundIndex >= 0){ + mDtbDocrList.get(i).getWithdrawRows().remove(foundIndex); + + refreshDtbDocrItem(this.mDtbDocrList.get(i)); + + break; + } + } + } + + private void printCollo(ProgressDialog progress, MtbColt mtbColtToPrint, Runnable onComplete) { + DialogAskShouldPrint.make(this, "Packing List", shouldPrint -> { + + if(shouldPrint) { + PrinterRESTConsumer.getAvailablePrinters(SettingsManager.i().userSession.depo.getCodMdep(), PrinterRESTConsumer.Type.PRIMARIA, printerList -> { + + if (printerList.size() > 0) { + try { + singlePrint(mtbColtToPrint, printerList.get(0), () -> { + postCloseOperations(mtbColtToPrint, onComplete); + progress.dismiss(); + }, ex -> { + progress.dismiss(); + String errorMessage = ex.getMessage(); + DialogSimpleMessageHelper.makeErrorDialog( + this, + new SpannableString(errorMessage), + null, + null, + R.string.button_ignore_print, + () -> postCloseOperations(mtbColtToPrint, onComplete)).show(); + }); + + } catch (Exception ex) { + UtilityExceptions.defaultException(this, ex, progress); + postCloseOperations(mtbColtToPrint, onComplete); + } + } else { + progress.dismiss(); + String errorMessage = "Nessuna stampante configurata"; + DialogSimpleMessageHelper.makeWarningDialog(this, new SpannableString(errorMessage), null, () -> postCloseOperations(mtbColtToPrint, onComplete)).show(); + } + }, ex -> { + UtilityExceptions.defaultException(this, ex, progress); + }); + } else { + postCloseOperations(mtbColtToPrint, onComplete); + progress.dismiss(); + } + }).show(); + } + + + + private void singlePrint(MtbColt mtbColtToPrint, String printerName, Runnable onComplete, RunnableArgs onAbort) { + ReportManager.getRightReportNameByGestione(mtbColtToPrint.getGestioneEnum(), reportName -> { + + PrinterRESTConsumer.printCollo( + printerName, + mtbColtToPrint, + 1, + reportName, onComplete, onAbort); + + }, onAbort); + } + + private void postCloseOperations(MtbColt generatedMtbColt, Runnable onComplete) { + this.mColliRegistrati.add(generatedMtbColt); + + setULToCurrentContext(null); + + for(int i = 0; i < this.mDtbDocrList.size(); i++) { + WithdrawableDtbDocr dtbDocr = this.mDtbDocrList.get(i); + + List withdraws = dtbDocr.getWithdrawRows(); + + for(int k = 0; k < withdraws.size(); k++) { + MtbColr withdrawRow = withdraws.get(k); + + dtbDocr.setQtaDoc(dtbDocr.getQtaDoc().subtract(withdrawRow.getQtaCol())); + } + + dtbDocr.getWithdrawRows().clear(); + + if(UtilityNumber.decimalToFloat(dtbDocr.getQtaDoc()) <= 0) { + this.mDtbDocrList.remove(dtbDocr); + i--; + } else this.refreshDtbDocrItem(dtbDocr); + } + + removeListFilter(); + + if(onComplete != null) onComplete.run(); + } + + + private void deleteCollo(ProgressDialog progress, Runnable onComplete) { + + ColliMagazzinoRESTConsumer.deleteCollo(currentMtbColt.get(), () -> { + setULToCurrentContext(null); + + progress.dismiss(); + + + if(onComplete != null) onComplete.run(); + }, ex -> UtilityExceptions.defaultException(this, ex, progress) + ); + } + + + public boolean thereIsAnOpenedUL() { + return currentMtbColt.get() != null; + } + + public boolean thereIsAnyRowInUL() { + return currentMtbColt.get() != null && + currentMtbColt.get().getMtbColr() != null && + currentMtbColt.get().getMtbColr().size() > 0; + } + + + private void refreshDtbDocrItem(WithdrawableDtbDocr dtbDocr) { + int index = this.mDtbDocrList.indexOf(dtbDocr); + this.mDtbDocrList.remove(dtbDocr); + this.mDtbDocrList.add(index, dtbDocr); + } + + + public void applyFilter(String descriptionText) { + +// this.mBindings.filteredArtsInListExpandableLayout.expand(true); +// +// this.mBindings.descriptionFilterText.setText(descriptionText); + } + + public void removeListFilter() { +// for(int i = 0; i < mPickingList.size(); i++) { +// mPickingList.get(i).setTempHidden(false); +// mPickingList.get(i).setTempPickData(null); +// } +// +// refreshOrderBy(false); +// this.mBindings.filteredArtsInListExpandableLayout.collapse(true); + } + + +} diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/core/PickingResiListAdapter.java b/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/core/PickingResiListAdapter.java new file mode 100644 index 00000000..585b0079 --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/core/PickingResiListAdapter.java @@ -0,0 +1,184 @@ +package it.integry.integrywmsnative.gest.picking_resi.core; + +import android.content.Context; +import android.graphics.Color; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import androidx.databinding.DataBindingUtil; +import androidx.databinding.ObservableList; +import androidx.recyclerview.widget.RecyclerView; + +import com.annimon.stream.Stream; +import com.zhukic.sectionedrecyclerview.SectionedRecyclerViewAdapter; + +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; + +import it.integry.integrywmsnative.R; +import it.integry.integrywmsnative.core.expansion.RunnableArgs; +import it.integry.integrywmsnative.core.model.DtbDocr; +import it.integry.integrywmsnative.core.model.MtbColr; +import it.integry.integrywmsnative.core.utility.UtilityDate; +import it.integry.integrywmsnative.core.utility.UtilityNumber; +import it.integry.integrywmsnative.core.utility.UtilityString; +import it.integry.integrywmsnative.databinding.UltimeConsegneMainListItemBinding; +import it.integry.integrywmsnative.databinding.UltimeConsegneMainListItemHeaderBinding; +import it.integry.integrywmsnative.gest.picking_resi.dto.WithdrawableDtbDocr; + +public class PickingResiListAdapter extends SectionedRecyclerViewAdapter { + + + private Context mContext; + + private List mDataset; + + private RunnableArgs mOnItemClicked; + + static class SubheaderHolder extends RecyclerView.ViewHolder { + + UltimeConsegneMainListItemHeaderBinding mBinding; + + SubheaderHolder(UltimeConsegneMainListItemHeaderBinding binding) { + super(binding.getRoot()); + this.mBinding = binding; + } + + } + + static class SingleItemViewHolder extends RecyclerView.ViewHolder { + + UltimeConsegneMainListItemBinding mBinding; + + SingleItemViewHolder(UltimeConsegneMainListItemBinding binding) { + super(binding.getRoot()); + this.mBinding = binding; + } + } + + + public PickingResiListAdapter(Context context, ObservableList data) { + this.mContext = context; + this.mDataset = new ArrayList<>(); + + refreshData(data); + + data.addOnListChangedCallback(new ObservableList.OnListChangedCallback>() { + @Override + public void onChanged(ObservableList sender) { + refreshData(sender); + } + + @Override + public void onItemRangeChanged(ObservableList sender, int positionStart, int itemCount) { + refreshData(sender); + } + + @Override + public void onItemRangeInserted(ObservableList sender, int positionStart, int itemCount) { + refreshData(sender); + } + + @Override + public void onItemRangeMoved(ObservableList sender, int fromPosition, int toPosition, int itemCount) { + refreshData(sender); + } + + @Override + public void onItemRangeRemoved(ObservableList sender, int positionStart, int itemCount) { + refreshData(sender); + } + }); + } + + private void refreshData(List data) { + this.mDataset.clear(); + this.mDataset.addAll(Stream.of(data) + .sortBy(x -> x.getNumDoc() + " " + x.getDataDocS() + " " + x.getCodDtip() + " " + x.getSerDoc() + " " + x.getCodAnag() + " " + x.getIdRiga()) + .toList()); + + this.notifyDataChanged(); + } + + public void setOnItemClicked(RunnableArgs onItemClicked) { + this.mOnItemClicked = onItemClicked; + } + + @Override + public SingleItemViewHolder onCreateItemViewHolder(ViewGroup parent, int viewType) { + UltimeConsegneMainListItemBinding binding = DataBindingUtil.inflate(LayoutInflater.from(mContext), R.layout.ultime_consegne_main_list__item, parent, false); + return new SingleItemViewHolder(binding); + } + + @Override + public SubheaderHolder onCreateSubheaderViewHolder(ViewGroup parent, int viewType) { + UltimeConsegneMainListItemHeaderBinding binding = DataBindingUtil.inflate(LayoutInflater.from(mContext), R.layout.ultime_consegne_main_list__item_header, parent, false); + return new SubheaderHolder(binding); + } + + @Override + public void onBindItemViewHolder(final SingleItemViewHolder holder, final int position) { + final WithdrawableDtbDocr dtbDocr = this.mDataset.get(position); + + BigDecimal qtaEvasa = BigDecimal.ZERO; + + for(MtbColr mtbColr : dtbDocr.getWithdrawRows()) { + qtaEvasa = qtaEvasa.add(mtbColr.getQtaCol()); + } + + Float qtaDaEvadere = UtilityNumber.decimalToFloat(dtbDocr.getQtaDoc().subtract(qtaEvasa)); + + holder.mBinding.badge1.setText(dtbDocr.getCodMart()); + holder.mBinding.qtaEvasa.setText(UtilityNumber.decimalToString(qtaEvasa)); + holder.mBinding.qtaTot.setText(UtilityNumber.decimalToString(dtbDocr.getQtaDoc())); + holder.mBinding.descrizione.setText(UtilityString.isNullOrEmpty(dtbDocr.getDescrizioneEstesa()) ? dtbDocr.getDescrizioneEstesa() : dtbDocr.getDescrizione()); + + + + if (qtaDaEvadere <= 0 ) { + holder.mBinding.getRoot().setBackgroundColor(mContext.getResources().getColor(R.color.green_500_with_alpha)); + } else if (qtaDaEvadere > 0 && qtaEvasa.floatValue() > 0) { + holder.mBinding.getRoot().setBackgroundColor(mContext.getResources().getColor(R.color.orange_600_with_alpha)); + } else { + holder.mBinding.getRoot().setBackgroundColor(mContext.getResources().getColor(R.color.full_white)); + } + + holder.mBinding.getRoot().setOnClickListener(v -> { + if(this.mOnItemClicked != null) this.mOnItemClicked.run(dtbDocr); + }); + + } + + @Override + public void onBindSubheaderViewHolder(SubheaderHolder subheaderHolder, int nextItemPosition) { + DtbDocr nextDtbDocr = this.mDataset.get(nextItemPosition); + subheaderHolder.mBinding.descrizione.setText(nextDtbDocr.getCodDtip() + " - N° " + nextDtbDocr.getNumDoc() + " del " + UtilityDate.formatDate(nextDtbDocr.getDataDocD(), UtilityDate.COMMONS_DATE_FORMATS.DM_HUMAN)); + } + + @Override + public boolean onPlaceSubheaderBetweenItems(int position) { + + DtbDocr compare1 = this.mDataset.get(position); + DtbDocr compare2 = this.mDataset.get(position + 1); + + if( !compare1.getDataDocS().equalsIgnoreCase(compare2.getDataDocS()) || + !compare1.getSerDoc().equalsIgnoreCase(compare2.getSerDoc()) || + !compare1.getNumDoc().equals(compare2.getNumDoc()) || + !compare1.getCodAnag().equalsIgnoreCase(compare2.getCodAnag()) || + !compare1.getCodDtip().equalsIgnoreCase(compare2.getCodDtip())) { + return true; + } + + return false; + } + + @Override + public int getItemSize() { + return this.mDataset.size(); + } + + + +} diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/dto/WithdrawableDtbDocr.java b/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/dto/WithdrawableDtbDocr.java new file mode 100644 index 00000000..5b882e25 --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/dto/WithdrawableDtbDocr.java @@ -0,0 +1,25 @@ +package it.integry.integrywmsnative.gest.picking_resi.dto; + +import java.util.ArrayList; +import java.util.List; + +import it.integry.integrywmsnative.core.model.DtbDocr; +import it.integry.integrywmsnative.core.model.MtbColr; + +public class WithdrawableDtbDocr extends DtbDocr { + + private List withdrawRows = new ArrayList<>(); + + public WithdrawableDtbDocr() { + super(); + } + + public List getWithdrawRows() { + return withdrawRows; + } + + public WithdrawableDtbDocr setWithdrawRows(List withdrawRows) { + this.withdrawRows = withdrawRows; + return this; + } +} diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_lavorazione/ProdOrdineLavorazioneElencoFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_lavorazione/ProdOrdineLavorazioneElencoFragment.java index 24cb2d5e..27f70062 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_lavorazione/ProdOrdineLavorazioneElencoFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_lavorazione/ProdOrdineLavorazioneElencoFragment.java @@ -23,7 +23,7 @@ import java.util.ArrayList; import java.util.List; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.CommonRESTException; +import it.integry.integrywmsnative.core.rest.CommonRESTException; import it.integry.integrywmsnative.core.data_cache.DataCache; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.interfaces.IScrollableFragment; @@ -36,7 +36,6 @@ import it.integry.integrywmsnative.core.utility.UtilityToast; import it.integry.integrywmsnative.databinding.FragmentProdOrdineLavorazioneElencoBinding; import it.integry.integrywmsnative.gest.prod_ord_lavorazione.core.ProdOrdineLavorazioneHelper; import it.integry.integrywmsnative.gest.prod_ord_lavorazione.core.ProdOrdineLavorazioneListAdapter; -import it.integry.integrywmsnative.gest.vendita.core.MainListVenditaAdapter; import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO; import it.integry.integrywmsnative.gest.vendita.dto.PickingObjectDTO; import it.integry.integrywmsnative.gest.vendita_ordine_inevaso.VenditaOrdineInevasoActivity; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_lavorazione/core/ProdOrdineLavorazioneHelper.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_lavorazione/core/ProdOrdineLavorazioneHelper.java index ea7e8b5f..5c44d1f2 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_lavorazione/core/ProdOrdineLavorazioneHelper.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_lavorazione/core/ProdOrdineLavorazioneHelper.java @@ -12,11 +12,11 @@ import java.lang.reflect.Type; import java.util.ArrayList; import java.util.List; -import it.integry.integrywmsnative.core.REST.RESTBuilder; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.consumers.SystemRESTConsumer; -import it.integry.integrywmsnative.core.REST.model.EsitoType; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.RESTBuilder; +import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; +import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer; +import it.integry.integrywmsnative.core.rest.model.EsitoType; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.model.MtbColt; import it.integry.integrywmsnative.core.settings.SettingsManager; @@ -24,7 +24,6 @@ import it.integry.integrywmsnative.core.utility.UtilityDB; import it.integry.integrywmsnative.core.utility.UtilityDate; import it.integry.integrywmsnative.core.utility.UtilityFirebase; import it.integry.integrywmsnative.core.utility.UtilityLogger; -import it.integry.integrywmsnative.gest.vendita.core.VenditaHelper; import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO; import it.integry.integrywmsnative.gest.vendita.dto.PickingObjectDTO; import it.integry.integrywmsnative.gest.vendita.rest.OrdiniVenditaRESTConsumerService; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_produzione/ProdOrdineProduzioneElencoFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_produzione/ProdOrdineProduzioneElencoFragment.java index 7dc7ca97..8d468d06 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_produzione/ProdOrdineProduzioneElencoFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_produzione/ProdOrdineProduzioneElencoFragment.java @@ -25,12 +25,11 @@ import java.util.List; import java.util.concurrent.atomic.AtomicInteger; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.CommonRESTException; +import it.integry.integrywmsnative.core.rest.CommonRESTException; import it.integry.integrywmsnative.core.data_cache.DataCache; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.interfaces.IScrollableFragment; import it.integry.integrywmsnative.core.interfaces.ITitledFragment; -import it.integry.integrywmsnative.core.settings.SettingsManager; import it.integry.integrywmsnative.databinding.FragmentProdOrdineProduzioneElencoBinding; import it.integry.integrywmsnative.gest.accettazione.dto.OrdineAccettazioneDTO; import it.integry.integrywmsnative.gest.accettazione.dto.OrdineAccettazioneInevasoDTO; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_produzione/core/OrdineProduzioneHelper.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_produzione/core/OrdineProduzioneHelper.java index 071417db..79f77cc6 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_produzione/core/OrdineProduzioneHelper.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_produzione/core/OrdineProduzioneHelper.java @@ -8,9 +8,9 @@ import com.annimon.stream.Stream; import java.util.List; -import it.integry.integrywmsnative.core.REST.RESTBuilder; -import it.integry.integrywmsnative.core.REST.model.EsitoType; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.RESTBuilder; +import it.integry.integrywmsnative.core.rest.model.EsitoType; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.settings.SettingsManager; import it.integry.integrywmsnative.core.utility.UtilityLogger; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_recupero_materiale/core/ProdRecuperoMaterialeHelper.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_recupero_materiale/core/ProdRecuperoMaterialeHelper.java index a5b6b477..45ed69c7 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_recupero_materiale/core/ProdRecuperoMaterialeHelper.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_recupero_materiale/core/ProdRecuperoMaterialeHelper.java @@ -8,10 +8,9 @@ import java.lang.reflect.Type; import java.util.ArrayList; import java.util.List; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.consumers.SystemRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; +import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer; import it.integry.integrywmsnative.core.expansion.RunnableArgs; -import it.integry.integrywmsnative.core.model.MtbColt; import it.integry.integrywmsnative.gest.prod_recupero_materiale.dto.HistoryVersamentoProdUL; public class ProdRecuperoMaterialeHelper { diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_versamento_materiale/viewmodel/ProdVersamentoMaterialViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_versamento_materiale/viewmodel/ProdVersamentoMaterialViewModel.java index b747955b..84a4e867 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_versamento_materiale/viewmodel/ProdVersamentoMaterialViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_versamento_materiale/viewmodel/ProdVersamentoMaterialViewModel.java @@ -7,10 +7,8 @@ import android.text.SpannableString; import androidx.databinding.ObservableField; -import java.util.Objects; - import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.interfaces.IPoppableActivity; import it.integry.integrywmsnative.core.model.MtbColt; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/core/RettificaGiacenzeHelper.java b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/core/RettificaGiacenzeHelper.java index acbe9f66..361ac832 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/core/RettificaGiacenzeHelper.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/core/RettificaGiacenzeHelper.java @@ -2,15 +2,14 @@ package it.integry.integrywmsnative.gest.rettifica_giacenze.core; import android.app.ProgressDialog; import android.content.Context; -import androidx.databinding.ObservableArrayList; import com.google.gson.reflect.TypeToken; import java.lang.reflect.Type; import java.util.ArrayList; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.consumers.SystemRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; +import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.model.MtbAart; import it.integry.integrywmsnative.core.model.MtbAartWithFornitore; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/viewmodel/RettificaGiacenzeViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/viewmodel/RettificaGiacenzeViewModel.java index c215370b..e2183288 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/viewmodel/RettificaGiacenzeViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/viewmodel/RettificaGiacenzeViewModel.java @@ -20,18 +20,17 @@ import com.tfb.fbtoast.FBToast; import java.math.BigDecimal; import java.util.ArrayList; -import java.util.Date; import java.util.List; import java.util.Objects; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.CommonRESTException; -import it.integry.integrywmsnative.core.REST.consumers.ArticoloRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.BarcodeRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.consumers.PrinterRESTConsumer; -import it.integry.integrywmsnative.core.REST.model.Ean128Model; +import it.integry.integrywmsnative.core.rest.CommonRESTException; +import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.BarcodeRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; +import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer; +import it.integry.integrywmsnative.core.rest.model.Ean128Model; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.di.BindableBoolean; import it.integry.integrywmsnative.core.expansion.RunnableArgs; @@ -623,7 +622,7 @@ public class RettificaGiacenzeViewModel implements IRecyclerItemClicked mtbColrToEditClone .setRiga(null) - .setDatetimeRow(new Date()) + .setDatetimeRow(UtilityDate.getDateInstance()) .setQtaCol(value.qtaTot.getBigDecimal().subtract(mtbColrToEditClone.getQtaCol())) .setOperation(CommonModelConsts.OPERATION.INSERT); @@ -658,7 +657,7 @@ public class RettificaGiacenzeViewModel implements IRecyclerItemClicked mtbColrToDeleteClone .setRiga(null) - .setDatetimeRow(new Date()) + .setDatetimeRow(UtilityDate.getDateInstance()) .setQtaCol(mtbColrToDeleteClone.getQtaCol().multiply(new BigDecimal(-1))) .setOperation(CommonModelConsts.OPERATION.INSERT); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/settings/SettingsPreferenceFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/settings/SettingsPreferenceFragment.java index 75306f94..b76482ba 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/settings/SettingsPreferenceFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/settings/SettingsPreferenceFragment.java @@ -3,7 +3,6 @@ package it.integry.integrywmsnative.gest.settings; import android.content.Context; import android.os.Bundle; -import androidx.appcompat.app.ActionBar; import androidx.appcompat.widget.AppCompatTextView; import androidx.preference.CheckBoxPreference; import androidx.preference.EditTextPreference; @@ -17,8 +16,8 @@ import android.util.TypedValue; import java.util.List; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.consumers.PrinterRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; +import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer; import it.integry.integrywmsnative.core.settings.SharedPrefKeys; import it.integry.integrywmsnative.core.utility.UtilityArray; import it.integry.integrywmsnative.core.interfaces.ITitledFragment; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/dto/CheckableConsegnaClienteDTO.java b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/dto/CheckableConsegnaClienteDTO.java deleted file mode 100644 index c85fff50..00000000 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/dto/CheckableConsegnaClienteDTO.java +++ /dev/null @@ -1,48 +0,0 @@ -package it.integry.integrywmsnative.gest.ultime_consegne_cliente.dto; - -import androidx.databinding.Observable; - -import it.integry.integrywmsnative.core.di.BindableBoolean; -import it.integry.integrywmsnative.gest.vendita.rest.model.ConsegnaClienteDTO; - -public class CheckableConsegnaClienteDTO { - - private ConsegnaClienteDTO mItem; - private BindableBoolean checked = new BindableBoolean(false); - - public CheckableConsegnaClienteDTO(ConsegnaClienteDTO item) { - this.mItem = item; - } - - public ConsegnaClienteDTO getItem() { - return mItem; - } - - public CheckableConsegnaClienteDTO setItem(ConsegnaClienteDTO item) { - this.mItem = item; - return this; - } - - public BindableBoolean getChecked() { - return checked; - } - - public boolean isChecked() { - return checked.get(); - } - - public CheckableConsegnaClienteDTO setChecked(BindableBoolean checked) { - this.checked = checked; - return this; - } - - public CheckableConsegnaClienteDTO setCheckedValue(boolean value) { - this.checked.set(value); - return this; - } - - public void toggleCheck() { - this.checked.set(!this.checked.get()); - } - -} diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/rest/UltimeConsegneClienteRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/rest/UltimeConsegneClienteRESTConsumer.java index 0f80c12a..e01e8c4c 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/rest/UltimeConsegneClienteRESTConsumer.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/rest/UltimeConsegneClienteRESTConsumer.java @@ -1,21 +1,26 @@ package it.integry.integrywmsnative.gest.ultime_consegne_cliente.rest; +import com.annimon.stream.Stream; import com.google.gson.reflect.TypeToken; import java.lang.reflect.Type; import java.util.ArrayList; import java.util.List; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.consumers.SystemRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; +import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer; import it.integry.integrywmsnative.core.expansion.RunnableArgs; +import it.integry.integrywmsnative.core.model.DtbDocr; +import it.integry.integrywmsnative.core.model.MtbAart; import it.integry.integrywmsnative.core.utility.UtilityDB; -import it.integry.integrywmsnative.core.utility.UtilityString; -import it.integry.integrywmsnative.gest.vendita.rest.model.ConsegnaClienteDTO; +import it.integry.integrywmsnative.core.utility.UtilityDate; +import it.integry.integrywmsnative.gest.picking_resi.dto.WithdrawableDtbDocr; +import it.integry.integrywmsnative.core.rest.model.DocumentoResoDTO; public class UltimeConsegneClienteRESTConsumer { - public static void getUltimeConsegneClienti(String codMdep, String codAnag, String codMart, RunnableArgs> onComplete, RunnableArgs onFailed) { + public static void getUltimeConsegneClienti(String codMdep, String codAnag, String codMart, RunnableArgs> onComplete, RunnableArgs onFailed) { int numberOfConsegnePerCli = 10; int numberOfDayToAnalyze = 90; @@ -33,10 +38,10 @@ public class UltimeConsegneClienteRESTConsumer { " counter_consegna "; - Type typeOfObjectsList = new TypeToken>() {}.getType(); - SystemRESTConsumer.processSql(sql, typeOfObjectsList, new ISimpleOperationCallback>() { + Type typeOfObjectsList = new TypeToken>() {}.getType(); + SystemRESTConsumer.processSql(sql, typeOfObjectsList, new ISimpleOperationCallback>() { @Override - public void onSuccess(ArrayList value) { + public void onSuccess(ArrayList value) { if(onComplete != null) onComplete.run(value); } @@ -48,4 +53,146 @@ public class UltimeConsegneClienteRESTConsumer { } + + public static void loadDocRowFromConsegna(List consegne, RunnableArgs> onComplete, RunnableArgs onFailed) { + StringBuilder sbWhereCond = new StringBuilder(); + + for(int i = 0; i < consegne.size(); i++) { + sbWhereCond.append(String.format("(data_doc = '%s' AND num_doc = %d AND ser_doc = '%s' AND cod_anag = '%s' AND cod_dtip = '%s')", + UtilityDate.formatDate(consegne.get(i).getDataDocD(), UtilityDate.COMMONS_DATE_FORMATS.YMD_SLASH), + consegne.get(i).getNumDoc(), + consegne.get(i).getSerDoc(), + consegne.get(i).getCodAnag(), + consegne.get(i).getCodDtip())); + + if(i < consegne.size()-1) sbWhereCond.append(" OR "); + } + + String sql = "SELECT dtb_docr.[cod_anag]" + + " ,dtb_docr.[cod_dtip]" + + " ,dtb_docr.[data_doc]" + + " ,dtb_docr.[ser_doc]" + + " ,dtb_docr.[num_doc]" + + " ,dtb_docr.[id_riga]" + + " ,dtb_docr.[cod_mart]" + + " ,dtb_docr.[descrizione]" + + " ,dtb_docr.[unt_doc]" + + " ,dtb_docr.[rap_conv]" + + " ,dtb_docr.[qta_doc] - ISNULL(mtb_colr.qta_col, 0) as qta_doc" + + " ,dtb_docr.[val_unt]" + + " ,dtb_docr.[sconto5]" + + " ,dtb_docr.[sconto6]" + + " ,dtb_docr.[sconto7]" + + " ,dtb_docr.[sconto8]" + + " ,dtb_docr.[cod_aliq]" + + " ,dtb_docr.[perc_prov]" + + " ,dtb_docr.[val_prov]" + + " ,dtb_docr.[data_ord]" + + " ,dtb_docr.[num_ord]" + + " ,dtb_docr.[riga_ord]" + + " ,dtb_docr.[importo_riga]" + + " ,dtb_docr.[cod_col]" + + " ,dtb_docr.[cod_tagl]" + + " ,dtb_docr.[cod_jcom]" + + " ,dtb_docr.[cod_mdep]" + + " ,dtb_docr.[perc_gest]" + + " ,dtb_docr.[val_gest]" + + " ,dtb_docr.[partita_mag]" + + " ,dtb_docr.[val_unt_iva]" + + " ,dtb_docr.[qta_cnf]" + + " ,dtb_docr.[descrizione_estesa]" + + " ,dtb_docr.[costo_unt]" + + " ,dtb_docr.[perc_ispe]" + + " ,dtb_docr.[val_ispe]" + + " ,dtb_docr.[perc_promo]" + + " ,dtb_docr.[val_promo]" + + " ,dtb_docr.[perc_oneri]" + + " ,dtb_docr.[val_oneri]" + + " ,dtb_docr.[flag_evaso_forzato]" + + " ,dtb_docr.[cod_dtip_comp]" + + " ,dtb_docr.[data_doc_comp]" + + " ,dtb_docr.[ser_doc_comp]" + + " ,dtb_docr.[num_doc_comp]" + + " ,dtb_docr.[cod_promo]" + + " ,dtb_docr.[perc_prov2]" + + " ,dtb_docr.[val_prov2]" + + " ,dtb_docr.[cod_art_for]" + + " ,dtb_docr.[unt_doc2]" + + " ,dtb_docr.[qta_doc2]" + + " ,dtb_docr.[unt_doc3]" + + " ,dtb_docr.[qta_doc3]" + + " ,dtb_docr.[num_cnf]" + + " ,dtb_docr.[peso_lordo]" + + " ,dtb_docr.[posizione]" + + " ,dtb_docr.[cod_anag_comp]" + + " ,dtb_docr.[cod_mtip]" + + " ,dtb_docr.[matricola]" + + " ,dtb_docr.[data_iniz_comp]" + + " ,dtb_docr.[data_fine_comp]" + + " ,dtb_docr.[cod_kit]" + + " ,dtb_docr.[cod_alis]" + + " ,dtb_docr.[data_ins_row]" + + " ,dtb_docr.[note] " + + "FROM dtb_docr " + + "INNER JOIN mtb_aart ON dtb_docr.cod_mart = mtb_aart.cod_mart " + + "LEFT OUTER JOIN ctb_cont ON mtb_aart.cod_ccon_ricavi = ctb_cont.cod_ccon " + + "LEFT OUTER JOIN ctb_grup ON ctb_cont.cod_cgrp = ctb_grup.cod_cgrp " + + "LEFT OUTER JOIN mtb_colr ON " + + " dtb_docr.cod_anag + '|' + dtb_docr.cod_dtip + '|' + dtb_docr.ser_doc + '|' + CONVERT(varchar(10), dtb_docr.data_doc , 111) + '|' + CONVERT(varchar(20), dtb_docr.num_doc) + '|' + CONVERT(varchar(20), dtb_docr.id_riga) = mtb_colr.note " + + "WHERE " + + " (ctb_grup.sezione <> 1 OR ctb_grup.sezione IS NULL) AND " + + " dtb_docr.[qta_doc] - ISNULL(mtb_colr.qta_col, 0) > 0 AND" + + " ( " + + sbWhereCond.toString() + + " ) " + + "ORDER BY cod_mart"; + + + Type typeOfObjectsList = new TypeToken>() {}.getType(); + SystemRESTConsumer.processSql(sql, typeOfObjectsList, new ISimpleOperationCallback>() { + @Override + public void onSuccess(ArrayList values) { + + if(values != null && values.size() > 0){ + List codMarts = Stream.of(values) + .map(DtbDocr::getCodMart) + .withoutNulls() + .distinct() + .toList(); + + ArticoloRESTConsumer.getByCodMart(codMarts, arts -> { + + if(arts != null && arts.size() > 0) { + for (DtbDocr value : values) { + + MtbAart foundMtbAart = null; + + List mtbAartStream = Stream.of(arts) + .filter(x -> x.getCodMart().equalsIgnoreCase(value.getCodMart())).toList(); + + if(mtbAartStream != null && mtbAartStream.size() > 0){ + foundMtbAart = mtbAartStream.get(0); + } + + value.setMtbAart(foundMtbAart); + } + + + if(onComplete != null) onComplete.run(values); + } + + }, onFailed); + + } else { + if(onComplete != null) onComplete.run(values); + } + } + + @Override + public void onFailed(Exception ex) { + if(onFailed != null) onFailed.run(ex); + } + }); + } + } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/viewmodel/UltimeConsegneClienteViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/viewmodel/UltimeConsegneClienteViewModel.java index 39b48f86..d1c168bb 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/viewmodel/UltimeConsegneClienteViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/viewmodel/UltimeConsegneClienteViewModel.java @@ -2,11 +2,11 @@ package it.integry.integrywmsnative.gest.ultime_consegne_cliente.viewmodel; import android.app.ProgressDialog; import android.content.Context; -import android.widget.Toast; -import androidx.databinding.ObservableArrayList; import androidx.recyclerview.widget.LinearLayoutManager; +import com.annimon.stream.Stream; + import java.util.ArrayList; import java.util.List; @@ -15,18 +15,26 @@ import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.core.utility.UtilityProgress; import it.integry.integrywmsnative.databinding.FragmentMainUltimeConsegneClienteBinding; import it.integry.integrywmsnative.gest.ultime_consegne_cliente.rest.UltimeConsegneClienteRESTConsumer; -import it.integry.integrywmsnative.gest.vendita.rest.model.ConsegnaClienteDTO; +import it.integry.integrywmsnative.gest.picking_resi.PickingResiActivity; +import it.integry.integrywmsnative.core.rest.model.DocumentoResoDTO; public class UltimeConsegneClienteViewModel { private Context mContext; private FragmentMainUltimeConsegneClienteBinding mBinding; + private List mItems; + public UltimeConsegneClienteViewModel(Context context, FragmentMainUltimeConsegneClienteBinding binding) { this.mContext = context; this.mBinding = binding; this.initList(); + + this.mBinding.mainFab.hide(); + this.mBinding.mainFab.setOnClickListener(v -> { + dispatchConsegne(); + }); } @@ -39,6 +47,7 @@ public class UltimeConsegneClienteViewModel { null, null, consegne -> { + this.mItems = consegne; this.initDataAdapter(consegne); progressDialog.dismiss(); @@ -47,21 +56,47 @@ public class UltimeConsegneClienteViewModel { }); } - private void initDataAdapter(ArrayList dataset) { + private void initDataAdapter(ArrayList dataset) { UltimeConsegneMainListAdapter adapter = new UltimeConsegneMainListAdapter(mContext, dataset); - adapter.setOnItemClickListener(consegna -> { - Toast.makeText(mContext, String.format("Selezionato doc n° %d del %s", consegna.getNumDoc(), consegna.getDataDocS()), Toast.LENGTH_SHORT).show(); - }); + adapter.setOnSelectionChanged(this::onSingleSelectionChanged); mBinding.recyclerView.setHasFixedSize(true); - mBinding.recyclerView.setLayoutManager(new LinearLayoutManager(mContext)); - mBinding.recyclerView.setAdapter(adapter); - mBinding.fastscroll.setRecyclerView(mBinding.recyclerView); } + private void onSingleSelectionChanged(DocumentoResoDTO dto) { + List selectedOrders = getSelectedItems(); + + if(dto.isSelected()) { + Stream.of(selectedOrders) + .filter(x -> !x.getRagSoc().equalsIgnoreCase(dto.getRagSoc())) + .forEach(x -> x.setSelected(false)); + } + + if(selectedOrders != null && selectedOrders.size() > 0) { + mBinding.mainFab.show(); + } + else { + mBinding.mainFab.hide(); + } + } + + private List getSelectedItems() { + return Stream.of(this.mItems) + .filter(DocumentoResoDTO::isSelected) + .toList(); + } + + + private void dispatchConsegne() { + List selectedConsegne = getSelectedItems(); + + PickingResiActivity.startActivity(mContext, selectedConsegne, +1); + } + + } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/viewmodel/UltimeConsegneMainListAdapter.java b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/viewmodel/UltimeConsegneMainListAdapter.java index 044befce..a7a04440 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/viewmodel/UltimeConsegneMainListAdapter.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/viewmodel/UltimeConsegneMainListAdapter.java @@ -16,27 +16,25 @@ import com.zhukic.sectionedrecyclerview.SectionedRecyclerViewAdapter; import java.util.ArrayList; import java.util.Calendar; -import java.util.Date; import java.util.List; -import java.util.TimeZone; import it.integry.integrywmsnative.R; +import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.utility.UtilityDate; import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.core.utility.UtilityString; import it.integry.integrywmsnative.databinding.FragmentMainUltimeConsegneClienteListHeaderBinding; import it.integry.integrywmsnative.databinding.FragmentMainUltimeConsegneClienteListSingleItemBinding; -import it.integry.integrywmsnative.gest.ultime_consegne_cliente.dto.CheckableConsegnaClienteDTO; -import it.integry.integrywmsnative.gest.vendita.rest.model.ConsegnaClienteDTO; +import it.integry.integrywmsnative.core.rest.model.DocumentoResoDTO; import it.integry.integrywmsnative.ui.fastscroll.SectionTitleProvider; public class UltimeConsegneMainListAdapter extends SectionedRecyclerViewAdapter implements SectionTitleProvider { private Context mContext; - private List mDataset; + private List mDataset; private ArrayList mSectionTitleItems; - private OnItemClickListener onItemClickListener; + private RunnableArgs mOnSelectionChanged; private TextDrawable.IShapeBuilder smallIconBuilder; private TextDrawable.IShapeBuilder mediumIconBuilder; @@ -48,11 +46,6 @@ public class UltimeConsegneMainListAdapter extends SectionedRecyclerViewAdapter< } - public interface OnItemClickListener { - void onItemClicked(ConsegnaClienteDTO consegna); - } - - static class SubheaderHolder extends RecyclerView.ViewHolder { FragmentMainUltimeConsegneClienteListHeaderBinding mBinding; @@ -77,19 +70,19 @@ public class UltimeConsegneMainListAdapter extends SectionedRecyclerViewAdapter< - public UltimeConsegneMainListAdapter(Context context, ArrayList dataset) { + public UltimeConsegneMainListAdapter(Context context, ArrayList dataset) { super(); this.mContext = context; this.mDataset = new ArrayList<>(); this.mSectionTitleItems = new ArrayList<>(); this.mDataset = Stream.of(dataset) - .sortBy(ConsegnaClienteDTO::getRagSoc) + .sortBy(DocumentoResoDTO::getRagSoc) .toList(); Stream.of(mDataset) - .map(ConsegnaClienteDTO::getRagSoc) + .map(DocumentoResoDTO::getRagSoc) .distinct() .forEach(x -> { this.mSectionTitleItems.add(String.valueOf(x.charAt(0))); @@ -148,7 +141,9 @@ public class UltimeConsegneMainListAdapter extends SectionedRecyclerViewAdapter< @Override public void onBindItemViewHolder(final SingleItemViewHolder holder, final int position) { - final ConsegnaClienteDTO consegna = this.mDataset.get(position); + final DocumentoResoDTO consegna = this.mDataset.get(position); + + holder.mBinding.setConsegna(consegna); holder.mBinding.descriptionMain.setText(UtilityString.isNullOrEmpty(consegna.getIndirizzo()) ? "" : consegna.getIndirizzo()); @@ -167,8 +162,8 @@ public class UltimeConsegneMainListAdapter extends SectionedRecyclerViewAdapter< } try { - Calendar calendarNow = Calendar.getInstance(TimeZone.getDefault()); - Calendar calendarDataDoc = Calendar.getInstance(TimeZone.getDefault()); + Calendar calendarNow = UtilityDate.getCalendarInstance(); + Calendar calendarDataDoc = UtilityDate.getCalendarInstance(); calendarDataDoc.setTime(consegna.getDataDocD()); String dataDocString = ""; @@ -188,9 +183,13 @@ public class UltimeConsegneMainListAdapter extends SectionedRecyclerViewAdapter< UtilityExceptions.defaultException(mContext, ex); } - holder.mBinding.getRoot().setOnClickListener(l -> { - if(onItemClickListener != null) onItemClickListener.onItemClicked(consegna); + + holder.mBinding.getRoot().setOnClickListener(v -> { + consegna.setSelected(!consegna.isSelected()); + + if(this.mOnSelectionChanged != null) mOnSelectionChanged.run(consegna); }); + } @Override @@ -214,8 +213,8 @@ public class UltimeConsegneMainListAdapter extends SectionedRecyclerViewAdapter< } - public void setOnItemClickListener(OnItemClickListener onItemClickListener) { - this.onItemClickListener = onItemClickListener; + public void setOnSelectionChanged(RunnableArgs mSelectionChanged) { + this.mOnSelectionChanged = mSelectionChanged; } } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/UltimeConsegneFornitoreFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/UltimeConsegneFornitoreFragment.java new file mode 100644 index 00000000..ee718b15 --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/UltimeConsegneFornitoreFragment.java @@ -0,0 +1,169 @@ +package it.integry.integrywmsnative.gest.ultime_consegne_fornitore; + + +import android.app.ProgressDialog; +import android.content.Context; +import android.os.Bundle; + +import androidx.appcompat.widget.AppCompatTextView; +import androidx.databinding.DataBindingUtil; +import androidx.fragment.app.Fragment; +import androidx.recyclerview.widget.LinearLayoutManager; + +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import com.annimon.stream.Stream; + +import java.util.ArrayList; +import java.util.List; + +import it.integry.integrywmsnative.R; +import it.integry.integrywmsnative.core.rest.model.DocumentoResoDTO; +import it.integry.integrywmsnative.core.interfaces.IScrollableFragment; +import it.integry.integrywmsnative.core.interfaces.ITitledFragment; +import it.integry.integrywmsnative.core.settings.SettingsManager; +import it.integry.integrywmsnative.core.utility.UtilityExceptions; +import it.integry.integrywmsnative.core.utility.UtilityProgress; +import it.integry.integrywmsnative.databinding.FragmentUltimeConsegneFornitoreBinding; +import it.integry.integrywmsnative.gest.picking_resi.PickingResiActivity; +import it.integry.integrywmsnative.gest.ultime_consegne_fornitore.core.UltimeConsegneFornitoreListAdapter; +import it.integry.integrywmsnative.gest.ultime_consegne_fornitore.rest.UltimeConsegneFornitoreRESTConsumer; +import it.integry.integrywmsnative.ui.ElevatedToolbar; + +/** + * A simple {@link Fragment} subclass. + */ +public class UltimeConsegneFornitoreFragment extends Fragment implements ITitledFragment, IScrollableFragment { + + private Runnable mOnPreDestroy; + private ElevatedToolbar mToolbar; + + private FragmentUltimeConsegneFornitoreBinding mBinding; + + private List mItems; + + public UltimeConsegneFornitoreFragment() { + // Required empty public constructor + } + + public static UltimeConsegneFornitoreFragment newInstance() { + UltimeConsegneFornitoreFragment fragment = new UltimeConsegneFornitoreFragment(); + Bundle args = new Bundle(); + + fragment.setArguments(args); + return fragment; + } + + + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { + // Inflate the layout for this fragment + mBinding = DataBindingUtil.inflate(LayoutInflater.from(getActivity()), R.layout.fragment_ultime_consegne_fornitore, container, false); + + mBinding.setViewmodel(this); + + mToolbar.setRecyclerView(mBinding.recyclerView); + + this.initView(); + + // Inflate the layout for this fragment + return mBinding.getRoot(); + } + + @Override + public void onDestroy() { + if(mOnPreDestroy != null) mOnPreDestroy.run(); + super.onDestroy(); + } + + @Override + public void onCreateActionBar(AppCompatTextView titleText, Context context) { + titleText.setText(context.getText(R.string.fragment_ultime_consegne_fornitore_title).toString()); + } + + @Override + public void setScrollToolbar(ElevatedToolbar toolbar) { + mToolbar = toolbar; + } + + @Override + public void setOnPreDestroy(Runnable onPreDestroy) { + mOnPreDestroy = onPreDestroy; + } + + + + + private void initView() { + this.initList(); + + this.mBinding.mainFab.hide(); + this.mBinding.mainFab.setOnClickListener(v -> { + dispatchConsegne(); + }); + + } + + private void initList() { + ProgressDialog progressDialog = UtilityProgress.createDefaultProgressDialog(getActivity()); + + UltimeConsegneFornitoreRESTConsumer.getUltimeConsegneFornitori( + SettingsManager.i().userSession.depo.getCodMdep(), + null, + null, + consegne -> { + this.mItems = consegne; + this.initDataAdapter(consegne); + + progressDialog.dismiss(); + }, ex -> { + UtilityExceptions.defaultException(getActivity(), ex, progressDialog); + }); + } + + private void initDataAdapter(ArrayList dataset) { + UltimeConsegneFornitoreListAdapter adapter = new UltimeConsegneFornitoreListAdapter(getActivity(), dataset); + adapter.setOnSelectionChanged(this::onSingleSelectionChanged); + + mBinding.recyclerView.setHasFixedSize(true); + mBinding.recyclerView.setLayoutManager(new LinearLayoutManager(getActivity())); + mBinding.recyclerView.setAdapter(adapter); + mBinding.fastscroll.setRecyclerView(mBinding.recyclerView); + + } + + + private void onSingleSelectionChanged(DocumentoResoDTO dto) { + List selectedOrders = getSelectedItems(); + + if(dto.isSelected()) { + Stream.of(selectedOrders) + .filter(x -> !x.getRagSoc().equalsIgnoreCase(dto.getRagSoc())) + .forEach(x -> x.setSelected(false)); + } + + if(selectedOrders != null && selectedOrders.size() > 0) { + mBinding.mainFab.show(); + } + else { + mBinding.mainFab.hide(); + } + } + + private List getSelectedItems() { + return Stream.of(this.mItems) + .filter(DocumentoResoDTO::isSelected) + .toList(); + } + + + private void dispatchConsegne() { + List selectedConsegne = getSelectedItems(); + + PickingResiActivity.startActivity(getActivity(), selectedConsegne, -1); + } + +} diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/core/UltimeConsegneFornitoreListAdapter.java b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/core/UltimeConsegneFornitoreListAdapter.java new file mode 100644 index 00000000..b062bcdc --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/core/UltimeConsegneFornitoreListAdapter.java @@ -0,0 +1,182 @@ +package it.integry.integrywmsnative.gest.ultime_consegne_fornitore.core; + +import android.content.Context; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import androidx.core.content.ContextCompat; +import androidx.core.content.res.ResourcesCompat; +import androidx.databinding.DataBindingUtil; +import androidx.recyclerview.widget.RecyclerView; + +import com.amulyakhare.textdrawable.TextDrawable; +import com.annimon.stream.Stream; +import com.zhukic.sectionedrecyclerview.SectionedRecyclerViewAdapter; + +import java.util.ArrayList; +import java.util.Calendar; +import java.util.List; + +import it.integry.integrywmsnative.R; +import it.integry.integrywmsnative.core.rest.model.DocumentoResoDTO; +import it.integry.integrywmsnative.core.expansion.RunnableArgs; +import it.integry.integrywmsnative.core.utility.UtilityDate; +import it.integry.integrywmsnative.core.utility.UtilityExceptions; +import it.integry.integrywmsnative.core.utility.UtilityString; +import it.integry.integrywmsnative.databinding.FragmentUltimeConsegneFornitoreListHeaderBinding; +import it.integry.integrywmsnative.databinding.FragmentUltimeConsegneFornitoreListSingleItemBinding; +import it.integry.integrywmsnative.ui.fastscroll.SectionTitleProvider; + +public class UltimeConsegneFornitoreListAdapter extends SectionedRecyclerViewAdapter implements SectionTitleProvider { + + private Context mContext; + private List mDataset; + private ArrayList mSectionTitleItems; + + private RunnableArgs mOnSelectionChanged; + + @Override + public String getSectionTitle(int position) { + return mSectionTitleItems.get(position); + } + + + static class SubheaderHolder extends RecyclerView.ViewHolder { + + FragmentUltimeConsegneFornitoreListHeaderBinding mBinding; + + SubheaderHolder(FragmentUltimeConsegneFornitoreListHeaderBinding binding) { + super(binding.getRoot()); + this.mBinding = binding; + } + + } + + static class SingleItemViewHolder extends RecyclerView.ViewHolder { + + FragmentUltimeConsegneFornitoreListSingleItemBinding mBinding; + + SingleItemViewHolder(FragmentUltimeConsegneFornitoreListSingleItemBinding binding) { + super(binding.getRoot()); + this.mBinding = binding; + } + } + + + + + + public UltimeConsegneFornitoreListAdapter(Context context, ArrayList dataset) { + super(); + this.mContext = context; + this.mDataset = new ArrayList<>(); + this.mSectionTitleItems = new ArrayList<>(); + + this.mDataset = Stream.of(dataset) + .sortBy(DocumentoResoDTO::getRagSoc) + .toList(); + + + Stream.of(mDataset) + .map(DocumentoResoDTO::getRagSoc) + .distinct() + .forEach(x -> { + this.mSectionTitleItems.add(String.valueOf(x.charAt(0))); + + long count = Stream.of(dataset) + .filter(y -> y.getRagSoc().equalsIgnoreCase(x)) + .count(); + + + for(int i = 0; i < count; i++) this.mSectionTitleItems.add(String.valueOf(x.charAt(0))); + }); + + long count = Stream.of(dataset) + .filter(x -> UtilityString.isNullOrEmpty(x.getRagSoc())) + .count(); + + } + + + @Override + public SingleItemViewHolder onCreateItemViewHolder(ViewGroup parent, int viewType) { + FragmentUltimeConsegneFornitoreListSingleItemBinding binding = DataBindingUtil.inflate(LayoutInflater.from(mContext), R.layout.fragment_ultime_consegne_fornitore__list_single_item, parent, false); + return new SingleItemViewHolder(binding); + } + + @Override + public SubheaderHolder onCreateSubheaderViewHolder(ViewGroup parent, int viewType) { + FragmentUltimeConsegneFornitoreListHeaderBinding binding = DataBindingUtil.inflate(LayoutInflater.from(mContext), R.layout.fragment_ultime_consegne_fornitore__list_header, parent, false); + return new SubheaderHolder(binding); + } + + @Override + public void onBindItemViewHolder(final SingleItemViewHolder holder, final int position) { + final DocumentoResoDTO consegna = this.mDataset.get(position); + + holder.mBinding.setConsegna(consegna); + + holder.mBinding.descriptionMain.setText(UtilityString.isNullOrEmpty(consegna.getRifOrd()) ? "" : consegna.getRifOrd()); + + String numDoc = "" + consegna.getNumDoc(); + holder.mBinding.badge1.setText(numDoc); + + try { + Calendar calendarNow = UtilityDate.getCalendarInstance(); + Calendar calendarDataDoc = UtilityDate.getCalendarInstance(); + calendarDataDoc.setTime(consegna.getDataDocD()); + + String dataDocString = ""; + + if(calendarDataDoc.get(Calendar.YEAR) == calendarNow.get(Calendar.YEAR)) { + dataDocString = UtilityDate.formatDate(consegna.getDataDocD(), UtilityDate.COMMONS_DATE_FORMATS.DM_HUMAN); + } else { + dataDocString = UtilityDate.formatDate(consegna.getDataDocD(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN); + } + + holder.mBinding.date.setText(dataDocString); + + + holder.mBinding.compilatoDa.setText(consegna.getCompilatoDa()); + holder.mBinding.compilatoDa.setVisibility(UtilityString.isNullOrEmpty(consegna.getCompilatoDa()) ? View.GONE : View.VISIBLE); + } catch (Exception ex) { + UtilityExceptions.defaultException(mContext, ex); + } + + + holder.mBinding.getRoot().setOnClickListener(v -> { + consegna.setSelected(!consegna.isSelected()); + + if(this.mOnSelectionChanged != null) mOnSelectionChanged.run(consegna); + }); + + } + + @Override + public void onBindSubheaderViewHolder(SubheaderHolder subheaderHolder, int nextItemPosition) { + subheaderHolder.mBinding.title.setText(this.mDataset.get(nextItemPosition).getRagSoc()); + } + + @Override + public boolean onPlaceSubheaderBetweenItems(int position) { + + if(!this.mDataset.get(position).getCodAnag().equalsIgnoreCase(this.mDataset.get(position+1).getCodAnag())) { + return true; + } + + return false; + } + + @Override + public int getItemSize() { + return this.mDataset.size(); + } + + + public void setOnSelectionChanged(RunnableArgs mSelectionChanged) { + this.mOnSelectionChanged = mSelectionChanged; + } + + +} diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/rest/UltimeConsegneFornitoreRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/rest/UltimeConsegneFornitoreRESTConsumer.java new file mode 100644 index 00000000..71e6e993 --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/rest/UltimeConsegneFornitoreRESTConsumer.java @@ -0,0 +1,49 @@ +package it.integry.integrywmsnative.gest.ultime_consegne_fornitore.rest; + +import com.google.gson.reflect.TypeToken; + +import java.lang.reflect.Type; +import java.util.ArrayList; + +import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; +import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer; +import it.integry.integrywmsnative.core.expansion.RunnableArgs; +import it.integry.integrywmsnative.core.utility.UtilityDB; +import it.integry.integrywmsnative.core.rest.model.DocumentoResoDTO; + +public class UltimeConsegneFornitoreRESTConsumer { + + public static void getUltimeConsegneFornitori(String codMdep, String codAnag, String codMart, RunnableArgs> onComplete, RunnableArgs onFailed) { + + int numberOfConsegnePerCli = 10; + int numberOfDayToAnalyze = 90; + + String sql = "SELECT consegne.*, " + + " rag_soc " + + "FROM WMS_GetUltimeConsegneFornitori(" + + UtilityDB.valueToString(numberOfConsegnePerCli) + ", " + + UtilityDB.valueToString(codAnag) + ", " + + UtilityDB.valueToString(codMart) + ", " + + UtilityDB.valueToString(codMdep) + ", " + + UtilityDB.valueToString(numberOfDayToAnalyze) + ") consegne " + + "LEFT OUTER JOIN gtb_anag ON consegne.cod_anag = gtb_anag.cod_anag " + + "ORDER BY rag_soc, " + + " counter_consegna "; + + + Type typeOfObjectsList = new TypeToken>() {}.getType(); + SystemRESTConsumer.processSql(sql, typeOfObjectsList, new ISimpleOperationCallback>() { + @Override + public void onSuccess(ArrayList value) { + if(onComplete != null) onComplete.run(value); + } + + @Override + public void onFailed(Exception ex) { + if(onFailed != null) onFailed.run(ex); + } + }); + } + + +} 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 ce689be6..893db7a1 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 @@ -14,7 +14,6 @@ import android.text.SpannableString; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuInflater; -import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; @@ -24,7 +23,7 @@ import java.util.ArrayList; import java.util.List; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.CommonRESTException; +import it.integry.integrywmsnative.core.rest.CommonRESTException; import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.data_cache.DataCache; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/core/VenditaHelper.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/core/VenditaHelper.java index aa4b68fb..83045003 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/core/VenditaHelper.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/core/VenditaHelper.java @@ -12,11 +12,11 @@ import java.lang.reflect.Type; import java.util.ArrayList; import java.util.List; -import it.integry.integrywmsnative.core.REST.RESTBuilder; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.consumers.SystemRESTConsumer; -import it.integry.integrywmsnative.core.REST.model.EsitoType; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.RESTBuilder; +import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; +import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer; +import it.integry.integrywmsnative.core.rest.model.EsitoType; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.model.DtbOrdt; import it.integry.integrywmsnative.core.model.MtbColt; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dialogs/DialogVenditaFiltroAvanzato.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dialogs/DialogVenditaFiltroAvanzato.java index 273f074e..f905969e 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dialogs/DialogVenditaFiltroAvanzato.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dialogs/DialogVenditaFiltroAvanzato.java @@ -134,7 +134,7 @@ public class DialogVenditaFiltroAvanzato { IFiltroOrdiniVendita filtroOrdiniVendita = ClassRouter.getIstance(ClassRouter.PATH.FILTRO_ORDINI_VENDITA); bindings.filledExposedDropdownDataCons.setOnClickListener(view -> { - Calendar c = Calendar.getInstance(); + Calendar c = UtilityDate.getCalendarInstance(); if(viewModel.dataConsegnaDate != null) { c.setTime(viewModel.dataConsegnaDate); 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 e7482603..f880877d 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 @@ -10,6 +10,7 @@ import java.util.Date; import it.integry.integrywmsnative.core.di.BindableBoolean; import it.integry.integrywmsnative.core.model.secondary.GestioneEnum; +import it.integry.integrywmsnative.core.utility.UtilityDate; import it.integry.integrywmsnative.core.utility.UtilityLogger; public class OrdineVenditaInevasoDTO implements Parcelable { @@ -194,13 +195,7 @@ public class OrdineVenditaInevasoDTO implements Parcelable { } public Date getDataOrdD() { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - try { - return sdf.parse(getDataOrdS()); - } catch (ParseException e) { - UtilityLogger.errorMe(e); - return null; - } + return UtilityDate.recognizeDateWithExceptionHandler(getDataOrdS()); } public OrdineVenditaInevasoDTO setData(String data) { @@ -308,8 +303,7 @@ public class OrdineVenditaInevasoDTO implements Parcelable { } public Date getDataInizTraspD() throws ParseException { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - return sdf.parse(getDataInizTraspS()); + return UtilityDate.recognizeDateWithExceptionHandler(getDataInizTraspS()); } public OrdineVenditaInevasoDTO setDataInizTrasp(String dataInizTrasp) { @@ -448,13 +442,7 @@ public class OrdineVenditaInevasoDTO implements Parcelable { } public Date getDataConsD() { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - try { - return sdf.parse(getDataConsS()); - } catch (ParseException e) { - UtilityLogger.errorMe(e); - return null; - } + return UtilityDate.recognizeDateWithExceptionHandler(getDataConsS()); } public OrdineVenditaInevasoDTO setDataCons(String dataCons) { diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dto/PickingObjectDTO.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dto/PickingObjectDTO.java index 35609717..f10199f1 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dto/PickingObjectDTO.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dto/PickingObjectDTO.java @@ -4,13 +4,10 @@ import android.os.Parcel; import android.os.Parcelable; import java.math.BigDecimal; -import java.text.ParseException; -import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; -import java.util.List; -import it.integry.integrywmsnative.core.REST.model.Ean128Model; +import it.integry.integrywmsnative.core.rest.model.Ean128Model; import it.integry.integrywmsnative.core.model.MtbAart; import it.integry.integrywmsnative.core.model.MtbColr; import it.integry.integrywmsnative.core.model.MtbColt; @@ -288,13 +285,7 @@ public class PickingObjectDTO implements Parcelable { } public Date getDataColloD() { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - try { - return sdf.parse(getDataColloS()); - } catch (ParseException e) { - UtilityLogger.errorMe(e); - return null; - } + return UtilityDate.recognizeDateWithExceptionHandler(getDataColloS()); } public String getDataColloHuman() { @@ -346,9 +337,8 @@ public class PickingObjectDTO implements Parcelable { return dataScad; } - public Date getDataScadD() throws ParseException { - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); - return sdf.parse(getDataScadS()); + public Date getDataScadD() { + return UtilityDate.recognizeDateWithExceptionHandler(getDataScadS()); } public PickingObjectDTO setDataScad(String dataScad) { diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/rest/OrdiniVenditaRESTConsumerService.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/rest/OrdiniVenditaRESTConsumerService.java index d5ff84c6..9d8593c1 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/rest/OrdiniVenditaRESTConsumerService.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/rest/OrdiniVenditaRESTConsumerService.java @@ -2,7 +2,7 @@ package it.integry.integrywmsnative.gest.vendita.rest; import java.util.List; -import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; +import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.model.DtbOrdt; import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO; import it.integry.integrywmsnative.gest.vendita.dto.PickingObjectDTO; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/viewmodel/VenditaViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/viewmodel/VenditaViewModel.java index 621b2651..25b2a6de 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/viewmodel/VenditaViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/viewmodel/VenditaViewModel.java @@ -11,8 +11,8 @@ import java.util.ArrayList; import java.util.List; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.BarcodeRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.BarcodeRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.model.DtbOrdt; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/VenditaOrdineInevasoActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/VenditaOrdineInevasoActivity.java index d14f351a..d6c75f4f 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/VenditaOrdineInevasoActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/VenditaOrdineInevasoActivity.java @@ -10,7 +10,7 @@ import android.view.MenuItem; import java.util.ArrayList; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.PrinterRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer; import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.data_cache.DataCache; 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 e02644f1..6fb80e39 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 @@ -20,14 +20,14 @@ import java.util.Objects; import it.integry.integrywmsnative.R; import it.integry.integrywmsnative.core.CommonConst; -import it.integry.integrywmsnative.core.REST.consumers.ArticoloRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.BarcodeRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.consumers.PosizioniRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.PrinterRESTConsumer; -import it.integry.integrywmsnative.core.REST.model.Ean128Model; -import it.integry.integrywmsnative.core.REST.model.Ean13PesoModel; +import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.BarcodeRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; +import it.integry.integrywmsnative.core.rest.consumers.PosizioniRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer; +import it.integry.integrywmsnative.core.rest.model.Ean128Model; +import it.integry.integrywmsnative.core.rest.model.Ean13PesoModel; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.class_router.ClassRouter; import it.integry.integrywmsnative.core.class_router.interfaces.IOrdiniVendita; @@ -341,7 +341,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO // List foundRows = Stream.of(groupedOrdini) // .filter(x -> x.getNumOrd() == currentMtbColr.getNumOrd() && // x.getRigaOrd() == currentMtbColr.getRigaOrd()&& -// x.getDataOrd().equals(currentMtbColr.getDataOrdD())) +// x.getDataOrdD().equals(currentMtbColr.getDataOrdD())) // .toList(); // // if(foundRows != null && foundRows.size() > 0){ @@ -854,19 +854,9 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO if(closeProgress) finalProgress.dismiss(); - FBToast.successToast(mActivity,mActivity.getResources().getString(R.string.data_saved) ,FBToast.LENGTH_SHORT); - - -// new StatusBarAlert.Builder(mActivity) -// .autoHide(true) -// .withDuration(2500) -// .showProgress(false) -// .withText(R.string.data_saved) -// .withAlertColor(R.color.mainGreen) -// .build(); + FBToast.successToast(mActivity, mActivity.getResources().getString(R.string.data_saved) ,FBToast.LENGTH_SHORT); if(onComplete != null) onComplete.run(); - } @Override @@ -897,7 +887,11 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO progress.show(); if(thereIsAnyRowInUL()) { - updateDataFine(progress, () -> distribuisciCollo(progress, (generatedMtbColts) -> printCollo(progress, generatedMtbColts, onComplete))); + ColliMagazzinoRESTConsumer.updateDataFine( + mActivity, + progress, + mArticoliInColloBottomSheetViewModel.mtbColt.get(), + () -> distribuisciCollo(progress, (generatedMtbColts) -> printCollo(progress, generatedMtbColts, onComplete))); } else { if(mtbColtSessionID != null) ColliDataRecover.closeSession(mtbColtSessionID); deleteCollo(progress, onComplete); @@ -909,26 +903,6 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO } - private void updateDataFine(ProgressDialog progress, Runnable onComplete) { - - MtbColt cloneMtbColt = (MtbColt) mArticoliInColloBottomSheetViewModel.mtbColt.get().clone(); - cloneMtbColt.setOperation(CommonModelConsts.OPERATION.UPDATE); - cloneMtbColt.setOraFinePrep(new Date()); - - - ColliMagazzinoRESTConsumer.saveCollo(cloneMtbColt, new ISimpleOperationCallback() { - @Override - public void onSuccess(MtbColt value) { - onComplete.run(); - } - - @Override - public void onFailed(Exception ex) { - UtilityExceptions.defaultException(mActivity, ex, progress); - } - }); - - } private void distribuisciCollo(ProgressDialog progress, RunnableArgs> onComplete) { @@ -955,9 +929,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO DialogAskShouldPrint.make(mActivity, "Packing List", shouldPrint -> { if(shouldPrint) { - PrinterRESTConsumer.getAvailablePrinters(SettingsManager.i().userSession.depo.getCodMdep(), PrinterRESTConsumer.Type.PRIMARIA, new ISimpleOperationCallback>() { - @Override - public void onSuccess(List value) { + PrinterRESTConsumer.getAvailablePrinters(SettingsManager.i().userSession.depo.getCodMdep(), PrinterRESTConsumer.Type.PRIMARIA, value -> { if (value.size() > 0) { try { @@ -985,13 +957,9 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO String errorMessage = "Nessuna stampante configurata"; DialogSimpleMessageHelper.makeWarningDialog(mActivity, new SpannableString(errorMessage), null, () -> postCloseOperations(mtbColtsToPrint, onComplete)).show(); } - } - - @Override - public void onFailed(Exception ex) { + }, ex -> { UtilityExceptions.defaultException(mActivity, ex, progress); - } - }); + }); } else { postCloseOperations(mtbColtsToPrint, onComplete); progress.dismiss(); @@ -1194,8 +1162,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO } private void onOrdineRowDispatched(PickingObjectDTO item, QuantityDTO quantityDTO, boolean closeUL){ - final ProgressDialog progress = ProgressDialog.show(mActivity, mActivity.getText(R.string.waiting), - mActivity.getText(R.string.loading) + " ...", true); + final ProgressDialog progress = UtilityProgress.createDefaultProgressDialog(mActivity); final MtbColr mtbColr = new MtbColr() .setCodMart(item.getCodMart()) @@ -1204,7 +1171,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO .setQtaCnf(quantityDTO.qtaCnf.getBigDecimal()) .setNumCnf(quantityDTO.numCnf.getBigDecimal()) .setDescrizione(item.getDescrizioneEstesa()) - .setDatetimeRow(new Date()); + .setDatetimeRow(UtilityDate.getDateInstance()); if(item.getTempPickData() != null && item.getTempPickData().getSourceMtbColt() != null) { MtbColt sourceMtbColt = item.getTempPickData().getSourceMtbColt(); @@ -1233,38 +1200,32 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO cloneMtbColt.setMtbColr(new ObservableArrayList()); cloneMtbColt.getMtbColr().add(mtbColr); - ColliMagazzinoRESTConsumer.saveCollo(cloneMtbColt, new ISimpleOperationCallback() { - @Override - public void onSuccess(MtbColt value) { + ColliMagazzinoRESTConsumer.saveCollo(cloneMtbColt, value -> { - mtbColr - .setDataCollo(value.getDataColloS()) - .setNumCollo(value.getNumCollo()) - .setGestione(value.getGestione()) - .setSerCollo(value.getSerCollo()) - .setRiga(value.getMtbColr().get(0).getRiga()) - .setUntMis(item.getMtbAart().getUntMis()) - .setMtbAart(item.getMtbAart()); + mtbColr + .setDataCollo(value.getDataColloS()) + .setNumCollo(value.getNumCollo()) + .setGestione(value.getGestione()) + .setSerCollo(value.getSerCollo()) + .setRiga(value.getMtbColr().get(0).getRiga()) + .setUntMis(item.getMtbAart().getUntMis()) + .setMtbAart(item.getMtbAart()); - item.getWithdrawRows().add(mtbColr); + item.getWithdrawRows().add(mtbColr); - mArticoliInColloBottomSheetViewModel.mtbColt.get().getMtbColr().add(mtbColr); + mArticoliInColloBottomSheetViewModel.mtbColt.get().getMtbColr().add(mtbColr); - //Chiamato removeListFilter perché cosi mi cancella tutti i dati di pick temporanei - removeListFilter(); + //Chiamato removeListFilter perché cosi mi cancella tutti i dati di pick temporanei + removeListFilter(); - FBToast.successToast(mActivity,mActivity.getResources().getString(R.string.data_saved) ,FBToast.LENGTH_SHORT); + FBToast.successToast(mActivity,mActivity.getResources().getString(R.string.data_saved) ,FBToast.LENGTH_SHORT); - progress.dismiss(); - - if(closeUL) onColloClosed(null); - } + progress.dismiss(); - @Override - public void onFailed(Exception ex) { - UtilityExceptions.defaultException(mActivity, ex, progress); - } + if(closeUL) onColloClosed(null); + }, ex -> { + UtilityExceptions.defaultException(mActivity, ex, progress); }); } @@ -1348,7 +1309,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO .setQtaCnf(quantityDTO.qtaCnf.getBigDecimal()) .setNumCnf(quantityDTO.numCnf.getBigDecimal()) .setDescrizione(item.getDescrizioneEstesa()) - .setDatetimeRow(new Date()); + .setDatetimeRow(UtilityDate.getDateInstance()); mtbColr.setOperation(CommonModelConsts.OPERATION.INSERT_OR_UPDATE); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/versamento_merce/viewmodel/VersamentoMerceViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/versamento_merce/viewmodel/VersamentoMerceViewModel.java index e15b0796..1a74d122 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/versamento_merce/viewmodel/VersamentoMerceViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/versamento_merce/viewmodel/VersamentoMerceViewModel.java @@ -12,14 +12,13 @@ import com.annimon.stream.Stream; import java.math.BigDecimal; import java.util.ArrayList; -import java.util.Date; import java.util.Iterator; import java.util.List; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.BarcodeRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.PosizioniRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.BarcodeRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.PosizioniRESTConsumer; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.interfaces.IPoppableActivity; @@ -30,6 +29,7 @@ import it.integry.integrywmsnative.core.model.MtbDepoPosizione; import it.integry.integrywmsnative.core.model.secondary.GestioneEnum; 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.core.utility.UtilityExceptions; import it.integry.integrywmsnative.core.utility.UtilityPosizione; import it.integry.integrywmsnative.core.utility.UtilityProgress; @@ -364,7 +364,7 @@ public class VersamentoMerceViewModel { .setQtaCol(quantityDTO.qtaTot.getBigDecimal()) .setQtaCnf(quantityDTO.qtaCnf.getBigDecimal()) .setNumCnf(quantityDTO.numCnf.getBigDecimal()) - .setDatetimeRow(new Date()); + .setDatetimeRow(UtilityDate.getDateInstance()); onComplete.run(mtbColr); }, onAbort).show(); diff --git a/app/src/main/java/it/integry/integrywmsnative/view/bottomsheet/viewmodel/ArticoliInColloBottomSheetViewModel.java b/app/src/main/java/it/integry/integrywmsnative/view/bottomsheet/viewmodel/ArticoliInColloBottomSheetViewModel.java index 5968ec0c..dc3dc7df 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/bottomsheet/viewmodel/ArticoliInColloBottomSheetViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/bottomsheet/viewmodel/ArticoliInColloBottomSheetViewModel.java @@ -18,7 +18,7 @@ import android.widget.BaseAdapter; import java.lang.ref.WeakReference; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.expansion.RunnableArgss; import it.integry.integrywmsnative.core.model.MtbColr; diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_cliente/viewmodel/DialogAskCliente_Page1ViewModel.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_cliente/viewmodel/DialogAskCliente_Page1ViewModel.java index 304e7b77..3d29a549 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_cliente/viewmodel/DialogAskCliente_Page1ViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_cliente/viewmodel/DialogAskCliente_Page1ViewModel.java @@ -12,8 +12,8 @@ import java.util.ArrayList; import java.util.List; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.consumers.SystemRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; +import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer; import it.integry.integrywmsnative.databinding.DialogAskClientePage1Binding; import it.integry.integrywmsnative.view.dialogs.ask_cliente.dto.DialogAskClienteClienteDTO; diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_cliente/viewmodel/DialogAskCliente_Page2ViewModel.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_cliente/viewmodel/DialogAskCliente_Page2ViewModel.java index de88b82c..3eaea8fb 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_cliente/viewmodel/DialogAskCliente_Page2ViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_cliente/viewmodel/DialogAskCliente_Page2ViewModel.java @@ -12,11 +12,10 @@ import java.util.ArrayList; import java.util.List; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.consumers.SystemRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; +import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer; import it.integry.integrywmsnative.core.utility.UtilityDB; import it.integry.integrywmsnative.databinding.DialogAskClientePage2Binding; -import it.integry.integrywmsnative.view.dialogs.ask_cliente.dto.DialogAskClienteClienteDTO; import it.integry.integrywmsnative.view.dialogs.ask_cliente.dto.DialogAskClienteDestinatarioDTO; public class DialogAskCliente_Page2ViewModel implements IDialogAskClienteViewModel { diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_position_of_lu/DialogAskPositionOfLU.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_position_of_lu/DialogAskPositionOfLU.java index 3148c251..c589fad1 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_position_of_lu/DialogAskPositionOfLU.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_position_of_lu/DialogAskPositionOfLU.java @@ -18,7 +18,7 @@ import java.util.ArrayList; import java.util.List; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.expansion.RunnableArgs; diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/base/DialogSimpleMessageHelper.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/base/DialogSimpleMessageHelper.java index 77723f0b..8e98734d 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/base/DialogSimpleMessageHelper.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/base/DialogSimpleMessageHelper.java @@ -12,6 +12,8 @@ import android.graphics.drawable.Drawable; import androidx.annotation.StringRes; import androidx.core.content.ContextCompat; import androidx.appcompat.widget.AppCompatImageView; + +import android.text.SpannableString; import android.text.Spanned; import android.view.LayoutInflater; import android.view.View; @@ -194,6 +196,14 @@ public class DialogSimpleMessageHelper { null, -1, null); } + public static void showSimpleWarningDialog(Context context, String message){ + makeErrorDialog( + context, + new SpannableString(message), + null, + null).show(); + } + public static Dialog makeErrorDialog(Context mContext, Spanned messageText, HashMap hashmapContent, Runnable onPositiveClick){ return makeBase(TYPE.ERROR, @@ -205,6 +215,14 @@ public class DialogSimpleMessageHelper { null, -1, null); } + public static void showSimpleErrorDialog(Context context, String message){ + makeErrorDialog( + context, + new SpannableString(message), + null, + null).show(); + } + public static Dialog makeErrorDialog(Context mContext, Spanned messageText, HashMap hashmapContent, Runnable onPositiveClick, @StringRes int rNeutralButtonString, Runnable onNeutralClick){ return makeBase(TYPE.ERROR, diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_lista_arts/DialogChooseArtsFromListaArts.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_lista_arts/DialogChooseArtsFromListaArts.java index d69367ad..4a728981 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_lista_arts/DialogChooseArtsFromListaArts.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_lista_arts/DialogChooseArtsFromListaArts.java @@ -10,7 +10,6 @@ import androidx.recyclerview.widget.LinearLayoutManager; import android.graphics.Color; import android.graphics.drawable.ColorDrawable; -import android.text.SpannableString; import android.view.LayoutInflater; import android.view.View; @@ -20,9 +19,9 @@ import java.util.ArrayList; import java.util.List; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.ArticoloRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.BarcodeRESTConsumer; -import it.integry.integrywmsnative.core.REST.model.Ean128Model; +import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.BarcodeRESTConsumer; +import it.integry.integrywmsnative.core.rest.model.Ean128Model; import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.di.BindableBoolean; @@ -35,7 +34,6 @@ import it.integry.integrywmsnative.core.utility.UtilityProgress; import it.integry.integrywmsnative.core.utility.UtilityString; import it.integry.integrywmsnative.databinding.DialogChooseArtsFromListaArtsLayoutBinding; import it.integry.integrywmsnative.view.dialogs.DialogCommon; -import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper; import it.integry.plugins.barcode_base_library.model.BarcodeScanDTO; public class DialogChooseArtsFromListaArts { diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity/DialogInputQuantity.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity/DialogInputQuantity.java index 190a6064..5c418283 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity/DialogInputQuantity.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity/DialogInputQuantity.java @@ -30,8 +30,8 @@ import java.util.Date; import java.util.GregorianCalendar; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.BarcodeRESTConsumer; -import it.integry.integrywmsnative.core.REST.model.Ean13PesoModel; +import it.integry.integrywmsnative.core.rest.consumers.BarcodeRESTConsumer; +import it.integry.integrywmsnative.core.rest.model.Ean13PesoModel; import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.expansion.RunnableArgs; @@ -367,7 +367,7 @@ public class DialogInputQuantity { } if(quantityDTO.expireDate == null && dto.mtbAart.getGgScadPartita() != null && dto.mtbAart.getGgScadPartita() > 0) { - Calendar c = Calendar.getInstance(); + Calendar c = UtilityDate.getCalendarInstance(); c.add(Calendar.DATE, dto.mtbAart.getGgScadPartita()); // number of days to add quantityDTO.expireDate = c.getTime(); @@ -610,7 +610,7 @@ public class DialogInputQuantity { Runnable onTextClicked = () -> { // Get Current Date - Calendar c = Calendar.getInstance(); + Calendar c = UtilityDate.getCalendarInstance(); if(quantityDTO.expireDate != null) { c.setTime(quantityDTO.expireDate); diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/scan_art/DialogScanArt.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/scan_art/DialogScanArt.java index 557d3836..e3c309a0 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/scan_art/DialogScanArt.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/scan_art/DialogScanArt.java @@ -11,20 +11,17 @@ import android.view.LayoutInflater; import androidx.databinding.DataBindingUtil; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.ArticoloRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.BarcodeRESTConsumer; -import it.integry.integrywmsnative.core.REST.model.Ean128Model; -import it.integry.integrywmsnative.core.REST.model.Ean13PesoModel; +import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.BarcodeRESTConsumer; +import it.integry.integrywmsnative.core.rest.model.Ean128Model; +import it.integry.integrywmsnative.core.rest.model.Ean13PesoModel; import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.expansion.RunnableArgs; -import it.integry.integrywmsnative.core.expansion.RunnableArgss; import it.integry.integrywmsnative.core.expansion.RunnableArgsss; import it.integry.integrywmsnative.core.model.MtbAart; import it.integry.integrywmsnative.core.utility.UtilityBarcode; -import it.integry.integrywmsnative.core.utility.UtilityDate; import it.integry.integrywmsnative.core.utility.UtilityExceptions; -import it.integry.integrywmsnative.core.utility.UtilityLogger; import it.integry.integrywmsnative.core.utility.UtilityProgress; import it.integry.integrywmsnative.core.utility.UtilityString; import it.integry.integrywmsnative.databinding.DialogScanArtBinding; diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/scan_or_create_lu/DialogScanOrCreateLU.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/scan_or_create_lu/DialogScanOrCreateLU.java index 18d1d054..facf5564 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/scan_or_create_lu/DialogScanOrCreateLU.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/scan_or_create_lu/DialogScanOrCreateLU.java @@ -14,9 +14,9 @@ import android.view.View; import com.annimon.stream.Stream; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.REST.consumers.BarcodeRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.PosizioniRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.BarcodeRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.PosizioniRESTConsumer; import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.expansion.RunnableArgs; diff --git a/app/src/main/res/layout/activity_accettazione_ordine_inevaso.xml b/app/src/main/res/layout/activity_accettazione_ordine_inevaso.xml index db6918f8..e01814ba 100644 --- a/app/src/main/res/layout/activity_accettazione_ordine_inevaso.xml +++ b/app/src/main/res/layout/activity_accettazione_ordine_inevaso.xml @@ -181,8 +181,8 @@ fab:menu_animationDelayPerItem="50" fab:menu_backgroundColor="@color/white_bg_alpha" fab:menu_buttonSpacing="0dp" - fab:menu_colorNormal="@color/colorPrimary" - fab:menu_colorPressed="@color/colorPrimaryDark" + fab:menu_colorNormal="@color/colorSecondary" + fab:menu_colorPressed="@color/colorSecondaryDark" fab:menu_fab_size="normal" fab:menu_labels_colorNormal="@color/white" fab:menu_labels_colorPressed="@color/white_pressed" @@ -254,7 +254,8 @@ + layout="@layout/fragment_articoli_in_collo_bottom_sheet" + android:visibility="@{!viewmodel.isFabVisible ? View.VISIBLE : View.GONE}" /> diff --git a/app/src/main/res/layout/activity_contenuto_bancale.xml b/app/src/main/res/layout/activity_contenuto_bancale.xml index 1ff6db11..0bd81acb 100644 --- a/app/src/main/res/layout/activity_contenuto_bancale.xml +++ b/app/src/main/res/layout/activity_contenuto_bancale.xml @@ -197,8 +197,8 @@ fab:menu_animationDelayPerItem="50" fab:menu_backgroundColor="@color/white_bg_alpha" fab:menu_buttonSpacing="0dp" - fab:menu_colorNormal="@color/colorPrimary" - fab:menu_colorPressed="@color/colorPrimaryDark" + fab:menu_colorNormal="@color/colorSecondary" + fab:menu_colorPressed="@color/colorSecondaryDark" fab:menu_fab_size="normal" fab:menu_labels_colorNormal="@color/white" fab:menu_labels_colorPressed="@color/white_pressed" diff --git a/app/src/main/res/layout/activity_picking_resi.xml b/app/src/main/res/layout/activity_picking_resi.xml new file mode 100644 index 00000000..9e2c9783 --- /dev/null +++ b/app/src/main/res/layout/activity_picking_resi.xml @@ -0,0 +1,269 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_vendita_ordine_inevaso.xml b/app/src/main/res/layout/activity_vendita_ordine_inevaso.xml index 54fc744d..8eb5d4e7 100644 --- a/app/src/main/res/layout/activity_vendita_ordine_inevaso.xml +++ b/app/src/main/res/layout/activity_vendita_ordine_inevaso.xml @@ -21,8 +21,7 @@ + android:layout_height="match_parent"> + layout="@layout/fragment_articoli_in_collo_bottom_sheet" + android:visibility="@{!viewmodel.isFabVisible ? View.VISIBLE : View.GONE}" /> diff --git a/app/src/main/res/layout/app_bar_main.xml b/app/src/main/res/layout/app_bar_main.xml index 373951bb..349522d8 100644 --- a/app/src/main/res/layout/app_bar_main.xml +++ b/app/src/main/res/layout/app_bar_main.xml @@ -32,66 +32,71 @@ android:orientation="horizontal" android:layout_gravity="center"> - + + + + + + + android:text="@string/app_name" + android:visibility="gone" + android:layout_centerVertical="true" + android:gravity="left" + style="@style/AppTheme.NewMaterial.Text.ToolbarTitle"/> - + + - - - - - - - + diff --git a/app/src/main/res/layout/fragment_articoli_in_collo_bottom_sheet.xml b/app/src/main/res/layout/fragment_articoli_in_collo_bottom_sheet.xml index 5c256fbc..43efda1d 100644 --- a/app/src/main/res/layout/fragment_articoli_in_collo_bottom_sheet.xml +++ b/app/src/main/res/layout/fragment_articoli_in_collo_bottom_sheet.xml @@ -16,7 +16,6 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:background="@android:color/white" - android:visibility="@{viewModel.mtbColt.get() != null ? View.VISIBLE : View.GONE}" app:behavior_peekHeight="?attr/actionBarSize" app:layout_behavior="com.google.android.material.bottomsheet.BottomSheetBehavior" app:behavior_hideable="false"> diff --git a/app/src/main/res/layout/fragment_main_accettazione.xml b/app/src/main/res/layout/fragment_main_accettazione.xml index 5a851576..615296d2 100644 --- a/app/src/main/res/layout/fragment_main_accettazione.xml +++ b/app/src/main/res/layout/fragment_main_accettazione.xml @@ -88,6 +88,7 @@ android:layout_gravity="bottom|end" android:layout_margin="@dimen/fab_margin" android:tint="@android:color/white" + style="@style/Widget.MaterialComponents.FloatingActionButton" app:srcCompat="@drawable/ic_check_black_24dp" /> diff --git a/app/src/main/res/layout/fragment_main_rettifica_giacenze.xml b/app/src/main/res/layout/fragment_main_rettifica_giacenze.xml index a4f1b772..87c1191c 100644 --- a/app/src/main/res/layout/fragment_main_rettifica_giacenze.xml +++ b/app/src/main/res/layout/fragment_main_rettifica_giacenze.xml @@ -277,6 +277,7 @@ android:layout_alignParentEnd="true" android:layout_alignParentBottom="true" android:tint="@android:color/white" + style="@style/Widget.MaterialComponents.FloatingActionButton" app:srcCompat="@drawable/ic_check_black_24dp" android:onClick="@{() -> viewmodel.closeLU(true, true)}" android:visibility="@{viewmodel.isFabVisible.get() ? View.VISIBLE : View.GONE}" diff --git a/app/src/main/res/layout/fragment_main_ultime_consegne_cliente.xml b/app/src/main/res/layout/fragment_main_ultime_consegne_cliente.xml index 68c337f8..bfada5c2 100644 --- a/app/src/main/res/layout/fragment_main_ultime_consegne_cliente.xml +++ b/app/src/main/res/layout/fragment_main_ultime_consegne_cliente.xml @@ -10,28 +10,47 @@ - - + android:layout_height="match_parent"> - + + + + + + + + + + - - - + android:layout_height="wrap_content" + android:layout_gravity="bottom|end" + android:layout_margin="@dimen/fab_margin" + android:tint="@android:color/white" + style="@style/Widget.MaterialComponents.FloatingActionButton" + app:srcCompat="@drawable/ic_check_black_24dp" /> + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_main_ultime_consegne_cliente__list_header.xml b/app/src/main/res/layout/fragment_main_ultime_consegne_cliente__list_header.xml index b0fcd552..ec125d50 100644 --- a/app/src/main/res/layout/fragment_main_ultime_consegne_cliente__list_header.xml +++ b/app/src/main/res/layout/fragment_main_ultime_consegne_cliente__list_header.xml @@ -9,50 +9,42 @@ android:orientation="vertical" android:layout_width="match_parent" android:layout_height="wrap_content"> - - - - - - - - - - - + android:layout_marginStart="6dp" + android:layout_marginEnd="6dp" + android:layout_marginTop="12dp" + android:layout_marginBottom="8dp" + app:cardElevation="2dp" + app:cardCornerRadius="4dp"> - + android:paddingStart="8dp" + android:paddingEnd="8dp" + android:paddingTop="8dp" + android:paddingBottom="8dp" + android:background="@color/colorAccent"> - - - - - - - - - - - + - + + diff --git a/app/src/main/res/layout/fragment_main_ultime_consegne_cliente__list_single_item.xml b/app/src/main/res/layout/fragment_main_ultime_consegne_cliente__list_single_item.xml index 5ce391c2..fdce7099 100644 --- a/app/src/main/res/layout/fragment_main_ultime_consegne_cliente__list_single_item.xml +++ b/app/src/main/res/layout/fragment_main_ultime_consegne_cliente__list_single_item.xml @@ -4,8 +4,8 @@ + name="consegna" + type="it.integry.integrywmsnative.core.rest.model.DocumentoResoDTO" /> + android:orientation="horizontal" + android:background="@drawable/bg_checked_layout" + app:backgroundTintResID="@{consegna.selected.get() ? R.color.bg_checked_layout : android.R.color.transparent}" > \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_ultime_consegne_fornitore.xml b/app/src/main/res/layout/fragment_ultime_consegne_fornitore.xml new file mode 100644 index 00000000..ed26703d --- /dev/null +++ b/app/src/main/res/layout/fragment_ultime_consegne_fornitore.xml @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_ultime_consegne_fornitore__list_header.xml b/app/src/main/res/layout/fragment_ultime_consegne_fornitore__list_header.xml new file mode 100644 index 00000000..1ee93afe --- /dev/null +++ b/app/src/main/res/layout/fragment_ultime_consegne_fornitore__list_header.xml @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_ultime_consegne_fornitore__list_single_item.xml b/app/src/main/res/layout/fragment_ultime_consegne_fornitore__list_single_item.xml new file mode 100644 index 00000000..40531216 --- /dev/null +++ b/app/src/main/res/layout/fragment_ultime_consegne_fornitore__list_single_item.xml @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/lista_bancali_list_model.xml b/app/src/main/res/layout/lista_bancali_list_model.xml index 5e30a8d6..17f9fabe 100644 --- a/app/src/main/res/layout/lista_bancali_list_model.xml +++ b/app/src/main/res/layout/lista_bancali_list_model.xml @@ -1,5 +1,5 @@ - + @@ -27,6 +27,7 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/layout/ultime_consegne_main_list__item_header.xml b/app/src/main/res/layout/ultime_consegne_main_list__item_header.xml new file mode 100644 index 00000000..efda0d5e --- /dev/null +++ b/app/src/main/res/layout/ultime_consegne_main_list__item_header.xml @@ -0,0 +1,25 @@ + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/menu/activity_main_drawer.xml b/app/src/main/res/menu/activity_main_drawer.xml index 30a46419..2be8fdfe 100644 --- a/app/src/main/res/menu/activity_main_drawer.xml +++ b/app/src/main/res/menu/activity_main_drawer.xml @@ -26,6 +26,10 @@ android:id="@+id/nav_free_picking" android:icon="@drawable/ic_black_barcode_scanner" android:title="@string/free_picking" /> + Lista UL Contenuto UL Spedizione merce + Ultime consegne %d - %s]]> @@ -222,13 +223,18 @@ Crea nuova UL Apri UL Ultime consegne + Ultimi arrivi Stampante non trovata Seleziona tutto Generale + Acquisti + Vendita + Lavorazione Produzione + Movimentazione interna Accettazione da produzione Picking per lavorazione Versamento materiale diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index e166eb5b..258995a6 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -2,6 +2,8 @@ #1A73E8 #0049b4 + #4db6ac + #459B90 #387ef5 #3f3f51b5 #757575 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 7c6689b8..6e78878c 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -146,6 +146,7 @@ LU List LU Content Shipping goods + Latest deliveries %d - %s]]> @@ -226,13 +227,18 @@ Open LU Latest deliveries + Latest arrivals Printer not found Select all General + Purchase + Check out + Manufacture Production + Internal handling Production picking Manufacture picking Deposit raw material diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index 6bc83c19..bd5dfdd5 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -28,6 +28,14 @@ @color/gray_600 14sp + + @@ -135,7 +143,16 @@ + + diff --git a/dynamic__base/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java b/dynamic__base/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java index ac61c630..8525b193 100644 --- a/dynamic__base/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java +++ b/dynamic__base/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java @@ -4,7 +4,7 @@ import android.app.ProgressDialog; import java.util.List; -import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.model.MtbColt; import it.integry.integrywmsnative.core.settings.SettingsManager; diff --git a/dynamic_ime/src/main/java/it/integry/wms/dynamic_customization/extensions/MenuConfigurationIME.java b/dynamic_ime/src/main/java/it/integry/wms/dynamic_customization/extensions/MenuConfigurationIME.java index 4d1cc22e..80298df6 100644 --- a/dynamic_ime/src/main/java/it/integry/wms/dynamic_customization/extensions/MenuConfigurationIME.java +++ b/dynamic_ime/src/main/java/it/integry/wms/dynamic_customization/extensions/MenuConfigurationIME.java @@ -6,44 +6,44 @@ public class MenuConfigurationIME extends BaseMenuConfiguration { public MenuConfigurationIME() { + + this .addGroup( new MenuGroup() - .setGroupText(it.integry.integrywmsnative.R.string.general) + .setGroupText(it.integry.integrywmsnative.R.string.purchase) .addItem(new MenuItem() .setID(it.integry.integrywmsnative.R.id.nav_accettazione) .setTitleText(it.integry.integrywmsnative.R.string.accettazione_title_fragment) .setTitleIcon(it.integry.integrywmsnative.R.drawable.ic_dashboard_accettazione)) + .addItem(new MenuItem() + .setID(it.integry.integrywmsnative.R.id.nav_resi_fornitore) + .setTitleText(it.integry.integrywmsnative.R.string.fragment_ultime_consegne_fornitore_title) + .setTitleIcon(it.integry.integrywmsnative.R.drawable.ic_latest_delivery)) + ).addGroup( + new MenuGroup() + .setGroupText(it.integry.integrywmsnative.R.string.checkout) + .addItem(new MenuItem() .setID(it.integry.integrywmsnative.R.id.nav_spedizione) .setTitleText(it.integry.integrywmsnative.R.string.vendita_title_fragment) .setTitleIcon(it.integry.integrywmsnative.R.drawable.ic_dashboard_spedizione)) - .addItem(new MenuItem() - .setID(it.integry.integrywmsnative.R.id.nav_rettifica_giacenze) - .setTitleText(it.integry.integrywmsnative.R.string.rettifica_giacenze_fragment_title) - .setTitleIcon(it.integry.integrywmsnative.R.drawable.ic_dashboard_rettifica_giacenze)) - - .addItem(new MenuItem() - .setID(it.integry.integrywmsnative.R.id.nav_versamento_merce) - .setTitleText(it.integry.integrywmsnative.R.string.versamento_merce_fragment_title) - .setTitleIcon(it.integry.integrywmsnative.R.drawable.ic_dashboard_versamento_merce)) - .addItem(new MenuItem() .setID(it.integry.integrywmsnative.R.id.nav_free_picking) .setTitleText(it.integry.integrywmsnative.R.string.free_picking) .setTitleIcon(it.integry.integrywmsnative.R.drawable.ic_dashboard_picking_libero)) -// .addItem(new MenuItem() -// .setID(it.integry.integrywmsnative.R.id.nav_resi_cliente) -// .setTitleText(it.integry.integrywmsnative.R.string.fragment_ultime_consegne_cliente_title) -// .setTitleIcon(it.integry.integrywmsnative.R.drawable.ic_latest_delivery)) - ) - .addGroup( + .addItem(new MenuItem() + .setID(it.integry.integrywmsnative.R.id.nav_resi_cliente) + .setTitleText(it.integry.integrywmsnative.R.string.fragment_ultime_consegne_cliente_title) + .setTitleIcon(it.integry.integrywmsnative.R.drawable.ic_latest_delivery)) + + ).addGroup( new MenuGroup() - .setGroupText(it.integry.integrywmsnative.R.string.production) + .setGroupText(it.integry.integrywmsnative.R.string.manufacture) .addItem(new MenuItem() .setID(it.integry.integrywmsnative.R.id.nav_prod_ordine_produzione) @@ -54,7 +54,24 @@ public class MenuConfigurationIME extends BaseMenuConfiguration { .setID(it.integry.integrywmsnative.R.id.nav_prod_ordine_lavorazione) .setTitleText(it.integry.integrywmsnative.R.string.prod_ordine_lavorazione_title_fragment) .setTitleIcon(it.integry.integrywmsnative.R.drawable.ic_dashboard_spedizione)) - ); + ).addGroup( + new MenuGroup() + .setGroupText(it.integry.integrywmsnative.R.string.internal_handling) + + .addItem(new MenuItem() + .setID(it.integry.integrywmsnative.R.id.nav_versamento_merce) + .setTitleText(it.integry.integrywmsnative.R.string.versamento_merce_fragment_title) + .setTitleIcon(it.integry.integrywmsnative.R.drawable.ic_dashboard_versamento_merce)) + + .addItem(new MenuItem() + .setID(it.integry.integrywmsnative.R.id.nav_rettifica_giacenze) + .setTitleText(it.integry.integrywmsnative.R.string.rettifica_giacenze_fragment_title) + .setTitleIcon(it.integry.integrywmsnative.R.drawable.ic_dashboard_rettifica_giacenze)) + + + ); + + } diff --git a/dynamic_ime/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java b/dynamic_ime/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java index 048472d1..fcff9ab1 100644 --- a/dynamic_ime/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java +++ b/dynamic_ime/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java @@ -4,7 +4,7 @@ import android.app.ProgressDialog; import java.util.List; -import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; import it.integry.integrywmsnative.core.class_router.interfaces.IOrdiniVendita; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.model.MtbColt; diff --git a/dynamic_vgalimenti/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java b/dynamic_vgalimenti/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java index 438ebcf9..dbd65cea 100644 --- a/dynamic_vgalimenti/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java +++ b/dynamic_vgalimenti/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java @@ -4,8 +4,8 @@ import android.app.ProgressDialog; import java.util.List; -import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; -import it.integry.integrywmsnative.core.REST.model.DistribuzioneColloDTO; +import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.rest.model.DistribuzioneColloDTO; import it.integry.integrywmsnative.core.class_router.interfaces.IOrdiniVendita; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.model.MtbColt;