Implementato servizio retrieve picking list bolle accettazione

This commit is contained in:
Giuseppe Scorrano 2023-07-31 12:28:06 +02:00
parent 6dbcdb0475
commit bd81385cac
7 changed files with 203 additions and 8 deletions

View File

@ -26,8 +26,7 @@ import it.integry.integrywmsnative.core.interfaces.IScrollableFragment;
import it.integry.integrywmsnative.core.interfaces.ITitledFragment; import it.integry.integrywmsnative.core.interfaces.ITitledFragment;
import it.integry.integrywmsnative.core.utility.UtilityDate; import it.integry.integrywmsnative.core.utility.UtilityDate;
import it.integry.integrywmsnative.databinding.FragmentMainAccettazioneBollaBinding; import it.integry.integrywmsnative.databinding.FragmentMainAccettazioneBollaBinding;
import it.integry.integrywmsnative.gest.accettazione_ordini_elenco.dto.OrdineAccettazioneInevasoDTO; import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto.SitBollaAccettazioneDTO;
import it.integry.integrywmsnative.gest.accettazione_ordini_elenco.dto.SitArtOrdDTO;
import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto.TestataBollaAccettazioneDTO; import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto.TestataBollaAccettazioneDTO;
import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.ui.MainAccettazioneBolleElencoAdapter; import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.ui.MainAccettazioneBolleElencoAdapter;
import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.ui.MainAccettazioneBolleElencoListModel; import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.ui.MainAccettazioneBolleElencoListModel;
@ -204,16 +203,16 @@ public class MainAccettazioneBollaElencoFragment extends BaseFragment implements
public void dispatchBolle() { public void dispatchBolle() {
List<TestataBollaAccettazioneDTO> selectedOrders = Stream.of(this.mBolleInevaseMutableData) List<TestataBollaAccettazioneDTO> selectedBolle = Stream.of(this.mBolleInevaseMutableData)
.filter(x -> x.getSelectedObservable().get()) .filter(x -> x.getSelectedObservable().get())
.map(MainAccettazioneBolleElencoListModel::getOriginalModel) .map(MainAccettazioneBolleElencoListModel::getOriginalModel)
.toList(); .toList();
// this.mViewModel.loadPicking(selectedOrders, this.mAppliedFilterViewModel.getSelectedMtbGrup()); this.mViewModel.loadPicking(selectedBolle);
} }
@Override @Override
public void onBolleDispatched(List<OrdineAccettazioneInevasoDTO> orders, List<SitArtOrdDTO> sitArts) { public void onPickingReady(List<TestataBollaAccettazioneDTO> bolle, List<SitBollaAccettazioneDTO> sitArts) {
} }
} }

View File

@ -7,9 +7,8 @@ import java.util.List;
import javax.inject.Inject; import javax.inject.Inject;
import it.integry.integrywmsnative.core.interfaces.viewmodel_listeners.ILoadingListener; import it.integry.integrywmsnative.core.interfaces.viewmodel_listeners.ILoadingListener;
import it.integry.integrywmsnative.gest.accettazione_ordini_elenco.dto.OrdineAccettazioneInevasoDTO;
import it.integry.integrywmsnative.gest.accettazione_ordini_elenco.dto.SitArtOrdDTO;
import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.BolleAccettazioneRESTConsumer; import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.BolleAccettazioneRESTConsumer;
import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto.SitBollaAccettazioneDTO;
import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto.TestataBollaAccettazioneDTO; import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto.TestataBollaAccettazioneDTO;
public class MainAccettazioneBollaElencoViewModel { public class MainAccettazioneBollaElencoViewModel {
@ -40,6 +39,36 @@ public class MainAccettazioneBollaElencoViewModel {
return bolleList; return bolleList;
} }
public void loadPicking(List<TestataBollaAccettazioneDTO> selectedBolle) {
this.sendOnLoadingStarted();
this.bolleAccettazioneRESTConsumer.retrievePickingListBolle(selectedBolle, sitArts -> {
this.sendOnLoadingEnded();
this.sendOnPickingReady(selectedBolle, sitArts);
}, this::sendError);
}
public MainAccettazioneBollaElencoViewModel setListener(MainAccettazioneBollaElencoViewModel.Listener listener) { public MainAccettazioneBollaElencoViewModel setListener(MainAccettazioneBollaElencoViewModel.Listener listener) {
this.listener = listener; this.listener = listener;
return this; return this;
@ -57,10 +86,15 @@ public class MainAccettazioneBollaElencoViewModel {
if (this.listener != null) listener.onError(ex); if (this.listener != null) listener.onError(ex);
} }
private void sendOnPickingReady(List<TestataBollaAccettazioneDTO> bolle, List<SitBollaAccettazioneDTO> sitArts) {
if(this.listener != null) listener.onPickingReady(bolle, sitArts);
}
public interface Listener extends ILoadingListener { public interface Listener extends ILoadingListener {
void onError(Exception ex); void onError(Exception ex);
void onBolleDispatched(List<OrdineAccettazioneInevasoDTO> orders, List<SitArtOrdDTO> sitArts); void onPickingReady(List<TestataBollaAccettazioneDTO> bolle, List<SitBollaAccettazioneDTO> sitArts);
} }
} }

View File

@ -8,7 +8,10 @@ import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.rest.RESTBuilder; import it.integry.integrywmsnative.core.rest.RESTBuilder;
import it.integry.integrywmsnative.core.rest.consumers._BaseRESTConsumer; import it.integry.integrywmsnative.core.rest.consumers._BaseRESTConsumer;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto.RetrieveElencoArticoliAccettazioneBollaRequestDTO;
import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto.RetrieveElencoArticoliAccettazioneBollaResponseDTO;
import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto.RetrieveElencoBolleAccettazioneResponseDTO; import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto.RetrieveElencoBolleAccettazioneResponseDTO;
import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto.SitBollaAccettazioneDTO;
import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto.TestataBollaAccettazioneDTO; import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto.TestataBollaAccettazioneDTO;
import retrofit2.Call; import retrofit2.Call;
import retrofit2.Callback; import retrofit2.Callback;
@ -34,4 +37,24 @@ public class BolleAccettazioneRESTConsumer extends _BaseRESTConsumer {
}); });
} }
public void retrievePickingListBolle(List<TestataBollaAccettazioneDTO> bolle, RunnableArgs<List<SitBollaAccettazioneDTO>> onComplete, RunnableArgs<Exception> onFailed) {
BolleAccettazioneRESTConsumerService service = RESTBuilder.getService(BolleAccettazioneRESTConsumerService.class);
var request = new RetrieveElencoArticoliAccettazioneBollaRequestDTO()
.setBolle(bolle);
service.retrievePickingListBolle(request)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<RetrieveElencoArticoliAccettazioneBollaResponseDTO>> call, Response<ServiceRESTResponse<RetrieveElencoArticoliAccettazioneBollaResponseDTO>> response) {
analyzeAnswer(response, "retrievePickingListBolle", data -> onComplete.run(data.getSitArticoli()), onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<RetrieveElencoArticoliAccettazioneBollaResponseDTO>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}
} }

View File

@ -1,13 +1,20 @@
package it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest; package it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest;
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse; import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto.RetrieveElencoArticoliAccettazioneBollaRequestDTO;
import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto.RetrieveElencoArticoliAccettazioneBollaResponseDTO;
import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto.RetrieveElencoBolleAccettazioneResponseDTO; import it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto.RetrieveElencoBolleAccettazioneResponseDTO;
import retrofit2.Call; import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.GET; import retrofit2.http.GET;
import retrofit2.http.POST;
public interface BolleAccettazioneRESTConsumerService { public interface BolleAccettazioneRESTConsumerService {
@GET("wms/accettazione-bolla/retrieveElencoBolle") @GET("wms/accettazione-bolla/retrieveElencoBolle")
Call<ServiceRESTResponse<RetrieveElencoBolleAccettazioneResponseDTO>> retrieveElencoBolle(); Call<ServiceRESTResponse<RetrieveElencoBolleAccettazioneResponseDTO>> retrieveElencoBolle();
@POST("wms/accettazione-bolla/retrievePickingList")
Call<ServiceRESTResponse<RetrieveElencoArticoliAccettazioneBollaResponseDTO>> retrievePickingListBolle(@Body RetrieveElencoArticoliAccettazioneBollaRequestDTO retrieveElencoArticoliAccettazioneBollaReques);
} }

View File

@ -0,0 +1,17 @@
package it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto;
import java.util.List;
public class RetrieveElencoArticoliAccettazioneBollaRequestDTO {
private List<TestataBollaAccettazioneDTO> bolle;
public List<TestataBollaAccettazioneDTO> getBolle() {
return bolle;
}
public RetrieveElencoArticoliAccettazioneBollaRequestDTO setBolle(List<TestataBollaAccettazioneDTO> bolle) {
this.bolle = bolle;
return this;
}
}

View File

@ -0,0 +1,17 @@
package it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto;
import java.util.List;
public class RetrieveElencoArticoliAccettazioneBollaResponseDTO {
private List<SitBollaAccettazioneDTO> sitArticoli;
public List<SitBollaAccettazioneDTO> getSitArticoli() {
return sitArticoli;
}
public RetrieveElencoArticoliAccettazioneBollaResponseDTO setSitArticoli(List<SitBollaAccettazioneDTO> sitArticoli) {
this.sitArticoli = sitArticoli;
return this;
}
}

View File

@ -0,0 +1,98 @@
package it.integry.integrywmsnative.gest.accettazone_bolla_elenco.rest.dto;
import java.math.BigDecimal;
import java.time.LocalDate;
public class SitBollaAccettazioneDTO {
private int numDoc;
private LocalDate dataDoc;
private String serDoc;
private String codDtip;
private String codMart;
private BigDecimal qtaDoc;
private String partitaMag;
private BigDecimal qtaAccettata;
private BigDecimal qtaDaAccettare;
public int getNumDoc() {
return numDoc;
}
public SitBollaAccettazioneDTO setNumDoc(int numDoc) {
this.numDoc = numDoc;
return this;
}
public LocalDate getDataDoc() {
return dataDoc;
}
public SitBollaAccettazioneDTO setDataDoc(LocalDate dataDoc) {
this.dataDoc = dataDoc;
return this;
}
public String getSerDoc() {
return serDoc;
}
public SitBollaAccettazioneDTO setSerDoc(String serDoc) {
this.serDoc = serDoc;
return this;
}
public String getCodDtip() {
return codDtip;
}
public SitBollaAccettazioneDTO setCodDtip(String codDtip) {
this.codDtip = codDtip;
return this;
}
public String getCodMart() {
return codMart;
}
public SitBollaAccettazioneDTO setCodMart(String codMart) {
this.codMart = codMart;
return this;
}
public BigDecimal getQtaDoc() {
return qtaDoc;
}
public SitBollaAccettazioneDTO setQtaDoc(BigDecimal qtaDoc) {
this.qtaDoc = qtaDoc;
return this;
}
public String getPartitaMag() {
return partitaMag;
}
public SitBollaAccettazioneDTO setPartitaMag(String partitaMag) {
this.partitaMag = partitaMag;
return this;
}
public BigDecimal getQtaAccettata() {
return qtaAccettata;
}
public SitBollaAccettazioneDTO setQtaAccettata(BigDecimal qtaAccettata) {
this.qtaAccettata = qtaAccettata;
return this;
}
public BigDecimal getQtaDaAccettare() {
return qtaDaAccettare;
}
public SitBollaAccettazioneDTO setQtaDaAccettare(BigDecimal qtaDaAccettare) {
this.qtaDaAccettare = qtaDaAccettare;
return this;
}
}