Finish v1_0_21(24)

This commit is contained in:
Giuseppe Scorrano 2019-01-15 17:48:26 +01:00
commit 9085a1e7cf
40 changed files with 1029 additions and 424 deletions

46
.idea/assetWizardSettings.xml generated Normal file
View File

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="WizardSettings">
<option name="children">
<map>
<entry key="vectorWizard">
<value>
<PersistentState>
<option name="children">
<map>
<entry key="vectorAssetStep">
<value>
<PersistentState>
<option name="children">
<map>
<entry key="clipartAsset">
<value>
<PersistentState>
<option name="values">
<map>
<entry key="url" value="jar:file:/C:/Program%20Files/Android/Android%20Studio/plugins/android/lib/android.jar!/images/material_design_icons/file/ic_file_upload_black_24dp.xml" />
</map>
</option>
</PersistentState>
</value>
</entry>
</map>
</option>
<option name="values">
<map>
<entry key="outputName" value="ic_upload_black_24dp" />
<entry key="sourceFile" value="C:\Users\GiuseppeS" />
</map>
</option>
</PersistentState>
</value>
</entry>
</map>
</option>
</PersistentState>
</value>
</entry>
</map>
</option>
</component>
</project>

Binary file not shown.

View File

@ -17,8 +17,8 @@ apply plugin: 'com.google.gms.google-services'
android { android {
def appVersionCode = 23 def appVersionCode = 24
def appVersionName = '1.0.20' def appVersionName = '1.0.21'
signingConfigs { signingConfigs {
release { release {

View File

@ -1,6 +1,8 @@
package it.integry.integrywmsnative; package it.integry.integrywmsnative;
import android.content.Intent; import android.content.Intent;
import androidx.annotation.IdRes;
import androidx.databinding.DataBindingUtil; import androidx.databinding.DataBindingUtil;
import android.os.Bundle; import android.os.Bundle;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
@ -21,8 +23,8 @@ import android.widget.ImageView;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import android.widget.TextView; import android.widget.TextView;
import androidx.fragment.app.FragmentTransaction;
import it.integry.integrywmsnative.core.REST.watcher.ServerStatusChecker; import it.integry.integrywmsnative.core.REST.watcher.ServerStatusChecker;
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
import it.integry.integrywmsnative.core.interfaces.IFilterableFragment; import it.integry.integrywmsnative.core.interfaces.IFilterableFragment;
import it.integry.integrywmsnative.core.interfaces.IRecyclerFragment; import it.integry.integrywmsnative.core.interfaces.IRecyclerFragment;
import it.integry.integrywmsnative.core.interfaces.ISelectAllFragment; import it.integry.integrywmsnative.core.interfaces.ISelectAllFragment;
@ -34,6 +36,7 @@ import it.integry.integrywmsnative.gest.accettazione.MainAccettazioneFragment;
import it.integry.integrywmsnative.core.interfaces.ITitledFragment; import it.integry.integrywmsnative.core.interfaces.ITitledFragment;
import it.integry.integrywmsnative.gest.login.LoginActivity; import it.integry.integrywmsnative.gest.login.LoginActivity;
import it.integry.integrywmsnative.gest.main.MainFragment; import it.integry.integrywmsnative.gest.main.MainFragment;
import it.integry.integrywmsnative.gest.picking_libero.PickingLiberoFragment;
import it.integry.integrywmsnative.gest.rettifica_giacenze.RettificaGiacenzeFragment; import it.integry.integrywmsnative.gest.rettifica_giacenze.RettificaGiacenzeFragment;
import it.integry.integrywmsnative.gest.settings.MainSettingsFragment; import it.integry.integrywmsnative.gest.settings.MainSettingsFragment;
import it.integry.integrywmsnative.gest.vendita.MainVenditaFragment; import it.integry.integrywmsnative.gest.vendita.MainVenditaFragment;
@ -71,7 +74,7 @@ public class MainActivity extends AppCompatActivity
mBinding.navView.setNavigationItemSelectedListener(this); mBinding.navView.setNavigationItemSelectedListener(this);
mBinding.appBarMain.mainSearch.setVisibility(View.GONE); mBinding.appBarMain.mainSearch.setVisibility(View.GONE);
changeContentFragment(MainFragment.newInstance()); popToMain();
init(); init();
} }
@ -91,9 +94,16 @@ public class MainActivity extends AppCompatActivity
if (drawer.isDrawerOpen(GravityCompat.START)) { if (drawer.isDrawerOpen(GravityCompat.START)) {
drawer.closeDrawer(GravityCompat.START); drawer.closeDrawer(GravityCompat.START);
} else { } else {
int count = getSupportFragmentManager().getBackStackEntryCount();
if (count == 0) {
super.onBackPressed(); super.onBackPressed();
} else {
getSupportFragmentManager().popBackStack();
} }
} }
}
@Override @Override
public boolean onCreateOptionsMenu(Menu menu) { public boolean onCreateOptionsMenu(Menu menu) {
@ -102,19 +112,11 @@ public class MainActivity extends AppCompatActivity
return true; return true;
} }
@Override public void setItem(@IdRes int menuId) {
public boolean onOptionsItemSelected(MenuItem item) { mBinding.navView.setCheckedItem(menuId);
// Handle action bar item clicks here. The action bar will onNavigationItemSelected(mBinding.navView.getMenu().findItem(menuId));
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
// if (id == R.id.action_search) {
// return true;
// }
return super.onOptionsItemSelected(item);
} }
@SuppressWarnings("StatementWithEmptyBody") @SuppressWarnings("StatementWithEmptyBody")
@ -128,25 +130,24 @@ public class MainActivity extends AppCompatActivity
Fragment fragment = null; Fragment fragment = null;
int id = item.getItemId(); int id = item.getItemId();
if (id == R.id.nav_accettazione) { if (id == R.id.nav_home) {
this.popToMain();
} else if (id == R.id.nav_accettazione) {
fragment = MainAccettazioneFragment.newInstance(); fragment = MainAccettazioneFragment.newInstance();
this.adaptViewToFragment(fragment); this.adaptViewToFragment(fragment);
} else if (id == R.id.nav_gallery) { } else if (id == R.id.nav_spedizione) {
fragment = MainVenditaFragment.newInstance(); fragment = MainVenditaFragment.newInstance();
this.adaptViewToFragment(fragment); this.adaptViewToFragment(fragment);
} else if (id == R.id.nav_slideshow) { } else if (id == R.id.nav_rettifica_giacenze) {
fragment = RettificaGiacenzeFragment.newInstance(); fragment = RettificaGiacenzeFragment.newInstance();
this.adaptViewToFragment(fragment); this.adaptViewToFragment(fragment);
} else if (id == R.id.nav_manage) { } else if (id == R.id.nav_versamento_merce) {
fragment = VersamentoMerceFragment.newInstance(); fragment = VersamentoMerceFragment.newInstance();
this.adaptViewToFragment(fragment); this.adaptViewToFragment(fragment);
} else if (id == R.id.nav_free_picking) {
fragment = PickingLiberoFragment.newInstance();
this.adaptViewToFragment(fragment);
} }
/*else if (id == R.id.nav_share) {
} else if (id == R.id.nav_send) {
}*/
else if(id == R.id.nav_settings){ else if(id == R.id.nav_settings){
fragment = new MainSettingsFragment(); fragment = new MainSettingsFragment();
@ -158,7 +159,7 @@ public class MainActivity extends AppCompatActivity
startLoginActivity(); startLoginActivity();
} }
changeContentFragment(fragment); changeContentFragment(fragment, true);
DrawerLayout drawer = findViewById(R.id.drawer_layout); DrawerLayout drawer = findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START); drawer.closeDrawer(GravityCompat.START);
@ -170,7 +171,7 @@ public class MainActivity extends AppCompatActivity
adaptViewToFragment(mainFragment); adaptViewToFragment(mainFragment);
changeContentFragment(mainFragment); changeContentFragment(mainFragment, false);
} }
private void adaptViewToFragment(Fragment fragment){ private void adaptViewToFragment(Fragment fragment){
@ -184,7 +185,7 @@ public class MainActivity extends AppCompatActivity
if(fragment instanceof ITitledFragment) { if(fragment instanceof ITitledFragment) {
getSupportActionBar().setTitle(((ITitledFragment) fragment).getTitle(this)); ((ITitledFragment) fragment).onCreateActionBar(getSupportActionBar(), this);
} else { } else {
getSupportActionBar().setTitle(R.string.app_name); getSupportActionBar().setTitle(R.string.app_name);
} }
@ -210,11 +211,16 @@ public class MainActivity extends AppCompatActivity
} }
} }
private void changeContentFragment(Fragment fragment){ private void changeContentFragment(Fragment fragment, boolean addToBackStack){
if (fragment != null) { if (fragment != null) {
FragmentManager fragmentManager = getSupportFragmentManager(); FragmentManager fragmentManager = getSupportFragmentManager();
fragmentManager.beginTransaction() FragmentTransaction ft = fragmentManager
.replace(R.id.frame_container, fragment).commit(); .beginTransaction()
.replace(R.id.frame_container, fragment);
if(addToBackStack) ft.addToBackStack(fragment.getTag());
ft.commit();
} }
} }

View File

@ -134,16 +134,9 @@ public class ColliMagazzinoRESTConsumer extends _BaseRESTConsumer{
mtbColtToCreate.setSerCollo(customSerCollo); mtbColtToCreate.setSerCollo(customSerCollo);
} }
Calendar calendar = Calendar.getInstance(); if(!UtilityBarcode.isEtichettaAnonimaOfCurrentYear(barcode)) {
int currentYear = calendar.get(Calendar.YEAR);
String fullYear = "20" + UtilityBarcode.getAnnoColloFromULAnonima(barcode);
if(!fullYear.equalsIgnoreCase("" + currentYear)){
onFailed.run(new Exception("Per continuare scansiona un'etichetta dell'anno corrente")); onFailed.run(new Exception("Per continuare scansiona un'etichetta dell'anno corrente"));
return;
} }
mtbColtToCreate mtbColtToCreate

View File

@ -9,6 +9,8 @@ import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.model.MtbColt; import it.integry.integrywmsnative.core.model.MtbColt;
import it.integry.integrywmsnative.core.utility.UtilityLogger; import it.integry.integrywmsnative.core.utility.UtilityLogger;
import it.integry.integrywmsnative.core.utility.UtilityServer;
import it.integry.integrywmsnative.core.utility.UtilityString;
import retrofit2.Call; import retrofit2.Call;
import retrofit2.Callback; import retrofit2.Callback;
import retrofit2.Response; import retrofit2.Response;
@ -88,6 +90,11 @@ public class PrinterRESTConsumer extends _BaseRESTConsumer {
public static void printCollo(String printerName, MtbColt testataColloToPrint, int quantity, String reportName, Runnable onComplete, RunnableArgs<Exception> onFailed) { public static void printCollo(String printerName, MtbColt testataColloToPrint, int quantity, String reportName, Runnable onComplete, RunnableArgs<Exception> onFailed) {
if(UtilityString.isNullOrEmpty(printerName)) {
onFailed.run(new Exception("Nessuna stampante configurata: valore null"));
return;
}
PrinterRESTConsumerService printerService = RESTBuilder.getService(PrinterRESTConsumerService.class); PrinterRESTConsumerService printerService = RESTBuilder.getService(PrinterRESTConsumerService.class);
printerService.printCollo( printerService.printCollo(
printerName, printerName,

View File

@ -19,12 +19,9 @@ public class ExpandableLayoutBinders {
view.setOnExpansionUpdateListener(null); view.setOnExpansionUpdateListener(null);
} }
ExpandableLayout.OnExpansionUpdateListener watcher = new ExpandableLayout.OnExpansionUpdateListener() { ExpandableLayout.OnExpansionUpdateListener watcher = (expansionFraction, state) -> {
@Override
public void onExpansionUpdate(float expansionFraction, int state) {
if(view.isExpanded() == bindableBoolean.get()) return; if(view.isExpanded() == bindableBoolean.get()) return;
bindableBoolean.set(state == 1); bindableBoolean.set(state == 1);
}
}; };
view.setTag(R.id.bound_observable, new Pair<>(bindableBoolean, watcher)); view.setTag(R.id.bound_observable, new Pair<>(bindableBoolean, watcher));

View File

@ -2,12 +2,14 @@ package it.integry.integrywmsnative.core.interfaces;
import android.content.Context; import android.content.Context;
import androidx.appcompat.app.ActionBar;
/** /**
* Created by GiuseppeS on 07/03/2018. * Created by GiuseppeS on 07/03/2018.
*/ */
public interface ITitledFragment { public interface ITitledFragment {
String getTitle(Context context); void onCreateActionBar(ActionBar actionBar, Context context);
} }

View File

@ -2,6 +2,8 @@ package it.integry.integrywmsnative.core.utility;
import com.annimon.stream.Stream; import com.annimon.stream.Stream;
import java.util.Calendar;
import it.integry.integrywmsnative.core.model.MtbDepoPosizione; import it.integry.integrywmsnative.core.model.MtbDepoPosizione;
import it.integry.integrywmsnative.core.settings.SettingsManager; import it.integry.integrywmsnative.core.settings.SettingsManager;
import it.integry.plugins.barcode_base_library.model.BarcodeScanDTO; import it.integry.plugins.barcode_base_library.model.BarcodeScanDTO;
@ -13,6 +15,14 @@ public class UtilityBarcode {
return barcodeScanDTO != null && barcodeScanDTO.getType() == BarcodeType.CODE128 && barcodeScanDTO.getStringValue().startsWith("U"); return barcodeScanDTO != null && barcodeScanDTO.getType() == BarcodeType.CODE128 && barcodeScanDTO.getStringValue().startsWith("U");
} }
public static boolean isEtichettaAnonimaOfCurrentYear(String barcode) {
Calendar calendar = Calendar.getInstance();
int currentYear = calendar.get(Calendar.YEAR);
String fullYear = "20" + UtilityBarcode.getAnnoColloFromULAnonima(barcode);
return fullYear.equalsIgnoreCase("" + currentYear);
}
public static boolean isEtichetta128(BarcodeScanDTO barcodeScanDTO){ public static boolean isEtichetta128(BarcodeScanDTO barcodeScanDTO){
return barcodeScanDTO != null && (barcodeScanDTO.getType() == BarcodeType.CODE128 || barcodeScanDTO.getType() == BarcodeType.EAN128); return barcodeScanDTO != null && (barcodeScanDTO.getType() == BarcodeType.CODE128 || barcodeScanDTO.getType() == BarcodeType.EAN128);
} }

View File

@ -19,6 +19,11 @@ public class UtilityExceptions {
progressDialog.dismiss(); progressDialog.dismiss();
defaultException(context, ex); defaultException(context, ex);
} }
public static void defaultException(Context context, Exception ex, ProgressDialog progressDialog, boolean sendMail){
progressDialog.dismiss();
defaultException(context, ex, sendMail);
}
public static void defaultException(Context context, Exception ex){ public static void defaultException(Context context, Exception ex){
defaultException(context, ex, false); defaultException(context, ex, false);
} }

View File

@ -33,19 +33,19 @@ public class WiFiCheckerViewHolder implements ISingleValueOperationCallback<WiFi
public void onResult(WiFiStatusChecker.SIGNAL value) { public void onResult(WiFiStatusChecker.SIGNAL value) {
switch (value){ switch (value){
case EXCELLENT: case EXCELLENT:
mWifiSignalTextView.setText("EXCELLENT"); mWifiSignalTextView.setText("ECCELLENTE");
break; break;
case GOOD: case GOOD:
mWifiSignalTextView.setText("GOOD"); mWifiSignalTextView.setText("BUONO");
break; break;
case FAIR: case FAIR:
mWifiSignalTextView.setText("FAIR"); mWifiSignalTextView.setText("SUFFICIENTE");
break; break;
case WEAK: case WEAK:
mWifiSignalTextView.setText("WEAK"); mWifiSignalTextView.setText("SCARSO");
break; break;
case NONE: case NONE:
mWifiSignalTextView.setText("NONE"); mWifiSignalTextView.setText("NESSUNO");
break; break;
} }
} }

View File

@ -4,6 +4,8 @@ package it.integry.integrywmsnative.gest.accettazione;
import android.app.ProgressDialog; import android.app.ProgressDialog;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import androidx.appcompat.app.ActionBar;
import androidx.databinding.DataBindingUtil; import androidx.databinding.DataBindingUtil;
import android.os.Bundle; import android.os.Bundle;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
@ -69,9 +71,12 @@ public class MainAccettazioneFragment extends Fragment implements SearchView.OnQ
return fragment; return fragment;
} }
@Override @Override
public String getTitle(Context context){ public void onCreateActionBar(ActionBar actionBar, Context context) {
return context.getText(R.string.accettazione_title_fragment).toString(); actionBar.setTitle(context.getText(R.string.accettazione_title_fragment).toString());
} }
@Override @Override

View File

@ -226,8 +226,13 @@ public class AccettazioneOnOrdineAccettazioneInevasoViewModel implements IOnColl
ColliMagazzinoRESTConsumer.getBySSCC(barcodeScanDTO.getStringValue(), false, false, mtbColt -> { ColliMagazzinoRESTConsumer.getBySSCC(barcodeScanDTO.getStringValue(), false, false, mtbColt -> {
if(mtbColt == null) { if(mtbColt == null) {
if(!UtilityBarcode.isEtichettaAnonimaOfCurrentYear(barcodeScanDTO.getStringValue())) {
UtilityExceptions.defaultException(mActivity, new Exception("Per continuare scansiona un'etichetta dell'anno corrente"), progressDialog, false);
BarcodeManager.enable();
} else {
this.createNewUL(UtilityBarcode.getNumColloFromULAnonima(barcodeScanDTO.getStringValue()), CommonConst.Config.DEFAULT_ANONYMOUS_UL_SERIE, progressDialog, true, null); this.createNewUL(UtilityBarcode.getNumColloFromULAnonima(barcodeScanDTO.getStringValue()), CommonConst.Config.DEFAULT_ANONYMOUS_UL_SERIE, progressDialog, true, null);
BarcodeManager.enable(); BarcodeManager.enable();
}
} else { } else {
progressDialog.dismiss(); progressDialog.dismiss();
BarcodeManager.enable(); BarcodeManager.enable();
@ -566,7 +571,7 @@ public class AccettazioneOnOrdineAccettazioneInevasoViewModel implements IOnColl
return; return;
} }
PrinterRESTConsumer.getAvailablePrinters(SettingsManager.i().userSession.depo.getCodMdep(), new ISimpleOperationCallback<List<String>>() { PrinterRESTConsumer.getAvailablePrinters(SettingsManager.i().userSession.depo.getCodMdep(), PrinterRESTConsumer.Type.SECONDARIA, new ISimpleOperationCallback<List<String>>() {
@Override @Override
public void onSuccess(List<String> value) { public void onSuccess(List<String> value) {

View File

@ -3,6 +3,8 @@ package it.integry.integrywmsnative.gest.main;
import android.content.Context; import android.content.Context;
import android.os.Bundle; import android.os.Bundle;
import androidx.appcompat.app.ActionBar;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
@ -13,6 +15,8 @@ import net.cachapa.expandablelayout.ExpandableLayout;
import butterknife.BindView; import butterknife.BindView;
import butterknife.ButterKnife; import butterknife.ButterKnife;
import butterknife.OnClick;
import it.integry.integrywmsnative.MainActivity;
import it.integry.integrywmsnative.R; import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.REST.watcher.ServerStatusChecker; import it.integry.integrywmsnative.core.REST.watcher.ServerStatusChecker;
import it.integry.integrywmsnative.core.interfaces.ITitledFragment; import it.integry.integrywmsnative.core.interfaces.ITitledFragment;
@ -93,8 +97,35 @@ public class MainFragment extends Fragment implements ITitledFragment {
} }
@Override @Override
public String getTitle(Context context) { public void onCreateActionBar(ActionBar actionBar, Context context) {
return context.getString(R.string.app_name); actionBar.setTitle(context.getText(R.string.app_name).toString());
} }
@OnClick(R.id.fast_button_accettazione)
public void onClickAccettazione(View view) {
((MainActivity) getActivity()).setItem(R.id.nav_accettazione);
}
@OnClick(R.id.fast_button_spedizione)
public void onClickSpedizione(View view) {
((MainActivity) getActivity()).setItem(R.id.nav_spedizione);
}
@OnClick(R.id.fast_button_rettifica_giacenze)
public void onClickRettificaGiacenze(View view) {
((MainActivity) getActivity()).setItem(R.id.nav_rettifica_giacenze);
}
@OnClick(R.id.fast_button_versamento)
public void onClickVersamento(View view) {
((MainActivity) getActivity()).setItem(R.id.nav_versamento_merce);
}
@OnClick(R.id.fast_button_picking_libero)
public void onClickPickingLibero(View view) {
((MainActivity) getActivity()).setItem(R.id.nav_free_picking);
}
} }

View File

@ -27,13 +27,13 @@ public class PickingLiberoActivity extends AppCompatActivity {
mBindings = DataBindingUtil.setContentView(this, R.layout.activity_picking_libero); mBindings = DataBindingUtil.setContentView(this, R.layout.activity_picking_libero);
mHelper = new PickingLiberoHelper(this); mHelper = new PickingLiberoHelper(this);
/*
mViewModel = new PickingLiberoViewModel(); mViewModel = new PickingLiberoViewModel();
mViewModel.init(this, mBindings, mHelper); mViewModel.init(this, mBindings, mHelper, getSupportActionBar());
mBindings.setViewmodel(mViewModel); mBindings.setViewmodel(mViewModel);
setSupportActionBar(this.mBindings.toolbar); setSupportActionBar(this.mBindings.layout.toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true); getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setDisplayShowTitleEnabled(false); getSupportActionBar().setDisplayShowTitleEnabled(false);
@ -42,11 +42,12 @@ public class PickingLiberoActivity extends AppCompatActivity {
.setOnScanFailed(ex -> UtilityExceptions.defaultException(this, ex, false))); .setOnScanFailed(ex -> UtilityExceptions.defaultException(this, ex, false)));
mBindings.waterfallToolbar.setNestedScrollView(mBindings.scrollView); mBindings.layout.waterfallToolbar.setNestedScrollView(mBindings.layout.scrollView);
*/
} }
public void setTitle(String title) { public void setTitle(String title) {
mBindings.toolbarTitle.setText(title); mBindings.layout.toolbarTitle.setText(title);
} }
@Override @Override

View File

@ -0,0 +1,83 @@
package it.integry.integrywmsnative.gest.picking_libero;
import android.content.Context;
import android.os.Bundle;
import androidx.fragment.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import androidx.appcompat.app.ActionBar;
import androidx.databinding.DataBindingUtil;
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.interfaces.ITitledFragment;
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
import it.integry.integrywmsnative.databinding.FragmentPickingLiberoBinding;
import it.integry.integrywmsnative.gest.picking_libero.core.PickingLiberoHelper;
import it.integry.integrywmsnative.gest.picking_libero.viewmodel.PickingLiberoViewModel;
/**
* A simple {@link Fragment} subclass.
*/
public class PickingLiberoFragment extends Fragment implements ITitledFragment {
private FragmentPickingLiberoBinding mBindings;
private PickingLiberoHelper mHelper;
private PickingLiberoViewModel mViewModel;
private ActionBar mAppCompatActionBar;
private int barcodeScannerIstanceID = -1;
public PickingLiberoFragment() {
// Required empty public constructor
}
public static PickingLiberoFragment newInstance() {
PickingLiberoFragment fragment = new PickingLiberoFragment();
Bundle args = new Bundle();
fragment.setArguments(args);
return fragment;
}
@Override
public void onCreateActionBar(ActionBar actionBar, Context context) {
mAppCompatActionBar = actionBar;
mAppCompatActionBar.setTitle(context.getText(R.string.free_picking_title_fragment).toString());
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
mBindings = DataBindingUtil.inflate(inflater, R.layout.fragment_picking_libero, container, false);
mHelper = new PickingLiberoHelper(getActivity());
mViewModel = new PickingLiberoViewModel();
mViewModel.init(getActivity(), mBindings, mHelper, mAppCompatActionBar);
mBindings.setViewmodel(mViewModel);
barcodeScannerIstanceID = BarcodeManager.addCallback(new BarcodeCallbackDTO()
.setOnScanSuccessfull(mViewModel.onScanSuccessfull)
.setOnScanFailed(ex -> UtilityExceptions.defaultException(getActivity(), ex, false)));
mBindings.waterfallToolbar.setNestedScrollView(mBindings.scrollView);
return mBindings.getRoot();
}
}

View File

@ -2,6 +2,7 @@ package it.integry.integrywmsnative.gest.picking_libero.viewmodel;
import android.app.Activity; import android.app.Activity;
import android.app.ProgressDialog; import android.app.ProgressDialog;
import android.content.Context;
import android.text.SpannableString; import android.text.SpannableString;
import android.view.View; import android.view.View;
@ -15,6 +16,7 @@ import java.util.Iterator;
import java.util.List; import java.util.List;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.appcompat.app.ActionBar;
import androidx.core.content.ContextCompat; import androidx.core.content.ContextCompat;
import androidx.databinding.Observable; import androidx.databinding.Observable;
import androidx.databinding.ObservableArrayList; import androidx.databinding.ObservableArrayList;
@ -45,6 +47,7 @@ import it.integry.integrywmsnative.core.utility.UtilityNumber;
import it.integry.integrywmsnative.core.utility.UtilityProgress; import it.integry.integrywmsnative.core.utility.UtilityProgress;
import it.integry.integrywmsnative.core.utility.UtilityString; import it.integry.integrywmsnative.core.utility.UtilityString;
import it.integry.integrywmsnative.databinding.ActivityPickingLiberoBinding; import it.integry.integrywmsnative.databinding.ActivityPickingLiberoBinding;
import it.integry.integrywmsnative.databinding.FragmentPickingLiberoBinding;
import it.integry.integrywmsnative.gest.picking_libero.PickingLiberoActivity; import it.integry.integrywmsnative.gest.picking_libero.PickingLiberoActivity;
import it.integry.integrywmsnative.gest.picking_libero.core.PickingLiberoHelper; import it.integry.integrywmsnative.gest.picking_libero.core.PickingLiberoHelper;
import it.integry.integrywmsnative.gest.picking_libero.core.PickingLiberoListAdapter; import it.integry.integrywmsnative.gest.picking_libero.core.PickingLiberoListAdapter;
@ -67,16 +70,19 @@ public class PickingLiberoViewModel implements IRecyclerItemClicked<MtbColr> {
private BottomSheetBehavior mBottomSheetBehavior; private BottomSheetBehavior mBottomSheetBehavior;
private PickingLiberoActivity mContext; private Activity mContext;
private ActivityPickingLiberoBinding mBinding; private FragmentPickingLiberoBinding mBinding;
private PickingLiberoHelper mHelper; private PickingLiberoHelper mHelper;
private ActionBar mAppCompatActionBar;
private PickingLiberoListAdapter mAdapter; private PickingLiberoListAdapter mAdapter;
public void init(PickingLiberoActivity context, ActivityPickingLiberoBinding binding, PickingLiberoHelper helper) { public void init(Activity context, FragmentPickingLiberoBinding binding, PickingLiberoHelper helper, ActionBar appCompatActionBar) {
mContext = context; mContext = context;
mBinding = binding; mBinding = binding;
mHelper = helper; mHelper = helper;
mAppCompatActionBar = appCompatActionBar;
initObservable(); initObservable();
@ -101,14 +107,14 @@ public class PickingLiberoViewModel implements IRecyclerItemClicked<MtbColr> {
if(mtbColt.get() != null) { if(mtbColt.get() != null) {
initAdapter(); initAdapter();
mContext.setTitle(String.format(mContext.getText(R.string.lu_number_text).toString(), mtbColt.get().getNumCollo())); mAppCompatActionBar.setTitle(String.format(mContext.getText(R.string.lu_number_text).toString(), mtbColt.get().getNumCollo()));
initObservableMtbColr(); initObservableMtbColr();
} }
else { else {
destroyAdapter(); destroyAdapter();
mContext.setTitle(mContext.getText(R.string.free_picking).toString()); mAppCompatActionBar.setTitle(mContext.getText(R.string.free_picking).toString());
} }
thereIsAnOpenedUL.set(mtbColt.get() != null); thereIsAnOpenedUL.set(mtbColt.get() != null);

View File

@ -2,6 +2,8 @@ package it.integry.integrywmsnative.gest.rettifica_giacenze;
import android.content.Context; import android.content.Context;
import android.content.res.ColorStateList; import android.content.res.ColorStateList;
import androidx.appcompat.app.ActionBar;
import androidx.databinding.DataBindingUtil; import androidx.databinding.DataBindingUtil;
import android.os.Bundle; import android.os.Bundle;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
@ -99,15 +101,13 @@ public class RettificaGiacenzeFragment extends Fragment implements ITitledFragme
super.onDetach(); super.onDetach();
} }
@Override @Override
public String getTitle(Context context) { public void onCreateActionBar(ActionBar actionBar, Context context) {
return context.getResources().getString(R.string.rettifica_giacenze_fragment_title); actionBar.setTitle(context.getText(R.string.rettifica_giacenze_fragment_title).toString());
} }
public void setUIToForn() { public void setUIToForn() {
mBinding.rettificaGiacenzeFornCheckBox.setChecked(true); mBinding.rettificaGiacenzeFornCheckBox.setChecked(true);
mBinding.rettificaGiacenzeFornLayout.setBackground(getActivity().getResources().getDrawable(R.drawable.circular_background_left)); mBinding.rettificaGiacenzeFornLayout.setBackground(getActivity().getResources().getDrawable(R.drawable.circular_background_left));

View File

@ -1,6 +1,8 @@
package it.integry.integrywmsnative.gest.settings; package it.integry.integrywmsnative.gest.settings;
import android.content.Context; import android.content.Context;
import androidx.appcompat.app.ActionBar;
import androidx.databinding.DataBindingUtil; import androidx.databinding.DataBindingUtil;
import android.os.Bundle; import android.os.Bundle;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
@ -29,8 +31,8 @@ public class MainSettingsFragment extends Fragment implements ITitledFragment {
} }
@Override @Override
public String getTitle(Context context){ public void onCreateActionBar(ActionBar actionBar, Context context) {
return context.getText(R.string.settings_category).toString(); actionBar.setTitle(context.getText(R.string.settings_category).toString());
} }
@Override @Override

View File

@ -2,6 +2,8 @@ package it.integry.integrywmsnative.gest.settings;
import android.content.Context; import android.content.Context;
import android.os.Bundle; import android.os.Bundle;
import androidx.appcompat.app.ActionBar;
import androidx.preference.CheckBoxPreference; import androidx.preference.CheckBoxPreference;
import androidx.preference.EditTextPreference; import androidx.preference.EditTextPreference;
import androidx.preference.ListPreference; import androidx.preference.ListPreference;
@ -43,10 +45,9 @@ public class SettingsPreferenceFragment extends PreferenceFragmentCompat impleme
} }
@Override @Override
public String getTitle(Context context) { public void onCreateActionBar(ActionBar actionBar, Context context) {
return context.getText(R.string.settings_category).toString(); actionBar.setTitle(context.getText(R.string.settings_category).toString());
} }

View File

@ -3,6 +3,8 @@ package it.integry.integrywmsnative.gest.vendita;
import android.app.ProgressDialog; import android.app.ProgressDialog;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import androidx.appcompat.app.ActionBar;
import androidx.databinding.DataBindingUtil; import androidx.databinding.DataBindingUtil;
import android.os.Bundle; import android.os.Bundle;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
@ -81,8 +83,8 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IR
} }
@Override @Override
public String getTitle(Context context){ public void onCreateActionBar(ActionBar actionBar, Context context) {
return context.getText(R.string.vendita_title_fragment).toString(); actionBar.setTitle(context.getText(R.string.vendita_title_fragment).toString());
} }
@Override @Override
@ -129,10 +131,10 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IR
@Override @Override
public boolean onOptionsItemSelected(MenuItem item) { public boolean onOptionsItemSelected(MenuItem item) {
if(item.getItemId() == R.id.action_free_picking) { // if(item.getItemId() == R.id.action_free_picking) {
Intent myIntent = new Intent(getActivity(), PickingLiberoActivity.class); // Intent myIntent = new Intent(getActivity(), PickingLiberoActivity.class);
startActivity(myIntent); // startActivity(myIntent);
} // }
return true; return true;

View File

@ -12,6 +12,7 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
import it.integry.integrywmsnative.R; import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.CommonConst;
import it.integry.integrywmsnative.core.REST.consumers.BarcodeRESTConsumer; import it.integry.integrywmsnative.core.REST.consumers.BarcodeRESTConsumer;
import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer;
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
@ -60,7 +61,9 @@ public class VenditaViewModel {
BarcodeManager.disable(); BarcodeManager.disable();
final ProgressDialog progressDialog = UtilityProgress.createDefaultProgressDialog(mContext); final ProgressDialog progressDialog = UtilityProgress.createDefaultProgressDialog(mContext);
if(UtilityBarcode.isEtichetta128(data)){ if(UtilityBarcode.isEtichettaAnonima(data)) {
this.executeEtichettaLU(data.getStringValue(), progressDialog);
} else if(UtilityBarcode.isEtichetta128(data)){
this.executeEtichettaEan128(data, progressDialog); this.executeEtichettaEan128(data, progressDialog);
} else { } else {
progressDialog.dismiss(); progressDialog.dismiss();
@ -69,8 +72,6 @@ public class VenditaViewModel {
}; };
private void executeEtichettaEan128(BarcodeScanDTO barcodeScanDTO, ProgressDialog progressDialog) { private void executeEtichettaEan128(BarcodeScanDTO barcodeScanDTO, ProgressDialog progressDialog) {
BarcodeRESTConsumer.decodeEan128(barcodeScanDTO, ean128Model -> { BarcodeRESTConsumer.decodeEan128(barcodeScanDTO, ean128Model -> {

View File

@ -47,7 +47,9 @@ import it.integry.integrywmsnative.view.bottomsheet.interfaces.IOnColloClosedCal
import it.integry.integrywmsnative.view.bottomsheet.viewmodel.ArticoliInColloBottomSheetViewModel; import it.integry.integrywmsnative.view.bottomsheet.viewmodel.ArticoliInColloBottomSheetViewModel;
import it.integry.integrywmsnative.BR; import it.integry.integrywmsnative.BR;
import it.integry.integrywmsnative.view.dialogs.DialogAskLivelloPosizione;
import it.integry.integrywmsnative.view.dialogs.DialogSimpleMessageHelper; import it.integry.integrywmsnative.view.dialogs.DialogSimpleMessageHelper;
import it.integry.integrywmsnative.view.dialogs.ask_should_print.DialogAskShouldPrint;
import it.integry.integrywmsnative.view.dialogs.input_quantity.DialogInputQuantity; import it.integry.integrywmsnative.view.dialogs.input_quantity.DialogInputQuantity;
import it.integry.integrywmsnative.view.dialogs.input_quantity.QuantityDTO; import it.integry.integrywmsnative.view.dialogs.input_quantity.QuantityDTO;
import it.integry.plugins.barcode_base_library.model.BarcodeScanDTO; import it.integry.plugins.barcode_base_library.model.BarcodeScanDTO;
@ -342,11 +344,18 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
ColliMagazzinoRESTConsumer.getBySSCC(barcodeScanDTO.getStringValue(), true, false, mtbColt -> { ColliMagazzinoRESTConsumer.getBySSCC(barcodeScanDTO.getStringValue(), true, false, mtbColt -> {
if(mtbColt == null) { if(mtbColt == null) {
if(!UtilityBarcode.isEtichettaAnonimaOfCurrentYear(barcodeScanDTO.getStringValue())) {
UtilityExceptions.defaultException(mActivity, new Exception("Per continuare scansiona un'etichetta dell'anno corrente"), progressDialog, false);
BarcodeManager.enable();
} else {
this.createNewUL( this.createNewUL(
UtilityBarcode.getNumColloFromULAnonima(barcodeScanDTO.getStringValue()), UtilityBarcode.getNumColloFromULAnonima(barcodeScanDTO.getStringValue()),
CommonConst.Config.DEFAULT_ANONYMOUS_UL_SERIE, progressDialog, CommonConst.Config.DEFAULT_ANONYMOUS_UL_SERIE, progressDialog,
true, true, true, true,
null); null);
}
} else { } else {
this.createNewUL( this.createNewUL(
@ -733,13 +742,15 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
} }
private void printCollo(ProgressDialog progress) { private void printCollo(ProgressDialog progress) {
DialogAskShouldPrint.make(mActivity, "Packing List", shouldPrint -> {
PrinterRESTConsumer.getAvailablePrinters(SettingsManager.i().userSession.depo.getCodMdep(), PrinterRESTConsumer.Type.SECONDARIA, new ISimpleOperationCallback<List<String>>() { if(shouldPrint) {
PrinterRESTConsumer.getAvailablePrinters(SettingsManager.i().userSession.depo.getCodMdep(), PrinterRESTConsumer.Type.PRIMARIA, new ISimpleOperationCallback<List<String>>() {
@Override @Override
public void onSuccess(List<String> value) { public void onSuccess(List<String> value) {
if(value.size() > 0) { if (value.size() > 0) {
try{ try {
MtbColt currentMtbColt = mArticoliInColloBottomSheetViewModel.mtbColt.get(); MtbColt currentMtbColt = mArticoliInColloBottomSheetViewModel.mtbColt.get();
ReportManager.getRightReportNameByMtbColt(currentMtbColt, reportName -> { ReportManager.getRightReportNameByMtbColt(currentMtbColt, reportName -> {
@ -783,6 +794,11 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
UtilityExceptions.defaultException(mActivity, ex, progress); UtilityExceptions.defaultException(mActivity, ex, progress);
} }
}); });
} else {
postCloseOperations();
progress.dismiss();
}
}).show();
} }
private void deleteCollo(ProgressDialog progress) { private void deleteCollo(ProgressDialog progress) {
@ -800,6 +816,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
public boolean thereIsAnOpenedUL() { public boolean thereIsAnOpenedUL() {
return mArticoliInColloBottomSheetViewModel.mtbColt.get() != null; return mArticoliInColloBottomSheetViewModel.mtbColt.get() != null;
} }
public boolean thereIsAnyRowInUL() { public boolean thereIsAnyRowInUL() {
return mArticoliInColloBottomSheetViewModel.mtbColt.get() != null && return mArticoliInColloBottomSheetViewModel.mtbColt.get() != null &&
mArticoliInColloBottomSheetViewModel.mtbColt.get().getMtbColr() != null && mArticoliInColloBottomSheetViewModel.mtbColt.get().getMtbColr() != null &&
@ -842,7 +859,6 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
removeListFilter(); removeListFilter();
refreshOrderBy(true); refreshOrderBy(true);
} }
@ -881,8 +897,6 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
float qtaEvasaCurrentUL = qtaEvasaCurrentULInMtbColr; float qtaEvasaCurrentUL = qtaEvasaCurrentULInMtbColr;
BigDecimal qtaDaEvadere = item.getQtaOrd().subtract(new BigDecimal(qtaEvasaTotale)); BigDecimal qtaDaEvadere = item.getQtaOrd().subtract(new BigDecimal(qtaEvasaTotale));
if(qtaDaEvadere.floatValue() < 0) qtaDaEvadere = BigDecimal.ZERO; if(qtaDaEvadere.floatValue() < 0) qtaDaEvadere = BigDecimal.ZERO;

View File

@ -1,6 +1,8 @@
package it.integry.integrywmsnative.gest.versamento_merce; package it.integry.integrywmsnative.gest.versamento_merce;
import android.content.Context; import android.content.Context;
import androidx.appcompat.app.ActionBar;
import androidx.databinding.DataBindingUtil; import androidx.databinding.DataBindingUtil;
import android.os.Bundle; import android.os.Bundle;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
@ -83,7 +85,7 @@ public class VersamentoMerceFragment extends Fragment implements ITitledFragment
} }
@Override @Override
public String getTitle(Context context) { public void onCreateActionBar(ActionBar actionBar, Context context) {
return context.getResources().getString(R.string.versamento_merce_fragment_title); actionBar.setTitle(context.getText(R.string.versamento_merce_fragment_title).toString());
} }
} }

View File

@ -0,0 +1,50 @@
package it.integry.integrywmsnative.view.dialogs.ask_should_print;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import androidx.appcompat.app.AlertDialog;
import androidx.databinding.DataBindingUtil;
import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.databinding.DialogAskShouldPrintBinding;
public class DialogAskShouldPrint {
private Context currentContext;
private AlertDialog currentAlert;
public static AlertDialog make(final Context context, final String nomeEtichetta, RunnableArgs<Boolean> onDialogDismiss) {
return new DialogAskShouldPrint(context, nomeEtichetta, onDialogDismiss).currentAlert;
}
private DialogAskShouldPrint(Context context, String nomeEtichetta, RunnableArgs<Boolean> onDialogDismiss) {
currentContext = context;
LayoutInflater inflater = (LayoutInflater) context.getSystemService( Context.LAYOUT_INFLATER_SERVICE );
DialogAskShouldPrintBinding bindings = DataBindingUtil.inflate(inflater, R.layout.dialog_ask_should_print, null, false);
final AlertDialog.Builder alertDialog = new AlertDialog.Builder(context)
.setView(bindings.getRoot());
currentAlert = alertDialog.create();
currentAlert.setCanceledOnTouchOutside(false);
bindings.printMessage.setText("La procedura stamperà una " + nomeEtichetta);
bindings.buttonConfirm.setOnClickListener(v -> {
currentAlert.dismiss();
onDialogDismiss.run(true);
});
bindings.buttonAbort.setOnClickListener(v -> {
currentAlert.dismiss();
onDialogDismiss.run(false);
});
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24.0"
android:viewportHeight="24.0">
<path
android:fillColor="#FF000000"
android:pathData="M19,9h-4V3H9v6H5l7,7 7,-7zM5,18v2h14v-2H5z"/>
</vector>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24.0"
android:viewportHeight="24.0">
<path
android:fillColor="#FF000000"
android:pathData="M10,20v-6h4v6h5v-8h3L12,3 2,12h3v8z"/>
</vector>

Binary file not shown.

After

Width:  |  Height:  |  Size: 992 B

View File

@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24.0"
android:viewportHeight="24.0">
<path
android:fillColor="#FF000000"
android:pathData="M9,16h6v-6h4l-7,-7 -7,7h4zM5,18h14v2L5,20z"/>
</vector>

View File

@ -19,281 +19,9 @@
android:layout_height="match_parent"> android:layout_height="match_parent">
<include
<LinearLayout android:id="@+id/layout"
android:layout_width="match_parent" layout="@layout/fragment_picking_libero" />
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@color/full_white">
<it.integry.plugins.waterfalltoolbar.WaterfallToolbar
android:id="@+id/waterfall_toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?actionBarSize"
android:gravity="center_horizontal"
app:popupTheme="@style/AppTheme.PopupOverlay">
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/toolbar_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:text="Picking Libero"
style="@style/TextAppearance.AppCompat.Widget.ActionBar.Title"
android:layout_gravity="center" />
</androidx.appcompat.widget.Toolbar>
</it.integry.plugins.waterfalltoolbar.WaterfallToolbar>
<androidx.core.widget.NestedScrollView
android:id="@+id/scroll_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<LinearLayout
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingTop="8dp"
android:focusableInTouchMode="true"
tools:context=".gest.contenuto_bancale.ContenutoBancaleActivity">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/picking_libero_main_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:layout_marginBottom="92dp"
android:paddingStart="2dp"
android:paddingEnd="2dp">
</androidx.recyclerview.widget.RecyclerView>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</LinearLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.constraintlayout.widget.Guideline
android:id="@+id/free_picking__suggestion_1__guideline_top"
android:layout_width="0dp"
android:layout_height="0dp"
android:orientation="horizontal"
app:layout_constraintGuide_percent="0.35"/>
<androidx.constraintlayout.widget.Guideline
android:id="@+id/free_picking__suggestion_1__guideline_left"
android:layout_width="0dp"
android:layout_height="0dp"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.2" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/free_picking__suggestion_1__guideline_right"
android:layout_width="0dp"
android:layout_height="0dp"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.8" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:alpha="0.4"
app:visibility="@{viewmodel.thereIsntAnOpenedUL}"
app:layout_constraintTop_toBottomOf="@id/free_picking__suggestion_1__guideline_top"
app:layout_constraintLeft_toRightOf="@id/free_picking__suggestion_1__guideline_left"
app:layout_constraintRight_toLeftOf="@id/free_picking__suggestion_1__guideline_right">
<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@android:color/black"
android:textSize="18sp"
android:gravity="center_horizontal"
android:layout_gravity="center_horizontal"
android:text="@string/free_picking_suggestion_1"/>
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:alpha="0.4"
app:visibility="@{viewmodel.thereIsAnOpenULWithoutRows}"
app:layout_constraintTop_toBottomOf="@id/free_picking__suggestion_1__guideline_top"
app:layout_constraintLeft_toRightOf="@id/free_picking__suggestion_1__guideline_left"
app:layout_constraintRight_toLeftOf="@id/free_picking__suggestion_1__guideline_right">
<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@android:color/black"
android:textSize="18sp"
android:gravity="center_horizontal"
android:layout_gravity="center_horizontal"
android:text="@string/free_picking_suggestion_2"/>
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
<com.github.clans.fab.FloatingActionButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|right"
android:layout_marginBottom="8dp"
android:layout_marginRight="8dp"
android:src="@drawable/fab_add"
android:onClick="@{() -> viewmodel.createNewLU()}"
android:visibility="@{viewmodel.mtbColt == null ? View.VISIBLE : View.GONE}"
fab:fab_colorNormal="@color/colorPrimary"
fab:fab_colorPressed="@color/white_pressed"
fab:fab_colorRipple="#66FFFFFF"/>
<com.github.clans.fab.FloatingActionButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|right"
android:layout_marginBottom="8dp"
android:layout_marginRight="8dp"
android:src="@drawable/ic_check_white_24dp"
android:onClick="@{() -> viewmodel.closeLU()}"
android:visibility="@{viewmodel.mtbColt != null ? View.VISIBLE : View.GONE}"
fab:fab_colorNormal="@color/mainGreen"
fab:fab_colorPressed="@color/white_pressed"
fab:fab_colorRipple="#66FFFFFF"/>
<View
android:visibility="gone"
android:id="@+id/bg"
android:background="#99000000"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<LinearLayout
android:id="@+id/bottom_sheet_actions"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#fff"
android:orientation="vertical"
android:padding="16dp"
android:layout_gravity="bottom"
app:behavior_hideable="true"
app:behavior_peekHeight="0dp"
app:layout_behavior="com.google.android.material.bottomsheet.BottomSheetBehavior">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_gravity="center_vertical">
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_marginBottom="8dp"
app:layout_constraintEnd_toStartOf="@id/bottom_sheet_actions_quantity"
app:layout_constraintStart_toStartOf="parent">
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/bottom_sheet_actions_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:text="Descrizione articolo"
android:textColor="#444"
android:textSize="18dp"
android:maxLines="1"
android:ellipsize="end"
android:paddingRight="8dp"
android:textStyle="bold" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/bottom_sheet_actions_subtitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:text="ABF52IL"
android:textSize="14dp"
android:textStyle="bold" />
</LinearLayout>
<TextView
android:id="@+id/bottom_sheet_actions_quantity"
android:layout_width="wrap_content"
android:gravity="right"
android:layout_height="wrap_content"
android:textStyle="bold"
android:textSize="15dp"
tools:text="250 PZ"
app:layout_constraintEnd_toEndOf="parent"/>
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
android:gravity="center">
<androidx.appcompat.widget.AppCompatImageButton
android:id="@+id/bottom_sheet_actions_delete_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="16dp"
android:background="@android:color/white"
android:scaleX="1.5"
android:scaleY="1.5"
android:src="@drawable/ic_delete_24dp"
android:tint="@color/red_600" />
<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Cancella"/>
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</LinearLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout> </androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@ -0,0 +1,85 @@
<?xml version="1.0" encoding="utf-8"?>
<layout>
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="16dp"
android:layout_gravity="center">
<androidx.appcompat.widget.AppCompatTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/action_print"
style="@style/TextViewMaterial.DialogTitle"
android:gravity="center_horizontal"/>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:gravity="center_horizontal">
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/print_message"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:layout_marginBottom="16dp"
style="@style/TextInputLayout.OutlinePrimary"
android:textColor="#5F6368"
android:textSize="16sp"
tools:text="La procedura stamperà una packing list"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:paddingTop="8dp"
android:gravity="bottom|center_horizontal">
<com.google.android.material.button.MaterialButton
android:id="@+id/button_abort"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Button.PrimaryOutline"
app:icon="@drawable/ic_clear_24dp"
android:layout_marginEnd="8dp"
android:text="@android:string/no"/>
<com.google.android.material.button.MaterialButton
android:id="@+id/button_confirm"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Button.PrimaryFull"
app:icon="@drawable/ic_print_24dp"
android:text="@android:string/yes"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</androidx.cardview.widget.CardView>
</layout>

View File

@ -142,5 +142,182 @@
</LinearLayout> </LinearLayout>
</androidx.cardview.widget.CardView> </androidx.cardview.widget.CardView>
<androidx.cardview.widget.CardView
app:cardBackgroundColor="@android:color/white"
app:cardCornerRadius="4dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginBottom="10dp"
android:layout_marginTop="10dp"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:textColor="@android:color/black"
android:layout_marginTop="10dp"
android:layout_marginLeft="10dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Azioni rapide"
android:textAllCaps="true"
android:textStyle="bold"/>
<LinearLayout
android:layout_margin="15dp"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:weightSum="1">
<LinearLayout
android:id="@+id/fast_button_accettazione"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_weight="0.5"
android:gravity="center">
<androidx.appcompat.widget.AppCompatImageView
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_margin="8dp"
android:background="@android:color/white"
android:src="@drawable/ic_download_black_24dp"
android:tint="@color/mainGreen" />
<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Accettazione"
android:gravity="center_horizontal"/>
</LinearLayout>
<LinearLayout
android:id="@+id/fast_button_spedizione"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_weight="0.5"
android:gravity="center">
<androidx.appcompat.widget.AppCompatImageView
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_margin="8dp"
android:background="@android:color/white"
android:src="@drawable/ic_upload_black_24dp"
android:tint="@color/mainOrange" />
<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Spedizione"
android:gravity="center_horizontal"/>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="16dp"
android:weightSum="0.9">
<LinearLayout
android:id="@+id/fast_button_rettifica_giacenze"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_weight="0.3"
android:gravity="center">
<androidx.appcompat.widget.AppCompatImageView
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_margin="8dp"
android:background="@android:color/white"
android:src="@drawable/ic_empty_box_96"
android:tint="@color/brown_500" />
<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Rettifica Giacenze"
android:gravity="center_horizontal"/>
</LinearLayout>
<LinearLayout
android:id="@+id/fast_button_versamento"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_weight="0.3"
android:gravity="center">
<androidx.appcompat.widget.AppCompatImageView
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_margin="8dp"
android:background="@android:color/white"
android:src="@drawable/ic_load_shelf_96"
android:tint="@color/teal_500" />
<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:text="Versamento Merce"/>
</LinearLayout>
<LinearLayout
android:id="@+id/fast_button_picking_libero"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_weight="0.3"
android:gravity="center">
<androidx.appcompat.widget.AppCompatImageView
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_margin="8dp"
android:adjustViewBounds="true"
android:scaleType="centerInside"
android:background="@android:color/white"
android:src="@drawable/ic_barcode_96"
android:tint="@color/colorPrimary" />
<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/free_picking"
android:gravity="center_horizontal"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</androidx.cardview.widget.CardView>
</LinearLayout> </LinearLayout>
</FrameLayout> </FrameLayout>

View File

@ -0,0 +1,301 @@
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:tools="http://schemas.android.com/tools"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:fab="http://schemas.android.com/apk/res-auto">
<data>
<import type="android.view.View"/>
<import type="it.integry.integrywmsnative.core.utility.UtilityString" />
<variable
name="viewmodel"
type="it.integry.integrywmsnative.gest.picking_libero.viewmodel.PickingLiberoViewModel" />
</data>
<androidx.coordinatorlayout.widget.CoordinatorLayout android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@color/full_white">
<it.integry.plugins.waterfalltoolbar.WaterfallToolbar
android:id="@+id/waterfall_toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?actionBarSize"
android:gravity="center_horizontal"
app:popupTheme="@style/AppTheme.PopupOverlay">
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/toolbar_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:text="Picking Libero"
style="@style/TextAppearance.AppCompat.Widget.ActionBar.Title"
android:layout_gravity="center" />
</androidx.appcompat.widget.Toolbar>
</it.integry.plugins.waterfalltoolbar.WaterfallToolbar>
<androidx.core.widget.NestedScrollView
android:id="@+id/scroll_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<LinearLayout
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingTop="8dp"
android:focusableInTouchMode="true"
tools:context=".gest.contenuto_bancale.ContenutoBancaleActivity">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/picking_libero_main_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:layout_marginBottom="92dp"
android:paddingStart="2dp"
android:paddingEnd="2dp">
</androidx.recyclerview.widget.RecyclerView>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</LinearLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.constraintlayout.widget.Guideline
android:id="@+id/free_picking__suggestion_1__guideline_top"
android:layout_width="0dp"
android:layout_height="0dp"
android:orientation="horizontal"
app:layout_constraintGuide_percent="0.35"/>
<androidx.constraintlayout.widget.Guideline
android:id="@+id/free_picking__suggestion_1__guideline_left"
android:layout_width="0dp"
android:layout_height="0dp"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.2" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/free_picking__suggestion_1__guideline_right"
android:layout_width="0dp"
android:layout_height="0dp"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.8" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:alpha="0.4"
app:visibility="@{viewmodel.thereIsntAnOpenedUL}"
app:layout_constraintTop_toBottomOf="@id/free_picking__suggestion_1__guideline_top"
app:layout_constraintLeft_toRightOf="@id/free_picking__suggestion_1__guideline_left"
app:layout_constraintRight_toLeftOf="@id/free_picking__suggestion_1__guideline_right">
<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@android:color/black"
android:textSize="18sp"
android:gravity="center_horizontal"
android:layout_gravity="center_horizontal"
android:text="@string/free_picking_suggestion_1"/>
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:alpha="0.4"
app:visibility="@{viewmodel.thereIsAnOpenULWithoutRows}"
app:layout_constraintTop_toBottomOf="@id/free_picking__suggestion_1__guideline_top"
app:layout_constraintLeft_toRightOf="@id/free_picking__suggestion_1__guideline_left"
app:layout_constraintRight_toLeftOf="@id/free_picking__suggestion_1__guideline_right">
<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@android:color/black"
android:textSize="18sp"
android:gravity="center_horizontal"
android:layout_gravity="center_horizontal"
android:text="@string/free_picking_suggestion_2"/>
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
<com.github.clans.fab.FloatingActionButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|right"
android:layout_marginBottom="8dp"
android:layout_marginRight="8dp"
android:src="@drawable/fab_add"
android:onClick="@{() -> viewmodel.createNewLU()}"
android:visibility="@{viewmodel.mtbColt == null ? View.VISIBLE : View.GONE}"
fab:fab_colorNormal="@color/colorPrimary"
fab:fab_colorPressed="@color/white_pressed"
fab:fab_colorRipple="#66FFFFFF"/>
<com.github.clans.fab.FloatingActionButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|right"
android:layout_marginBottom="8dp"
android:layout_marginRight="8dp"
android:src="@drawable/ic_check_white_24dp"
android:onClick="@{() -> viewmodel.closeLU()}"
android:visibility="@{viewmodel.mtbColt != null ? View.VISIBLE : View.GONE}"
fab:fab_colorNormal="@color/mainGreen"
fab:fab_colorPressed="@color/white_pressed"
fab:fab_colorRipple="#66FFFFFF"/>
<View
android:visibility="gone"
android:id="@+id/bg"
android:background="#99000000"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<LinearLayout
android:id="@+id/bottom_sheet_actions"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#fff"
android:orientation="vertical"
android:padding="16dp"
android:layout_gravity="bottom"
app:behavior_hideable="true"
app:behavior_peekHeight="0dp"
app:layout_behavior="com.google.android.material.bottomsheet.BottomSheetBehavior">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_gravity="center_vertical">
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_marginBottom="8dp"
app:layout_constraintEnd_toStartOf="@id/bottom_sheet_actions_quantity"
app:layout_constraintStart_toStartOf="parent">
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/bottom_sheet_actions_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:text="Descrizione articolo"
android:textColor="#444"
android:textSize="18dp"
android:maxLines="1"
android:ellipsize="end"
android:paddingRight="8dp"
android:textStyle="bold" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/bottom_sheet_actions_subtitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:text="ABF52IL"
android:textSize="14dp"
android:textStyle="bold" />
</LinearLayout>
<TextView
android:id="@+id/bottom_sheet_actions_quantity"
android:layout_width="wrap_content"
android:gravity="right"
android:layout_height="wrap_content"
android:textStyle="bold"
android:textSize="15dp"
tools:text="250 PZ"
app:layout_constraintEnd_toEndOf="parent"/>
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
android:gravity="center">
<androidx.appcompat.widget.AppCompatImageButton
android:id="@+id/bottom_sheet_actions_delete_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="16dp"
android:background="@android:color/white"
android:scaleX="1.5"
android:scaleY="1.5"
android:src="@drawable/ic_delete_24dp"
android:tint="@color/red_600" />
<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Cancella"/>
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</LinearLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
</layout>

View File

@ -2,22 +2,30 @@
<menu xmlns:android="http://schemas.android.com/apk/res/android"> <menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:checkableBehavior="single"> <group android:checkableBehavior="single">
<item
android:id="@+id/nav_home"
android:icon="@drawable/ic_home_black_24dp"
android:title="Home" />
<item <item
android:id="@+id/nav_accettazione" android:id="@+id/nav_accettazione"
android:icon="@drawable/ic_menu_camera" android:icon="@drawable/ic_download_black_24dp"
android:title="Accettazione" /> android:title="Accettazione" />
<item <item
android:id="@+id/nav_gallery" android:id="@+id/nav_spedizione"
android:icon="@drawable/ic_menu_gallery" android:icon="@drawable/ic_upload_black_24dp"
android:title="Spedizione" /> android:title="Spedizione" />
<item <item
android:id="@+id/nav_slideshow" android:id="@+id/nav_rettifica_giacenze"
android:icon="@drawable/ic_menu_slideshow" android:icon="@drawable/ic_empty_box_96"
android:title="Rettifica Giacenze" /> android:title="Rettifica Giacenze" />
<item <item
android:id="@+id/nav_manage" android:id="@+id/nav_versamento_merce"
android:icon="@drawable/ic_menu_manage" android:icon="@drawable/ic_load_shelf_96"
android:title="Versamento Merce" /> android:title="Versamento Merce" />
<item
android:id="@+id/nav_free_picking"
android:icon="@drawable/ic_barcode_96"
android:title="@string/free_picking" />
</group> </group>
<!-- <!--
<item android:title="Communicate"> <item android:title="Communicate">

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" <menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"> xmlns:app="http://schemas.android.com/apk/res-auto">
<item <!--<item-->
android:id="@+id/action_free_picking" <!--android:id="@+id/action_free_picking"-->
android:orderInCategory="100" <!--android:orderInCategory="100"-->
android:title="@string/free_picking" <!--android:title="@string/free_picking"-->
app:showAsAction="never" /> <!--app:showAsAction="never" />-->
</menu> </menu>

View File

@ -41,6 +41,7 @@
<string name="action_show_created_ul">Mostra UL già create</string> <string name="action_show_created_ul">Mostra UL già create</string>
<string name="action_recover_ul">Recupera UL</string> <string name="action_recover_ul">Recupera UL</string>
<string name="action_print_ul">Stampa UL</string> <string name="action_print_ul">Stampa UL</string>
<string name="action_print">Stampa</string>
<string name="confirm">Conferma</string> <string name="confirm">Conferma</string>
<string name="hint_additional_notes">Note Aggiuntive</string> <string name="hint_additional_notes">Note Aggiuntive</string>
<string name="dialog_message_additional_notes">Inserisci eventuali note aggiuntive della tua UL</string> <string name="dialog_message_additional_notes">Inserisci eventuali note aggiuntive della tua UL</string>
@ -175,5 +176,6 @@
<string name="free_picking">Picking libero</string> <string name="free_picking">Picking libero</string>
<string name="free_picking_suggestion_1">Per iniziare clicca sul + in basso a destra</string> <string name="free_picking_suggestion_1">Per iniziare clicca sul + in basso a destra</string>
<string name="free_picking_suggestion_2">Scansiona un articolo per iniziare</string> <string name="free_picking_suggestion_2">Scansiona un articolo per iniziare</string>
<string name="free_picking_title_fragment">Picking libero</string>
</resources> </resources>

View File

@ -29,6 +29,7 @@
<color name="blue_700">#1976D2</color> <color name="blue_700">#1976D2</color>
<color name="brown_500">#795548</color>
<color name="green_500_with_alpha">#884CAF50</color> <color name="green_500_with_alpha">#884CAF50</color>
<color name="green_500">#4CAF50</color> <color name="green_500">#4CAF50</color>
@ -57,6 +58,8 @@
<color name="red_700">#D32F2F</color> <color name="red_700">#D32F2F</color>
<color name="teal_500">#009688</color>
<color name="yellow_600">#FDD835</color> <color name="yellow_600">#FDD835</color>
</resources> </resources>

View File

@ -25,6 +25,7 @@
<string name="vendita_title_fragment">Check out</string> <string name="vendita_title_fragment">Check out</string>
<string name="rettifica_giacenze_fragment_title">Inventory</string> <string name="rettifica_giacenze_fragment_title">Inventory</string>
<string name="versamento_merce_fragment_title">Items placement</string> <string name="versamento_merce_fragment_title">Items placement</string>
<string name="free_picking_title_fragment">Free picking</string>
<string name="error">Error</string> <string name="error">Error</string>
<string name="ops">Ops</string> <string name="ops">Ops</string>
<string name="warning">Warning</string> <string name="warning">Warning</string>
@ -41,6 +42,7 @@
<string name="action_show_created_ul">Show already created LU</string> <string name="action_show_created_ul">Show already created LU</string>
<string name="action_recover_ul">Recover LU</string> <string name="action_recover_ul">Recover LU</string>
<string name="action_print_ul">Print LU</string> <string name="action_print_ul">Print LU</string>
<string name="action_print">Print</string>
<string name="confirm">Confirm</string> <string name="confirm">Confirm</string>
<string name="hint_additional_notes">Additional notes</string> <string name="hint_additional_notes">Additional notes</string>
<string name="dialog_message_additional_notes">Enter any additional notes in your logistics unit</string> <string name="dialog_message_additional_notes">Enter any additional notes in your logistics unit</string>
@ -177,4 +179,7 @@
<string name="free_picking_suggestion_1">Please press + button to start with picking</string> <string name="free_picking_suggestion_1">Please press + button to start with picking</string>
<string name="free_picking_suggestion_2">Scan an item to start</string> <string name="free_picking_suggestion_2">Scan an item to start</string>
<!-- TODO: Remove or change this placeholder text -->
<string name="hello_blank_fragment">Hello blank fragment</string>
</resources> </resources>