Completato refactoring picking per resi fornitore
This commit is contained in:
@@ -16,7 +16,6 @@ import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
|
|||||||
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCRequestDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCResponseDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCResponseDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCRequestDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCResponseDTO;
|
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.DeleteUDCRowRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.DeleteUDCRowRequestDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.EditUDCRowRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.EditUDCRowRequestDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDCRowRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDCRowRequestDTO;
|
||||||
@@ -35,21 +34,21 @@ public class ColliAccettazioneRESTConsumer extends _BaseRESTConsumer implements
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public CreateUDCResponseDTO synchronousCreateUDC(CreateUDCRequestDTO createUDCRequestDTO) throws Exception {
|
public MtbColt synchronousCreateUDC(CreateUDCRequestDTO createUDCRequestDTO) throws Exception {
|
||||||
ColliAccettazioneRESTConsumerService colliAccettazioneRESTConsumerService = restBuilder.getService(ColliAccettazioneRESTConsumerService.class);
|
ColliAccettazioneRESTConsumerService colliAccettazioneRESTConsumerService = restBuilder.getService(ColliAccettazioneRESTConsumerService.class);
|
||||||
|
|
||||||
var response = colliAccettazioneRESTConsumerService.createUDC(createUDCRequestDTO)
|
var response = colliAccettazioneRESTConsumerService.createUDC(createUDCRequestDTO)
|
||||||
.execute();
|
.execute();
|
||||||
|
|
||||||
var data = analyzeAnswer(response, "accettazione/createUDC");
|
var data = analyzeAnswer(response, "accettazione/createUDC");
|
||||||
return data;
|
return data.getMtbColt();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void createUDC(CreateUDCRequestDTO createUDCRequestDTO, RunnableArgs<MtbColt> onComplete, RunnableArgs<Exception> onFailed) {
|
public void createUDC(CreateUDCRequestDTO createUDCRequestDTO, RunnableArgs<MtbColt> onComplete, RunnableArgs<Exception> onFailed) {
|
||||||
executorService.execute(() -> {
|
executorService.execute(() -> {
|
||||||
try {
|
try {
|
||||||
MtbColt result = synchronousCreateUDC(createUDCRequestDTO).getMtbColt();
|
MtbColt result = synchronousCreateUDC(createUDCRequestDTO);
|
||||||
onComplete.run(result);
|
onComplete.run(result);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
onFailed.run(e);
|
onFailed.run(e);
|
||||||
|
|||||||
@@ -20,7 +20,6 @@ import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
|
|||||||
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCRequestDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCResponseDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCResponseDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCRequestDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCResponseDTO;
|
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.DeleteUDCRowRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.DeleteUDCRowRequestDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.EditUDCRowRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.EditUDCRowRequestDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.uds.CloseUDSRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.uds.CloseUDSRequestDTO;
|
||||||
@@ -51,21 +50,21 @@ public class ColliLavorazioneRESTConsumer extends _BaseRESTConsumer implements C
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public CreateUDCResponseDTO synchronousCreateUDC(CreateUDCRequestDTO createUDCRequestDTO) throws Exception {
|
public MtbColt synchronousCreateUDC(CreateUDCRequestDTO createUDCRequestDTO) throws Exception {
|
||||||
ColliLavorazioneRESTConsumerService colliLavorazioneRESTConsumerService = restBuilder.getService(ColliLavorazioneRESTConsumerService.class);
|
ColliLavorazioneRESTConsumerService colliLavorazioneRESTConsumerService = restBuilder.getService(ColliLavorazioneRESTConsumerService.class);
|
||||||
|
|
||||||
var response = colliLavorazioneRESTConsumerService.createUDC(createUDCRequestDTO)
|
var response = colliLavorazioneRESTConsumerService.createUDC(createUDCRequestDTO)
|
||||||
.execute();
|
.execute();
|
||||||
|
|
||||||
var data = analyzeAnswer(response, "lavorazione/createUDC");
|
var data = analyzeAnswer(response, "lavorazione/createUDC");
|
||||||
return data;
|
return data.getMtbColt();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void createUDC(CreateUDCRequestDTO createUDCRequestDTO, RunnableArgs<MtbColt> onComplete, RunnableArgs<Exception> onFailed) {
|
public void createUDC(CreateUDCRequestDTO createUDCRequestDTO, RunnableArgs<MtbColt> onComplete, RunnableArgs<Exception> onFailed) {
|
||||||
executorService.execute(() -> {
|
executorService.execute(() -> {
|
||||||
try {
|
try {
|
||||||
MtbColt result = synchronousCreateUDC(createUDCRequestDTO).getMtbColt();
|
MtbColt result = synchronousCreateUDC(createUDCRequestDTO);
|
||||||
onComplete.run(result);
|
onComplete.run(result);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
onFailed.run(e);
|
onFailed.run(e);
|
||||||
|
|||||||
@@ -6,14 +6,13 @@ import it.integry.integrywmsnative.core.model.MtbColt;
|
|||||||
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCRequestDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCResponseDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.CloseUDCResponseDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCRequestDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCResponseDTO;
|
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.DeleteUDCRowRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.DeleteUDCRowRequestDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.EditUDCRowRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.EditUDCRowRequestDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDCRowRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDCRowRequestDTO;
|
||||||
|
|
||||||
public interface ColliCaricoRESTConsumerInterface {
|
public interface ColliCaricoRESTConsumerInterface {
|
||||||
|
|
||||||
CreateUDCResponseDTO synchronousCreateUDC(CreateUDCRequestDTO createUDCRequestDTO) throws Exception;
|
MtbColt synchronousCreateUDC(CreateUDCRequestDTO createUDCRequestDTO) throws Exception;
|
||||||
void createUDC(CreateUDCRequestDTO createUDCRequestDTO, RunnableArgs<MtbColt> onComplete, RunnableArgs<Exception> onFailed);
|
void createUDC(CreateUDCRequestDTO createUDCRequestDTO, RunnableArgs<MtbColt> onComplete, RunnableArgs<Exception> onFailed);
|
||||||
|
|
||||||
CloseUDCResponseDTO synchronousCloseUDC(CloseUDCRequestDTO closeUDCRequestDTO) throws Exception;
|
CloseUDCResponseDTO synchronousCloseUDC(CloseUDCRequestDTO closeUDCRequestDTO) throws Exception;
|
||||||
|
|||||||
@@ -43,6 +43,9 @@ public class CreateUDSRequestDTO {
|
|||||||
@SerializedName("orderRequired")
|
@SerializedName("orderRequired")
|
||||||
private boolean orderRequired;
|
private boolean orderRequired;
|
||||||
|
|
||||||
|
@SerializedName("reso")
|
||||||
|
private boolean reso;
|
||||||
|
|
||||||
@SerializedName("orders")
|
@SerializedName("orders")
|
||||||
private List<CreateUDSRequestOrderDTO> orders;
|
private List<CreateUDSRequestOrderDTO> orders;
|
||||||
|
|
||||||
@@ -145,6 +148,15 @@ public class CreateUDSRequestDTO {
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isReso() {
|
||||||
|
return reso;
|
||||||
|
}
|
||||||
|
|
||||||
|
public CreateUDSRequestDTO setReso(boolean reso) {
|
||||||
|
this.reso = reso;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
public List<CreateUDSRequestOrderDTO> getOrders() {
|
public List<CreateUDSRequestOrderDTO> getOrders() {
|
||||||
return orders;
|
return orders;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import java.time.LocalDate;
|
|||||||
|
|
||||||
import it.integry.integrywmsnative.core.model.MtbColr;
|
import it.integry.integrywmsnative.core.model.MtbColr;
|
||||||
import it.integry.integrywmsnative.core.model.MtbColt;
|
import it.integry.integrywmsnative.core.model.MtbColt;
|
||||||
|
import it.integry.integrywmsnative.core.model.key.DtbDocrKey;
|
||||||
|
|
||||||
public class InsertUDSRowRequestDTO {
|
public class InsertUDSRowRequestDTO {
|
||||||
|
|
||||||
@@ -31,6 +32,9 @@ public class InsertUDSRowRequestDTO {
|
|||||||
@SerializedName("codJcom")
|
@SerializedName("codJcom")
|
||||||
private String codJcom;
|
private String codJcom;
|
||||||
|
|
||||||
|
@SerializedName("documentReso")
|
||||||
|
private DtbDocrKey documentReso;
|
||||||
|
|
||||||
public MtbColr getSourceMtbColr() {
|
public MtbColr getSourceMtbColr() {
|
||||||
return sourceMtbColr;
|
return sourceMtbColr;
|
||||||
}
|
}
|
||||||
@@ -111,4 +115,13 @@ public class InsertUDSRowRequestDTO {
|
|||||||
this.codJcom = codJcom;
|
this.codJcom = codJcom;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public DtbDocrKey getDocumentReso() {
|
||||||
|
return documentReso;
|
||||||
|
}
|
||||||
|
|
||||||
|
public InsertUDSRowRequestDTO setDocumentReso(DtbDocrKey documentReso) {
|
||||||
|
this.documentReso = documentReso;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -94,7 +94,7 @@ public class PickingResiActivity extends BaseActivity implements BottomSheetFrag
|
|||||||
|
|
||||||
private boolean mShouldCloseActivity;
|
private boolean mShouldCloseActivity;
|
||||||
|
|
||||||
public static void startActivity(Context context, String activityTitle, List<DocumentoResoDTO> documentoResoDTOList, Integer segno) {
|
public static void startActivity(Context context, String activityTitle, List<DocumentoResoDTO> documentoResoDTOList, PickingResiViewModel.Tipologia tipoReso) {
|
||||||
Intent intent = new Intent(context, PickingResiActivity.class);
|
Intent intent = new Intent(context, PickingResiActivity.class);
|
||||||
|
|
||||||
intent.putExtra("activity_title", activityTitle);
|
intent.putExtra("activity_title", activityTitle);
|
||||||
@@ -102,7 +102,7 @@ public class PickingResiActivity extends BaseActivity implements BottomSheetFrag
|
|||||||
String consegneCacheKey = DataCache.addItem(documentoResoDTOList);
|
String consegneCacheKey = DataCache.addItem(documentoResoDTOList);
|
||||||
intent.putExtra("key", consegneCacheKey);
|
intent.putExtra("key", consegneCacheKey);
|
||||||
|
|
||||||
intent.putExtra("segno", segno);
|
intent.putExtra("tipologia", tipoReso.getValue());
|
||||||
|
|
||||||
context.startActivity(intent);
|
context.startActivity(intent);
|
||||||
}
|
}
|
||||||
@@ -114,7 +114,8 @@ public class PickingResiActivity extends BaseActivity implements BottomSheetFrag
|
|||||||
|
|
||||||
mTitle = getIntent().getStringExtra("activity_title");
|
mTitle = getIntent().getStringExtra("activity_title");
|
||||||
mDocumentiResiList = DataCache.retrieveItem(getIntent().getStringExtra("key"));
|
mDocumentiResiList = DataCache.retrieveItem(getIntent().getStringExtra("key"));
|
||||||
int defaultSegnoLU = getIntent().getIntExtra("segno", +1);
|
PickingResiViewModel.Tipologia tipoReso =
|
||||||
|
PickingResiViewModel.Tipologia.fromShort(getIntent().getShortExtra("tipologia", PickingResiViewModel.Tipologia.VENDITA.getValue()));
|
||||||
|
|
||||||
mBindings = DataBindingUtil.setContentView(this, R.layout.activity_picking_resi);
|
mBindings = DataBindingUtil.setContentView(this, R.layout.activity_picking_resi);
|
||||||
|
|
||||||
@@ -150,7 +151,7 @@ public class PickingResiActivity extends BaseActivity implements BottomSheetFrag
|
|||||||
|
|
||||||
this.onLoadingStarted();
|
this.onLoadingStarted();
|
||||||
try {
|
try {
|
||||||
this.mViewmodel.init(mDocumentiResiList, defaultSegnoLU, codMdep);
|
this.mViewmodel.init(mDocumentiResiList, tipoReso, codMdep);
|
||||||
this.onLoadingEnded();
|
this.onLoadingEnded();
|
||||||
} catch (Exception ex) {
|
} catch (Exception ex) {
|
||||||
this.onError(ex);
|
this.onError(ex);
|
||||||
|
|||||||
@@ -33,19 +33,21 @@ import it.integry.integrywmsnative.core.model.MtbColr;
|
|||||||
import it.integry.integrywmsnative.core.model.MtbColt;
|
import it.integry.integrywmsnative.core.model.MtbColt;
|
||||||
import it.integry.integrywmsnative.core.model.dto.PickDataDTO;
|
import it.integry.integrywmsnative.core.model.dto.PickDataDTO;
|
||||||
import it.integry.integrywmsnative.core.model.observable.ObservableMtbTcol;
|
import it.integry.integrywmsnative.core.model.observable.ObservableMtbTcol;
|
||||||
import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer;
|
|
||||||
import it.integry.integrywmsnative.core.rest.consumers.BarcodeRESTConsumer;
|
import it.integry.integrywmsnative.core.rest.consumers.BarcodeRESTConsumer;
|
||||||
import it.integry.integrywmsnative.core.rest.consumers.ColliAccettazioneRESTConsumer;
|
import it.integry.integrywmsnative.core.rest.consumers.ColliAccettazioneRESTConsumer;
|
||||||
import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer;
|
import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer;
|
||||||
import it.integry.integrywmsnative.core.rest.consumers.ColliSpedizioneRESTConsumer;
|
import it.integry.integrywmsnative.core.rest.consumers.ColliSpedizioneRESTConsumer;
|
||||||
import it.integry.integrywmsnative.core.rest.consumers.OrdiniRESTConsumer;
|
|
||||||
import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer;
|
import it.integry.integrywmsnative.core.rest.consumers.PrinterRESTConsumer;
|
||||||
import it.integry.integrywmsnative.core.rest.model.DocumentoResoDTO;
|
import it.integry.integrywmsnative.core.rest.model.DocumentoResoDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.CreateUDCRequestDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.DeleteUDCRowRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.DeleteUDCRowRequestDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.udc.EditUDCRowRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.udc.EditUDCRowRequestDTO;
|
||||||
|
import it.integry.integrywmsnative.core.rest.model.uds.CreateUDSRequestDTO;
|
||||||
|
import it.integry.integrywmsnative.core.rest.model.uds.DeleteUDSRowRequestDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.uds.DeleteULRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.uds.DeleteULRequestDTO;
|
||||||
|
import it.integry.integrywmsnative.core.rest.model.uds.EditUDSRowRequestDTO;
|
||||||
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDCRowRequestDTO;
|
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDCRowRequestDTO;
|
||||||
|
import it.integry.integrywmsnative.core.rest.model.uds.InsertUDSRowRequestDTO;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityBarcode;
|
import it.integry.integrywmsnative.core.utility.UtilityBarcode;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityBigDecimal;
|
import it.integry.integrywmsnative.core.utility.UtilityBigDecimal;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityString;
|
import it.integry.integrywmsnative.core.utility.UtilityString;
|
||||||
@@ -65,16 +67,13 @@ public class PickingResiViewModel {
|
|||||||
|
|
||||||
private MtbColt mCurrentMtbColt = null;
|
private MtbColt mCurrentMtbColt = null;
|
||||||
|
|
||||||
private String mDefaultGestioneOfLU;
|
|
||||||
private String mDefaultCodAnagOfLU;
|
private String mDefaultCodAnagOfLU;
|
||||||
private int mDefaultSegnoOfLU;
|
private Tipologia mTipologiaReso;
|
||||||
private String mDefaultCodMdepOfLU;
|
private String mDefaultCodMdepOfLU;
|
||||||
|
|
||||||
private final Handler mHandler;
|
private final Handler mHandler;
|
||||||
private final ArticoloRESTConsumer mArticoloRESTConsumer;
|
|
||||||
private final BarcodeRESTConsumer mBarcodeRESTConsumer;
|
private final BarcodeRESTConsumer mBarcodeRESTConsumer;
|
||||||
private final ColliDataRecoverService mColliDataRecoverService;
|
private final ColliDataRecoverService mColliDataRecoverService;
|
||||||
private final OrdiniRESTConsumer mOrdiniRestConsumerService;
|
|
||||||
private final ColliAccettazioneRESTConsumer mColliAccettazioneRESTConsumer;
|
private final ColliAccettazioneRESTConsumer mColliAccettazioneRESTConsumer;
|
||||||
private final ColliSpedizioneRESTConsumer mColliSpedizioneRESTConsumer;
|
private final ColliSpedizioneRESTConsumer mColliSpedizioneRESTConsumer;
|
||||||
private final ColliMagazzinoRESTConsumer mColliMagazzinoRESTConsumer;
|
private final ColliMagazzinoRESTConsumer mColliMagazzinoRESTConsumer;
|
||||||
@@ -84,20 +83,16 @@ public class PickingResiViewModel {
|
|||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
public PickingResiViewModel(Handler handler,
|
public PickingResiViewModel(Handler handler,
|
||||||
ArticoloRESTConsumer articoloRESTConsumer,
|
|
||||||
BarcodeRESTConsumer barcodeRESTConsumer,
|
BarcodeRESTConsumer barcodeRESTConsumer,
|
||||||
ColliDataRecoverService colliDataRecoverService,
|
ColliDataRecoverService colliDataRecoverService,
|
||||||
OrdiniRESTConsumer ordiniRESTConsumer,
|
|
||||||
ColliAccettazioneRESTConsumer colliAccettazioneRESTConsumer,
|
ColliAccettazioneRESTConsumer colliAccettazioneRESTConsumer,
|
||||||
ColliSpedizioneRESTConsumer colliSpedizioneRESTConsumer,
|
ColliSpedizioneRESTConsumer colliSpedizioneRESTConsumer,
|
||||||
ColliMagazzinoRESTConsumer colliMagazzinoRESTConsumer,
|
ColliMagazzinoRESTConsumer colliMagazzinoRESTConsumer,
|
||||||
PrinterRESTConsumer printerRESTConsumer,
|
PrinterRESTConsumer printerRESTConsumer,
|
||||||
PickingResiRESTConsumer mPickingResiRESTConsumer) {
|
PickingResiRESTConsumer mPickingResiRESTConsumer) {
|
||||||
this.mHandler = handler;
|
this.mHandler = handler;
|
||||||
this.mArticoloRESTConsumer = articoloRESTConsumer;
|
|
||||||
this.mBarcodeRESTConsumer = barcodeRESTConsumer;
|
this.mBarcodeRESTConsumer = barcodeRESTConsumer;
|
||||||
this.mColliDataRecoverService = colliDataRecoverService;
|
this.mColliDataRecoverService = colliDataRecoverService;
|
||||||
this.mOrdiniRestConsumerService = ordiniRESTConsumer;
|
|
||||||
this.mColliAccettazioneRESTConsumer = colliAccettazioneRESTConsumer;
|
this.mColliAccettazioneRESTConsumer = colliAccettazioneRESTConsumer;
|
||||||
this.mColliSpedizioneRESTConsumer = colliSpedizioneRESTConsumer;
|
this.mColliSpedizioneRESTConsumer = colliSpedizioneRESTConsumer;
|
||||||
this.mColliMagazzinoRESTConsumer = colliMagazzinoRESTConsumer;
|
this.mColliMagazzinoRESTConsumer = colliMagazzinoRESTConsumer;
|
||||||
@@ -105,8 +100,8 @@ public class PickingResiViewModel {
|
|||||||
this.mPickingResiRESTConsumer = mPickingResiRESTConsumer;
|
this.mPickingResiRESTConsumer = mPickingResiRESTConsumer;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void init(List<DocumentoResoDTO> documentList, int defaultSegnoLU, String codMdep) throws Exception {
|
public void init(List<DocumentoResoDTO> documentList, Tipologia tipologiaReso, String codMdep) throws Exception {
|
||||||
this.mDefaultSegnoOfLU = defaultSegnoLU;
|
this.mTipologiaReso = tipologiaReso;
|
||||||
this.mDefaultCodMdepOfLU = codMdep;
|
this.mDefaultCodMdepOfLU = codMdep;
|
||||||
|
|
||||||
|
|
||||||
@@ -132,8 +127,6 @@ public class PickingResiViewModel {
|
|||||||
throw new Exception("Sono stati caricati documenti con diverse gestioni");
|
throw new Exception("Sono stati caricati documenti con diverse gestioni");
|
||||||
}
|
}
|
||||||
|
|
||||||
mDefaultGestioneOfLU = foundGestioni.get(0);
|
|
||||||
|
|
||||||
|
|
||||||
List<String> foundCodAnags = Stream.of(documentList)
|
List<String> foundCodAnags = Stream.of(documentList)
|
||||||
.map(DocumentoResoDTO::getCodAnag)
|
.map(DocumentoResoDTO::getCodAnag)
|
||||||
@@ -148,17 +141,30 @@ public class PickingResiViewModel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void createNewLU(Integer customNumCollo, String customSerCollo) throws Exception {
|
public void createNewLU(Integer customNumCollo, String customSerCollo) throws Exception {
|
||||||
// mColliAccettazioneRESTConsumer.createUDC(new Cre);
|
if (mTipologiaReso == Tipologia.VENDITA) {
|
||||||
|
var createdUdc = mColliAccettazioneRESTConsumer.synchronousCreateUDC(new CreateUDCRequestDTO()
|
||||||
|
.setCodAnag(mDefaultCodAnagOfLU)
|
||||||
|
.setCodMdep(mDefaultCodMdepOfLU)
|
||||||
|
.setNumCollo(customNumCollo)
|
||||||
|
.setSerCollo(customSerCollo)
|
||||||
|
.setReso(true));
|
||||||
|
|
||||||
var createUdcResponse = mColliAccettazioneRESTConsumer.synchronousCreateUDC(new CreateUDCRequestDTO()
|
this.mCurrentMtbColt = createdUdc;
|
||||||
.setCodAnag(mDefaultCodAnagOfLU)
|
|
||||||
.setCodMdep(mDefaultCodMdepOfLU)
|
|
||||||
.setNumCollo(customNumCollo)
|
|
||||||
.setSerCollo(customSerCollo)
|
|
||||||
.setReso(true));
|
|
||||||
|
|
||||||
this.mCurrentMtbColt = createUdcResponse.getMtbColt();
|
} else if (mTipologiaReso == Tipologia.ACQUISTO) {
|
||||||
this.sendLUOpened(createUdcResponse.getMtbColt());
|
var createdUds = mColliSpedizioneRESTConsumer.createUDSSynchronized(new CreateUDSRequestDTO()
|
||||||
|
.setCodAnag(mDefaultCodAnagOfLU)
|
||||||
|
.setCodMdep(mDefaultCodMdepOfLU)
|
||||||
|
.setNumCollo(customNumCollo)
|
||||||
|
.setSerCollo(customSerCollo)
|
||||||
|
.setReso(true));
|
||||||
|
|
||||||
|
this.mCurrentMtbColt = createdUds;
|
||||||
|
|
||||||
|
} else
|
||||||
|
throw new UnsupportedOperationException("Tipologia di reso non supportata: " + mTipologiaReso);
|
||||||
|
|
||||||
|
this.sendLUOpened(this.mCurrentMtbColt);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -222,11 +228,6 @@ public class PickingResiViewModel {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void singlePrint(MtbColt mtbColtToPrint) {
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
private void postCloseOperations(MtbColt mtbColt) {
|
private void postCloseOperations(MtbColt mtbColt) {
|
||||||
this.mColliRegistrati.add(mtbColt);
|
this.mColliRegistrati.add(mtbColt);
|
||||||
|
|
||||||
@@ -414,7 +415,7 @@ public class PickingResiViewModel {
|
|||||||
|
|
||||||
List<WithdrawableDtbDocr> pickingList = mPickingList.getValue();
|
List<WithdrawableDtbDocr> pickingList = mPickingList.getValue();
|
||||||
|
|
||||||
Stream.of(pickingList)
|
pickingList.stream()
|
||||||
.filter(x -> x != matchedItem)
|
.filter(x -> x != matchedItem)
|
||||||
.forEach(x -> x.setHidden(true));
|
.forEach(x -> x.setHidden(true));
|
||||||
|
|
||||||
@@ -524,18 +525,36 @@ public class PickingResiViewModel {
|
|||||||
public void saveNewRow(WithdrawableDtbDocr withdrawableDtbDocr, MtbColt refMtbColt, BigDecimal numCnf, BigDecimal qtaCnf, BigDecimal qtaTot, String partitaMag, LocalDate dataScad, boolean shouldCloseLU) throws Exception {
|
public void saveNewRow(WithdrawableDtbDocr withdrawableDtbDocr, MtbColt refMtbColt, BigDecimal numCnf, BigDecimal qtaCnf, BigDecimal qtaTot, String partitaMag, LocalDate dataScad, boolean shouldCloseLU) throws Exception {
|
||||||
this.sendOnLoadingStarted();
|
this.sendOnLoadingStarted();
|
||||||
|
|
||||||
InsertUDCRowRequestDTO insertUDCRowRequestDTO = new InsertUDCRowRequestDTO()
|
InsertUDCRowRequestDTO insertUDCRowRequestDTO = null;
|
||||||
.setTargetMtbColt(mCurrentMtbColt)
|
InsertUDSRowRequestDTO insertUDSRowRequestDTO = null;
|
||||||
.setCodMart(withdrawableDtbDocr.getMtbAart().getCodMart())
|
|
||||||
.setPartitaMag(partitaMag)
|
|
||||||
.setDataScad(dataScad)
|
|
||||||
.setQtaTot(qtaTot)
|
|
||||||
.setQtaCnf(qtaCnf)
|
|
||||||
.setNumCnf(numCnf)
|
|
||||||
.setDescrizione(withdrawableDtbDocr.getMtbAart().getDescrizioneEstesa())
|
|
||||||
|
|
||||||
.setDocumentReso(withdrawableDtbDocr.getKey());
|
if (mTipologiaReso == Tipologia.VENDITA) {
|
||||||
|
insertUDCRowRequestDTO = new InsertUDCRowRequestDTO()
|
||||||
|
.setTargetMtbColt(mCurrentMtbColt)
|
||||||
|
.setCodMart(withdrawableDtbDocr.getMtbAart().getCodMart())
|
||||||
|
.setPartitaMag(partitaMag)
|
||||||
|
.setDataScad(dataScad)
|
||||||
|
.setQtaTot(qtaTot)
|
||||||
|
.setQtaCnf(qtaCnf)
|
||||||
|
.setNumCnf(numCnf)
|
||||||
|
.setDescrizione(withdrawableDtbDocr.getMtbAart().getDescrizioneEstesa())
|
||||||
|
|
||||||
|
.setDocumentReso(withdrawableDtbDocr.getKey());
|
||||||
|
|
||||||
|
} else if (mTipologiaReso == Tipologia.ACQUISTO) {
|
||||||
|
insertUDSRowRequestDTO = new InsertUDSRowRequestDTO()
|
||||||
|
.setTargetMtbColt(mCurrentMtbColt)
|
||||||
|
.setCodMart(withdrawableDtbDocr.getMtbAart().getCodMart())
|
||||||
|
.setPartitaMag(partitaMag)
|
||||||
|
.setDataScad(dataScad)
|
||||||
|
.setQtaTot(qtaTot)
|
||||||
|
.setQtaCnf(qtaCnf)
|
||||||
|
.setNumCnf(numCnf)
|
||||||
|
|
||||||
|
.setDocumentReso(withdrawableDtbDocr.getKey());
|
||||||
|
|
||||||
|
} else
|
||||||
|
throw new UnsupportedOperationException("Tipologia di reso non supportata: " + mTipologiaReso);
|
||||||
|
|
||||||
//TODO: Al posto di prelevare la prima riga bisognerebbe controllare se c'è ne una che corrisponde con la partita richiesta
|
//TODO: Al posto di prelevare la prima riga bisognerebbe controllare se c'è ne una che corrisponde con la partita richiesta
|
||||||
MtbColr mtbColrToDispatch = withdrawableDtbDocr.getTempPickData() != null &&
|
MtbColr mtbColrToDispatch = withdrawableDtbDocr.getTempPickData() != null &&
|
||||||
@@ -552,25 +571,11 @@ public class PickingResiViewModel {
|
|||||||
mCurrentMtbColt.setCodTcol(newCodTcol);
|
mCurrentMtbColt.setCodTcol(newCodTcol);
|
||||||
}
|
}
|
||||||
|
|
||||||
// insertUDCRowRequestDTO
|
if (mTipologiaReso == Tipologia.ACQUISTO) {
|
||||||
// .setCodJcom(UtilityString.empty2null(mtbColrToDispatch.getCodJcom()))
|
insertUDSRowRequestDTO
|
||||||
// .setSerColloRif(UtilityString.empty2null(mtbColrToDispatch.getSerCollo()))
|
.setSourceMtbColr(mtbColrToDispatch);
|
||||||
// .setNumColloRif(mtbColrToDispatch.getNumCollo())
|
|
||||||
// .setGestioneRif(UtilityString.empty2null(mtbColrToDispatch.getGestione()))
|
|
||||||
// .setDataColloRif(UtilityString.empty2null(mtbColrToDispatch.getDataColloS()));
|
|
||||||
|
|
||||||
|
|
||||||
if (mtbColrToDispatch.getPesoNettoKg() != null) {
|
|
||||||
//Proporzione
|
|
||||||
BigDecimal pesoNettoKg = UtilityBigDecimal.divide(UtilityBigDecimal.multiply(qtaTot, mtbColrToDispatch.getPesoNettoKg()), mtbColrToDispatch.getQtaCol());
|
|
||||||
insertUDCRowRequestDTO.setPesoNettoKg(pesoNettoKg);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mtbColrToDispatch.getPesoLordoKg() != null) {
|
|
||||||
//Proporzione
|
|
||||||
BigDecimal pesoLordoKg = UtilityBigDecimal.divide(UtilityBigDecimal.multiply(qtaTot, mtbColrToDispatch.getPesoLordoKg()), mtbColrToDispatch.getQtaCol());
|
|
||||||
insertUDCRowRequestDTO.setPesoLordoKg(pesoLordoKg);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -589,7 +594,15 @@ public class PickingResiViewModel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
boolean finalShouldPrint = shouldPrint;
|
boolean finalShouldPrint = shouldPrint;
|
||||||
MtbColr insertedULRow = this.mColliAccettazioneRESTConsumer.synchronousInsertUDCRow(insertUDCRowRequestDTO);
|
MtbColr insertedULRow;
|
||||||
|
|
||||||
|
if(mTipologiaReso == Tipologia.VENDITA) {
|
||||||
|
insertedULRow = this.mColliAccettazioneRESTConsumer.synchronousInsertUDCRow(insertUDCRowRequestDTO);
|
||||||
|
} else if (mTipologiaReso == Tipologia.ACQUISTO) {
|
||||||
|
insertedULRow = this.mColliSpedizioneRESTConsumer.insertUDSRowSynchronized(insertUDSRowRequestDTO);
|
||||||
|
} else {
|
||||||
|
throw new UnsupportedOperationException("Tipologia di reso non supportata: " + mTipologiaReso);
|
||||||
|
}
|
||||||
|
|
||||||
insertedULRow
|
insertedULRow
|
||||||
.setUntMis(withdrawableDtbDocr.getMtbAart().getUntMis())
|
.setUntMis(withdrawableDtbDocr.getMtbAart().getUntMis())
|
||||||
@@ -602,6 +615,7 @@ public class PickingResiViewModel {
|
|||||||
|
|
||||||
this.mPickingList.postValue(this.mPickingList.getValue());
|
this.mPickingList.postValue(this.mPickingList.getValue());
|
||||||
|
|
||||||
|
this.resetMatchedRows();
|
||||||
this.sendOnRowSaved();
|
this.sendOnRowSaved();
|
||||||
this.sendOnLoadingEnded();
|
this.sendOnLoadingEnded();
|
||||||
|
|
||||||
@@ -610,15 +624,29 @@ public class PickingResiViewModel {
|
|||||||
|
|
||||||
private void saveEditedRow(MtbColr mtbColrToUpdate, BigDecimal numCnf, BigDecimal qtaCnf, BigDecimal qtaTot, String partitaMag, LocalDate dataScad, boolean shouldCloseLU) throws Exception {
|
private void saveEditedRow(MtbColr mtbColrToUpdate, BigDecimal numCnf, BigDecimal qtaCnf, BigDecimal qtaTot, String partitaMag, LocalDate dataScad, boolean shouldCloseLU) throws Exception {
|
||||||
|
|
||||||
EditUDCRowRequestDTO editUDCRowRequest = new EditUDCRowRequestDTO()
|
MtbColr updatedMtbColr;
|
||||||
.setSourceMtbColr(mtbColrToUpdate)
|
|
||||||
.setNewNumCnf(numCnf)
|
|
||||||
.setNewQtaCnf(qtaCnf)
|
|
||||||
.setNewQtaTot(qtaTot)
|
|
||||||
.setNewPartitaMag(partitaMag)
|
|
||||||
.setNewDataScad(dataScad);
|
|
||||||
|
|
||||||
MtbColr updatedMtbColr = this.mColliAccettazioneRESTConsumer.synchronousEditUDCRow(editUDCRowRequest);
|
if (mTipologiaReso == Tipologia.VENDITA) {
|
||||||
|
EditUDCRowRequestDTO editUDCRowRequest = new EditUDCRowRequestDTO()
|
||||||
|
.setSourceMtbColr(mtbColrToUpdate)
|
||||||
|
.setNewNumCnf(numCnf)
|
||||||
|
.setNewQtaCnf(qtaCnf)
|
||||||
|
.setNewQtaTot(qtaTot)
|
||||||
|
.setNewPartitaMag(partitaMag)
|
||||||
|
.setNewDataScad(dataScad);
|
||||||
|
|
||||||
|
updatedMtbColr = this.mColliAccettazioneRESTConsumer.synchronousEditUDCRow(editUDCRowRequest);
|
||||||
|
} else if (mTipologiaReso == Tipologia.ACQUISTO) {
|
||||||
|
EditUDSRowRequestDTO editUDSRowRequest = new EditUDSRowRequestDTO()
|
||||||
|
.setSourceMtbColr(mtbColrToUpdate)
|
||||||
|
.setNewNumCnf(numCnf)
|
||||||
|
.setNewQtaCnf(qtaCnf)
|
||||||
|
.setNewQtaTot(qtaTot);
|
||||||
|
|
||||||
|
updatedMtbColr = this.mColliSpedizioneRESTConsumer.editUDSRowSynchronized(editUDSRowRequest);
|
||||||
|
} else {
|
||||||
|
throw new UnsupportedOperationException("Tipologia di reso non supportata: " + mTipologiaReso);
|
||||||
|
}
|
||||||
|
|
||||||
updatedMtbColr
|
updatedMtbColr
|
||||||
.setUntMis(mtbColrToUpdate.getUntMis())
|
.setUntMis(mtbColrToUpdate.getUntMis())
|
||||||
@@ -647,10 +675,16 @@ public class PickingResiViewModel {
|
|||||||
var canDelete = this.sendMtbColrDeleteRequest();
|
var canDelete = this.sendMtbColrDeleteRequest();
|
||||||
|
|
||||||
if (canDelete) {
|
if (canDelete) {
|
||||||
DeleteUDCRowRequestDTO deleteUDCRowRequest = new DeleteUDCRowRequestDTO()
|
if (mTipologiaReso == Tipologia.VENDITA) {
|
||||||
.setMtbColrToDelete(mtbColrToDelete);
|
this.mColliAccettazioneRESTConsumer.synchronousDeleteUDCRow(new DeleteUDCRowRequestDTO()
|
||||||
|
.setMtbColrToDelete(mtbColrToDelete));
|
||||||
|
|
||||||
this.mColliAccettazioneRESTConsumer.synchronousDeleteUDCRow(deleteUDCRowRequest);
|
} else if (mTipologiaReso == Tipologia.ACQUISTO) {
|
||||||
|
this.mColliSpedizioneRESTConsumer.deleteUDSRowSynchronized(new DeleteUDSRowRequestDTO()
|
||||||
|
.setMtbColrToDelete(mtbColrToDelete));
|
||||||
|
|
||||||
|
} else
|
||||||
|
throw new UnsupportedOperationException("Tipologia di reso non supportata: " + mTipologiaReso);
|
||||||
|
|
||||||
|
|
||||||
Optional<WithdrawableDtbDocr> pickingObjectDTO = this.mPickingList.getValue().stream()
|
Optional<WithdrawableDtbDocr> pickingObjectDTO = this.mPickingList.getValue().stream()
|
||||||
@@ -840,4 +874,26 @@ public class PickingResiViewModel {
|
|||||||
void onFilterRemoved();
|
void onFilterRemoved();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public enum Tipologia {
|
||||||
|
ACQUISTO((short) -1),
|
||||||
|
VENDITA((short) +1);
|
||||||
|
|
||||||
|
private final short value;
|
||||||
|
|
||||||
|
Tipologia(short value) {
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public short getValue() {
|
||||||
|
return this.value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Tipologia fromShort(short value) {
|
||||||
|
for (Tipologia b : Tipologia.values()) {
|
||||||
|
if (b.value == value) return b;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -41,6 +41,7 @@ import it.integry.integrywmsnative.databinding.FragmentMainUltimeConsegneCliente
|
|||||||
import it.integry.integrywmsnative.databinding.FragmentMainUltimeConsegneClienteListHeaderBinding;
|
import it.integry.integrywmsnative.databinding.FragmentMainUltimeConsegneClienteListHeaderBinding;
|
||||||
import it.integry.integrywmsnative.databinding.FragmentMainUltimeConsegneClienteListSingleItemBinding;
|
import it.integry.integrywmsnative.databinding.FragmentMainUltimeConsegneClienteListSingleItemBinding;
|
||||||
import it.integry.integrywmsnative.gest.picking_resi.PickingResiActivity;
|
import it.integry.integrywmsnative.gest.picking_resi.PickingResiActivity;
|
||||||
|
import it.integry.integrywmsnative.gest.picking_resi.PickingResiViewModel;
|
||||||
import it.integry.integrywmsnative.gest.ultime_consegne_cliente.dialog.DialogUltimeConsegneFiltroAvanzatoView;
|
import it.integry.integrywmsnative.gest.ultime_consegne_cliente.dialog.DialogUltimeConsegneFiltroAvanzatoView;
|
||||||
import it.integry.integrywmsnative.ui.ElevatedToolbar;
|
import it.integry.integrywmsnative.ui.ElevatedToolbar;
|
||||||
import kotlin.Unit;
|
import kotlin.Unit;
|
||||||
@@ -296,7 +297,10 @@ public class UltimeConsegneClienteFragment extends BaseFragment implements Ultim
|
|||||||
private void dispatchConsegne() {
|
private void dispatchConsegne() {
|
||||||
List<DocumentoResoDTO> selectedConsegne = getSelectedItems();
|
List<DocumentoResoDTO> selectedConsegne = getSelectedItems();
|
||||||
|
|
||||||
PickingResiActivity.startActivity(getActivity(), getActivity().getText(R.string.ultime_consegne_cliente_title).toString(), selectedConsegne, +1);
|
PickingResiActivity.startActivity(getActivity(),
|
||||||
|
requireActivity().getText(R.string.ultime_consegne_cliente_title).toString(),
|
||||||
|
selectedConsegne,
|
||||||
|
PickingResiViewModel.Tipologia.VENDITA);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void removeBarcodeFilter() {
|
public void removeBarcodeFilter() {
|
||||||
|
|||||||
@@ -44,6 +44,7 @@ import it.integry.integrywmsnative.databinding.FragmentUltimiArriviFornitoreBind
|
|||||||
import it.integry.integrywmsnative.databinding.FragmentUltimiArriviFornitoreListHeaderBinding;
|
import it.integry.integrywmsnative.databinding.FragmentUltimiArriviFornitoreListHeaderBinding;
|
||||||
import it.integry.integrywmsnative.databinding.FragmentUltimiArriviFornitoreListSingleItemBinding;
|
import it.integry.integrywmsnative.databinding.FragmentUltimiArriviFornitoreListSingleItemBinding;
|
||||||
import it.integry.integrywmsnative.gest.picking_resi.PickingResiActivity;
|
import it.integry.integrywmsnative.gest.picking_resi.PickingResiActivity;
|
||||||
|
import it.integry.integrywmsnative.gest.picking_resi.PickingResiViewModel;
|
||||||
import it.integry.integrywmsnative.gest.ultime_consegne_cliente.dialog.DialogUltimeConsegneFiltroAvanzatoView;
|
import it.integry.integrywmsnative.gest.ultime_consegne_cliente.dialog.DialogUltimeConsegneFiltroAvanzatoView;
|
||||||
import it.integry.integrywmsnative.ui.ElevatedToolbar;
|
import it.integry.integrywmsnative.ui.ElevatedToolbar;
|
||||||
import it.integry.integrywmsnative.view.dialogs.choose_arts_from_mtbcolr_list.DialogChooseArtsFromMtbColrListView;
|
import it.integry.integrywmsnative.view.dialogs.choose_arts_from_mtbcolr_list.DialogChooseArtsFromMtbColrListView;
|
||||||
@@ -300,7 +301,10 @@ public class UltimiArriviFornitoreFragment extends BaseFragment implements ITitl
|
|||||||
private void dispatchArrivi() {
|
private void dispatchArrivi() {
|
||||||
List<DocumentoResoDTO> selectedConsegne = getSelectedItems();
|
List<DocumentoResoDTO> selectedConsegne = getSelectedItems();
|
||||||
|
|
||||||
PickingResiActivity.startActivity(getActivity(), requireActivity().getText(R.string.ultime_arrivi_fornitore_title).toString(), selectedConsegne, -1);
|
PickingResiActivity.startActivity(getActivity(),
|
||||||
|
requireActivity().getText(R.string.ultime_arrivi_fornitore_title).toString(),
|
||||||
|
selectedConsegne,
|
||||||
|
PickingResiViewModel.Tipologia.ACQUISTO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -65,7 +65,7 @@ public class DialogScanOrCreateLUViewModel {
|
|||||||
.setCodMdep(SettingsManager.i().getUserSession().getDepo().getCodMdep());
|
.setCodMdep(SettingsManager.i().getUserSession().getDepo().getCodMdep());
|
||||||
|
|
||||||
var createResponse = this.mColliLavorazioneRESTConsumer.synchronousCreateUDC(createUdcRequest);
|
var createResponse = this.mColliLavorazioneRESTConsumer.synchronousCreateUDC(createUdcRequest);
|
||||||
this.sendOnLUOpened(createResponse.getMtbColt(), true);
|
this.sendOnLUOpened(createResponse, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void processBarcodeDTO(BarcodeScanDTO barcodeScanDTO, Runnable onComplete) {
|
public void processBarcodeDTO(BarcodeScanDTO barcodeScanDTO, Runnable onComplete) {
|
||||||
|
|||||||
Reference in New Issue
Block a user