diff --git a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/AppDatabase.java b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/AppDatabase.java index 78f788e7..39dd708d 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/AppDatabase.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/AppDatabase.java @@ -17,7 +17,7 @@ import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloOrdine; import it.integry.integrywmsnative.core.data_store.db.entity.Griglia; import it.integry.integrywmsnative.core.data_store.db.entity.Ordine; -@Database(entities = {ArticoloGriglia.class, Griglia.class, Ordine.class, ArticoloOrdine.class}, version = 2, exportSchema = false) +@Database(entities = {ArticoloGriglia.class, Griglia.class, Ordine.class, ArticoloOrdine.class}, version = 1, exportSchema = false) @TypeConverters({ DateConverter.class }) diff --git a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/dao/ArticoloOrdineDao.java b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/dao/ArticoloOrdineDao.java index 93052e4e..fee0cfb1 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/dao/ArticoloOrdineDao.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/dao/ArticoloOrdineDao.java @@ -26,18 +26,6 @@ public interface ArticoloOrdineDao { @Query("SELECT * FROM articoli_ordine where bar_code = :barcode and id_ordine = :ordine LIMIT 1") ArticoloOrdine findArticoloByOrdineAndBarcode(int ordine, String barcode); - @Query( " SELECT articoli_ordine.* " + - " FROM articoli_ordine " + - " LEFT OUTER JOIN articoli_griglia on articoli_ordine.cod_mart = articoli_griglia.cod_mart " + - " WHERE " + - " (" + - " articoli_ordine.cod_mart = :scan" + - " OR articoli_ordine.bar_code = :scan" + - " OR articoli_griglia.bar_code = :scan" + - " )" + - " AND articoli_ordine.id_ordine = :ordine " + - " LIMIT 1") - ArticoloOrdine findArticoloByScanAndGriglia(int ordine, String scan); @Update void updateAll(List toUpdate); @@ -47,4 +35,19 @@ public interface ArticoloOrdineDao { @Query("SELECT * FROM articoli_ordine where id_ordine = :ordineId") List findArticoliByOrdine(int ordineId); + + @Query("SELECt * from articoli_ordine where cod_mart = :codMart and id_ordine = :ordineId LIMIT 1") + ArticoloOrdine findArticoloByCodMartAndOrdine(int ordineId, String codMart); + + @Query( " SELECT articoli_ordine.* " + + " FROM articoli_ordine " + + " LEFT OUTER JOIN articoli_griglia on articoli_ordine.cod_mart = articoli_griglia.cod_mart " + + " WHERE " + + " (" + + " articoli_ordine.bar_code = :barcode" + + " OR articoli_griglia.bar_code = :barcode" + + " )" + + " AND articoli_ordine.id_ordine = :ordineId " + + " LIMIT 1") + ArticoloOrdine findArticoloByBarcodeAndOrdine(int ordineId, String barcode); } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/dao/OrdineDao.java b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/dao/OrdineDao.java index 328e28de..f4484d6f 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/dao/OrdineDao.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/dao/OrdineDao.java @@ -3,6 +3,7 @@ package it.integry.integrywmsnative.core.data_store.db.dao; import androidx.room.Dao; import androidx.room.Insert; import androidx.room.Query; +import androidx.room.Update; import java.util.List; @@ -23,4 +24,7 @@ public interface OrdineDao { @Insert Long insert(Ordine ordine); + + @Update + void update(Ordine ordine); } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/entity/ArticoloGriglia.java b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/entity/ArticoloGriglia.java index ce7d88ba..5d1d42df 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/entity/ArticoloGriglia.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/entity/ArticoloGriglia.java @@ -6,6 +6,8 @@ import androidx.room.ForeignKey; import androidx.room.Index; import androidx.room.PrimaryKey; +import java.util.Date; + @Entity( tableName = "articoli_griglia", indices = { @@ -157,6 +159,8 @@ public class ArticoloGriglia { articolo.setQtaCnf(this.getQtaCnf()); articolo.setUntMis(this.getUntMis()); articolo.setDescrizione(this.getDescrizione()); + articolo.setDataIns(new Date()); + articolo.setQtaOrd(0); return articolo; } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/entity/ArticoloOrdine.java b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/entity/ArticoloOrdine.java index 13755e84..6b0c8f16 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/entity/ArticoloOrdine.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/entity/ArticoloOrdine.java @@ -6,6 +6,8 @@ import androidx.room.ForeignKey; import androidx.room.Index; import androidx.room.PrimaryKey; +import java.util.Date; + @Entity( tableName = "articoli_ordine", indices = { @@ -57,7 +59,10 @@ public class ArticoloOrdine { private int idOrdine; @ColumnInfo(name = "qta_ord") - private float qtaOtd; + private float qtaOrd; + + @ColumnInfo(name = "data_ins") + private Date dataIns; public int getArticoloOrdineId() { return articoloOrdineId; @@ -147,11 +152,19 @@ public class ArticoloOrdine { this.idOrdine = idOrdine; } - public float getQtaOtd() { - return qtaOtd; + public float getQtaOrd() { + return qtaOrd; } - public void setQtaOtd(float qtaOtd) { - this.qtaOtd = qtaOtd; + public void setQtaOrd(float qtaOrd) { + this.qtaOrd = qtaOrd; + } + + public Date getDataIns() { + return dataIns; + } + + public void setDataIns(Date dataIns) { + this.dataIns = dataIns; } } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/entity/Ordine.java b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/entity/Ordine.java index 31313e85..ae68bda0 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/entity/Ordine.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/entity/Ordine.java @@ -8,6 +8,8 @@ import androidx.room.PrimaryKey; import java.util.Date; +import it.integry.integrywmsnative.core.utility.UtilityDate; + @Entity(tableName = "ordini") public class Ordine { @@ -16,8 +18,8 @@ public class Ordine { @ColumnInfo(name = "ordine_id") private int ordineId; - @ColumnInfo(name = "data_ord") - private Date dataOrd; + @ColumnInfo(name = "data_ins") + private Date dataIns; @ColumnInfo(name = "annotazioni") private String annotazioni; @@ -29,6 +31,22 @@ public class Ordine { @Nullable private Date transmissionDate; + @ColumnInfo(name = "gestione") + @Nullable + private String gestione; + + @ColumnInfo(name = "data_ord") + @Nullable + private Date dataOrd; + + @ColumnInfo(name = "num_ord") + @Nullable + private Integer numOrd; + + @ColumnInfo(name = "cod_mdep") + @Nullable + private String codMdep; + @Ignore private int countArticoli = 0; @@ -43,12 +61,12 @@ public class Ordine { this.ordineId = ordineId; } - public Date getDataOrd() { - return dataOrd; + public Date getDataIns() { + return dataIns; } - public void setDataOrd(Date dataOrd) { - this.dataOrd = dataOrd; + public void setDataIns(Date dataIns) { + this.dataIns = dataIns; } public String getAnnotazioni() { @@ -91,4 +109,43 @@ public class Ordine { public void setCountArticoli(int countArticoli) { this.countArticoli = countArticoli; } + + @Nullable + public String getGestione() { + return gestione; + } + + public void setGestione(@Nullable String gestione) { + this.gestione = gestione; + } + + @Nullable + public Date getDataOrd() { + return dataOrd; + } + + public void setDataOrd(@Nullable Date dataOrd) { + this.dataOrd = dataOrd; + } + + @Nullable + public Integer getNumOrd() { + return numOrd; + } + + public void setNumOrd(@Nullable Integer numOrd) { + this.numOrd = numOrd; + } + + @Nullable + public String getCodMdep() { + return codMdep; + } + + public void setCodMdep(@Nullable String codMdep) { + this.codMdep = codMdep; } + + public void setDataOrdS(String dataOrd) { + setDataOrd(UtilityDate.recognizeDateWithExceptionHandler(dataOrd)); + } } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/repository/ArticoliGrigliaRepository.java b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/repository/ArticoliGrigliaRepository.java index c263551c..7929014a 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/repository/ArticoliGrigliaRepository.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/repository/ArticoliGrigliaRepository.java @@ -1,14 +1,13 @@ package it.integry.integrywmsnative.core.data_store.db.repository; +import org.apache.commons.lang3.StringUtils; + import java.util.ArrayList; import java.util.List; import it.integry.integrywmsnative.MainApplication; import it.integry.integrywmsnative.core.data_store.db.dao.ArticoloGrigliaDao; -import it.integry.integrywmsnative.core.data_store.db.dao.GrigliaDao; import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloGriglia; -import it.integry.integrywmsnative.core.data_store.db.entity.Griglia; -import it.integry.integrywmsnative.core.data_store.db.view_model.ArticoloDTO; import it.integry.integrywmsnative.core.expansion.RunnableArgs; public class ArticoliGrigliaRepository extends Repository{ @@ -63,7 +62,15 @@ public class ArticoliGrigliaRepository extends Repository{ public void findArticoloByScanAndGriglia(String scan, int idGriglia,RunnableArgs onSuccess, RunnableArgs onFail ){ execute(()->{ try{ - onSuccess.run(mRepository.findArticoloByScanAndGriglia(scan, idGriglia)); + ArticoloGriglia articolo = mRepository.findArticoloByCodMartAndGriglia(scan, idGriglia); + if (articolo == null){ + articolo = mRepository.findArticoloByBarcodeAndGriglia(scan,idGriglia); + if (articolo==null){ + String barcode= StringUtils.leftPad(scan,13,"0"); + articolo = mRepository.findArticoloByBarcodeAndGriglia(barcode,idGriglia); + } + } + onSuccess.run(articolo); }catch (Exception e){ onFail.run(e); } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/repository/ArticoliOrdineRepository.java b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/repository/ArticoliOrdineRepository.java index 45bc4740..57689e86 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/repository/ArticoliOrdineRepository.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/repository/ArticoliOrdineRepository.java @@ -1,12 +1,12 @@ package it.integry.integrywmsnative.core.data_store.db.repository; +import org.apache.commons.lang3.StringUtils; + import java.util.ArrayList; import java.util.List; import it.integry.integrywmsnative.MainApplication; -import it.integry.integrywmsnative.core.data_store.db.dao.ArticoloGrigliaDao; import it.integry.integrywmsnative.core.data_store.db.dao.ArticoloOrdineDao; -import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloGriglia; import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloOrdine; import it.integry.integrywmsnative.core.data_store.db.entity.Ordine; import it.integry.integrywmsnative.core.expansion.RunnableArgs; @@ -41,6 +41,20 @@ public class ArticoliOrdineRepository extends Repository { } }); } + public void saveArticoloToOrdine(ArticoloOrdine articolo, Runnable onSuccess, RunnableArgs onFail) { + execute(() -> { + try { + if (articolo.getArticoloOrdineId() > 0) { + mRepository.update(articolo); + } else { + mRepository.insert(articolo); + } + onSuccess.run(); + } catch (Exception e) { + onFail.run(e); + } + }); + } public void findArticoloByOrdineAndBarcode(Ordine ordine, String barcode, RunnableArgs onSuccess, RunnableArgs onFail) { execute(() -> { @@ -52,10 +66,18 @@ public class ArticoliOrdineRepository extends Repository { } }); } -public void findArticoloByScanAndGriglia(Ordine ordine, String barcode, RunnableArgs onSuccess, RunnableArgs onFail) { +public void findArticoloByScanAndOrdine(Ordine ordine, String barcode, RunnableArgs onSuccess, RunnableArgs onFail) { execute(() -> { try { - ArticoloOrdine articolo = mRepository.findArticoloByScanAndGriglia(ordine.getOrdineId(), barcode); + String scannedCode = barcode; + ArticoloOrdine articolo = mRepository.findArticoloByCodMartAndOrdine(ordine.getOrdineId(), scannedCode); + if (articolo == null){ + articolo = mRepository.findArticoloByBarcodeAndOrdine(ordine.getOrdineId(), scannedCode); + if (articolo == null){ + scannedCode= StringUtils.leftPad(scannedCode,13,'0'); + articolo = mRepository.findArticoloByBarcodeAndOrdine(ordine.getOrdineId(), scannedCode); + } + } onSuccess.run(articolo); } catch (Exception e) { onFail.run(e); diff --git a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/repository/OrdineRepository.java b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/repository/OrdineRepository.java index 3e36a6ae..6b220cd3 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/repository/OrdineRepository.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/repository/OrdineRepository.java @@ -62,4 +62,14 @@ public class OrdineRepository extends Repository{ } + public void updateOrder(Ordine ordine, RunnableArgs onSuccess, RunnableArgs onError) { + execute(()->{ + try{ + mRepository.update(ordine); + onSuccess.run(ordine); + }catch (Exception e){ + onError.run(e); + } + }); + } } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PVOrdiniAcquistoRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PVOrdiniAcquistoRESTConsumer.java index 5541eba9..5e438ca2 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PVOrdiniAcquistoRESTConsumer.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PVOrdiniAcquistoRESTConsumer.java @@ -4,17 +4,27 @@ import android.util.Log; import com.annimon.stream.Stream; +import java.math.BigDecimal; import java.util.ArrayList; +import java.util.Date; import java.util.List; import java.util.Map; +import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloOrdine; +import it.integry.integrywmsnative.core.data_store.db.entity.Griglia; +import it.integry.integrywmsnative.core.data_store.db.entity.Ordine; +import it.integry.integrywmsnative.core.data_store.db.repository.OrdineRepository; import it.integry.integrywmsnative.core.data_store.db.view_model.ArticoloDTO; import it.integry.integrywmsnative.core.data_store.db.view_model.GrigliaDTO; import it.integry.integrywmsnative.core.expansion.RunnableArgs; +import it.integry.integrywmsnative.core.model.DtbOrdt; import it.integry.integrywmsnative.core.rest.RESTBuilder; import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.settings.SettingsManager; import it.integry.integrywmsnative.core.utility.UtilityLogger; +import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.dto.ArtDTO; +import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.dto.OrdineDTO; +import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.dto.SaveDTO; import retrofit2.Call; import retrofit2.Callback; import retrofit2.Response; @@ -40,13 +50,13 @@ public class PVOrdiniAcquistoRESTConsumer extends _BaseRESTConsumer { .withoutNulls() .forEach(art -> { List inList = Stream.of(griglia.getGrigliaAcquistiChild()).filter(x -> x.getCodMart().equalsIgnoreCase(art)).toList(); - if (inList.size() > 1){ - for (ArticoloDTO articolo : inList){ - if (!articolo.getBarCode().endsWith(articolo.getCodMart())){ + if (inList.size() > 1) { + for (ArticoloDTO articolo : inList) { + if (!articolo.getBarCode().endsWith(articolo.getCodMart())) { listaArticoli.add(articolo); } } - }else{ + } else { listaArticoli.add(inList.get(0)); } }); @@ -64,4 +74,73 @@ public class PVOrdiniAcquistoRESTConsumer extends _BaseRESTConsumer { }); } + public static void saveOrdine(Ordine ordine, List articoli, Griglia griglia, RunnableArgs onSuccess, RunnableArgs onFailed) { + SaveDTO saveDTO = new SaveDTO(); + OrdineDTO ordineDTO = new OrdineDTO(); + List artRows = new ArrayList<>(); + + int i = 0; + for (ArticoloOrdine art : articoli) { + i++; + artRows.add(convertArtToDTO(art,i)); + } + + ordineDTO.setChiaveGriglia(griglia.getCodAlis()); + ordineDTO.setDataConsD(new Date()); + ordineDTO.setArtRows(artRows); + saveDTO.setGestione("O"); + saveDTO.setOrdineDTO(ordineDTO); + + + PVOrdiniAcquistoRESTConsumerService ordiniARestService = RESTBuilder.getService(PVOrdiniAcquistoRESTConsumerService.class); + ordiniARestService + .saveOrdine(saveDTO, SettingsManager.i().userSession.profileDB, SettingsManager.i().user.username, SettingsManager.i().user.password) + .enqueue(new Callback>>() { + @Override + public void onResponse(Call>> call, Response>> response) { + if (response.body() != null && response.body().size() > 0){ + analyzeListOfAnswers(response, "getArticoliListino", dtoList-> { + if (dtoList.size() > 0){ + DtbOrdt dto = dtoList.get(0); + ordine.setTransmitted(true); + ordine.setTransmissionDate(new Date()); + ordine.setGestione(dto.getGestione()); + ordine.setDataOrdS(dto.getDataOrd()); + ordine.setCodMdep(dto.getCodMdep()); + ordine.setNumOrd(dto.getNumOrd()); + OrdineRepository repository = new OrdineRepository(); + repository.updateOrder(ordine,onSuccess,onFailed); + }else{ + onFailed.run(new Exception("Nessun ordine generato")); + } + }, onFailed); + } + } + + @Override + public void onFailure(Call>>call, Throwable t) { + Log.e("saveOrdineTerminale_pv", t.toString()); + UtilityLogger.errorMe(new Exception(t)); + onFailed.run(new Exception(t)); + } + }); + + + + } + + private static ArtDTO convertArtToDTO(ArticoloOrdine art, int rigaOrd) { + ArtDTO dto = new ArtDTO(); + dto.setRigaOrd(rigaOrd); + dto.setCodMart(art.getCodMart()); + dto.setBarcode(art.getBarCode()); + dto.setDescrizione(art.getDescrizione()); + dto.setDataInsD(art.getDataIns()); + dto.setUntMis(art.getUntMis()); + dto.setQta(BigDecimal.valueOf(art.getQtaOrd())); + dto.setQtaCnf(BigDecimal.valueOf(art.getQtaCnf())); + dto.setColli(BigDecimal.ZERO); + return dto; + } + } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PVOrdiniAcquistoRESTConsumerService.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PVOrdiniAcquistoRESTConsumerService.java index ec53b2e2..30ff9292 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PVOrdiniAcquistoRESTConsumerService.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/PVOrdiniAcquistoRESTConsumerService.java @@ -1,9 +1,13 @@ package it.integry.integrywmsnative.core.rest.consumers; -import it.integry.integrywmsnative.core.data_store.db.entity.Ordine; +import java.util.List; + import it.integry.integrywmsnative.core.data_store.db.view_model.GrigliaDTO; +import it.integry.integrywmsnative.core.model.DtbOrdt; import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; +import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.dto.SaveDTO; import retrofit2.Call; +import retrofit2.http.Body; import retrofit2.http.Header; import retrofit2.http.POST; import retrofit2.http.Query; @@ -14,5 +18,5 @@ public interface PVOrdiniAcquistoRESTConsumerService { Call> getArticoliListino(@Query("chiaveGriglia") String codAlis, @Query("profileDb") String profileDb, @Header("username") String username, @Header("password") String password); @POST("SM2SaveTerminalino") - Call> saveOrdine(@Query("barcode") String barcodeProd,@Query("profileDb") String profileDb, @Header("username") String username, @Header("password") String password); + Call>> saveOrdine(@Body SaveDTO saveDTO, @Query("profileDb") String profileDb, @Header("username") String username, @Header("password") String password); } 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 index ba413697..9257eefb 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 @@ -2,6 +2,7 @@ package it.integry.integrywmsnative.core.rest.consumers; import android.util.Log; +import java.util.ArrayList; import java.util.List; import it.integry.integrywmsnative.core.rest.CommonRESTException; @@ -14,11 +15,11 @@ import retrofit2.Response; public class _BaseRESTConsumer { - public static void analyzeAnswer(Response> response, String logTitle, final ISimpleOperationCallback callback){ - if(response.isSuccessful()) { - if(response.body() != null) { - if(response.body().getEsito() == EsitoType.OK) { - if(!UtilityString.isNullOrEmpty(response.body().getErrorMessage())){ + public static void analyzeAnswer(Response> response, String logTitle, final ISimpleOperationCallback callback) { + if (response.isSuccessful()) { + if (response.body() != null) { + if (response.body().getEsito() == EsitoType.OK) { + if (!UtilityString.isNullOrEmpty(response.body().getErrorMessage())) { callback.onFailed(new Exception(response.body().getErrorMessage())); } else { @@ -43,7 +44,7 @@ public class _BaseRESTConsumer { } } - public static void analyzeAnswer(Response> response, String logTitle, RunnableArgs onComplete, RunnableArgs onFailed){ + public static void analyzeAnswer(Response> response, String logTitle, RunnableArgs onComplete, RunnableArgs onFailed) { analyzeAnswer(response, logTitle, new ISimpleOperationCallback() { @Override public void onSuccess(T value) { @@ -58,11 +59,11 @@ public class _BaseRESTConsumer { } - public static void analyzeAnswerList(Response> response, String logTitle, final ISimpleOperationCallback> callback){ - if(response.isSuccessful()) { - if(response.body() != null) { - if(response.body().getEsito() == EsitoType.OK) { - if(!UtilityString.isNullOrEmpty(response.body().getErrorMessage())){ + public static void analyzeAnswerList(Response> response, String logTitle, final ISimpleOperationCallback> callback) { + if (response.isSuccessful()) { + if (response.body() != null) { + if (response.body().getEsito() == EsitoType.OK) { + if (!UtilityString.isNullOrEmpty(response.body().getErrorMessage())) { callback.onFailed(new Exception(response.body().getErrorMessage())); } else { @@ -84,7 +85,7 @@ public class _BaseRESTConsumer { } } - public static void analyzeAnswerList(Response> response, String logTitle, RunnableArgs> onComplete, RunnableArgs onFailed){ + public static void analyzeAnswerList(Response> response, String logTitle, RunnableArgs> onComplete, RunnableArgs onFailed) { analyzeAnswerList(response, logTitle, new ISimpleOperationCallback>() { @Override public void onSuccess(List value) { @@ -98,4 +99,35 @@ public class _BaseRESTConsumer { }); } + public static void analyzeListOfAnswers(Response>> responseList, String logTitle, RunnableArgs> onComplete, RunnableArgs onFailed) { + if (responseList.isSuccessful()) { + if (responseList.body() != null) { + List analyzedList = new ArrayList<>(); + for (ServiceRESTResponse response : responseList.body()){ + if (response.getEsito() == EsitoType.OK) { + if (!UtilityString.isNullOrEmpty(response.getErrorMessage())) { + onFailed.run(new Exception(response.getErrorMessage())); + } else { + T dataObj = response.getDto() != null ? + response.getDto() : + response.getEntity(); + if (dataObj !=null ) analyzedList.add(dataObj); + + } + } else { + Log.e(logTitle, response.getErrorMessage()); + onFailed.run(CommonRESTException.tryRecognizeException(response.getErrorMessage())); + return; + } + } + onComplete.run(analyzedList); + } else { + Log.e(logTitle, responseList.message()); + onFailed.run(new Exception(responseList.message())); + } + } else { + Log.e(logTitle, "Status " + responseList.code() + ": " + responseList.message()); + onFailed.run(new Exception("Status " + responseList.code() + ": " + responseList.message())); + } + } } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/PVOrdineAcquistoEditActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/PVOrdineAcquistoEditActivity.java index 3573cf11..43077dc7 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/PVOrdineAcquistoEditActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/PVOrdineAcquistoEditActivity.java @@ -2,11 +2,17 @@ package it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit; import android.app.Dialog; import android.os.Bundle; +import android.text.Html; +import android.text.SpannableString; import android.view.View; import android.widget.Toast; +import androidx.core.content.ContextCompat; import androidx.databinding.DataBindingUtil; +import androidx.recyclerview.widget.DividerItemDecoration; +import androidx.recyclerview.widget.LinearLayoutManager; +import java.util.ArrayList; import java.util.List; import it.integry.barcode_base_android_library.model.BarcodeScanDTO; @@ -18,20 +24,25 @@ import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloOrdine; import it.integry.integrywmsnative.core.data_store.db.entity.Griglia; import it.integry.integrywmsnative.core.data_store.db.entity.Ordine; import it.integry.integrywmsnative.core.expansion.BaseActivity; +import it.integry.integrywmsnative.core.rest.consumers.PVOrdiniAcquistoRESTConsumer; +import it.integry.integrywmsnative.core.utility.UtilityDate; import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.core.utility.UtilityProgress; import it.integry.integrywmsnative.databinding.ActivityPvordineAcquistoEditBinding; +import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.adapter.OrdineAcquistoArtListAdapter; import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.dialog.EditArticoloDialog; import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.helper.PVEditOrderHelper; +import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper; public class PVOrdineAcquistoEditActivity extends BaseActivity { private Ordine mOrdine; private Griglia mGriglia; - private List mArticoli; + private List mArticoli = new ArrayList<>(); private PVEditOrderHelper mhelper; private ActivityPvordineAcquistoEditBinding mBinding; private int mBarcodeScannerIstanceID; + private OrdineAcquistoArtListAdapter mAdapter; @Override protected void onCreate(Bundle savedInstanceState) { @@ -41,7 +52,13 @@ public class PVOrdineAcquistoEditActivity extends BaseActivity { mBinding = DataBindingUtil.setContentView(this, R.layout.activity_pvordine_acquisto_edit); mBinding.setViewModel(this); mOrdine = DataCache.retrieveItem(getIntent().getStringExtra("keyOrdine")); - setTitle("aaaa"); + if (mOrdine.isTransmitted()){ + Toast.makeText(this, "Impossibile modificare ordine esportato", Toast.LENGTH_SHORT).show(); + closeEdit(); + } + String testataOrdString = String.format(this.getString(R.string.ord_acq_testata), String.valueOf(mOrdine.getOrdineId()), UtilityDate.formatDate(mOrdine.getDataIns(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN)); + mBinding.orderIdentifier.setText(Html.fromHtml(testataOrdString)); + initRecyclerView(); fetchDetails(); mBarcodeScannerIstanceID = BarcodeManager.addCallback(new BarcodeCallbackDTO() .setOnScanSuccessfull(this::onScanSuccessful) @@ -49,6 +66,18 @@ public class PVOrdineAcquistoEditActivity extends BaseActivity { } + private void initRecyclerView() { + mBinding.articoliOrdineList.setHasFixedSize(true); + + mBinding.articoliOrdineList.setLayoutManager(new LinearLayoutManager(this)); + + DividerItemDecoration itemDecorator = new DividerItemDecoration(this, DividerItemDecoration.VERTICAL); + itemDecorator.setDrawable(ContextCompat.getDrawable(this, R.drawable.divider)); + mBinding.articoliOrdineList.addItemDecoration(itemDecorator); + mAdapter = new OrdineAcquistoArtListAdapter(this, mArticoli, this::addArticolo); + mBinding.articoliOrdineList.setAdapter(mAdapter); + } + private void handleException(Exception ex) { runOnUiThread(()->{ BarcodeManager.enable(); @@ -80,7 +109,7 @@ public class PVOrdineAcquistoEditActivity extends BaseActivity { if (articolo == null) { Toast.makeText(this, "Inserimento articolo annullato", Toast.LENGTH_SHORT).show(); } else { - Toast.makeText(this, "Articolo inserito", Toast.LENGTH_SHORT).show(); + fetchArticoli(); } }).show(); }); @@ -106,23 +135,29 @@ public class PVOrdineAcquistoEditActivity extends BaseActivity { progress.dismiss(); mArticoli = articoli; runOnUiThread(()->{ + mAdapter.updateItems(mArticoli); mBinding.countArtOrd.setText(String.valueOf(mArticoli.size())); mBinding.pvOrdineExport.setVisibility(mArticoli.size() > 0 ? View.VISIBLE : View.GONE); }); }, this::handleException); } - - public void addArticoloToOrdine(ArticoloOrdine articolo) { - - } - public void closeEdit() { onBackPressed(); } public void exportOrdine() { - onBackPressed(); + final Dialog progress = UtilityProgress.createDefaultProgressDialog(this); + PVOrdiniAcquistoRESTConsumer.saveOrdine(mOrdine , mArticoli,mGriglia,(ordine)->{ + progress.dismiss(); + runOnUiThread(()-> { + Toast.makeText(this, "Ordine salvato con successo", Toast.LENGTH_SHORT).show(); + onBackPressed(); + }); + },e-> runOnUiThread(()-> { + progress.dismiss(); + UtilityExceptions.defaultException(this,e); + })); } @Override @@ -131,4 +166,14 @@ public class PVOrdineAcquistoEditActivity extends BaseActivity { super.onBackPressed(); } + private void showDataSavedDialog() { + + DialogSimpleMessageHelper.makeSuccessDialog( + this, + getString(R.string.completed), + new SpannableString(getString(R.string.data_saved)), + null, null).show(); + + } + } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/adapter/OrdineAcquistoArtListAdapter.java b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/adapter/OrdineAcquistoArtListAdapter.java new file mode 100644 index 00000000..ed070376 --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/adapter/OrdineAcquistoArtListAdapter.java @@ -0,0 +1,125 @@ +package it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.adapter; + +import android.content.Context; +import android.text.Html; +import android.view.LayoutInflater; +import android.view.ViewGroup; + +import androidx.databinding.DataBindingUtil; +import androidx.recyclerview.widget.RecyclerView; + +import com.annimon.stream.Stream; +import com.zhukic.sectionedrecyclerview.SectionedRecyclerViewAdapter; + +import java.util.List; + +import it.integry.integrywmsnative.R; +import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloOrdine; +import it.integry.integrywmsnative.core.data_store.db.entity.Ordine; +import it.integry.integrywmsnative.core.data_store.db.wrappers.OrdineWrapper; +import it.integry.integrywmsnative.core.expansion.RunnableArgs; +import it.integry.integrywmsnative.core.utility.UtilityDate; +import it.integry.integrywmsnative.databinding.FragmentPvArticoliOrdineAcquistoListSingleItemBinding; +import it.integry.integrywmsnative.databinding.FragmentPvOrdiniAcquistoListHeaderBinding; +import it.integry.integrywmsnative.databinding.FragmentPvOrdiniAcquistoListSingleItemBinding; +import it.integry.integrywmsnative.ui.fastscroll.SectionTitleProvider; + +public class OrdineAcquistoArtListAdapter extends SectionedRecyclerViewAdapter implements SectionTitleProvider { + + + private Context mContext; + + private List mDataset; + RunnableArgs mOnItemSelect; + + + static class SubheaderHolder extends RecyclerView.ViewHolder { + + FragmentPvOrdiniAcquistoListHeaderBinding binding; + + SubheaderHolder(FragmentPvOrdiniAcquistoListHeaderBinding binding) { + super(binding.getRoot()); + this.binding = binding; + } + + } + + static class SingleItemViewHolder extends RecyclerView.ViewHolder { + + FragmentPvArticoliOrdineAcquistoListSingleItemBinding binding; + + SingleItemViewHolder(FragmentPvArticoliOrdineAcquistoListSingleItemBinding binding) { + super(binding.getRoot()); + this.binding = binding; + } + } + + + public OrdineAcquistoArtListAdapter(Context context, List myDataset, RunnableArgs onItemSelect) { + mContext = context; + mDataset = orderItems(myDataset); + mOnItemSelect = onItemSelect; + } + + public void updateItems(List updatedDataset) { + mDataset.clear(); + mDataset.addAll(orderItems(updatedDataset)); + notifyDataSetChanged(); + notifyDataChanged(); + } + + + private List orderItems(List dataset) { + return Stream.of(dataset) + .distinctBy(ArticoloOrdine::getArticoloOrdineId) + .sortBy(x -> UtilityDate.formatDate(x.getDataIns(), UtilityDate.COMMONS_DATE_FORMATS.YMD_SLASH)) + .toList(); + + } + + + @Override + public SubheaderHolder onCreateSubheaderViewHolder(ViewGroup parent, int viewType) { + FragmentPvOrdiniAcquistoListHeaderBinding binding = DataBindingUtil.inflate(LayoutInflater.from(mContext), R.layout.fragment_pv_ordini_acquisto__list_header, parent, false); + return new SubheaderHolder(binding); + } + + @Override + public SingleItemViewHolder onCreateItemViewHolder(ViewGroup parent, int viewType) { + FragmentPvArticoliOrdineAcquistoListSingleItemBinding binding = DataBindingUtil.inflate(LayoutInflater.from(mContext), R.layout.fragment_pv_articoli_ordine_acquisto__list_single_item, parent, false); + return new SingleItemViewHolder(binding); + } + + + @Override + public void onBindSubheaderViewHolder(OrdineAcquistoArtListAdapter.SubheaderHolder subheaderHolder, int nextItemPosition) { + subheaderHolder.binding.title.setText(mContext.getString(R.string.ordini_a_aperti)); + } + + @Override + public void onBindItemViewHolder(OrdineAcquistoArtListAdapter.SingleItemViewHolder h, int itemPosition) { + final ArticoloOrdine articoloOrdine = mDataset.get(itemPosition); + final OrdineAcquistoArtListAdapter.SingleItemViewHolder holder = h; + + holder.binding.setArticolo(articoloOrdine); + holder.binding.getRoot().setOnClickListener(v -> mOnItemSelect.run(articoloOrdine)); + + } + + + @Override + public boolean onPlaceSubheaderBetweenItems(int position) { + return false; + } + + @Override + public int getItemSize() { + return mDataset.size(); + } + + @Override + public String getSectionTitle(int position) { + return null; + } + +} diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/dialog/EditArticoloDialog.java b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/dialog/EditArticoloDialog.java index e851dd2b..a44fe39b 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/dialog/EditArticoloDialog.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/dialog/EditArticoloDialog.java @@ -12,10 +12,11 @@ import android.view.LayoutInflater; import androidx.databinding.DataBindingUtil; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloOrdine; import it.integry.integrywmsnative.core.expansion.BaseDialog; import it.integry.integrywmsnative.core.expansion.RunnableArgs; +import it.integry.integrywmsnative.core.utility.UtilityDialog; +import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.core.utility.UtilityProgress; import it.integry.integrywmsnative.databinding.DialogPvEditArticoloBinding; import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.helper.PVEditOrderHelper; @@ -40,13 +41,19 @@ public class EditArticoloDialog { mContext = context; mArticolo = articolo; mHelper = new PVEditOrderHelper(context); + LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); mBinding = DataBindingUtil.inflate(inflater, R.layout.dialog_pv_edit_articolo, null, false); mBinding.setViewmodel(this); + mDialog = new BaseDialog(context); mDialog.setContentView(mBinding.getRoot()); + UtilityDialog.setTo90PercentSize(mContext, mDialog); mDialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); + + mBinding.qtaTot.setText(String.valueOf(mArticolo.getQtaOrd())); mSavedArt = null; + mDialog.setOnDismissListener(dialog -> { onDialogDismiss.run(mSavedArt); }); @@ -62,14 +69,7 @@ public class EditArticoloDialog { @Override public void onTextChanged(CharSequence s, int start, int before, int count) { - if (mLockedInput){ - mLockedInput = false; - }else{ - mLockedInput = true; - float qtaTot = Float.parseFloat(s.toString()); - float qtaCnf = qtaTot * mArticolo.getQtaCnf(); - mBinding.qtaCnf.setText(String.valueOf(qtaCnf)); - } + setQtaOrd(s.toString().length() >0 ? Float.parseFloat(s.toString()) : 0); } @Override @@ -84,15 +84,7 @@ public class EditArticoloDialog { @Override public void onTextChanged(CharSequence s, int start, int before, int count) { - if (mLockedInput){ - mLockedInput = false; - }else{ - mLockedInput = true; - float qtaCnf = Float.parseFloat(s.toString()); - float qtaTot = qtaCnf / mArticolo.getQtaCnf(); - mBinding.qtaTot.setText(String.valueOf(qtaTot)); - } - + setQtaCnf(s.toString().length() >0 ? Float.parseFloat(s.toString()) : 0); } @Override @@ -101,6 +93,26 @@ public class EditArticoloDialog { } }); } + public void setQtaCnf(float qtaCnf){ + if (mLockedInput){ + mLockedInput = false; + }else{ + mLockedInput = true; + + float qtaTot = qtaCnf * mArticolo.getQtaCnf(); + mBinding.qtaTot.setText(String.valueOf(qtaTot)); + } + } + public void setQtaOrd(float qtaOrd){ + mArticolo.setQtaOrd(qtaOrd); + if (mLockedInput){ + mLockedInput = false; + }else{ + mLockedInput = true; + float qtaCnf = qtaOrd / mArticolo.getQtaCnf(); + mBinding.qtaCnf.setText(String.valueOf(qtaCnf)); + } + } public static Dialog make(Activity context, ArticoloOrdine articolo, RunnableArgs onDialogDismiss) { return new EditArticoloDialog(context, articolo, onDialogDismiss).mDialog; @@ -108,11 +120,21 @@ public class EditArticoloDialog { public void saveAndExit(){ final Dialog progress = UtilityProgress.createDefaultProgressDialog(mContext); + try{ + float qtaOrd = Float.parseFloat(mBinding.qtaTot.getText().toString()); + if (qtaOrd <= 0){ + throw new Exception("La quantità ordinata deve essere maggiore di 0"); + } + mArticolo.setQtaOrd(qtaOrd); + + }catch (Exception e){ + mContext.runOnUiThread(()-> UtilityExceptions.defaultException(mContext,e)); + } mHelper.saveArticoloToOrdine(mArticolo, ()->{ mSavedArt = mArticolo; progress.dismiss(); mDialog.dismiss(); - }); + },e-> mContext.runOnUiThread(()-> UtilityExceptions.defaultException(mContext,e))); } public ArticoloOrdine getArticolo() { diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/dto/ArtDTO.java b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/dto/ArtDTO.java new file mode 100644 index 00000000..1a8d5d9e --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/dto/ArtDTO.java @@ -0,0 +1,134 @@ +package it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import it.integry.integrywmsnative.core.utility.UtilityDate; + +public class ArtDTO { + private Integer rigaOrd; + + private String codMart; + + private String barcode; + + private String descrizione; + + private String dataIns; + + private String untMis; + + private BigDecimal qta; + + private BigDecimal qtaCnf; + + private BigDecimal colli; + + private String partitaMag; + + private String dataScad; + + public Integer getRigaOrd() { + return rigaOrd; + } + + public void setRigaOrd(Integer rigaOrd) { + this.rigaOrd = rigaOrd; + } + + public String getCodMart() { + return codMart; + } + + public void setCodMart(String codMart) { + this.codMart = codMart; + } + + public String getBarcode() { + return barcode; + } + + public void setBarcode(String barcode) { + this.barcode = barcode; + } + + public String getDescrizione() { + return descrizione; + } + + public void setDescrizione(String descrizione) { + this.descrizione = descrizione; + } + + public String getDataIns() { + return dataIns; + } + public Date getDataInsD() { + return UtilityDate.recognizeDateWithExceptionHandler(getDataIns()); + } + + public void setDataIns(String dataIns) { + this.dataIns = dataIns; + } + public void setDataInsD(Date dataIns) { + setDataIns(UtilityDate.formatDate(dataIns, UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH)); + } + + + public String getUntMis() { + return untMis; + } + + public void setUntMis(String untMis) { + this.untMis = untMis; + } + + public BigDecimal getQta() { + return qta; + } + + public void setQta(BigDecimal qta) { + this.qta = qta; + } + + public BigDecimal getQtaCnf() { + return qtaCnf; + } + + public void setQtaCnf(BigDecimal qtaCnf) { + this.qtaCnf = qtaCnf; + } + + public BigDecimal getColli() { + return colli; + } + + public void setColli(BigDecimal colli) { + this.colli = colli; + } + + public String getPartitaMag() { + return partitaMag; + } + + public void setPartitaMag(String partitaMag) { + this.partitaMag = partitaMag; + } + + public String getDataScad() { + return dataScad; + } + + public void setDataScad(String dataScad) { + this.dataScad = dataScad; + } + public Date getDataScadD() { + return UtilityDate.recognizeDateWithExceptionHandler(getDataScad()); + } + + public void setDataScadD(Date dataScad) { + setDataScad(UtilityDate.formatDate(dataScad, UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH)); + } + + +} diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/dto/OrdineDTO.java b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/dto/OrdineDTO.java new file mode 100644 index 00000000..1fe38bb4 --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/dto/OrdineDTO.java @@ -0,0 +1,46 @@ +package it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.dto; + +import java.util.Date; +import java.util.List; + +import it.integry.integrywmsnative.core.utility.UtilityDate; + +public class OrdineDTO { + private String chiaveGriglia; + private String dataCons; + + private List artRows; + + public String getChiaveGriglia() { + return chiaveGriglia; + } + + public void setChiaveGriglia(String chiaveGriglia) { + this.chiaveGriglia = chiaveGriglia; + } + + public String getDataCons() { + return dataCons; + } + + public void setDataCons(String dataCons) { + this.dataCons = dataCons; + } + + public List getArtRows() { + return artRows; + } + + public void setArtRows(List artRows) { + this.artRows = artRows; + } + public Date getDataConsD() { + return UtilityDate.recognizeDateWithExceptionHandler(getDataCons()); + } + + public void setDataConsD(Date dataCons) { + setDataCons(UtilityDate.formatDate(dataCons, UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH)); + } + + +} diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/dto/SaveDTO.java b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/dto/SaveDTO.java new file mode 100644 index 00000000..442ed0a5 --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/dto/SaveDTO.java @@ -0,0 +1,24 @@ +package it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.dto; + +public class SaveDTO { + private String gestione = "O"; + + + private OrdineDTO ordineDTO; + + public String getGestione() { + return gestione; + } + + public void setGestione(String gestione) { + this.gestione = gestione; + } + + public OrdineDTO getOrdineDTO() { + return ordineDTO; + } + + public void setOrdineDTO(OrdineDTO ordineDTO) { + this.ordineDTO = ordineDTO; + } +} diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/helper/PVEditOrderHelper.java b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/helper/PVEditOrderHelper.java index 607bf436..13fb0d5c 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/helper/PVEditOrderHelper.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/helper/PVEditOrderHelper.java @@ -1,9 +1,6 @@ package it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.helper; import android.content.Context; -import android.text.TextUtils; - -import org.apache.commons.lang3.StringUtils; import java.util.List; @@ -14,12 +11,13 @@ import it.integry.integrywmsnative.core.data_store.db.repository.ArticoliGriglia import it.integry.integrywmsnative.core.data_store.db.repository.ArticoliOrdineRepository; import it.integry.integrywmsnative.core.data_store.db.repository.GrigliaRepository; import it.integry.integrywmsnative.core.expansion.RunnableArgs; +import it.integry.integrywmsnative.core.rest.consumers.PVOrdiniAcquistoRESTConsumer; public class PVEditOrderHelper { private Context mContext; private GrigliaRepository mGrigliaRepository; private ArticoliOrdineRepository mArticoliOrdineRepository; - private ArticoliGrigliaRepository mArticoliGrigliaRepository ; + private ArticoliGrigliaRepository mArticoliGrigliaRepository; public PVEditOrderHelper(Context mContext) { this.mContext = mContext; @@ -28,55 +26,45 @@ public class PVEditOrderHelper { mArticoliGrigliaRepository = new ArticoliGrigliaRepository(); } - public void checkArticolo(Ordine ordine, String barcode, RunnableArgs onSuccess, RunnableArgs onFail){ - try{ - mArticoliOrdineRepository.findArticoloByScanAndGriglia(ordine,barcode,(articolo)->{ + public void checkArticolo(Ordine ordine, String barcode, RunnableArgs onSuccess, RunnableArgs onFail) { + try { + mArticoliOrdineRepository.findArticoloByScanAndOrdine(ordine, barcode, (articolo) -> { if (articolo != null) { onSuccess.run(articolo); - }else{ - mArticoliGrigliaRepository.findArticoloByScanAndGriglia(barcode, ordine.getIdGriglia(),artGrid->{ - if (artGrid != null){ + } else { + mArticoliGrigliaRepository.findArticoloByScanAndGriglia(barcode, ordine.getIdGriglia(), artGrid -> { + if (artGrid != null) { onSuccess.run(artGrid.convertToArticoloOrdine(ordine)); - }else{ - if (barcode.length() < 13){ - String newbarcode = StringUtils.leftPad(barcode,13,'0'); - mArticoliGrigliaRepository.findArticoloByScanAndGriglia(newbarcode, ordine.getIdGriglia(),aartGrid->{ - if (aartGrid != null){ - onSuccess.run(aartGrid.convertToArticoloOrdine(ordine)); - }else{ - onFail.run(new Exception("L' articolo ( "+barcode+" ) non è presente nella griglia")); - } - },onFail); - }else{ - onFail.run(new Exception("L' articolo ( "+barcode+" ) non è presente nella griglia")); - } + } else { + onFail.run(new Exception("L' articolo ( " + barcode + " ) non è presente nella griglia")); } - },onFail); + }, onFail); } - },onFail); + }, onFail); - }catch (Exception e){ + } catch (Exception e) { onFail.run(e); } } public void loadGriglia(int idGriglia, RunnableArgs onLoad, RunnableArgs onError) { - try{ - mGrigliaRepository.findGrigliaById(idGriglia,onLoad,onError); - }catch (Exception e){ + try { + mGrigliaRepository.findGrigliaById(idGriglia, onLoad, onError); + } catch (Exception e) { onError.run(e); } } - public void loadArticoli(Ordine ordine, RunnableArgs> onLoad, RunnableArgs onError){ - try{ - mArticoliOrdineRepository.findArticoliByOrdine(ordine,onLoad,onError); - }catch (Exception e){ + + public void loadArticoli(Ordine ordine, RunnableArgs> onLoad, RunnableArgs onError) { + try { + mArticoliOrdineRepository.findArticoliByOrdine(ordine, onLoad, onError); + } catch (Exception e) { onError.run(e); } } - public void saveArticoloToOrdine(ArticoloOrdine articolo, Runnable onSsve) { - onSsve.run(); + public void saveArticoloToOrdine(ArticoloOrdine articolo, Runnable onSave, RunnableArgs onFail) { + mArticoliOrdineRepository.saveArticoloToOrdine(articolo, onSave, onFail); } } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/PVOrdiniAcquistoGrigliaFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/PVOrdiniAcquistoGrigliaFragment.java similarity index 91% rename from app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/PVOrdiniAcquistoGrigliaFragment.java rename to app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/PVOrdiniAcquistoGrigliaFragment.java index d461dc7e..12793b9f 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/PVOrdiniAcquistoGrigliaFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/PVOrdiniAcquistoGrigliaFragment.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.gest.ordini_acquisto_pv; +package it.integry.integrywmsnative.gest.pv_ordini_acquisto; import android.app.Dialog; import android.content.Context; @@ -30,17 +30,13 @@ import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.interfaces.IPoppableActivity; import it.integry.integrywmsnative.core.interfaces.IScrollableFragment; import it.integry.integrywmsnative.core.interfaces.ITitledFragment; -import it.integry.integrywmsnative.core.model.MtbColt; import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.core.utility.UtilityProgress; import it.integry.integrywmsnative.databinding.FragmentPvOrdiniAcquistoBinding; -import it.integry.integrywmsnative.gest.ordini_acquisto_pv.core.OrdineAcquistoPvOpenListAdapter; -import it.integry.integrywmsnative.gest.ordini_acquisto_pv.dialogs.DialogScanLisA; -import it.integry.integrywmsnative.gest.ordini_acquisto_pv.helper.OrdineAcquistoPvHelper; +import it.integry.integrywmsnative.gest.pv_ordini_acquisto.core.OrdineAcquistoPvOpenListAdapter; +import it.integry.integrywmsnative.gest.pv_ordini_acquisto.dialogs.DialogScanLisA; +import it.integry.integrywmsnative.gest.pv_ordini_acquisto.helper.OrdineAcquistoPvHelper; import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.PVOrdineAcquistoEditActivity; -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; import it.integry.integrywmsnative.ui.ElevatedToolbar; import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper; @@ -99,6 +95,7 @@ public class PVOrdiniAcquistoGrigliaFragment extends Fragment implements ITitled mBinding.fabNewOrder.setVisibility(View.VISIBLE); mBinding.codAlis.setText(griglia.getCodAlis()); mBinding.descrLis.setText(griglia.getDescrLisa()); + mBinding.descrDepo.setText(griglia.getDescrDepo()); mBinding.countArtLis.setText(String.valueOf(griglia.getCountArticoli())); fetchOrders(); @@ -160,7 +157,7 @@ public class PVOrdiniAcquistoGrigliaFragment extends Fragment implements ITitled final Dialog progress = UtilityProgress.createDefaultProgressDialog(getActivity(), getString(R.string.ordini_a_aperti_progress)); mHelper.createNewOrder(mGriglia, order -> { progress.dismiss(); - getActivity().runOnUiThread(this::fetchOrders); + getActivity().runOnUiThread(()-> selectOrdine.run(order)); }, e -> getActivity().runOnUiThread(() -> UtilityExceptions.defaultException(getActivity(), e, progress))); } @@ -174,4 +171,12 @@ public class PVOrdiniAcquistoGrigliaFragment extends Fragment implements ITitled public void setOnPreDestroy(Runnable onPreDestroy) { } + + @Override + public void onResume() { + super.onResume(); + if (mGriglia != null){ + fetchOrders(); + } + } } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/PVOrdiniAcquistoTransmittedListFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/PVOrdiniAcquistoTransmittedListFragment.java similarity index 97% rename from app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/PVOrdiniAcquistoTransmittedListFragment.java rename to app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/PVOrdiniAcquistoTransmittedListFragment.java index 65bab43a..93a9d429 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/PVOrdiniAcquistoTransmittedListFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/PVOrdiniAcquistoTransmittedListFragment.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.gest.ordini_acquisto_pv; +package it.integry.integrywmsnative.gest.pv_ordini_acquisto; import android.app.Dialog; import android.content.Context; @@ -23,7 +23,7 @@ import it.integry.integrywmsnative.core.interfaces.IScrollableFragment; import it.integry.integrywmsnative.core.interfaces.ITitledFragment; import it.integry.integrywmsnative.core.utility.UtilityProgress; import it.integry.integrywmsnative.databinding.FragmentPvOrdiniATrasmessiElencoBinding; -import it.integry.integrywmsnative.gest.ordini_acquisto_pv.core.OrdineAcquistoPvTransmittedListAdapter; +import it.integry.integrywmsnative.gest.pv_ordini_acquisto.core.OrdineAcquistoPvTransmittedListAdapter; import it.integry.integrywmsnative.gest.prod_accettazione_ord_produzione.dialog.DialogOrdineProduzioneFiltroAvanzato; import it.integry.integrywmsnative.ui.ElevatedToolbar; import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/core/OrdineAcquistoPvOpenListAdapter.java b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/core/OrdineAcquistoPvOpenListAdapter.java similarity index 91% rename from app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/core/OrdineAcquistoPvOpenListAdapter.java rename to app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/core/OrdineAcquistoPvOpenListAdapter.java index 51b31cd3..bdec5020 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/core/OrdineAcquistoPvOpenListAdapter.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/core/OrdineAcquistoPvOpenListAdapter.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.gest.ordini_acquisto_pv.core; +package it.integry.integrywmsnative.gest.pv_ordini_acquisto.core; import android.content.Context; import android.text.Html; @@ -15,12 +15,9 @@ import java.util.List; import it.integry.integrywmsnative.R; import it.integry.integrywmsnative.core.data_store.db.entity.Ordine; -import it.integry.integrywmsnative.core.data_store.db.view_model.OrdineWithGriglia; import it.integry.integrywmsnative.core.data_store.db.wrappers.OrdineWrapper; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.utility.UtilityDate; -import it.integry.integrywmsnative.databinding.FragmentOrdineAPvTransmittedListModelBinding; -import it.integry.integrywmsnative.databinding.FragmentOrdiniAPvListSingleItemBinding; import it.integry.integrywmsnative.databinding.FragmentPvOrdiniAcquistoListHeaderBinding; import it.integry.integrywmsnative.databinding.FragmentPvOrdiniAcquistoListSingleItemBinding; import it.integry.integrywmsnative.ui.fastscroll.SectionTitleProvider; @@ -73,7 +70,7 @@ public class OrdineAcquistoPvOpenListAdapter extends SectionedRecyclerViewAdapte private List orderItems(List dataset) { return Stream.of(dataset) .distinctBy(OrdineWrapper::getOrdine) - .sortBy(x -> UtilityDate.formatDate(x.getOrdine().getDataOrd(), UtilityDate.COMMONS_DATE_FORMATS.YMD_SLASH)) + .sortBy(x -> UtilityDate.formatDate(x.getOrdine().getDataIns(), UtilityDate.COMMONS_DATE_FORMATS.YMD_SLASH)) .toList(); } @@ -104,7 +101,7 @@ public class OrdineAcquistoPvOpenListAdapter extends SectionedRecyclerViewAdapte final OrdineAcquistoPvOpenListAdapter.SingleItemViewHolder holder = h; - String testataOrdString = String.format(mContext.getString(R.string.ord_acq_testata), String.valueOf(ordine.getOrdineId()), UtilityDate.formatDate(ordine.getDataOrd(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN)); + String testataOrdString = String.format(mContext.getString(R.string.ord_acq_testata), String.valueOf(ordine.getOrdineId()), UtilityDate.formatDate(ordine.getDataIns(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN)); holder.binding.numArts.setText(String.format(mContext.getString(R.string.ord_acq_num_articoli), String.valueOf(ordineWrapper.getCountArticoli()))); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/core/OrdineAcquistoPvTransmittedListAdapter.java b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/core/OrdineAcquistoPvTransmittedListAdapter.java similarity index 96% rename from app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/core/OrdineAcquistoPvTransmittedListAdapter.java rename to app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/core/OrdineAcquistoPvTransmittedListAdapter.java index d519cf6f..d7f4449e 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/core/OrdineAcquistoPvTransmittedListAdapter.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/core/OrdineAcquistoPvTransmittedListAdapter.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.gest.ordini_acquisto_pv.core; +package it.integry.integrywmsnative.gest.pv_ordini_acquisto.core; import android.content.Context; import android.text.Html; @@ -68,7 +68,7 @@ public class OrdineAcquistoPvTransmittedListAdapter extends SectionedRecyclerVie private List orderItems(List dataset) { return Stream.of(dataset) .distinctBy(OrdineWithGriglia::getGriglia) - .sortBy(x -> UtilityDate.formatDate(x.getOrdine().getDataOrd(), UtilityDate.COMMONS_DATE_FORMATS.YMD_SLASH)) + .sortBy(x -> UtilityDate.formatDate(x.getOrdine().getDataIns(), UtilityDate.COMMONS_DATE_FORMATS.YMD_SLASH)) .toList(); } @@ -100,7 +100,7 @@ public class OrdineAcquistoPvTransmittedListAdapter extends SectionedRecyclerVie final OrdineAcquistoPvTransmittedListAdapter.SingleItemViewHolder holder = h; - String testataOrdString = String.format(mContext.getString(R.string.ord_acq_testata), String.valueOf(ordine.getOrdine().getOrdineId()), UtilityDate.formatDate(ordine.getOrdine().getDataOrd(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN)); + String testataOrdString = String.format(mContext.getString(R.string.ord_acq_testata), String.valueOf(ordine.getOrdine().getOrdineId()), UtilityDate.formatDate(ordine.getOrdine().getDataIns(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN)); holder.binding.badge1.setText(ordine.getOrdine().isTransmitted() ? "TRASMESSO" : "NON TRASMESSO"); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/dialogs/DialogScanLisA.java b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/dialogs/DialogScanLisA.java similarity index 94% rename from app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/dialogs/DialogScanLisA.java rename to app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/dialogs/DialogScanLisA.java index fdfc435b..6cd28d4b 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/dialogs/DialogScanLisA.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/dialogs/DialogScanLisA.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.gest.ordini_acquisto_pv.dialogs; +package it.integry.integrywmsnative.gest.pv_ordini_acquisto.dialogs; import android.app.Activity; import android.app.Dialog; @@ -7,7 +7,6 @@ import android.graphics.Color; import android.graphics.drawable.ColorDrawable; import android.view.LayoutInflater; -import androidx.appcompat.app.AppCompatActivity; import androidx.databinding.DataBindingUtil; import it.integry.barcode_base_android_library.model.BarcodeScanDTO; @@ -16,13 +15,12 @@ import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.data_store.db.entity.Griglia; import it.integry.integrywmsnative.core.data_store.db.repository.GrigliaRepository; -import it.integry.integrywmsnative.core.expansion.BaseActivity; import it.integry.integrywmsnative.core.expansion.BaseDialog; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.core.utility.UtilityProgress; import it.integry.integrywmsnative.databinding.DialogScanCodiceGrigliaBinding; -import it.integry.integrywmsnative.gest.ordini_acquisto_pv.helper.OrdineAcquistoPvHelper; +import it.integry.integrywmsnative.gest.pv_ordini_acquisto.helper.OrdineAcquistoPvHelper; public class DialogScanLisA { diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/helper/OrdineAcquistoPvHelper.java b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/helper/OrdineAcquistoPvHelper.java similarity index 97% rename from app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/helper/OrdineAcquistoPvHelper.java rename to app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/helper/OrdineAcquistoPvHelper.java index 67aa3c1d..9df45f2d 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ordini_acquisto_pv/helper/OrdineAcquistoPvHelper.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/helper/OrdineAcquistoPvHelper.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.gest.ordini_acquisto_pv.helper; +package it.integry.integrywmsnative.gest.pv_ordini_acquisto.helper; import android.content.Context; @@ -65,7 +65,7 @@ public class OrdineAcquistoPvHelper { public void createNewOrder(Griglia griglia, RunnableArgs onSuccess, RunnableArgs onError) { Ordine ordine = new Ordine(); - ordine.setDataOrd(new Date()); + ordine.setDataIns(new Date()); ordine.setIdGriglia(griglia.getGrigliaId()); mOrdineRepository.insert(ordine,id->{ ordine.setOrdineId(id); diff --git a/app/src/main/res/layout/activity_pvordine_acquisto_edit.xml b/app/src/main/res/layout/activity_pvordine_acquisto_edit.xml index 9b490678..d8bf2236 100644 --- a/app/src/main/res/layout/activity_pvordine_acquisto_edit.xml +++ b/app/src/main/res/layout/activity_pvordine_acquisto_edit.xml @@ -30,7 +30,7 @@ android:layout_height="wrap_content" android:orientation="vertical" android:paddingTop="8dp" - android:focusableInTouchMode="true" + android:background="@color/full_white" tools:context=".gest.contenuto_bancale.ContenutoBancaleActivity"> @@ -181,7 +181,7 @@ app:fab_colorPressed="@color/white_pressed" app:fab_colorRipple="#66FFFFFF" app:onClick="@{() -> viewModel.exportOrdine()}" - fab:fab_label="@string/action_recover_ul" + fab:fab_label="@string/close_and_export" /> diff --git a/app/src/main/res/layout/dialog_pv_edit_articolo.xml b/app/src/main/res/layout/dialog_pv_edit_articolo.xml index 1015ab10..f2470965 100644 --- a/app/src/main/res/layout/dialog_pv_edit_articolo.xml +++ b/app/src/main/res/layout/dialog_pv_edit_articolo.xml @@ -2,9 +2,11 @@ + + @@ -12,40 +14,34 @@ + - - - - + tools:text="codMart" /> + tools:text="DESCR ART" /> + app:layout_constraintRight_toRightOf="parent" + tools:text="(UM)" /> + + + android:layout_marginTop="16dp" + android:orientation="vertical"> + android:layout_weight="1" + app:layout_constraintEnd_toStartOf="@id/guide_right" + app:layout_constraintStart_toStartOf="@id/guide_left" + app:layout_constraintTop_toTopOf="parent"> + android:selectAllOnFocus="true" /> + android:layout_weight="1" + app:layout_constraintEnd_toStartOf="@id/guide_right" + app:layout_constraintStart_toStartOf="@id/guide_left" + app:layout_constraintTop_toTopOf="parent"> + android:selectAllOnFocus="true" /> - - + android:layout_marginTop="8dp"> + + + android:text="@string/no"/> - + android:text="@string/yes"/> + + + + + + diff --git a/app/src/main/res/layout/fragment_pv_articoli_ordine_acquisto__list_single_item.xml b/app/src/main/res/layout/fragment_pv_articoli_ordine_acquisto__list_single_item.xml new file mode 100644 index 00000000..ec3fc9c1 --- /dev/null +++ b/app/src/main/res/layout/fragment_pv_articoli_ordine_acquisto__list_single_item.xml @@ -0,0 +1,92 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/layout/fragment_pv_ordini_a_trasmessi_elenco.xml b/app/src/main/res/layout/fragment_pv_ordini_a_trasmessi_elenco.xml index 5c9bf84b..33800c29 100644 --- a/app/src/main/res/layout/fragment_pv_ordini_a_trasmessi_elenco.xml +++ b/app/src/main/res/layout/fragment_pv_ordini_a_trasmessi_elenco.xml @@ -4,7 +4,7 @@ - + + tools:context="it.integry.integrywmsnative.gest.pv_ordini_acquisto.PVOrdiniAcquistoTransmittedListFragment"> + type="it.integry.integrywmsnative.gest.pv_ordini_acquisto.PVOrdiniAcquistoGrigliaFragment" /> @@ -86,6 +86,28 @@ android:textSize="14sp" android:textStyle="italic" /> + + + + + + Controllo ordini aperti %s articoli]]> Descrizione griglia: + Descrizione deposito: Articoli in griglia: Griglia: Seleziona / Crea ordine Agigungi + Chiudi ed esporta ordine + Chiudi ordine \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 817a557a..6f482fc1 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -278,8 +278,11 @@ Checking for open orders %s items]]> Grid description: + Storage description: Items in grid: Grid: Select/Create order Add + Close and export + Close order diff --git a/dynamic_saporiveri_pv/src/main/java/it/integry/wms/dynamic_customization/extensions/MenuConfigurationSAPORIVERIPV.java b/dynamic_saporiveri_pv/src/main/java/it/integry/wms/dynamic_customization/extensions/MenuConfigurationSAPORIVERIPV.java index 948f4a6e..adc468ed 100644 --- a/dynamic_saporiveri_pv/src/main/java/it/integry/wms/dynamic_customization/extensions/MenuConfigurationSAPORIVERIPV.java +++ b/dynamic_saporiveri_pv/src/main/java/it/integry/wms/dynamic_customization/extensions/MenuConfigurationSAPORIVERIPV.java @@ -1,8 +1,7 @@ package it.integry.wms.dynamic_customization.extensions; import it.integry.integrywmsnative.core.class_router.configs.BaseMenuConfiguration; -import it.integry.integrywmsnative.gest.ordini_acquisto_pv.PVOrdiniAcquistoGrigliaFragment; -import it.integry.integrywmsnative.gest.ordini_acquisto_pv.PVOrdiniAcquistoTransmittedListFragment; +import it.integry.integrywmsnative.gest.pv_ordini_acquisto.PVOrdiniAcquistoGrigliaFragment; public class MenuConfigurationSAPORIVERIPV extends BaseMenuConfiguration { @@ -20,12 +19,12 @@ public class MenuConfigurationSAPORIVERIPV extends BaseMenuConfiguration { .setTitleIcon(it.integry.integrywmsnative.R.drawable.ic_dashboard_purchase_orders_pv) .setDrawerIcon(it.integry.integrywmsnative.R.drawable.ic_dashboard_purchase_orders_pv) .setFragmentClass(PVOrdiniAcquistoGrigliaFragment.newInstance())) - .addItem(new MenuItem() - .setID(it.integry.integrywmsnative.R.id.nav_pv_ordini_acquisto_trasmessi) - .setTitleText(it.integry.integrywmsnative.R.string.transmitted_orders) - .setTitleIcon(it.integry.integrywmsnative.R.drawable.ic_dashboard_trasmitted_orders_list) - .setDrawerIcon(it.integry.integrywmsnative.R.drawable.ic_dashboard_trasmitted_orders_list) - .setFragmentClass(PVOrdiniAcquistoTransmittedListFragment.newInstance())) +// .addItem(new MenuItem() +// .setID(it.integry.integrywmsnative.R.id.nav_pv_ordini_acquisto_trasmessi) +// .setTitleText(it.integry.integrywmsnative.R.string.transmitted_orders) +// .setTitleIcon(it.integry.integrywmsnative.R.drawable.ic_dashboard_trasmitted_orders_list) +// .setDrawerIcon(it.integry.integrywmsnative.R.drawable.ic_dashboard_trasmitted_orders_list) +// .setFragmentClass(PVOrdiniAcquistoTransmittedListFragment.newInstance())) );