Finish v1.13.9(155)

This commit is contained in:
Giuseppe Scorrano 2020-10-05 13:00:05 +02:00
commit b806c00f56
40 changed files with 152 additions and 180 deletions

Binary file not shown.

View File

@ -7,8 +7,8 @@ apply plugin: 'com.google.gms.google-services'
android {
def appVersionCode = 154
def appVersionName = '1.13.8'
def appVersionCode = 155
def appVersionName = '1.13.9'
signingConfigs {
release {

View File

@ -50,11 +50,11 @@ public class AppContext {
FirebaseCrashlytics crashlytics = FirebaseCrashlytics.getInstance();
if( SettingsManager.isInstanceAvailable() &&
(SettingsManager.i().userSession != null && !UtilityString.isNullOrEmpty(SettingsManager.i().userSession.profileDB)) &&
(SettingsManager.i().user != null && !UtilityString.isNullOrEmpty(SettingsManager.i().user.fullname))) {
(SettingsManager.i().getUserSession() != null && !UtilityString.isNullOrEmpty(SettingsManager.i().getUserSession().getProfileDB())) &&
(SettingsManager.i().getUser() != null && !UtilityString.isNullOrEmpty(SettingsManager.i().getUser().getFullname()))) {
crashlytics.setUserId(SettingsManager.i().user.fullname);
crashlytics.setCustomKey("profile_db", SettingsManager.i().userSession.profileDB);
crashlytics.setUserId(SettingsManager.i().getUser().getFullname());
crashlytics.setCustomKey("profile_db", SettingsManager.i().getUserSession().getProfileDB());
}
}
}

View File

@ -1,6 +1,5 @@
package it.integry.integrywmsnative.core.model;
import java.text.SimpleDateFormat;
import java.util.Date;
import it.integry.integrywmsnative.core.settings.SettingsManager;
@ -21,8 +20,8 @@ public class MtbCols extends EntityBase {
public MtbCols() {
type = "mtb_cols";
setCodMdep(SettingsManager.i().userSession.depo.getCodMdep());
setModificatoDa(SettingsManager.i().user.fullname);
setCodMdep(SettingsManager.i().getUserSession().getDepo().getCodMdep());
setModificatoDa(SettingsManager.i().getUser().getFullname());
setDataMove(UtilityDate.getDateInstance());
}

View File

@ -86,7 +86,7 @@ public class MtbColt extends EntityBase {
private ObservableArrayList<MtbColr> mtbColr = new ObservableArrayList<>();
public ObservableArrayList<MtbColr> getMtbColr() {
return mtbColr;
return mtbColr == null ? new ObservableArrayList<>() : mtbColr;
}
public MtbColt setMtbColr(ObservableArrayList<MtbColr> mtbColr) {
@ -101,8 +101,8 @@ public class MtbColt extends EntityBase {
}
public MtbColt initDefaultFields() {
setCodMdep(SettingsManager.i().userSession.depo.getCodMdep());
setPreparatoDa(SettingsManager.i().user.fullname);
setCodMdep(SettingsManager.i().getUserSession().getDepo().getCodMdep());
setPreparatoDa(SettingsManager.i().getUser().getFullname());
setOraInizPrep(UtilityDate.getDateInstance());
setCodAnag(SettingsManager.iDB().getDefaultCodAnag());

View File

@ -19,9 +19,9 @@ public class HttpInterceptor implements Interceptor {
@Override
public Response intercept(Chain chain) throws IOException {
final String PROFILE_DB = SettingsManager.i().userSession == null ? null : SettingsManager.i().userSession.profileDB;
final String USERNAME = SettingsManager.i().user.username;
final String PASSWORD = SettingsManager.i().user.password;
final String PROFILE_DB = SettingsManager.i().getUserSession() == null ? null : SettingsManager.i().getUserSession().getProfileDB();
final String USERNAME = SettingsManager.i().getUser().getUsername();
final String PASSWORD = SettingsManager.i().getUser().getPassword();
final Request request = chain.request();
final HttpUrl url = request.url().newBuilder()

View File

@ -20,12 +20,12 @@ public class RESTBuilder {
public static <T> T getService(final Class<T> service) {
// return getService(service, "192.168.2.13", 8080);
return getService(service, SettingsManager.i().server.host, SettingsManager.i().server.port, true);
return getService(service, SettingsManager.i().getServer().getHost(), SettingsManager.i().getServer().getPort(), true);
}
public static <T> T getService(final Class<T> service, int timeout) {
// return getService(service, "192.168.2.13", 8080);
return getService(service, SettingsManager.i().server.host, SettingsManager.i().server.port, true, true, timeout);
return getService(service, SettingsManager.i().getServer().getHost(), SettingsManager.i().getServer().getPort(), true, true, timeout);
}

View File

@ -21,7 +21,7 @@ public class PosizioniRESTConsumer extends _BaseRESTConsumer{
public static void getAvailablePosizioni(RunnableArgs<List<MtbDepoPosizione>> onComplete, RunnableArgs<Exception> onFailed) {
String codMdep = SettingsManager.i().userSession.depo.getCodMdep();
String codMdep = SettingsManager.i().getUserSession().getDepo().getCodMdep();
PosizioniRESTConsumerService posizioniRESTConsumerService = RESTBuilder.getService(PosizioniRESTConsumerService.class);
posizioniRESTConsumerService.getAvailablePosizioni(codMdep).enqueue(new Callback<ServiceRESTResponse<List<MtbDepoPosizione>>>() {

View File

@ -92,7 +92,7 @@ public class SystemRESTConsumer extends _BaseRESTConsumer {
public static void getAvailableProfiles(final ISimpleOperationCallback<List<String>> callback){
SystemRESTConsumerService service = RESTBuilder.getService(SystemRESTConsumerService.class);
service.getAvailableProfiles(SettingsManager.i().user.username, SettingsManager.i().user.password).enqueue(new Callback<ServiceRESTResponse<List<String>>>() {
service.getAvailableProfiles(SettingsManager.i().getUser().getUsername(), SettingsManager.i().getUser().getPassword()).enqueue(new Callback<ServiceRESTResponse<List<String>>>() {
@Override
public void onResponse(Call<ServiceRESTResponse<List<String>>> call, Response<ServiceRESTResponse<List<String>>> response) {
analyzeAnswer(response, "ProfilesAvailable", callback);
@ -139,7 +139,7 @@ public class SystemRESTConsumer extends _BaseRESTConsumer {
public static void sendErrorLogMail(String message, Runnable onComplete, RunnableArgs<Exception> onFailed) {
String currentAzienda = UtilityString.isNullOrEmpty(SettingsManager.i().userSession.profileDB) ? "" : " [" + SettingsManager.i().userSession.profileDB + "]";
String currentAzienda = UtilityString.isNullOrEmpty(SettingsManager.i().getUserSession().getProfileDB()) ? "" : " [" + SettingsManager.i().getUserSession().getProfileDB() + "]";
String dest = "";
if(BuildConfig.DEBUG) {

View File

@ -30,8 +30,8 @@ public class ServerStatusChecker {
private Runnable runnableCode = new Runnable() {
@Override
public void run() {
if(shouldExecute && !UtilityString.isNullOrEmpty(SettingsManager.i().server.host)) {
UtilityServer.isEmsApiAvailable(SettingsManager.i().server.host, SettingsManager.i().server.port, mInternalCallback);
if(shouldExecute && !UtilityString.isNullOrEmpty(SettingsManager.i().getServer().getHost())) {
UtilityServer.isEmsApiAvailable(SettingsManager.i().getServer().getHost(), SettingsManager.i().getServer().getPort(), mInternalCallback);
handler.postDelayed(this, MILLIS_DELAY);
}
}

View File

@ -38,7 +38,7 @@ public class SettingsManager {
if(settingsModelIstance == null) {
settingsModelIstance = new SettingsModel();
settingsModelIstance.server = new SettingsModel.Server();
settingsModelIstance.setServer(new SettingsModel.Server());
//settingsModelIstance.user = new SettingsModel.User();
//settingsModelIstance.userSession = new SettingsModel.UserSession();
@ -136,10 +136,10 @@ public class SettingsManager {
boolean codMdepExistsAnymore = false;
if(settingsModelIstance.userSession.depo != null){
if(settingsModelIstance.getUserSession().getDepo() != null){
for(AvailableCodMdepsDTO availableCodMdepDTO : availableCodMdeps){
//Controllo se il codMdep salvato esiste ancora
if(availableCodMdepDTO.getCodMdep().equalsIgnoreCase(settingsModelIstance.userSession.depo.getCodMdep())) {
if(availableCodMdepDTO.getCodMdep().equalsIgnoreCase(settingsModelIstance.getUserSession().getDepo().getCodMdep())) {
codMdepExistsAnymore = true;
break;
}
@ -147,7 +147,7 @@ public class SettingsManager {
}
if(!codMdepExistsAnymore){
settingsModelIstance.userSession.depo = availableCodMdeps.get(0);
settingsModelIstance.getUserSession().setDepo(availableCodMdeps.get(0));
}
if(onComplete != null) onComplete.run();

View File

@ -4,9 +4,9 @@ import it.integry.integrywmsnative.core.rest.model.AvailableCodMdepsDTO;
public class SettingsModel {
public Server server;
public User user;
public UserSession userSession;
private Server server;
private User user;
private UserSession userSession;
public boolean isUserLoggedIn() {
return user != null;
@ -19,9 +19,9 @@ public class SettingsModel {
public static class Server {
public String codAzienda;
public String host;
public int port;
private String codAzienda;
private String host;
private int port;
public String getCodAzienda() {
return codAzienda;
@ -52,9 +52,9 @@ public class SettingsModel {
}
public static class User {
public String username;
public String password;
public String fullname;
private String username;
private String password;
private String fullname;
public String getUsername() {
return username;
@ -85,9 +85,9 @@ public class SettingsModel {
}
public static class UserSession {
public String profileDB;
public AvailableCodMdepsDTO depo;
public Integer defaultOrdinamentoPickingAccettazione = 0;
private String profileDB;
private AvailableCodMdepsDTO depo;
private Integer defaultOrdinamentoPickingAccettazione = 0;
public String getProfileDB() {
return profileDB;

View File

@ -36,8 +36,8 @@ public class UpdatesManager {
suffix = "";
}
String currentVersionUrl = "http://" + SettingsManager.i().server.host + ":" + SettingsManager.i().server.port + "/ems-api/wms/currentVersion";
String currentDownloadUrl = "http://" + SettingsManager.i().server.host + ":" + SettingsManager.i().server.port + "/ems-api/wms/android-release"+suffix+"_v2.apk";
String currentVersionUrl = "http://" + SettingsManager.i().getServer().getHost() + ":" + SettingsManager.i().getServer().getPort() + "/ems-api/wms/currentVersion";
String currentDownloadUrl = "http://" + SettingsManager.i().getServer().getHost() + ":" + SettingsManager.i().getServer().getPort() + "/ems-api/wms/android-release"+suffix+"_v2.apk";
AppUpdater appUpdater = new AppUpdater(context)

View File

@ -8,14 +8,14 @@ import it.integry.integrywmsnative.core.settings.SettingsManager;
public class UtilityFirebase {
public static Trace getNewPerformanceTrace(String traceName) {
String username = SettingsManager.i().user != null && !UtilityString.isNullOrEmpty(SettingsManager.i().user.fullname) ?
SettingsManager.i().user.fullname :
String username = SettingsManager.i().getUser() != null && !UtilityString.isNullOrEmpty(SettingsManager.i().getUser().getFullname()) ?
SettingsManager.i().getUser().getFullname() :
"N / A";
Trace newTrace = FirebasePerformance.getInstance().newTrace(traceName);
newTrace.putAttribute("user_fullame", username);
newTrace.putAttribute("profile_db", SettingsManager.i().userSession.profileDB);
newTrace.putAttribute("profile_db", SettingsManager.i().getUserSession().getProfileDB());
return newTrace;
}

View File

@ -73,7 +73,7 @@ public class UtilityLogger {
//
// message = message.replace("__ERROR_STACKTRACE__", sw.toString());
//
// String currentAzienda = UtilityString.isNullOrEmpty(SettingsManager.i().userSession.profileDB) ? "" : SettingsManager.i().userSession.profileDB;
// String currentAzienda = UtilityString.isNullOrEmpty(SettingsManager.i().getUserSession().getProfileDB()) ? "" : SettingsManager.i().getUserSession().getProfileDB();
// message = message.replace("__CUSTOMER_NAME__", currentAzienda);
//
// message = message.replace("__ERROR_DATE__", UtilityDate.formatDate(UtilityDate.getDateInstance(), UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH));

View File

@ -7,8 +7,8 @@ public class UtilitySettings {
public static void logout(AppDatabase appDatabase){
SettingsManager.i().user = null;
SettingsManager.i().userSession = null;
SettingsManager.i().setUser(null);
SettingsManager.i().setUserSession(null);
UtilityThread.executeParallel(appDatabase::clearAllTables);
SettingsManager.update();
}

View File

@ -35,7 +35,7 @@ public class AccettazioneHelper {
}
public void loadOrdini(RunnableArgs<List<OrdineAccettazioneInevasoDTO>> onComplete, RunnableArgs<Exception> onFailed){
String codMdep = SettingsManager.i().userSession.depo.getCodMdep();
String codMdep = SettingsManager.i().getUserSession().getDepo().getCodMdep();
OrdiniAccettazioneRESTConsumerService service = RESTBuilder.getService(OrdiniAccettazioneRESTConsumerService.class);
service.listOrdiniInevasi(codMdep, "A").enqueue(new Callback<ServiceRESTResponse<List<OrdineAccettazioneInevasoDTO>>>() {

View File

@ -88,7 +88,7 @@ public class AccettazioneOrdineAccettazioneInevasoViewModel implements IOnColloC
private void init() {
currentOrderBy = AccettazioneOrdineInevasoOrderBy.Enum.fromInt(SettingsManager.i().userSession.defaultOrdinamentoPickingAccettazione);
currentOrderBy = AccettazioneOrdineInevasoOrderBy.Enum.fromInt(SettingsManager.i().getUserSession().getDefaultOrdinamentoPickingAccettazione());
mArticoliInColloBottomSheetViewModel.setOnCloseColloCallbackListener(this);
mArticoliInColloBottomSheetViewModel.setOnItemDeletedCallback(this::onRowDeleted);
@ -412,7 +412,7 @@ public class AccettazioneOrdineAccettazioneInevasoViewModel implements IOnColloC
.setTitle(mActivity.getText(R.string.action_orderBy))
.setSingleChoiceItems(AccettazioneOrdineInevasoOrderBy.descriptions, currentOrderBy.getVal(), (dialog12, which) -> {
currentOrderBy = AccettazioneOrdineInevasoOrderBy.Enum.fromInt(which);
SettingsManager.i().userSession.defaultOrdinamentoPickingAccettazione = which;
SettingsManager.i().getUserSession().setDefaultOrdinamentoPickingAccettazione(which);
})
.setPositiveButton("Ok", (dialog1, which) -> refreshOrderBy(false))
.create();
@ -592,7 +592,7 @@ public class AccettazioneOrdineAccettazioneInevasoViewModel implements IOnColloC
return;
}
PrinterRESTConsumer.getAvailablePrintersStatic(SettingsManager.i().userSession.depo.getCodMdep(), PrinterRESTConsumer.Type.SECONDARIA, value -> {
PrinterRESTConsumer.getAvailablePrintersStatic(SettingsManager.i().getUserSession().getDepo().getCodMdep(), PrinterRESTConsumer.Type.SECONDARIA, value -> {
if (value.size() > 0) {
try {

View File

@ -100,7 +100,7 @@ public class ContenutoBancaleViewModel implements IRecyclerItemClicked<MtbColr>
mContext.bindings.contenutoBancaleFab.close(true);
final Dialog progress = UtilityProgress.createDefaultProgressDialog(mContext);
PrinterRESTConsumer.getAvailablePrintersStatic(SettingsManager.i().userSession.depo.getCodMdep(), mPrinterType, value -> {
PrinterRESTConsumer.getAvailablePrintersStatic(SettingsManager.i().getUserSession().getDepo().getCodMdep(), mPrinterType, value -> {
if(value.size() > 0) {

View File

@ -1,25 +1,25 @@
package it.integry.integrywmsnative.gest.login.viewmodel;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.Intent;
import androidx.appcompat.app.AlertDialog;
import android.text.Html;
import android.text.SpannableString;
import android.text.Spanned;
import androidx.appcompat.app.AlertDialog;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.List;
import it.integry.integrywmsnative.MainActivity;
import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback;
import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer;
import it.integry.integrywmsnative.core.rest.model.AvailableCodMdepsDTO;
import it.integry.integrywmsnative.core.context.MainContext;
import it.integry.integrywmsnative.core.di.BindableBoolean;
import it.integry.integrywmsnative.core.di.BindableString;
import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback;
import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer;
import it.integry.integrywmsnative.core.rest.model.AvailableCodMdepsDTO;
import it.integry.integrywmsnative.core.settings.SettingsManager;
import it.integry.integrywmsnative.core.utility.UtilityProgress;
import it.integry.integrywmsnative.core.utility.UtilityServer;
@ -59,10 +59,10 @@ public class LoginViewModel {
loginButtonEnabled.set(true);
codAzienda.set(SettingsManager.i().server.codAzienda);
codAzienda.set(SettingsManager.i().getServer().getCodAzienda());
customSettingsCheckboxChecked.set(SettingsManager.i().server.host == null);
customSettingsCheckboxEnabled.set(SettingsManager.i().server.host != null);
customSettingsCheckboxChecked.set(SettingsManager.i().getServer().getHost() == null);
customSettingsCheckboxEnabled.set(SettingsManager.i().getServer().getHost() != null);
}
@ -120,7 +120,7 @@ public class LoginViewModel {
SettingsManager.iDB().setAvailableProfiles(loginDTO.availableProfiles);
SettingsManager.i().createUserSession();
SettingsManager.i().user.fullname = !UtilityString.isNullOrEmpty(loginDTO.full_name) ? loginDTO.full_name : username.get();
SettingsManager.i().getUser().setFullname(!UtilityString.isNullOrEmpty(loginDTO.full_name) ? loginDTO.full_name : username.get());
mActivity.runOnUiThread(() -> onLoginSuccess(
@ -157,12 +157,12 @@ public class LoginViewModel {
private void loadDepo(String host, int port, Runnable onComplete) {
SettingsManager.i().server.codAzienda = codAzienda.get();
SettingsManager.i().server.host = host;
SettingsManager.i().server.port = port;
SettingsManager.i().getServer().setCodAzienda(codAzienda.get());
SettingsManager.i().getServer().setHost(host);
SettingsManager.i().getServer().setPort(port);
SettingsManager.i().user.username = username.get();
SettingsManager.i().user.password = password.get();
SettingsManager.i().getUser().setUsername(username.get());
SettingsManager.i().getUser().setPassword(password.get());
SystemRESTConsumer.getAvailableCodMdeps(new ISimpleOperationCallback<List<AvailableCodMdepsDTO>>() {
@Override
@ -174,7 +174,7 @@ public class LoginViewModel {
return;
}
SettingsManager.i().userSession.depo = availableCodMdeps.get(0);
SettingsManager.i().getUserSession().setDepo(availableCodMdeps.get(0));
if(onComplete != null) onComplete.run();
@ -212,7 +212,7 @@ public class LoginViewModel {
private void showProfileDBSelectionDialog(final String host, final int port, final List<String> availableProfiles){
if(availableProfiles != null && availableProfiles.size() == 1 ) {
SettingsManager.i().userSession.profileDB = availableProfiles.get(0);
SettingsManager.i().getUserSession().setProfileDB(availableProfiles.get(0));
loadDepo(host, port, this::onLoginCompleted);
} else {
@ -225,7 +225,7 @@ public class LoginViewModel {
String[] profiles = new String[availableProfiles.size()];
profiles = availableProfiles.toArray(profiles);
builder.setItems(profiles, (dialog, which) -> {
SettingsManager.i().userSession.profileDB = availableProfiles.get(which);
SettingsManager.i().getUserSession().setProfileDB(availableProfiles.get(which));
loadDepo(host, port, this::onLoginCompleted);
});

View File

@ -112,8 +112,8 @@ public class MainFragment extends Fragment implements ITitledFragment, IScrollab
}
private void initSessionData() {
mBindings.currentUserName.setText(SettingsManager.i().user.fullname);
mBindings.currentDeposito.setText(String.format("Deposito: %s • %s", SettingsManager.i().userSession.depo.getCodMdep(), SettingsManager.i().userSession.depo.getDescrizione()));
mBindings.currentUserName.setText(SettingsManager.i().getUser().getFullname());
mBindings.currentDeposito.setText(String.format("Deposito: %s • %s", SettingsManager.i().getUserSession().getDepo().getCodMdep(), SettingsManager.i().getUserSession().getDepo().getDescrizione()));
if (SettingsManager.iDB().getDatiAzienda() != null && SettingsManager.iDB().getDatiAzienda().isLogoAvailable()) {
// currentLogoAzienda.setImageBitmap(SettingsManager.iDB().getDatiAzienda().getLogo());

View File

@ -644,7 +644,7 @@ public class PickingLiberoViewModel {
.setQtaCol(qtaTot)
.setPartitaMag(partitaMag)
.setDataScadPartita(dataScad)
.setUtente(SettingsManager.i().user.fullname)
.setUtente(SettingsManager.i().getUser().getFullname())
.setCausale(MtbColr.Causale.RETTIFICA)
.setDatetimeRow(UtilityDate.getDateInstance());

View File

@ -215,7 +215,7 @@ public class PickingResiActivity extends BaseActivity implements IOnColloClosedC
mtbColt .setGestione(mDefaultGestioneOfUL)
.setSegno(mDefaultSegnoOfUL)
.setCodAnag(mDefaultCodAnagOfUL)
.setCodMdep(SettingsManager.i().userSession.depo.getCodMdep())
.setCodMdep(SettingsManager.i().getUserSession().getDepo().getCodMdep())
.setOperation(CommonModelConsts.OPERATION.INSERT_OR_UPDATE);
@ -427,7 +427,7 @@ public class PickingResiActivity extends BaseActivity implements IOnColloClosedC
DialogAskShouldPrint.make(this, "Packing List", shouldPrint -> {
if(shouldPrint) {
PrinterRESTConsumer.getAvailablePrintersStatic(SettingsManager.i().userSession.depo.getCodMdep(), PrinterRESTConsumer.Type.PRIMARIA, printerList -> {
PrinterRESTConsumer.getAvailablePrintersStatic(SettingsManager.i().getUserSession().getDepo().getCodMdep(), PrinterRESTConsumer.Type.PRIMARIA, printerList -> {
if (printerList.size() > 0) {
try {

View File

@ -5,12 +5,6 @@ import android.app.Dialog;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import androidx.appcompat.widget.AppCompatTextView;
import androidx.databinding.DataBindingUtil;
import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.LinearLayoutManager;
import android.text.Html;
import android.text.SpannableString;
import android.view.LayoutInflater;
@ -18,6 +12,11 @@ import android.view.View;
import android.view.ViewGroup;
import android.widget.Toast;
import androidx.appcompat.widget.AppCompatTextView;
import androidx.databinding.DataBindingUtil;
import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.LinearLayoutManager;
import com.annimon.stream.Stream;
import java.util.ArrayList;
@ -25,12 +24,12 @@ import java.util.List;
import java.util.concurrent.atomic.AtomicInteger;
import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.interfaces.IFilterableFragment;
import it.integry.integrywmsnative.core.rest.CommonRESTException;
import it.integry.integrywmsnative.core.data_cache.DataCache;
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.interfaces.IFilterableFragment;
import it.integry.integrywmsnative.core.interfaces.IScrollableFragment;
import it.integry.integrywmsnative.core.interfaces.ITitledFragment;
import it.integry.integrywmsnative.core.rest.CommonRESTException;
import it.integry.integrywmsnative.core.utility.UtilityProgress;
import it.integry.integrywmsnative.databinding.FragmentProdOrdineProduzioneElencoBinding;
import it.integry.integrywmsnative.gest.accettazione.dto.OrdineAccettazioneDTO;
@ -110,11 +109,9 @@ public class ProdOrdineProduzioneElencoFragment extends Fragment implements ITit
private void init() {
final Dialog progress = UtilityProgress.createDefaultProgressDialog(getActivity());
mHelper = new OrdineProduzioneHelper(getActivity());
mHelper.loadOrdini(ordini -> {
if(ordini != null) {
Toast.makeText(getActivity(), "Caricati " + ordini.size() + " ordini", Toast.LENGTH_LONG).show();
@ -133,8 +130,6 @@ public class ProdOrdineProduzioneElencoFragment extends Fragment implements ITit
DialogSimpleMessageHelper.makeErrorDialog(getActivity(), new SpannableString(errorMessage), null, null).show();
}
);
}
@Override
@ -243,8 +238,6 @@ public class ProdOrdineProduzioneElencoFragment extends Fragment implements ITit
@Override
public void onFilterClick() {
DialogOrdineProduzioneFiltroAvanzato.make(getActivity(), mOriginalOrderList, mAppliedFilterViewModel, (filteredOrderList, filter) -> {
mAppliedFilterViewModel = filter;

View File

@ -29,7 +29,7 @@ public class OrdineProduzioneHelper {
mContext = context;
}
public void loadOrdini(RunnableArgs<List<OrdineAccettazioneInevasoDTO>> onComplete, RunnableArgs<Exception> onFailed){
String codMdep = SettingsManager.i().userSession.depo.getCodMdep();
String codMdep = SettingsManager.i().getUserSession().getDepo().getCodMdep();
OrdiniAccettazioneRESTConsumerService service = RESTBuilder.getService(OrdiniAccettazioneRESTConsumerService.class);
service.listOrdiniInevasi(codMdep, "P").enqueue(new Callback<ServiceRESTResponse<List<OrdineAccettazioneInevasoDTO>>>() {

View File

@ -39,7 +39,7 @@ public class ProdOrdineLavorazioneHelper {
}
public void loadOrdini(RunnableArgs<List<OrdineVenditaInevasoDTO>> onComplete, RunnableArgs<Exception> onFailed){
String codMdep = SettingsManager.i().userSession.depo.getCodMdep();
String codMdep = SettingsManager.i().getUserSession().getDepo().getCodMdep();
Trace perfTrace = UtilityFirebase.getNewPerformanceTrace("db_load_ords_lavorazione");
perfTrace.start();
@ -95,7 +95,7 @@ public class ProdOrdineLavorazioneHelper {
// public void retrievePickingList(List<OrdineLavorazioneInevasoDTO> orders, RunnableArgs<List<SitArtOrdDTO>> onComplete, RunnableArgs<Exception> onFailed){
// String codMdep = SettingsManager.i().userSession.depo.getCodMdep();
// String codMdep = SettingsManager.i().getUserSession().getDepo().getCodMdep();
//
//
// Trace perfTrace = UtilityFirebase.getNewPerformanceTrace("db_load_pick_lavorazione");

View File

@ -295,7 +295,7 @@ public class ProdRecuperoMaterialeViewModel {
private void printCollo(Dialog progress, MtbColt mtbColtToPrint, Runnable onComplete) {
PrinterRESTConsumer.getAvailablePrintersStatic(SettingsManager.i().userSession.depo.getCodMdep(), PrinterRESTConsumer.Type.PRIMARIA, printerList -> {
PrinterRESTConsumer.getAvailablePrintersStatic(SettingsManager.i().getUserSession().getDepo().getCodMdep(), PrinterRESTConsumer.Type.PRIMARIA, printerList -> {
if (printerList.size() > 0) {
try {

View File

@ -447,7 +447,7 @@ public class RettificaGiacenzeViewModel {
private void savePosizione(MtbDepoPosizione mtbDepoPosizione, Runnable onComplete) {
MtbColt cloneMtbColt = (MtbColt) mCurrentMtbColt.clone();
cloneMtbColt.setOperation(CommonModelConsts.OPERATION.NO_OP);
cloneMtbColt.setOperation(CommonModelConsts.OPERATION.UPDATE);
cloneMtbColt.setMtbColr(null);
cloneMtbColt.setPosizione(mtbDepoPosizione != null ? mtbDepoPosizione.getPosizione() : CommonModelConsts.ENTITY_NULL_STRING);
@ -577,7 +577,7 @@ public class RettificaGiacenzeViewModel {
.setQtaCol(qtaTot)
.setPartitaMag(partitaMag)
.setDataScadPartita(dataScad)
.setUtente(SettingsManager.i().user.fullname)
.setUtente(SettingsManager.i().getUser().getFullname())
.setCausale(MtbColr.Causale.RETTIFICA)
.setDatetimeRow(UtilityDate.getDateInstance());

View File

@ -268,13 +268,16 @@ public class SpedizioneActivity extends BaseActivity implements SpedizioneViewMo
} else {
BigDecimal qtaColOrdCounter = x.getSitArtOrdDTO().getQtaOrd();
// qtaColOrdCounter = qtaColOrdCounter.add(qtaColWithdrawRows.getBigDecimalValue());
BigDecimal numCnfOrdCounter = x.getSitArtOrdDTO().getNumCnfOrd();
for (MtbColt mtbColtToPick : x.getMtbColts()) {
if(UtilityBigDecimal.equalsTo(qtaColOrdCounter, BigDecimal.ZERO) || UtilityBigDecimal.lowerThan(qtaColOrdCounter, BigDecimal.ZERO))
break;
if(UtilityBigDecimal.equalsTo(numCnfOrdCounter, BigDecimal.ZERO) || UtilityBigDecimal.lowerThan(numCnfOrdCounter, BigDecimal.ZERO))
break;
SpedizioneListModel cloneModel = (SpedizioneListModel) spedizioneListModel.clone();
cloneModel.setGroupTitle(String.format("%s: %s", getString(R.string.position_text), UtilityString.isNullOrEmpty(mtbColtToPick.getPosizione()) ? "N.A." : mtbColtToPick.getPosizione()));
@ -289,13 +292,36 @@ public class SpedizioneActivity extends BaseActivity implements SpedizioneViewMo
if (SettingsManager.iDB().isFlagForceAllToColli() || (x.getMtbAart() == null || !x.getMtbAart().isFlagQtaCnfFissaBoolean())) {
cloneModel.setUntMis("col");
cloneModel.setQtaTot(mtbColrToDispatch != null ? mtbColrToDispatch.getNumCnf() : x.getSitArtOrdDTO().getNumCnfOrd());
cloneModel.setQtaEvasa(numCnfWithdrawRows.getBigDecimalValue());
BigDecimal numCnfOrdToSubstract = UtilityBigDecimal.getLowerBetween(mtbColrToDispatch.getNumCnf(), numCnfOrdCounter);
BigDecimal qtaTot = UtilityBigDecimal.getLowerBetween(mtbColrToDispatch.getNumCnf(), numCnfOrdCounter);
if(UtilityBigDecimal.equalsTo(qtaTot, BigDecimal.ZERO) || UtilityBigDecimal.lowerThan(qtaTot, BigDecimal.ZERO)) continue;
cloneModel.setQtaTot(qtaTot);
numCnfOrdCounter = numCnfOrdCounter.subtract(numCnfOrdToSubstract);
BigDecimal qtaEvasa = Stream.of(x.getWithdrawMtbColrs())
.filter(y -> y.getRefMtbColr() != null &&
y.getRefMtbColr().getNumCollo().equals(mtbColrToDispatch.getNumCollo()) &&
y.getRefMtbColr().getDataColloD().equals(mtbColrToDispatch.getDataColloD()) &&
y.getRefMtbColr().getSerCollo().equals(mtbColrToDispatch.getSerCollo()) &&
y.getRefMtbColr().getGestioneEnum().equals(mtbColrToDispatch.getGestioneEnum()) &&
UtilityString.equalsIgnoreCase(y.getRefMtbColr().getCodMart(), mtbColrToDispatch.getCodMart()) &&
UtilityString.equalsIgnoreCase(y.getRefMtbColr().getCodTagl(), mtbColrToDispatch.getCodTagl()) &&
UtilityString.equalsIgnoreCase(y.getRefMtbColr().getCodCol(), mtbColrToDispatch.getCodCol()))
.map(MtbColr::getNumCnf)
.reduce(BigDecimal.ZERO, BigDecimal::add);
cloneModel.setQtaEvasa(qtaEvasa);
} else {
BigDecimal qtaOrdToSubstract = UtilityBigDecimal.getLowerBetween(mtbColrToDispatch.getQtaCol(), qtaColOrdCounter);
cloneModel.setQtaTot(UtilityBigDecimal.getLowerBetween(mtbColrToDispatch.getQtaCol(), qtaColOrdCounter));
BigDecimal qtaTot = UtilityBigDecimal.getLowerBetween(mtbColrToDispatch.getQtaCol(), qtaColOrdCounter);
if(UtilityBigDecimal.equalsTo(qtaTot, BigDecimal.ZERO) || UtilityBigDecimal.lowerThan(qtaTot, BigDecimal.ZERO)) continue;
cloneModel.setQtaTot(qtaTot);
qtaColOrdCounter = qtaColOrdCounter.subtract(qtaOrdToSubstract);
BigDecimal qtaEvasa = Stream.of(x.getWithdrawMtbColrs())

View File

@ -1,7 +1,5 @@
package it.integry.integrywmsnative.gest.spedizione;
import javax.inject.Singleton;
import dagger.Module;
import dagger.Provides;
import it.integry.integrywmsnative.core.data_recover.ColliDataRecoverService;
@ -16,13 +14,11 @@ import it.integry.integrywmsnative.view.bottom_sheet__lu_content.BottomSheetFrag
public class SpedizioneModule {
@Provides
@Singleton
BottomSheetFragmentLUContentViewModel providesBottomSheetFragmentLUContentViewModel() {
return new BottomSheetFragmentLUContentViewModel();
}
@Provides
@Singleton
SpedizioneViewModel providesSpedizioneViewModel(ArticoloRESTConsumer articoloRESTConsumer, ColliDataRecoverService colliDataRecoverService, OrdiniRESTConsumer ordiniRESTConsumer, ColliMagazzinoRESTConsumer colliMagazzinoRESTConsumer, PrinterRESTConsumer printerRESTConsumer, BarcodeRESTConsumer barcodeRESTConsumer) {
return new SpedizioneViewModel(articoloRESTConsumer, barcodeRESTConsumer, colliDataRecoverService, ordiniRESTConsumer, colliMagazzinoRESTConsumer, printerRESTConsumer);
}

View File

@ -1269,11 +1269,14 @@ public class SpedizioneViewModel {
this.mColliMagazzinoRESTConsumer.saveCollo(mtbColt, (value) -> {
PickingObjectDTO pickingObjectDTO = Stream.of(this.mPickingList.getValue())
Optional<PickingObjectDTO> pickingObjectDTO = Stream.of(this.mPickingList.getValue())
.filter(x -> Stream.of(x.getWithdrawMtbColrs()).anyMatch(y -> y == mtbColrToDelete))
.single();
.findSingle();
if(pickingObjectDTO.isPresent()) {
pickingObjectDTO.get().getWithdrawMtbColrs().remove(mtbColrToDelete);
}
pickingObjectDTO.getWithdrawMtbColrs().remove(mtbColrToDelete);
this.mCurrentMtbColt.getMtbColr().remove(mtbColrToDelete);
this.resetMatchedRows();

View File

@ -92,7 +92,7 @@ public class UltimeConsegneClienteViewModel {
}
UltimeConsegneClienteRESTConsumer.getUltimeConsegneClienti(
SettingsManager.i().userSession.depo.getCodMdep(),
SettingsManager.i().getUserSession().getDepo().getCodMdep(),
currentCodAnagFilter,
null,
null,

View File

@ -110,7 +110,7 @@ public class UltimiArriviFornitoreViewModel {
UltimiArriviFornitoreRESTConsumer.getUltimeConsegneFornitori(
SettingsManager.i().userSession.depo.getCodMdep(),
SettingsManager.i().getUserSession().getDepo().getCodMdep(),
currentCodAnagFilter,
null,
null,

View File

@ -141,7 +141,9 @@ public class MainListVenditaAdapter extends SectionedRecyclerViewAdapter<MainLis
String testataDataConsString = String.format(mContext.getString(R.string.ord_ven_testata_data_cons), UtilityDate.formatDate(ordine.getDataConsD(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN));
holder.binding.venditaMainListGroupItemContainerTestataDataCons.setText(Html.fromHtml(testataDataConsString));
holder.binding.venditaMainListGroupItemContainerDetailOrd.setText(ordine.getRifOrd());
if(!UtilityString.isNullOrEmpty(ordine.getRifOrd()))
holder.binding.venditaMainListGroupItemContainerDetailOrd.setText(ordine.getRifOrd());
else holder.binding.venditaMainListGroupItemContainerDetailOrd.setText(ordine.getCodJcom());
if (!UtilityString.isNullOrEmpty(mDataset.get(itemPosition).getDescrizioneVettore())) {

View File

@ -43,7 +43,7 @@ public class VenditaHelper {
}
public void loadOrdini(RunnableArgs<List<OrdineVenditaInevasoDTO>> onComplete, RunnableArgs<Exception> onFailed){
String codMdep = SettingsManager.i().userSession.depo.getCodMdep();
String codMdep = SettingsManager.i().getUserSession().getDepo().getCodMdep();
Trace perfTrace = UtilityFirebase.getNewPerformanceTrace("db_load_ords_v");
perfTrace.start();
@ -88,7 +88,7 @@ public class VenditaHelper {
public void retrievePickingList(List<String> barcodeOrdini, String dateCons, RunnableArgs<List<PickingObjectDTOOld>> onComplete, RunnableArgs<Exception> onFailed){
String codMdep = SettingsManager.i().userSession.depo.getCodMdep();
String codMdep = SettingsManager.i().getUserSession().getDepo().getCodMdep();
String joinedBarcodes = TextUtils.join(",", barcodeOrdini);
@ -133,7 +133,7 @@ public class VenditaHelper {
}
public void retrievePickingListNew(List<OrdineVenditaInevasoDTO> orders, RunnableArgs<List<PickingObjectDTOOld>> onComplete, RunnableArgs<Exception> onFailed){
String codMdep = SettingsManager.i().userSession.depo.getCodMdep();
String codMdep = SettingsManager.i().getUserSession().getDepo().getCodMdep();
List<GetPickingListDTO> getPickingListDTOs = Stream.of(orders)
.map(x -> new GetPickingListDTO()
@ -243,7 +243,7 @@ public class VenditaHelper {
testataCollo.getSerCollo(),
testataCollo.getGestione(),
GestioneEnum.VENDITA.getText(),
SettingsManager.i().userSession.depo.getCodMdep())
SettingsManager.i().getUserSession().getDepo().getCodMdep())
.enqueue(new Callback<ServiceRESTResponse<List<DtbOrdt>>>() {
@Override
public void onResponse(Call<ServiceRESTResponse<List<DtbOrdt>>> call, Response<ServiceRESTResponse<List<DtbOrdt>>> response) {

View File

@ -290,7 +290,7 @@ public class VersamentoMerceViewModel {
.setSerColloRif(null)
.setDataColloRif((String) null)
.setCausale(MtbColr.Causale.VERSAMENTO)
.setUtente(SettingsManager.i().user.fullname)
.setUtente(SettingsManager.i().getUser().getFullname())
.setQtaCol(stornoSourceMtbColr.getQtaCol().multiply(new BigDecimal(-1)));
@ -315,7 +315,7 @@ public class VersamentoMerceViewModel {
.setNumCollo(null)
.setDataCollo(null)
.setCausale(MtbColr.Causale.VERSAMENTO)
.setUtente(SettingsManager.i().user.fullname);
.setUtente(SettingsManager.i().getUser().getFullname());
mtbColrDestObservableField.add(cloneMtbColr);
}

View File

@ -2,11 +2,6 @@ package it.integry.integrywmsnative.view.dialogs.ask_position_of_lu;
import android.app.Dialog;
import android.content.Context;
import androidx.appcompat.widget.AppCompatTextView;
import androidx.databinding.DataBindingUtil;
import com.google.android.material.textfield.TextInputLayout;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.text.Editable;
@ -14,11 +9,16 @@ import android.text.TextWatcher;
import android.view.LayoutInflater;
import android.widget.TextView;
import androidx.appcompat.widget.AppCompatTextView;
import androidx.databinding.DataBindingUtil;
import com.google.android.material.textfield.TextInputLayout;
import java.util.ArrayList;
import java.util.List;
import it.integry.barcode_base_android_library.model.BarcodeScanDTO;
import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer;
import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO;
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
@ -29,10 +29,8 @@ import it.integry.integrywmsnative.core.utility.UtilityBarcode;
import it.integry.integrywmsnative.core.utility.UtilityDialog;
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
import it.integry.integrywmsnative.core.utility.UtilityPosizione;
import it.integry.integrywmsnative.core.utility.UtilityProgress;
import it.integry.integrywmsnative.databinding.DialogAskPositionOfLuBinding;
import it.integry.integrywmsnative.view.dialogs.DialogConsts;
import it.integry.barcode_base_android_library.model.BarcodeScanDTO;
public class DialogAskPositionOfLU {
@ -143,6 +141,8 @@ public class DialogAskPositionOfLU {
if(!completedFlow) onComplete.run(DialogConsts.Results.ABORT, null);
});
BarcodeManager.enable();
}
@ -162,23 +162,11 @@ public class DialogAskPositionOfLU {
askLivello();
BarcodeManager.enable();
} else {
if(mtbColt != null) {
updatePosizione(foundPosizione, () -> {
completedFlow = true;
BarcodeManager.enable();
if(onComplete != null) onComplete.run(DialogConsts.Results.YES, foundPosizione);
}, ex -> {
completedFlow = true;
BarcodeManager.enable();
onFailed.run(ex);
});
} else {
completedFlow = true;
if(onComplete != null) onComplete.run(DialogConsts.Results.YES, foundPosizione);
completedFlow = true;
if(onComplete != null) onComplete.run(DialogConsts.Results.YES, foundPosizione);
mDialog.dismiss();
BarcodeManager.enable();
}
mDialog.dismiss();
BarcodeManager.enable();
}
} else {
@ -200,25 +188,9 @@ public class DialogAskPositionOfLU {
if(foundPosizione != null) {
resetLevelError();
if(mtbColt != null) {
Dialog progressDialog = UtilityProgress.createDefaultProgressDialog(mContext);
ColliMagazzinoRESTConsumer.changePosizione(mtbColt, foundPosizione, () -> {
progressDialog.dismiss();
completedFlow = true;
if(onComplete != null) onComplete.run(DialogConsts.Results.YES, foundPosizione);
mDialog.dismiss();
}, ex -> {
UtilityExceptions.defaultException(mContext, ex, progressDialog);
completedFlow = true;
if(onFailed != null) onFailed.run(ex);
mDialog.dismiss();
});
} else {
completedFlow = true;
if(onComplete != null) onComplete.run(DialogConsts.Results.YES, foundPosizione);
mDialog.dismiss();
}
completedFlow = true;
if(onComplete != null) onComplete.run(DialogConsts.Results.YES, foundPosizione);
mDialog.dismiss();
} else {
setLevelError(mContext.getResources().getString(R.string.not_valid));
@ -251,21 +223,4 @@ public class DialogAskPositionOfLU {
mDialog.dismiss();
}
private void updatePosizione(MtbDepoPosizione mtbDepoPosizione, Runnable onComplete, RunnableArgs<Exception> onFailed) {
final Dialog progressDialog = UtilityProgress.createDefaultProgressDialog(mContext);
ColliMagazzinoRESTConsumer.changePosizione(mtbColt, mtbDepoPosizione, () -> {
progressDialog.dismiss();
onComplete.run();
}, ex -> {
progressDialog.dismiss();
onFailed.run(ex);
});
}
}

View File

@ -2,7 +2,7 @@
buildscript {
ext {
kotlin_version = '1.3.72'
kotlin_version = '1.4.10'
}
repositories {
@ -12,11 +12,11 @@ buildscript {
dependencies {
classpath 'com.android.tools.build:gradle:4.0.1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath 'com.google.gms:google-services:4.3.3'
classpath 'com.google.gms:google-services:4.3.4'
classpath 'com.google.firebase:perf-plugin:1.3.1'
// Add the Firebase Crashlytics Gradle plugin.
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.0.0-beta02'
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.3.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files

View File

@ -24,7 +24,7 @@ public class OrdiniVendita implements IOrdiniVendita {
//Se il deposito del collo è diverso dal deposito dell'utente allora sto "evadendo" la merce per una vendita presente
//su un altro deposito
if(!UtilityString.isNullOrEmpty(codMdepOrder) &&
!codMdepOrder.equalsIgnoreCase(SettingsManager.i().userSession.depo.getCodMdep())) {
!codMdepOrder.equalsIgnoreCase(SettingsManager.i().getUserSession().getDepo().getCodMdep())) {
ColliMagazzinoRESTConsumer.distribuisciCollo(mtbColt,
DistribuzioneColloDTO.CriterioDistribuzione.UPDATE,

View File

@ -36,5 +36,3 @@ android.enableBuildCache=true
org.gradle.caching=true
# Increase memory allotted to JVM
org.gradle.jvmargs=-Xmx4096m
org.gradle.java.home=C\:\\Program Files\\Java\\jre1.8.0_202