Finish v1.32.02(342)

This commit is contained in:
Giuseppe Scorrano 2023-03-07 18:16:22 +01:00
commit 3c4fdea0ec
12 changed files with 89 additions and 50 deletions

View File

@ -10,8 +10,8 @@ apply plugin: 'com.google.gms.google-services'
android {
def appVersionCode = 341
def appVersionName = '1.32.01'
def appVersionCode = 342
def appVersionName = '1.32.02'
signingConfigs {
release {

View File

@ -61,6 +61,7 @@ public class InventarioRESTConsumer extends _BaseRESTConsumer {
.execute();
var data = analyzeAnswer(response, "retrieveInventario");
if (data == null) return null;
return data.getInventories();
}
@ -71,18 +72,18 @@ public class InventarioRESTConsumer extends _BaseRESTConsumer {
var inventarioRESTConsumerService = RESTBuilder.getService(InventarioRESTConsumerService.class, 120);
inventarioRESTConsumerService
.insert(inventarioToInsert.getIdInventario(), request)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<Void>> call, Response<ServiceRESTResponse<Void>> response) {
analyzeAnswer(response, "insertInventario", ignored -> onComplete.run(), onFailed);
}
.insert(inventarioToInsert.getIdInventario(), request)
.enqueue(new Callback<>() {
@Override
public void onResponse(Call<ServiceRESTResponse<Void>> call, Response<ServiceRESTResponse<Void>> response) {
analyzeAnswer(response, "insertInventario", ignored -> onComplete.run(), onFailed);
}
@Override
public void onFailure(Call<ServiceRESTResponse<Void>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
@Override
public void onFailure(Call<ServiceRESTResponse<Void>> call, Throwable t) {
onFailed.run(new Exception(t));
}
});
}

View File

@ -4,8 +4,6 @@ import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import it.integry.integrywmsnative.core.model.MtbAart;
public class DocumentoArtDTO {
private String codMart;
@ -18,6 +16,7 @@ public class DocumentoArtDTO {
private BigDecimal giacenza;
private boolean plu;
private BigDecimal przVendIva;
private boolean untMisDigitale;
public String getCodMart() {
return codMart;
@ -109,16 +108,12 @@ public class DocumentoArtDTO {
return this;
}
public MtbAart toMtbAart() {
return new MtbAart()
.setCodMart(getCodMart())
.setDescrizione(getDescrizione())
.setDescrizioneEstesa(getDescrizione())
.setBarCode(!getBarcode().isEmpty() ? getBarcode().get(0) : null)
.setUntMis(getUntMis())
.setQtaCnf(getQtaCnf())
.setPlu(isPlu() ? "S" : "N")
.setFlagTracciabilita(isFlagTracciabilita() ? "S" : "N")
.setFlagQtaCnfFissa(isFlagQtaCnfFissa() ? "S" : "N");
public boolean isUntMisDigitale() {
return untMisDigitale;
}
public DocumentoArtDTO setUntMisDigitale(boolean untMisDigitale) {
this.untMisDigitale = untMisDigitale;
return this;
}
}

View File

@ -2,9 +2,11 @@ package it.integry.integrywmsnative.core.rest.model.inventario;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import it.integry.integrywmsnative.core.model.MtbAart;
import it.integry.integrywmsnative.core.model.MtbUntMis;
public class InventarioArtDTO {
@ -18,6 +20,7 @@ public class InventarioArtDTO {
private BigDecimal giacenza;
private boolean plu;
private BigDecimal przVendIva;
private boolean untMisDigitale;
public String getCodMart() {
return codMart;
@ -109,7 +112,21 @@ public class InventarioArtDTO {
return this;
}
public boolean isUntMisDigitale() {
return untMisDigitale;
}
public InventarioArtDTO setUntMisDigitale(boolean untMisDigitale) {
this.untMisDigitale = untMisDigitale;
return this;
}
public MtbAart toMtbAart() {
MtbUntMis mtbUntMis = new MtbUntMis()
.setUntMis(getUntMis())
.setFlagDig(isUntMisDigitale() ? "S" : "N");
List<MtbUntMis> mtbUntMisList = Collections.singletonList(mtbUntMis);
return new MtbAart()
.setCodMart(getCodMart())
.setDescrizione(getDescrizione())
@ -119,6 +136,7 @@ public class InventarioArtDTO {
.setQtaCnf(getQtaCnf())
.setPlu(isPlu() ? "S" : "N")
.setFlagTracciabilita(isFlagTracciabilita() ? "S" : "N")
.setFlagQtaCnfFissa(isFlagQtaCnfFissa() ? "S" : "N");
.setFlagQtaCnfFissa(isFlagQtaCnfFissa() ? "S" : "N")
.setMtbUntMis(mtbUntMisList);
}
}

View File

@ -53,6 +53,7 @@ public class DBSettingsModel {
private boolean groupShippingByCommodityGroup = true;
private boolean showCodFornSpedizione = true;
private boolean flagCanCreateInventario = true;
public boolean isFlagSpedizioneEnableFakeGiacenza() {
return flagSpedizioneEnableFakeGiacenza;
@ -396,4 +397,13 @@ public class DBSettingsModel {
this.showCodFornSpedizione = showCodFornSpedizione;
return this;
}
public boolean isFlagCanCreateInventario() {
return flagCanCreateInventario;
}
public DBSettingsModel setFlagCanCreateInventario(boolean flagCanCreateInventario) {
this.flagCanCreateInventario = flagCanCreateInventario;
return this;
}
}

View File

@ -349,6 +349,10 @@ public class SettingsManager {
.setGestName("PICKING")
.setSection("SPEDIZIONE")
.setKeySection("FLAG_GROUP_BY_GRP_MERC"));
stbGestSetupList.add(new StbGestSetup()
.setGestName("PICKING")
.setSection("INVENTARIO")
.setKeySection("FLAG_CAN_CREATE_INVENTARIO"));
String codMdep = SettingsManager.i().getUserSession().getDepo().getCodMdep();
mGestSetupRESTConsumer.getValues(codMdep, stbGestSetupList, list -> {
@ -381,6 +385,7 @@ public class SettingsManager {
dbSettingsModelIstance.setNotifyLotStatus(getValueFromList(list, "SPEDIZIONE", "FLAG_NOTIFICA_STATO_PARTITA", Boolean.class));
dbSettingsModelIstance.setShowCodFornSpedizione(getValueFromList(list, "SPEDIZIONE", "FLAG_SHOW_COD_FORN", Boolean.class, Boolean.TRUE));
dbSettingsModelIstance.setGroupShippingByCommodityGroup(getValueFromList(list, "SPEDIZIONE", "FLAG_GROUP_BY_GRP_MERC", Boolean.class, Boolean.FALSE));
dbSettingsModelIstance.setFlagCanCreateInventario(getValueFromList(list, "SPEDIZIONE", "FLAG_CAN_CREATE_INVENTARIO", Boolean.class, Boolean.TRUE));
String notePerdita = getValueFromList(list, "DOC_INTERNI", "NOTE_PERDITA", String.class);
if (notePerdita != null)

View File

@ -15,6 +15,7 @@ import com.annimon.stream.Stream;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Collections;
import java.util.Date;
import java.util.List;
@ -35,6 +36,7 @@ import it.integry.integrywmsnative.core.expansion.BaseActivity;
import it.integry.integrywmsnative.core.model.MtbAart;
import it.integry.integrywmsnative.core.model.MtbColr;
import it.integry.integrywmsnative.core.model.MtbPartitaMag;
import it.integry.integrywmsnative.core.model.MtbUntMis;
import it.integry.integrywmsnative.core.rest.model.documento.DocumentoArtDTO;
import it.integry.integrywmsnative.core.utility.UtilityDate;
import it.integry.integrywmsnative.databinding.ActivityContabDocInterniEditBinding;
@ -220,7 +222,7 @@ public class DocInterniEditFormActivity extends BaseActivity implements DocInter
}
@Override
public void onEditRowRequest(SqlMtbColr row, boolean flagTracciabilita) {
public void onEditRowRequest(SqlMtbColr row, boolean flagTracciabilita, boolean isUntMisDig) {
this.onLoadingStarted();
MtbAart mtbAart = new MtbAart();
mtbAart.setBarCode(row.getCodBarre());
@ -233,6 +235,11 @@ public class DocInterniEditFormActivity extends BaseActivity implements DocInter
mtbAart.setFlagTracciabilita(flagTracciabilita ? "S" : "N");
mtbAart.setUntMis(row.getUntMis());
MtbUntMis mtbUntMis = new MtbUntMis()
.setUntMis(row.getUntMis())
.setFlagDig(isUntMisDig ? "S" : "N");
mtbAart.setMtbUntMis(Collections.singletonList(mtbUntMis));
DialogInputQuantityV2DTO dialogInputQuantityV2DTO = new DialogInputQuantityV2DTO()
.setMtbAart(mtbAart)
.setInitialNumCnf(BigDecimal.valueOf(row.getNumCnf()))
@ -289,7 +296,7 @@ public class DocInterniEditFormActivity extends BaseActivity implements DocInter
@Override
public void onMtbColrEdit(MtbColr mtbColr) {
DocumentoArtDTO articolo = viewModel.getArticoloByCodMart(mtbColr.getCodMart());
this.viewModel.dispatchRowEdit(entityToSql(mtbColr), articolo.isFlagTracciabilita());
this.viewModel.dispatchRowEdit(entityToSql(mtbColr), articolo.isFlagTracciabilita(), articolo.isUntMisDigitale());
}
@Override
@ -302,7 +309,7 @@ public class DocInterniEditFormActivity extends BaseActivity implements DocInter
DialogSelectDocRowsView.newInstance(rows, (row) -> {
this.onLoadingEnded();
if (row != null) {
this.viewModel.dispatchRowEdit(row, (articolo.isFlagTracciabilita()));
this.viewModel.dispatchRowEdit(row, articolo.isFlagTracciabilita(), articolo.isUntMisDigitale());
}
}
).show(this.getSupportFragmentManager(), "dialogSelectDocRows");

View File

@ -89,8 +89,8 @@ public class DocInterniEditFormViewModel {
}
public void dispatchRowEdit(SqlMtbColr row, boolean flagTracciabilita) {
this.listener.onEditRowRequest(row, flagTracciabilita && this.isCheckPartitaMag);
public void dispatchRowEdit(SqlMtbColr row, boolean flagTracciabilita, boolean isUntMisDig) {
this.listener.onEditRowRequest(row, flagTracciabilita && this.isCheckPartitaMag,isUntMisDig);
}
private Integer getNextIdRiga() {
@ -157,7 +157,7 @@ public class DocInterniEditFormViewModel {
if (rows.size() > 1) {
this.listener.onMultipleRowsFound(rows, matchedArt);
} else {
this.dispatchRowEdit(rows.get(0), matchedArt.isFlagTracciabilita());
this.dispatchRowEdit(rows.get(0), matchedArt.isFlagTracciabilita(), matchedArt.isUntMisDigitale());
}
@ -335,7 +335,7 @@ public class DocInterniEditFormViewModel {
void onRowsChanged(List<SqlMtbColr> rows);
void onEditRowRequest(SqlMtbColr row, boolean flagTracciabilita);
void onEditRowRequest(SqlMtbColr row, boolean flagTracciabilita, boolean isUntMisDig);
void onMultipleRowsFound(List<SqlMtbColr> rows, DocumentoArtDTO art);

View File

@ -8,6 +8,7 @@ import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.appcompat.widget.AppCompatTextView;
import androidx.databinding.ObservableField;
import com.ravikoradiya.liveadapter.LiveAdapter;
import com.ravikoradiya.liveadapter.Type;
@ -25,6 +26,7 @@ import it.integry.integrywmsnative.core.expansion.RunnableArgss;
import it.integry.integrywmsnative.core.interfaces.ILifecycleFragment;
import it.integry.integrywmsnative.core.interfaces.ITitledFragment;
import it.integry.integrywmsnative.core.rest.model.inventario.InventarioArtDTO;
import it.integry.integrywmsnative.core.settings.SettingsManager;
import it.integry.integrywmsnative.databinding.FragmentElencoInventarioBinding;
import it.integry.integrywmsnative.databinding.FragmentElencoInventarioListSingleItemBinding;
import it.integry.integrywmsnative.gest.inventario.bottom_sheet__inventario_actions.BottomSheetInventarioActionsView;
@ -39,6 +41,8 @@ public class ElencoInventariFragment extends BaseFragment implements ITitledFrag
@Inject
ElencoInventariViewModel mViewModel;
public ObservableField<Boolean> canCreateInventario = new ObservableField<>(false);
private int barcodeScannerIstanceID = -1;
public ElencoInventariFragment() {
@ -69,8 +73,11 @@ public class ElencoInventariFragment extends BaseFragment implements ITitledFrag
mBinding = FragmentElencoInventarioBinding.inflate(inflater, container, false);
mBinding.setLifecycleOwner(this);
mBinding.setView(this);
mBinding.setViewmodel(mViewModel);
canCreateInventario.set(SettingsManager.iDB().isFlagCanCreateInventario());
mBinding.swiperefresh.setRefreshing(true);
mBinding.swiperefresh.setOnRefreshListener(() -> {
mViewModel.loadData();

View File

@ -112,6 +112,12 @@ public class PickingInventarioActivity extends BaseActivity implements PickingIn
return true;
}
@Override
public void onBackPressed() {
BarcodeManager.removeCallback(barcodeScannerIstanceID);
super.onBackPressed();
}
private void initToolbar() {
setSupportActionBar(mBindings.toolbar);

View File

@ -332,28 +332,13 @@ public class ProdOrdineProduzioneElencoFragment extends BaseFragment implements
public void dispatchOrders() {
List<OrdineAccettazioneInevasoDTO> selectedOrders = Stream.of(this.mOrdiniInevasiMutableData)
.filter(x -> x.getSelectedObservable().get())
.map(MainListProdOrdineProduzioneElencoListModel::getOriginalModel)
.flatMap(y -> Stream.of(y.getClientiListModel()).map(MainListProdOrdineProduzioneElencoClienteListModel::getOriginalModel))
.toList();
this.mViewModel.loadPicking(selectedOrders);
}
// @Override
// public void onFilterClick() {
// DialogOrdineProduzioneFiltroAvanzatoView.make(
// getActivity(),
// this.mViewModel.getOrderList().getValue(),
// mAppliedFilterViewModel,
//
// filter -> {
//
// mAppliedFilterViewModel = filter;
// refreshList(null);
//
// }).show();
// }
@Override
public void onOrdersDispatched(List<OrdineAccettazioneInevasoDTO> orders, List<SitArtOrdDTO> sitArts) {

View File

@ -5,6 +5,10 @@
<import type="android.view.View" />
<variable
name="view"
type="it.integry.integrywmsnative.gest.inventario.ElencoInventariFragment" />
<variable
name="viewmodel"
type="it.integry.integrywmsnative.gest.inventario.ElencoInventariViewModel" />
@ -96,6 +100,7 @@
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_margin="16dp"
app:visibility="@{view.canCreateInventario}"
app:singleClick="@{() -> viewmodel.openInventario()}"
app:srcCompat="@drawable/ic_add_24dp" />