Merge branch 'develop' into feature/Refactoring_Spedizione
# Conflicts: # app/build.gradle # app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/viewmodel/RettificaGiacenzeViewModel.java # app/src/main/java/it/integry/integrywmsnative/view/dialogs/scan_or_create_lu/DialogScanOrCreateLU.java
This commit is contained in:
commit
ebb525da02
@ -88,14 +88,14 @@ dependencies {
|
||||
})
|
||||
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
|
||||
implementation 'com.orhanobut:logger:2.2.0'
|
||||
implementation 'com.google.firebase:firebase-core:17.3.0'
|
||||
implementation 'com.google.firebase:firebase-core:17.4.1'
|
||||
implementation 'com.google.firebase:firebase-crash:16.2.1'
|
||||
implementation 'com.google.firebase:firebase-perf:19.0.6'
|
||||
implementation 'com.google.firebase:firebase-crashlytics:17.0.0-beta04'
|
||||
implementation 'com.google.firebase:firebase-perf:19.0.7'
|
||||
implementation 'com.google.firebase:firebase-crashlytics:17.0.0'
|
||||
implementation 'androidx.appcompat:appcompat:1.1.0'
|
||||
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
|
||||
implementation 'com.google.android.material:material:1.1.0'
|
||||
implementation 'androidx.constraintlayout:constraintlayout:2.0.0-beta4'
|
||||
implementation 'androidx.constraintlayout:constraintlayout:2.0.0-beta6'
|
||||
implementation 'androidx.cardview:cardview:1.0.0'
|
||||
implementation 'androidx.recyclerview:recyclerview:1.1.0'
|
||||
implementation 'androidx.preference:preference:1.1.1'
|
||||
@ -131,7 +131,7 @@ dependencies {
|
||||
implementation 'com.github.pedromassango:doubleClick:3.0'
|
||||
|
||||
//SQLite ROOM
|
||||
def room_version = "2.2.4"
|
||||
def room_version = "2.2.5"
|
||||
|
||||
implementation "androidx.room:room-runtime:$room_version"
|
||||
annotationProcessor "androidx.room:room-compiler:$room_version"
|
||||
|
||||
@ -11,6 +11,7 @@ import com.google.gson.JsonObject;
|
||||
import com.google.gson.reflect.TypeToken;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import java.lang.reflect.Type;
|
||||
import java.text.SimpleDateFormat;
|
||||
@ -32,6 +33,7 @@ import it.integry.integrywmsnative.core.model.MtbDepoPosizione;
|
||||
import it.integry.integrywmsnative.core.model.secondary.GestioneEnum;
|
||||
import it.integry.integrywmsnative.core.rest.RESTBuilder;
|
||||
import it.integry.integrywmsnative.core.rest.model.DistribuzioneColloDTO;
|
||||
import it.integry.integrywmsnative.core.rest.model.RettificaULDTO;
|
||||
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
|
||||
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityBarcode;
|
||||
@ -254,6 +256,7 @@ public class ColliMagazzinoRESTConsumer extends _BaseRESTConsumer {
|
||||
.setPartitaMag(original.getPartitaMag())
|
||||
.setOperation(CommonModelConsts.OPERATION.INSERT);
|
||||
for (OrdineLavorazioneDTO ordLav : ordini) {
|
||||
if (ordLav.getQtaColVersamento().getBigDecimal().compareTo(BigDecimal.ZERO) > 0){
|
||||
MtbColr ordColr = (MtbColr) mtbColrClone.clone();
|
||||
ordColr.setQtaCol(ordLav.getQtaColVersamento().getBigDecimal());
|
||||
ordColr.setNumCnf(ordLav.getNumCnfVersamento().getBigDecimal());
|
||||
@ -261,6 +264,7 @@ public class ColliMagazzinoRESTConsumer extends _BaseRESTConsumer {
|
||||
.setNumOrd(ordLav.getNumOrdProd())
|
||||
.setRigaOrd(ordLav.getRigaOrdProd());
|
||||
newMtbColt.getMtbColr().add(ordColr);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@ -665,4 +669,38 @@ public class ColliMagazzinoRESTConsumer extends _BaseRESTConsumer {
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public static void creaRettificaCollo(MtbColr sourceMtbColrOriginal, BigDecimal newNumCnf, BigDecimal newQtaTot, Runnable onComplete, RunnableArgs<Exception> onFailed) {
|
||||
MtbColr sourceMtbColr = (MtbColr) sourceMtbColrOriginal.clone();
|
||||
sourceMtbColr.setRifPartitaMag(null);
|
||||
sourceMtbColr.setMtbAart(null);
|
||||
|
||||
RettificaULDTO rettificaULDTO = new RettificaULDTO()
|
||||
.setSourceMtbColr(sourceMtbColr)
|
||||
.setNewNumCnf(newNumCnf)
|
||||
.setNewQtaCol(newQtaTot);
|
||||
|
||||
ColliMagazzinoRESTConsumerService colliMagazzinoRESTConsumerService = RESTBuilder.getService(ColliMagazzinoRESTConsumerService.class);
|
||||
colliMagazzinoRESTConsumerService.creaRettificaCollo(
|
||||
SettingsManager.i().getUserSession().getDepo().getCodMdep(),
|
||||
rettificaULDTO
|
||||
).enqueue(new Callback<ServiceRESTResponse<JsonObject>>() {
|
||||
@Override
|
||||
public void onResponse(Call<ServiceRESTResponse<JsonObject>> call, Response<ServiceRESTResponse<JsonObject>> response) {
|
||||
analyzeAnswer(response, "GetBySSCC", data -> {
|
||||
onComplete.run();
|
||||
}, onFailed);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Call<ServiceRESTResponse<JsonObject>> call, Throwable t) {
|
||||
if(onFailed != null) onFailed.run(new Exception(t));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -5,6 +5,7 @@ import com.google.gson.JsonObject;
|
||||
import java.util.List;
|
||||
|
||||
import it.integry.integrywmsnative.core.rest.model.DistribuzioneColloDTO;
|
||||
import it.integry.integrywmsnative.core.rest.model.RettificaULDTO;
|
||||
import it.integry.integrywmsnative.core.rest.model.ServiceRESTResponse;
|
||||
import it.integry.integrywmsnative.core.model.MtbColt;
|
||||
import retrofit2.Call;
|
||||
@ -24,4 +25,7 @@ public interface ColliMagazzinoRESTConsumerService {
|
||||
@GET("getColliInBasket")
|
||||
Call<ServiceRESTResponse<List<MtbColt>>> getColliInBasket(@Query("codMdep") String codMdep);
|
||||
|
||||
@POST("creaRettificaCollo")
|
||||
Call<ServiceRESTResponse<JsonObject>> creaRettificaCollo(@Query("codMdep") String codMdep, @Body RettificaULDTO rettificaULDTO);
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,39 @@
|
||||
package it.integry.integrywmsnative.core.rest.model;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
import it.integry.integrywmsnative.core.model.MtbColr;
|
||||
|
||||
public class RettificaULDTO {
|
||||
|
||||
private MtbColr sourceMtbColr;
|
||||
private BigDecimal newNumCnf;
|
||||
private BigDecimal newQtaCol;
|
||||
|
||||
public MtbColr getSourceMtbColr() {
|
||||
return sourceMtbColr;
|
||||
}
|
||||
|
||||
public RettificaULDTO setSourceMtbColr(MtbColr sourceMtbColr) {
|
||||
this.sourceMtbColr = sourceMtbColr;
|
||||
return this;
|
||||
}
|
||||
|
||||
public BigDecimal getNewNumCnf() {
|
||||
return newNumCnf;
|
||||
}
|
||||
|
||||
public RettificaULDTO setNewNumCnf(BigDecimal newNumCnf) {
|
||||
this.newNumCnf = newNumCnf;
|
||||
return this;
|
||||
}
|
||||
|
||||
public BigDecimal getNewQtaCol() {
|
||||
return newQtaCol;
|
||||
}
|
||||
|
||||
public RettificaULDTO setNewQtaCol(BigDecimal newQtaCol) {
|
||||
this.newQtaCol = newQtaCol;
|
||||
return this;
|
||||
}
|
||||
}
|
||||
@ -22,6 +22,7 @@ import it.integry.integrywmsnative.R;
|
||||
import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO;
|
||||
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableArgss;
|
||||
import it.integry.integrywmsnative.core.model.CommonModelConsts;
|
||||
import it.integry.integrywmsnative.core.model.MtbColr;
|
||||
import it.integry.integrywmsnative.core.model.MtbColt;
|
||||
@ -223,7 +224,7 @@ public class ProdRecuperoMaterialeViewModel {
|
||||
mtbColtScarico.setOperation(CommonModelConsts.OPERATION.INSERT_OR_UPDATE);
|
||||
|
||||
|
||||
RunnableArgs<MtbColt> saveRunnable = mtbColt -> {
|
||||
RunnableArgss<MtbColt, Boolean> saveRunnable = (mtbColt, createdLU) -> {
|
||||
|
||||
if(mtbColt != null) {
|
||||
|
||||
@ -286,7 +287,7 @@ public class ProdRecuperoMaterialeViewModel {
|
||||
}
|
||||
};
|
||||
|
||||
if(sourceMtbColt != null) saveRunnable.run(sourceMtbColt);
|
||||
if(sourceMtbColt != null) saveRunnable.run(sourceMtbColt, false);
|
||||
else DialogScanOrCreateLU.make(mContext, true, false, saveRunnable).show();
|
||||
|
||||
}
|
||||
|
||||
@ -86,7 +86,7 @@ public class ProdVersamentoMaterialViewModel {
|
||||
|
||||
|
||||
public void openLU() {
|
||||
DialogScanOrCreateLU.make(mContext, false, false, true, false, mtbColt -> {
|
||||
DialogScanOrCreateLU.make(mContext, false, false, true, false, (mtbColt, created) -> {
|
||||
if (mtbColt == null) {
|
||||
((IPoppableActivity) mContext).pop();
|
||||
} else if ((mtbColt.getGestioneEnum() == GestioneEnum.ACQUISTO || mtbColt.getGestioneEnum() == GestioneEnum.LAVORAZIONE || mtbColt.getGestioneEnum() == GestioneEnum.VENDITA) && mtbColt.getSegno().equals(+1)) {
|
||||
|
||||
@ -85,6 +85,8 @@ public class RettificaGiacenzeViewModel implements IRecyclerItemClicked<MtbColr>
|
||||
public BindableBoolean isFabVisible = new BindableBoolean();
|
||||
public BindableBoolean isMtbColtLoaded = new BindableBoolean();
|
||||
|
||||
private boolean isCreatedLU = true;
|
||||
|
||||
|
||||
public void init(Activity context, FragmentMainRettificaGiacenzeBinding binding, RettificaGiacenzeHelper helper) {
|
||||
mContext = context;
|
||||
@ -92,8 +94,9 @@ public class RettificaGiacenzeViewModel implements IRecyclerItemClicked<MtbColr>
|
||||
mHelper = helper;
|
||||
}
|
||||
|
||||
public void setMtbColt(MtbColt mtbColt) {
|
||||
public void setMtbColt(MtbColt mtbColt, boolean isCreated) {
|
||||
this.mtbColt.set(mtbColt);
|
||||
this.isCreatedLU = isCreated;
|
||||
|
||||
isFabVisible.set(mtbColt != null);
|
||||
isMtbColtLoaded.set(mtbColt != null);
|
||||
@ -419,21 +422,50 @@ public class RettificaGiacenzeViewModel implements IRecyclerItemClicked<MtbColr>
|
||||
.setCodMart(mtbAart.getCodMart())
|
||||
.setPartitaMag(quantityDTO.batchLot.get())
|
||||
.setDataScadPartita(quantityDTO.expireDate)
|
||||
.setQtaCol(quantityDTO.qtaTot.getBigDecimal())
|
||||
.setNumCnf(quantityDTO.numCnf.getBigDecimal())
|
||||
.setDescrizione(mtbAart.getDescrizioneEstesa())
|
||||
.setCausale(MtbColr.Causale.RETTIFICA)
|
||||
.setUtente(SettingsManager.i().user.fullname);
|
||||
|
||||
mtbColr.setOperation(CommonModelConsts.OPERATION.INSERT_OR_UPDATE);
|
||||
|
||||
if (!isCreatedLU) {
|
||||
mtbColr
|
||||
.setQtaCol(BigDecimal.ZERO)
|
||||
.setNumCnf(BigDecimal.ZERO)
|
||||
.setDataCollo(mtbColt.get().getDataColloS())
|
||||
.setNumCollo(mtbColt.get().getNumCollo())
|
||||
.setGestione(mtbColt.get().getGestione())
|
||||
.setSerCollo(mtbColt.get().getSerCollo());
|
||||
|
||||
ColliMagazzinoRESTConsumer.creaRettificaCollo(mtbColr,
|
||||
quantityDTO.numCnf.getBigDecimal(),
|
||||
quantityDTO.qtaTot.getBigDecimal(),
|
||||
() -> {
|
||||
mtbColr.setUntMis(mtbAart.getUntMis())
|
||||
.setMtbAart(mtbAart);
|
||||
|
||||
mtbColt.get().getMtbColr().add(mtbColr);
|
||||
FBToast.successToast(mContext, mContext.getResources().getString(R.string.data_saved), FBToast.LENGTH_SHORT);
|
||||
|
||||
resetTexts();
|
||||
progress.dismiss();
|
||||
}, ex -> {
|
||||
UtilityExceptions.defaultException(mContext, ex, progress);
|
||||
});
|
||||
} else {
|
||||
mtbColr
|
||||
.setQtaCol(quantityDTO.qtaTot.getBigDecimal())
|
||||
.setNumCnf(quantityDTO.numCnf.getBigDecimal());
|
||||
|
||||
MtbColt cloneMtbColt = (MtbColt) mtbColt.get().clone();
|
||||
cloneMtbColt.setOperation(CommonModelConsts.OPERATION.NO_OP);
|
||||
|
||||
MtbColt cloneMtbColt = (MtbColt) mtbColt.get().clone();
|
||||
cloneMtbColt.setOperation(CommonModelConsts.OPERATION.NO_OP);
|
||||
|
||||
cloneMtbColt.setMtbColr(new ObservableArrayList());
|
||||
cloneMtbColt.getMtbColr().add(mtbColr);
|
||||
|
||||
ColliMagazzinoRESTConsumer.saveColloStatic(cloneMtbColt, new ISimpleOperationCallback<MtbColt>() {
|
||||
ColliMagazzinoRESTConsumer.saveCollo(cloneMtbColt, new ISimpleOperationCallback<MtbColt>() {
|
||||
@Override
|
||||
public void onSuccess(MtbColt value) {
|
||||
|
||||
@ -459,6 +491,7 @@ public class RettificaGiacenzeViewModel implements IRecyclerItemClicked<MtbColr>
|
||||
UtilityExceptions.defaultException(mContext, ex, progress);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -479,11 +512,11 @@ public class RettificaGiacenzeViewModel implements IRecyclerItemClicked<MtbColr>
|
||||
}
|
||||
|
||||
public void openLU() {
|
||||
DialogScanOrCreateLU.make(mContext, true, false, mtbColt -> {
|
||||
DialogScanOrCreateLU.make(mContext, true, false, (mtbColt, created) -> {
|
||||
if (mtbColt == null) {
|
||||
((IPoppableActivity) mContext).pop();
|
||||
} else {
|
||||
setMtbColt(mtbColt);
|
||||
setMtbColt(mtbColt, created);
|
||||
}
|
||||
}).show();
|
||||
}
|
||||
@ -615,22 +648,47 @@ public class RettificaGiacenzeViewModel implements IRecyclerItemClicked<MtbColr>
|
||||
|
||||
DialogInputQuantity.makeBase(mContext, dto, true, value -> {
|
||||
|
||||
BigDecimal qtaCol = value.qtaTot.getBigDecimal().subtract(mtbColrToEditClone.getQtaCol());
|
||||
BigDecimal newQtaCol = value.qtaTot.getBigDecimal(); //.subtract(mtbColrToEditClone.getQtaCol());
|
||||
BigDecimal newNumCnf = value.numCnf.getBigDecimal(); //.subtract(mtbColrToEditClone.getNumCnf());
|
||||
|
||||
if (qtaCol.compareTo(BigDecimal.ZERO) != 0) {
|
||||
if (newQtaCol.compareTo(BigDecimal.ZERO) != 0) {
|
||||
if (newNumCnf.compareTo(BigDecimal.ZERO) == 0 && newQtaCol.compareTo(BigDecimal.ZERO) > 0)
|
||||
newNumCnf = BigDecimal.ONE;
|
||||
else if (newNumCnf.compareTo(BigDecimal.ZERO) == 0 && newQtaCol.compareTo(BigDecimal.ZERO) < 0)
|
||||
newNumCnf = new BigDecimal(-1);
|
||||
|
||||
BigDecimal numCnf = value.numCnf.getBigDecimal().subtract(mtbColrToEditClone.getNumCnf());
|
||||
Dialog progressDialog = UtilityProgress.createDefaultProgressDialog(mContext);
|
||||
|
||||
if (numCnf.compareTo(BigDecimal.ZERO) == 0 && qtaCol.compareTo(BigDecimal.ZERO) > 0)
|
||||
numCnf = BigDecimal.ONE;
|
||||
else if (numCnf.compareTo(BigDecimal.ZERO) == 0 && qtaCol.compareTo(BigDecimal.ZERO) < 0)
|
||||
numCnf = new BigDecimal(-1);
|
||||
mtbColrToEditClone
|
||||
.setRiga(null);
|
||||
|
||||
|
||||
if (!isCreatedLU) {
|
||||
BigDecimal finalNewNumCnf = newNumCnf;
|
||||
ColliMagazzinoRESTConsumer.creaRettificaCollo(
|
||||
mtbColrToEditClone,
|
||||
newNumCnf,
|
||||
newQtaCol,
|
||||
() -> {
|
||||
progressDialog.dismiss();
|
||||
mtbColt.get().getMtbColr().remove(index);
|
||||
|
||||
mtbColrToEditClone
|
||||
.setQtaCol(newQtaCol)
|
||||
.setNumCnf(finalNewNumCnf)
|
||||
.setMtbAart(mtbColrToEdit.getMtbAart())
|
||||
.setOperation(CommonModelConsts.OPERATION.NO_OP);
|
||||
|
||||
mtbColt.get().getMtbColr().add(index, mtbColrToEditClone);
|
||||
}, ex -> UtilityExceptions.defaultException(mContext, ex, progressDialog)
|
||||
);
|
||||
} else {
|
||||
|
||||
mtbColrToEditClone
|
||||
.setRiga(null)
|
||||
.setDatetimeRow(UtilityDate.getDateInstance())
|
||||
.setQtaCol(qtaCol)
|
||||
.setNumCnf(numCnf)
|
||||
.setQtaCol(newQtaCol)
|
||||
.setNumCnf(newNumCnf)
|
||||
.setUtente(SettingsManager.i().user.fullname)
|
||||
.setCausale(MtbColr.Causale.RETTIFICA)
|
||||
.setOperation(CommonModelConsts.OPERATION.INSERT);
|
||||
@ -640,9 +698,7 @@ public class RettificaGiacenzeViewModel implements IRecyclerItemClicked<MtbColr>
|
||||
mtbColtClone.getMtbColr().add(mtbColrToEditClone);
|
||||
mtbColtClone.setOperation(CommonModelConsts.OPERATION.INSERT_OR_UPDATE);
|
||||
|
||||
Dialog progressDialog = UtilityProgress.createDefaultProgressDialog(mContext);
|
||||
|
||||
ColliMagazzinoRESTConsumer.saveColloStatic(mtbColtClone, valueNewMtbColt -> {
|
||||
ColliMagazzinoRESTConsumer.saveCollo(mtbColtClone, valueNewMtbColt -> {
|
||||
progressDialog.dismiss();
|
||||
mtbColt.get().getMtbColr().remove(index);
|
||||
|
||||
@ -653,9 +709,8 @@ public class RettificaGiacenzeViewModel implements IRecyclerItemClicked<MtbColr>
|
||||
.setOperation(CommonModelConsts.OPERATION.NO_OP);
|
||||
|
||||
mtbColt.get().getMtbColr().add(index, mtbColrToEditClone);
|
||||
}, ex -> {
|
||||
UtilityExceptions.defaultException(mContext, ex, progressDialog);
|
||||
});
|
||||
}, ex -> UtilityExceptions.defaultException(mContext, ex, progressDialog));
|
||||
}
|
||||
}
|
||||
|
||||
}, null).show();
|
||||
@ -682,13 +737,26 @@ public class RettificaGiacenzeViewModel implements IRecyclerItemClicked<MtbColr>
|
||||
|
||||
Dialog progressDialog = UtilityProgress.createDefaultProgressDialog(mContext);
|
||||
|
||||
ColliMagazzinoRESTConsumer.saveColloStatic(mtbColtClone, value -> {
|
||||
|
||||
if (!isCreatedLU) {
|
||||
ColliMagazzinoRESTConsumer.creaRettificaCollo(
|
||||
mtbColrToDeleteClone,
|
||||
BigDecimal.ZERO,
|
||||
BigDecimal.ZERO,
|
||||
() -> {
|
||||
progressDialog.dismiss();
|
||||
mtbColt.get().getMtbColr().remove(mtbColrToDelete);
|
||||
}, ex -> UtilityExceptions.defaultException(mContext, ex, progressDialog)
|
||||
);
|
||||
} else {
|
||||
ColliMagazzinoRESTConsumer.saveCollo(mtbColtClone, value -> {
|
||||
progressDialog.dismiss();
|
||||
mtbColt.get().getMtbColr().remove(mtbColrToDelete);
|
||||
}, ex -> {
|
||||
UtilityExceptions.defaultException(mContext, ex, progressDialog);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void printCollo(Dialog progress) {
|
||||
|
||||
@ -68,7 +68,7 @@ public class VersamentoMerceViewModel {
|
||||
}
|
||||
|
||||
public void openLU() {
|
||||
DialogScanOrCreateLU.make(mContext, true, false, true, false, mtbColt -> {
|
||||
DialogScanOrCreateLU.make(mContext, true, false, true, false, (mtbColt, created) -> {
|
||||
if(mtbColt == null) {
|
||||
((IPoppableActivity)mContext).pop();
|
||||
} else if((mtbColt.getGestioneEnum() == GestioneEnum.ACQUISTO || mtbColt.getGestioneEnum() == GestioneEnum.LAVORAZIONE) && mtbColt.getSegno().equals(+1)){
|
||||
|
||||
@ -17,6 +17,7 @@ import it.integry.integrywmsnative.R;
|
||||
import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO;
|
||||
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableArgss;
|
||||
import it.integry.integrywmsnative.core.model.MtbColt;
|
||||
import it.integry.integrywmsnative.core.model.MtbDepoPosizione;
|
||||
import it.integry.integrywmsnative.core.model.secondary.GestioneEnum;
|
||||
@ -41,7 +42,7 @@ public class DialogScanOrCreateLU {
|
||||
|
||||
private DialogScanOrCreateLuBinding mBinding;
|
||||
|
||||
private RunnableArgs<MtbColt> mOnDialogDismiss;
|
||||
private RunnableArgss<MtbColt, Boolean> mOnDialogDismiss;
|
||||
|
||||
private MtbColt currentMtbColt;
|
||||
|
||||
@ -50,19 +51,19 @@ public class DialogScanOrCreateLU {
|
||||
private boolean mShouldCheckIfExistDoc = true;
|
||||
|
||||
|
||||
public static Dialog make(final Context context, RunnableArgs<MtbColt> onDialogDismiss) {
|
||||
public static Dialog make(final Context context, RunnableArgss<MtbColt, Boolean> onDialogDismiss) {
|
||||
return new DialogScanOrCreateLU(context, false, true, true, true, onDialogDismiss).mDialog;
|
||||
}
|
||||
|
||||
public static Dialog make(final Context context, boolean enableCreation, boolean shouldCheckIfExistDoc, RunnableArgs<MtbColt> onDialogDismiss) {
|
||||
public static Dialog make(final Context context, boolean enableCreation, boolean shouldCheckIfExistDoc, RunnableArgss<MtbColt, Boolean> onDialogDismiss) {
|
||||
return new DialogScanOrCreateLU(context, false, enableCreation, true, shouldCheckIfExistDoc, onDialogDismiss).mDialog;
|
||||
}
|
||||
|
||||
public static Dialog make(final Context context, boolean enableBasket, boolean enableCreation, boolean checkResiduo, boolean shouldCheckIfExistDoc, RunnableArgs<MtbColt> onDialogDismiss) {
|
||||
public static Dialog make(final Context context, boolean enableBasket, boolean enableCreation, boolean checkResiduo, boolean shouldCheckIfExistDoc, RunnableArgss<MtbColt, Boolean> onDialogDismiss) {
|
||||
return new DialogScanOrCreateLU(context, enableBasket, enableCreation, checkResiduo, shouldCheckIfExistDoc, onDialogDismiss).mDialog;
|
||||
}
|
||||
|
||||
private DialogScanOrCreateLU(Context context, boolean enableBasket, boolean enableCreation, boolean checkResiduo, boolean shouldCheckIfExistDoc, RunnableArgs<MtbColt> onDialogDismiss) {
|
||||
private DialogScanOrCreateLU(Context context, boolean enableBasket, boolean enableCreation, boolean checkResiduo, boolean shouldCheckIfExistDoc, RunnableArgss<MtbColt, Boolean> onDialogDismiss) {
|
||||
mOnDialogDismiss = null;
|
||||
currentMtbColt = null;
|
||||
mShouldCheckResiduo = checkResiduo;
|
||||
@ -88,14 +89,14 @@ public class DialogScanOrCreateLU {
|
||||
}
|
||||
|
||||
|
||||
private void init(RunnableArgs<MtbColt> onDialogDismiss) {
|
||||
private void init(RunnableArgss<MtbColt, Boolean> onDialogDismiss) {
|
||||
mOnDialogDismiss = onDialogDismiss;
|
||||
|
||||
mBinding.createNewLuButton.setOnClickListener(v -> {
|
||||
final Dialog progressDialog = UtilityProgress.createDefaultProgressDialog(mContext);
|
||||
|
||||
ColliMagazzinoRESTConsumer.createColloLavorazione(+1, createdMtbColt -> {
|
||||
sendMtbColt(createdMtbColt, progressDialog);
|
||||
sendMtbColt(createdMtbColt, progressDialog, true);
|
||||
}, ex -> {
|
||||
UtilityExceptions.defaultException(mContext, ex, progressDialog);
|
||||
});
|
||||
@ -103,7 +104,7 @@ public class DialogScanOrCreateLU {
|
||||
|
||||
mBinding.viewBasket.setOnClickListener(v -> {
|
||||
DialogBasketLU.make(mContext, mtbColt -> {
|
||||
sendMtbColt(mtbColt, null);
|
||||
sendMtbColt(mtbColt, null, false);
|
||||
}).show();
|
||||
});
|
||||
}
|
||||
@ -118,7 +119,7 @@ public class DialogScanOrCreateLU {
|
||||
BarcodeManager.removeCallback(barcodeIstanceID);
|
||||
BarcodeManager.enable();
|
||||
if(currentMtbColt == null) {
|
||||
mOnDialogDismiss.run(null);
|
||||
mOnDialogDismiss.run(null, false);
|
||||
}
|
||||
});
|
||||
|
||||
@ -188,7 +189,7 @@ public class DialogScanOrCreateLU {
|
||||
ColliMagazzinoRESTConsumer.createColloFromEtichettaAnonima(barcodeScanDTO, GestioneEnum.LAVORAZIONE, createdMtbColt -> {
|
||||
BarcodeManager.enable();
|
||||
createdMtbColt.setDisablePrint(true);
|
||||
sendMtbColt(createdMtbColt, progressDialog);
|
||||
sendMtbColt(createdMtbColt, progressDialog, true);
|
||||
}, ex -> {
|
||||
UtilityExceptions.defaultException(mContext, ex, progressDialog);
|
||||
BarcodeManager.enable();
|
||||
@ -208,7 +209,7 @@ public class DialogScanOrCreateLU {
|
||||
BarcodeManager.enable();
|
||||
|
||||
mtbColt.setDisablePrint(true);
|
||||
sendMtbColt(mtbColt, progressDialog);
|
||||
sendMtbColt(mtbColt, progressDialog, false);
|
||||
}
|
||||
|
||||
}
|
||||
@ -239,7 +240,7 @@ public class DialogScanOrCreateLU {
|
||||
.show();
|
||||
} else {
|
||||
BarcodeManager.enable();
|
||||
sendMtbColt(mtbColt, progressDialog);
|
||||
sendMtbColt(mtbColt, progressDialog, false);
|
||||
}
|
||||
|
||||
|
||||
@ -277,11 +278,11 @@ public class DialogScanOrCreateLU {
|
||||
null, null).show();
|
||||
}
|
||||
|
||||
private void sendMtbColt(MtbColt mtbColtToSend, Dialog progressDialog) {
|
||||
private void sendMtbColt(MtbColt mtbColtToSend, Dialog progressDialog, boolean created) {
|
||||
currentMtbColt = mtbColtToSend;
|
||||
if(progressDialog != null) progressDialog.dismiss();
|
||||
mDialog.dismiss();
|
||||
mOnDialogDismiss.run(mtbColtToSend);
|
||||
mOnDialogDismiss.run(mtbColtToSend, created);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user