Completata implementazione di versamento materiale a produzione.
This commit is contained in:
parent
7aa93f9489
commit
88be504918
BIN
.idea/caches/build_file_checksums.ser
generated
BIN
.idea/caches/build_file_checksums.ser
generated
Binary file not shown.
1
.idea/gradle.xml
generated
1
.idea/gradle.xml
generated
@ -12,6 +12,7 @@
|
||||
<option value="$PROJECT_DIR$/barcode_base_library" />
|
||||
<option value="$PROJECT_DIR$/dynamic__base" />
|
||||
<option value="$PROJECT_DIR$/dynamic_vgalimenti" />
|
||||
<option value="$PROJECT_DIR$/honeywellscannerlibrary" />
|
||||
<option value="$PROJECT_DIR$/pointmobilescannerlibrary" />
|
||||
<option value="$PROJECT_DIR$/zebrascannerlibrary" />
|
||||
</set>
|
||||
|
||||
1
.idea/modules.xml
generated
1
.idea/modules.xml
generated
@ -7,6 +7,7 @@
|
||||
<module fileurl="file://$PROJECT_DIR$/barcode_base_library/barcode_base_library.iml" filepath="$PROJECT_DIR$/barcode_base_library/barcode_base_library.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/dynamic__base/dynamic__base.iml" filepath="$PROJECT_DIR$/dynamic__base/dynamic__base.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/dynamic_vgalimenti/dynamic_vgalimenti.iml" filepath="$PROJECT_DIR$/dynamic_vgalimenti/dynamic_vgalimenti.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/honeywellscannerlibrary/honeywellscannerlibrary.iml" filepath="$PROJECT_DIR$/honeywellscannerlibrary/honeywellscannerlibrary.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/pointmobilescannerlibrary/pointmobilescannerlibrary.iml" filepath="$PROJECT_DIR$/pointmobilescannerlibrary/pointmobilescannerlibrary.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/zebrascannerlibrary/zebrascannerlibrary.iml" filepath="$PROJECT_DIR$/zebrascannerlibrary/zebrascannerlibrary.iml" />
|
||||
</modules>
|
||||
|
||||
@ -149,6 +149,7 @@ dependencies {
|
||||
implementation project(':pointmobilescannerlibrary')
|
||||
implementation project(':zebrascannerlibrary')
|
||||
implementation project(path: ':barcode_base_library')
|
||||
implementation project(path: ':honeywellscannerlibrary')
|
||||
}
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@ -35,6 +35,7 @@ import it.integry.integrywmsnative.core.interfaces.ITitledFragment;
|
||||
import it.integry.integrywmsnative.gest.login.LoginActivity;
|
||||
import it.integry.integrywmsnative.gest.main.MainFragment;
|
||||
import it.integry.integrywmsnative.gest.picking_libero.PickingLiberoFragment;
|
||||
import it.integry.integrywmsnative.gest.prod_versamento_materiale.ProdVersamentoMaterialeFragment;
|
||||
import it.integry.integrywmsnative.gest.rettifica_giacenze.RettificaGiacenzeFragment;
|
||||
import it.integry.integrywmsnative.gest.settings.MainSettingsFragment;
|
||||
import it.integry.integrywmsnative.gest.ultime_consegne_cliente.UltimeConsegneClienteFragment;
|
||||
@ -152,6 +153,10 @@ public class MainActivity extends AppCompatActivity
|
||||
// fragment = UltimeConsegneClienteFragment.newInstance();
|
||||
// this.adaptViewToFragment(fragment);
|
||||
// }
|
||||
else if (id == R.id.nav_prod_versamento_materiale) {
|
||||
fragment = ProdVersamentoMaterialeFragment.newInstance();
|
||||
this.adaptViewToFragment(fragment);
|
||||
}
|
||||
|
||||
else if(id == R.id.nav_settings){
|
||||
fragment = new MainSettingsFragment();
|
||||
|
||||
@ -15,6 +15,8 @@ public class CommonConst {
|
||||
public static String COMMESSA_MAG = "MAG";
|
||||
|
||||
public static String DEFAULT_ANONYMOUS_UL_SERIE = "UL";
|
||||
|
||||
public static int NUMBER_OF_DECIMAL_DIGITS = 3;
|
||||
}
|
||||
|
||||
public static class Files {
|
||||
|
||||
@ -132,6 +132,49 @@ public class ColliMagazzinoRESTConsumer extends _BaseRESTConsumer{
|
||||
});
|
||||
}
|
||||
|
||||
public static void createColloScaricoDaCarico(MtbColt sourceMtbColt, MtbDepoPosizione posizione, RunnableArgs<MtbColt> onComplete, RunnableArgs<Exception> onFailed) {
|
||||
MtbColt cloneUL = ((MtbColt) sourceMtbColt.clone());
|
||||
|
||||
cloneUL.setMtbCols(null)
|
||||
.setNumCollo(null)
|
||||
.setDataCollo((String) null)
|
||||
.setSegno(-1)
|
||||
.setGestione(GestioneEnum.LAVORAZIONE)
|
||||
.setOperation(CommonModelConsts.OPERATION.INSERT);
|
||||
|
||||
if(posizione != null) {
|
||||
cloneUL.setPosizione(posizione.getPosizione());
|
||||
}
|
||||
|
||||
for(int i = 0; i < cloneUL.getMtbColr().size(); i++) {
|
||||
cloneUL.getMtbColr().get(i)
|
||||
.setNumCollo(null)
|
||||
.setDataCollo(null)
|
||||
.setRiga(null)
|
||||
.setGestione(GestioneEnum.LAVORAZIONE)
|
||||
|
||||
.setDataColloRif(sourceMtbColt.getDataColloD())
|
||||
.setNumColloRif(sourceMtbColt.getNumCollo())
|
||||
.setGestioneRif(sourceMtbColt.getGestione())
|
||||
.setSerColloRif(sourceMtbColt.getSerCollo())
|
||||
|
||||
.setOperation(CommonModelConsts.OPERATION.INSERT);
|
||||
}
|
||||
|
||||
|
||||
saveCollo(cloneUL, new ISimpleOperationCallback<MtbColt>() {
|
||||
@Override
|
||||
public void onSuccess(MtbColt value) {
|
||||
if(onComplete != null) onComplete.run(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailed(Exception ex) {
|
||||
if(onFailed != null) onFailed.run(ex);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
public static void createColloFromEtichettaAnonima(BarcodeScanDTO barcodeScanDTO, GestioneEnum gestione, RunnableArgs<MtbColt> onComplete, RunnableArgs<Exception> onFailed) {
|
||||
createColloFromEtichettaAnonima(barcodeScanDTO.getStringValue(), gestione, onComplete, onFailed);
|
||||
|
||||
@ -66,7 +66,7 @@ public class SystemRESTConsumer extends _BaseRESTConsumer {
|
||||
public void onFailure(Call<ServiceRESTResponse<Object>> call, Throwable t) {
|
||||
Log.e("ProcessSql", t.toString());
|
||||
callback.onFailed(new Exception(t));
|
||||
UtilityLogger.errorMe(new Exception(t), nativeSql);
|
||||
// UtilityLogger.errorMe(new Exception(t), nativeSql);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
@ -6,6 +6,7 @@ import java.lang.reflect.Constructor;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import it.integry.honeywellscannerlibrary.HoneyWellBarcodeReader;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityLogger;
|
||||
import it.integry.plugins.barcode_base_library.exception.BarcodeAdapterNotFoundException;
|
||||
@ -25,7 +26,8 @@ public class BarcodeManager {
|
||||
|
||||
private static Class<? extends BarcodeReaderInterface>[] registeredBarcodeReaderInterfaces = new Class[]{
|
||||
PointMobileBarcodeReader.class,
|
||||
ZebraBarcodeReader.class
|
||||
ZebraBarcodeReader.class,
|
||||
// HoneyWellBarcodeReader.class
|
||||
};
|
||||
|
||||
|
||||
|
||||
@ -5,6 +5,9 @@ import java.math.RoundingMode;
|
||||
|
||||
import androidx.databinding.BaseObservable;
|
||||
|
||||
import it.integry.integrywmsnative.core.CommonConst;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityNumber;
|
||||
|
||||
public class BindableFloat extends BaseObservable {
|
||||
private Float value;
|
||||
|
||||
@ -13,7 +16,11 @@ public class BindableFloat extends BaseObservable {
|
||||
}
|
||||
|
||||
public BigDecimal getBigDecimal() {
|
||||
return new BigDecimal(get()).setScale(3, RoundingMode.CEILING);
|
||||
int numberOfDigits = UtilityNumber.countNumberOfDecimalDigits(get());
|
||||
|
||||
if(numberOfDigits > CommonConst.Config.NUMBER_OF_DECIMAL_DIGITS) numberOfDigits = CommonConst.Config.NUMBER_OF_DECIMAL_DIGITS;
|
||||
|
||||
return new BigDecimal(get());
|
||||
}
|
||||
|
||||
public Float get(boolean defaultIfNull) {
|
||||
|
||||
@ -0,0 +1,392 @@
|
||||
package it.integry.integrywmsnative.core.expansion;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.math.BigInteger;
|
||||
import java.util.Comparator;
|
||||
import java.util.concurrent.atomic.AtomicReference;
|
||||
|
||||
public class AtomicBigDecimal extends Number implements Comparable<Object> {
|
||||
private static final long serialVersionUID = -94825735363453200L;
|
||||
private AtomicReference<BigDecimal> value;
|
||||
|
||||
// Constructors
|
||||
public AtomicBigDecimal() {
|
||||
this(0.0);
|
||||
}
|
||||
|
||||
public AtomicBigDecimal(double initVal) {
|
||||
this(new BigDecimal(initVal));
|
||||
}
|
||||
|
||||
public AtomicBigDecimal(BigDecimal initVal) {
|
||||
value = new AtomicReference(initVal);
|
||||
}
|
||||
|
||||
public AtomicBigDecimal(Object initVal) {
|
||||
this(objectToBigDecimal(initVal));
|
||||
}
|
||||
|
||||
// Atomic methods
|
||||
public BigDecimal get() {
|
||||
return value.get();
|
||||
}
|
||||
|
||||
public void set(BigDecimal newVal) {
|
||||
value.set(newVal);
|
||||
}
|
||||
|
||||
public void set(Object newVal) {
|
||||
set(objectToBigDecimal(newVal));
|
||||
}
|
||||
|
||||
public void set(double newVal) {
|
||||
set(new BigDecimal(newVal));
|
||||
}
|
||||
|
||||
public void lazySet(BigDecimal newVal) {
|
||||
set(newVal);
|
||||
}
|
||||
|
||||
public void lazySet(Object newVal) {
|
||||
set(newVal);
|
||||
}
|
||||
|
||||
public void lazySet(double newVal) {
|
||||
set(newVal);
|
||||
}
|
||||
|
||||
public boolean compareAndSet(BigDecimal expect, BigDecimal update) {
|
||||
while (true) {
|
||||
BigDecimal origVal = get();
|
||||
|
||||
if (origVal.compareTo(expect) == 0) {
|
||||
if (value.compareAndSet(origVal, update))
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public boolean compareAndSet(double expect, double update) {
|
||||
return compareAndSet(new BigDecimal(expect), new BigDecimal(update));
|
||||
}
|
||||
|
||||
public boolean compareAndSet(Object expect, Object update) {
|
||||
return compareAndSet(objectToBigDecimal(expect),
|
||||
objectToBigDecimal(update));
|
||||
}
|
||||
|
||||
public boolean weakCompareAndSet(BigDecimal expect, BigDecimal update) {
|
||||
return compareAndSet(expect, update);
|
||||
}
|
||||
|
||||
public boolean weakCompareAndSet(double expect, double update) {
|
||||
return compareAndSet(expect, update);
|
||||
}
|
||||
|
||||
public boolean weakCompareAndSet(Object expect, Object update) {
|
||||
return compareAndSet(expect, update);
|
||||
}
|
||||
|
||||
public BigDecimal getAndSet(BigDecimal setVal) {
|
||||
while (true) {
|
||||
BigDecimal origVal = get();
|
||||
|
||||
if (compareAndSet(origVal, setVal)) return origVal;
|
||||
}
|
||||
}
|
||||
|
||||
public double getAndSet(double setVal) {
|
||||
return getAndSet(new BigDecimal(setVal)).doubleValue();
|
||||
}
|
||||
|
||||
public BigDecimal getAndSet(Object setVal) {
|
||||
return getAndSet(objectToBigDecimal(setVal));
|
||||
}
|
||||
|
||||
public BigDecimal getAndAdd(BigDecimal delta) {
|
||||
while (true) {
|
||||
BigDecimal origVal = get();
|
||||
BigDecimal newVal = origVal.add(delta);
|
||||
if (compareAndSet(origVal, newVal)) return origVal;
|
||||
}
|
||||
}
|
||||
|
||||
public BigDecimal addAndGet(BigDecimal delta) {
|
||||
while (true) {
|
||||
BigDecimal origVal = get();
|
||||
BigDecimal newVal = origVal.add(delta);
|
||||
if (compareAndSet(origVal, newVal)) return newVal;
|
||||
}
|
||||
}
|
||||
|
||||
public double getAndAdd(double delta) {
|
||||
return getAndAdd(new BigDecimal(delta)).doubleValue();
|
||||
}
|
||||
|
||||
public double addAndGet(double delta) {
|
||||
return addAndGet(new BigDecimal(delta)).doubleValue();
|
||||
}
|
||||
|
||||
public BigDecimal getAndAdd(Object delta) {
|
||||
return getAndAdd(objectToBigDecimal(delta));
|
||||
}
|
||||
|
||||
public BigDecimal addAndGet(Object delta) {
|
||||
return addAndGet(objectToBigDecimal(delta));
|
||||
}
|
||||
|
||||
public BigDecimal getAndIncrement() {
|
||||
return getAndAdd(BigDecimal.ONE);
|
||||
}
|
||||
|
||||
public BigDecimal getAndDecrement() {
|
||||
return getAndAdd(BigDecimal.ONE.negate());
|
||||
}
|
||||
|
||||
public BigDecimal incrementAndGet() {
|
||||
return addAndGet(BigDecimal.ONE);
|
||||
}
|
||||
|
||||
public BigDecimal decrementAndGet() {
|
||||
return addAndGet(BigDecimal.ONE.negate());
|
||||
}
|
||||
|
||||
public double altGetAndIncrement() {
|
||||
return getAndIncrement().doubleValue();
|
||||
}
|
||||
|
||||
public double altGetAndDecrement() {
|
||||
return getAndDecrement().doubleValue();
|
||||
}
|
||||
|
||||
public double altIncrementAndGet() {
|
||||
return incrementAndGet().doubleValue();
|
||||
}
|
||||
|
||||
public double altDecrementAndGet() {
|
||||
return decrementAndGet().doubleValue();
|
||||
}
|
||||
|
||||
public BigDecimal getAndMultiply(BigDecimal multiplicand) {
|
||||
while (true) {
|
||||
BigDecimal origVal = get();
|
||||
BigDecimal newVal = origVal.multiply(multiplicand);
|
||||
if (compareAndSet(origVal, newVal)) return origVal;
|
||||
}
|
||||
}
|
||||
|
||||
public BigDecimal multiplyAndGet(BigDecimal multiplicand) {
|
||||
while (true) {
|
||||
BigDecimal origVal = get();
|
||||
BigDecimal newVal = origVal.multiply(multiplicand);
|
||||
if (compareAndSet(origVal, newVal)) return newVal;
|
||||
}
|
||||
}
|
||||
|
||||
public BigDecimal getAndDivide(BigDecimal divisor) {
|
||||
while (true) {
|
||||
BigDecimal origVal = get();
|
||||
BigDecimal newVal = origVal.divide(divisor);
|
||||
if (compareAndSet(origVal, newVal)) return origVal;
|
||||
}
|
||||
}
|
||||
|
||||
public BigDecimal divideAndGet(BigDecimal divisor) {
|
||||
while (true) {
|
||||
BigDecimal origVal = get();
|
||||
BigDecimal newVal = origVal.divide(divisor);
|
||||
if (compareAndSet(origVal, newVal)) return newVal;
|
||||
}
|
||||
}
|
||||
|
||||
public BigDecimal getAndMultiply(Object multiplicand) {
|
||||
return getAndMultiply(objectToBigDecimal(multiplicand));
|
||||
}
|
||||
|
||||
public BigDecimal multiplyAndGet(Object multiplicand) {
|
||||
return multiplyAndGet(objectToBigDecimal(multiplicand));
|
||||
}
|
||||
|
||||
public BigDecimal getAndDivide(Object divisor) {
|
||||
return getAndDivide(objectToBigDecimal(divisor));
|
||||
}
|
||||
|
||||
public BigDecimal divideAndGet(Object divisor) {
|
||||
return divideAndGet(objectToBigDecimal(divisor));
|
||||
}
|
||||
|
||||
// Methods of the Number class
|
||||
@Override
|
||||
public int intValue() {
|
||||
return getBigDecimalValue().intValue();
|
||||
}
|
||||
|
||||
@Override
|
||||
public long longValue() {
|
||||
return getBigDecimalValue().longValue();
|
||||
}
|
||||
|
||||
@Override
|
||||
public float floatValue() {
|
||||
return getBigDecimalValue().floatValue();
|
||||
}
|
||||
|
||||
@Override
|
||||
public double doubleValue() {
|
||||
return getBigDecimalValue().doubleValue();
|
||||
}
|
||||
|
||||
@Override
|
||||
public byte byteValue() {
|
||||
return (byte) intValue();
|
||||
}
|
||||
|
||||
@Override
|
||||
public short shortValue() {
|
||||
return (short) intValue();
|
||||
}
|
||||
|
||||
public char charValue() {
|
||||
return (char) intValue();
|
||||
}
|
||||
|
||||
public BigDecimal getBigDecimalValue() {
|
||||
return get();
|
||||
}
|
||||
|
||||
public Double getDoubleValue() {
|
||||
return Double.valueOf(doubleValue());
|
||||
}
|
||||
|
||||
public boolean isNaN() {
|
||||
return getDoubleValue().isNaN();
|
||||
}
|
||||
|
||||
public boolean isInfinite() {
|
||||
return getDoubleValue().isInfinite();
|
||||
}
|
||||
|
||||
// Methods of the BigDecimal Class
|
||||
public BigDecimal abs() {
|
||||
while (true) {
|
||||
BigDecimal origVal = get();
|
||||
BigDecimal newVal = origVal.abs();
|
||||
if (compareAndSet(origVal, newVal)) return newVal;
|
||||
}
|
||||
}
|
||||
|
||||
public BigDecimal max(BigDecimal val) {
|
||||
while (true) {
|
||||
BigDecimal origVal = get();
|
||||
BigDecimal newVal = origVal.max(val);
|
||||
if (compareAndSet(origVal, newVal)) return newVal;
|
||||
}
|
||||
}
|
||||
|
||||
public BigDecimal min(BigDecimal val) {
|
||||
while (true) {
|
||||
BigDecimal origVal = get();
|
||||
BigDecimal newVal = origVal.min(val);
|
||||
if (compareAndSet(origVal, newVal)) return newVal;
|
||||
}
|
||||
}
|
||||
|
||||
public BigDecimal negate() {
|
||||
while (true) {
|
||||
BigDecimal origVal = get();
|
||||
BigDecimal newVal = origVal.negate();
|
||||
if (compareAndSet(origVal, newVal)) return newVal;
|
||||
}
|
||||
}
|
||||
|
||||
public BigDecimal pow(int n) {
|
||||
while (true) {
|
||||
BigDecimal origVal = get();
|
||||
BigDecimal newVal = origVal.pow(n);
|
||||
if (compareAndSet(origVal, newVal)) return newVal;
|
||||
}
|
||||
}
|
||||
|
||||
// Support methods for hashing and comparing
|
||||
@Override
|
||||
public String toString() {
|
||||
return get().toString();
|
||||
}
|
||||
|
||||
public String toEngineeringString() {
|
||||
return get().toEngineeringString();
|
||||
}
|
||||
|
||||
public String toPlainString() {
|
||||
return get().toPlainString();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object obj) {
|
||||
if (obj == null) return false;
|
||||
try {
|
||||
return (compareTo(obj) == 0);
|
||||
} catch (Exception e) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return get().hashCode();
|
||||
}
|
||||
|
||||
public int compareTo(AtomicBigDecimal aValue) {
|
||||
return get().compareTo(aValue.get());
|
||||
}
|
||||
|
||||
public int compareTo(Object aValue) {
|
||||
return get().compareTo(objectToBigDecimal(aValue));
|
||||
}
|
||||
|
||||
public int compareTo(double aValue) {
|
||||
return get().compareTo(new BigDecimal(aValue));
|
||||
}
|
||||
|
||||
public static AtomicDoubleComparator comparator =
|
||||
new AtomicDoubleComparator();
|
||||
|
||||
public static class AtomicDoubleComparator
|
||||
implements Comparator<Object> {
|
||||
public int compare(AtomicBigDecimal d1, AtomicBigDecimal d2) {
|
||||
return d1.compareTo(d2);
|
||||
}
|
||||
|
||||
public int compare(Object d1, Object d2) {
|
||||
return objectToBigDecimal(d1).compareTo(objectToBigDecimal(d2));
|
||||
}
|
||||
|
||||
public int compareReverse(AtomicBigDecimal d1, AtomicBigDecimal d2) {
|
||||
return d2.compareTo(d1);
|
||||
}
|
||||
|
||||
public int compareReverse(Object d1, Object d2) {
|
||||
return objectToBigDecimal(d2).compareTo(objectToBigDecimal(d1));
|
||||
}
|
||||
}
|
||||
|
||||
// Support Routines and constants
|
||||
private static BigDecimal objectToBigDecimal(Object obj) {
|
||||
if (obj instanceof AtomicBigDecimal) {
|
||||
return ((AtomicBigDecimal) obj).get();
|
||||
}
|
||||
if (obj instanceof BigDecimal) {
|
||||
return (BigDecimal) obj;
|
||||
} else if (obj instanceof BigInteger) {
|
||||
return new BigDecimal((BigInteger) obj);
|
||||
} else if (obj instanceof String) {
|
||||
return new BigDecimal((String) obj);
|
||||
} else if (obj instanceof Number) {
|
||||
return new BigDecimal(((Number) obj).doubleValue());
|
||||
} else {
|
||||
return new BigDecimal(obj.toString());
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -8,6 +8,7 @@ import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
|
||||
import it.integry.integrywmsnative.core.model.secondary.GestioneEnum;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityLogger;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityString;
|
||||
@ -230,6 +231,13 @@ public class MtbColr extends EntityBase implements Parcelable {
|
||||
return gestione;
|
||||
}
|
||||
|
||||
|
||||
|
||||
public MtbColr setGestione(GestioneEnum gestione) {
|
||||
this.gestione = gestione.getText();
|
||||
return this;
|
||||
}
|
||||
|
||||
public MtbColr setGestione(String gestione) {
|
||||
this.gestione = gestione;
|
||||
return this;
|
||||
|
||||
@ -5,8 +5,12 @@ import java.text.DecimalFormat;
|
||||
import java.text.DecimalFormatSymbols;
|
||||
import java.util.Locale;
|
||||
|
||||
import it.integry.integrywmsnative.core.CommonConst;
|
||||
|
||||
public class UtilityNumber {
|
||||
|
||||
private static DecimalFormat decimalFormatInstance;
|
||||
|
||||
public static String decimalToString(Float bigDecimal){
|
||||
if(bigDecimal == null) return "0";
|
||||
return decimalToString(bigDecimal, 3);
|
||||
@ -35,4 +39,28 @@ public class UtilityNumber {
|
||||
return decimalFormat.format(floatValue);
|
||||
}
|
||||
|
||||
public static DecimalFormat getNumberFormatInstance() {
|
||||
|
||||
if(decimalFormatInstance == null) {
|
||||
DecimalFormatSymbols otherSymbols = new DecimalFormatSymbols(Locale.getDefault());
|
||||
otherSymbols.setDecimalSeparator('.');
|
||||
otherSymbols.setGroupingSeparator(',');
|
||||
|
||||
decimalFormatInstance = new DecimalFormat();
|
||||
decimalFormatInstance.setMaximumFractionDigits(CommonConst.Config.NUMBER_OF_DECIMAL_DIGITS);
|
||||
decimalFormatInstance.setDecimalFormatSymbols(otherSymbols);
|
||||
decimalFormatInstance.setGroupingUsed(false);
|
||||
}
|
||||
|
||||
return decimalFormatInstance;
|
||||
}
|
||||
|
||||
public static int countNumberOfDecimalDigits(Float value) {
|
||||
String text = getNumberFormatInstance().format(Math.abs(value));
|
||||
int integerPlaces = text.indexOf('.');
|
||||
int decimalPlaces = text.length() - integerPlaces - 1;
|
||||
|
||||
return decimalPlaces;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -18,7 +18,7 @@ public class UtilityPosizione {
|
||||
|
||||
char LChar = mtbDepoPosizione.getPosizione().charAt(mtbDepoPosizione.getPosizione().length()-2);
|
||||
|
||||
if(LChar == 'L') {
|
||||
if(LChar == 'L' && mtbDepoPosizione.getPosizione().length() > 2) {
|
||||
return true;
|
||||
} else return false;
|
||||
}
|
||||
|
||||
@ -222,6 +222,13 @@ public class MainFragment extends Fragment implements ITitledFragment, IScrollab
|
||||
// ((MainActivity) getActivity()).setItem(R.id.nav_resi_cliente);
|
||||
// }
|
||||
|
||||
|
||||
|
||||
@OnClick(R.id.fast_button_prod_versamento_materiale)
|
||||
public void onClickProdVersamentoMateriale(View view) {
|
||||
((MainActivity) getActivity()).setItem(R.id.nav_prod_versamento_materiale);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setScrollToolbar(ElevatedToolbar toolbar) {
|
||||
mToolbar = toolbar;
|
||||
|
||||
@ -332,7 +332,7 @@ public class PickingLiberoViewModel implements IRecyclerItemClicked<MtbColr> {
|
||||
|
||||
cloneMtbColr
|
||||
.setGestioneRif(cloneMtbColr.getGestione())
|
||||
.setGestione(null);
|
||||
.setGestione((String) null);
|
||||
|
||||
cloneMtbColr
|
||||
.setSerColloRif(cloneMtbColr.getSerCollo())
|
||||
|
||||
@ -0,0 +1,92 @@
|
||||
package it.integry.integrywmsnative.gest.prod_versamento_materiale;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.Bundle;
|
||||
|
||||
import androidx.appcompat.widget.AppCompatTextView;
|
||||
import androidx.databinding.DataBindingUtil;
|
||||
import androidx.fragment.app.Fragment;
|
||||
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
|
||||
import it.integry.integrywmsnative.R;
|
||||
import it.integry.integrywmsnative.core.interfaces.IPoppableActivity;
|
||||
import it.integry.integrywmsnative.core.interfaces.ITitledFragment;
|
||||
import it.integry.integrywmsnative.databinding.FragmentProdVersamentoMaterialeBinding;
|
||||
import it.integry.integrywmsnative.gest.prod_versamento_materiale.core.ProdVersamentoMaterialHelper;
|
||||
import it.integry.integrywmsnative.gest.prod_versamento_materiale.viewmodel.ProdVersamentoMaterialViewModel;
|
||||
import it.integry.integrywmsnative.gest.versamento_merce.viewmodel.VersamentoMerceViewModel;
|
||||
|
||||
public class ProdVersamentoMaterialeFragment extends Fragment implements ITitledFragment {
|
||||
|
||||
private FragmentProdVersamentoMaterialeBinding mBinding;
|
||||
private ProdVersamentoMaterialViewModel mViewmodel;
|
||||
private ProdVersamentoMaterialHelper mHelper;
|
||||
|
||||
public ProdVersamentoMaterialeFragment() {
|
||||
// Required empty public constructor
|
||||
}
|
||||
|
||||
public static ProdVersamentoMaterialeFragment newInstance() {
|
||||
ProdVersamentoMaterialeFragment fragment = new ProdVersamentoMaterialeFragment();
|
||||
Bundle args = new Bundle();
|
||||
fragment.setArguments(args);
|
||||
return fragment;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
|
||||
mViewmodel = new ProdVersamentoMaterialViewModel();
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public View onCreateView(LayoutInflater inflater, ViewGroup container,
|
||||
Bundle savedInstanceState) {
|
||||
// Inflate the layout for this fragment
|
||||
|
||||
mBinding = DataBindingUtil.inflate(inflater, R.layout.fragment_prod_versamento_materiale, container, false);
|
||||
|
||||
|
||||
init();
|
||||
return mBinding.getRoot();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public void onAttach(Context context) {
|
||||
super.onAttach(context);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDetach() {
|
||||
super.onDetach();
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
private void init() {
|
||||
mHelper = new ProdVersamentoMaterialHelper(getActivity());
|
||||
mViewmodel.init(getActivity(), mBinding, mHelper, () -> {
|
||||
((IPoppableActivity) getActivity()).pop();
|
||||
});
|
||||
|
||||
mViewmodel.openLU();
|
||||
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void onCreateActionBar(AppCompatTextView titleText, Context context) {
|
||||
titleText.setText(context.getText(R.string.prod_versamento_materiale_title_fragment).toString());
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,14 @@
|
||||
package it.integry.integrywmsnative.gest.prod_versamento_materiale.core;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
public class ProdVersamentoMaterialHelper {
|
||||
|
||||
|
||||
private Context mContext;
|
||||
|
||||
public ProdVersamentoMaterialHelper(Context context) {
|
||||
this.mContext = context;
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,125 @@
|
||||
package it.integry.integrywmsnative.gest.prod_versamento_materiale.viewmodel;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.Context;
|
||||
import android.text.Html;
|
||||
import android.text.SpannableString;
|
||||
|
||||
import androidx.databinding.ObservableField;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
import it.integry.integrywmsnative.R;
|
||||
import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer;
|
||||
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
||||
import it.integry.integrywmsnative.core.interfaces.IPoppableActivity;
|
||||
import it.integry.integrywmsnative.core.model.MtbColt;
|
||||
import it.integry.integrywmsnative.core.model.MtbDepoPosizione;
|
||||
import it.integry.integrywmsnative.core.model.secondary.GestioneEnum;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
||||
import it.integry.integrywmsnative.databinding.FragmentProdVersamentoMaterialeBinding;
|
||||
import it.integry.integrywmsnative.gest.prod_versamento_materiale.core.ProdVersamentoMaterialHelper;
|
||||
import it.integry.integrywmsnative.view.dialogs.ask_position_of_lu.DialogAskPositionOfLU;
|
||||
import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper;
|
||||
import it.integry.integrywmsnative.view.dialogs.scan_or_create_lu.DialogScanOrCreateLU;
|
||||
|
||||
|
||||
public class ProdVersamentoMaterialViewModel {
|
||||
|
||||
|
||||
private Context mContext;
|
||||
|
||||
private FragmentProdVersamentoMaterialeBinding mBinding;
|
||||
private ProdVersamentoMaterialHelper mHelper;
|
||||
private Runnable mOnVersamentoCompleted;
|
||||
|
||||
public ObservableField<MtbColt> mtbColt = new ObservableField<>();
|
||||
|
||||
|
||||
public void init(Activity context, FragmentProdVersamentoMaterialeBinding binding, ProdVersamentoMaterialHelper helper, Runnable onVersamentoCompleted) {
|
||||
mContext = context;
|
||||
mBinding = binding;
|
||||
mHelper = helper;
|
||||
mOnVersamentoCompleted = onVersamentoCompleted;
|
||||
|
||||
BarcodeManager.enable();
|
||||
}
|
||||
|
||||
|
||||
public void openLU() {
|
||||
DialogScanOrCreateLU.make(mContext, true, mtbColt -> {
|
||||
if(mtbColt == null) {
|
||||
((IPoppableActivity)mContext).pop();
|
||||
} else if((mtbColt.getGestioneEnum() == GestioneEnum.ACQUISTO || mtbColt.getGestioneEnum() == GestioneEnum.LAVORAZIONE) && mtbColt.getSegno().equals(+1)){
|
||||
|
||||
if(mtbColt.getMtbColr() == null || mtbColt.getMtbColr().size() == 0) {
|
||||
DialogSimpleMessageHelper.makeWarningDialog(mContext,
|
||||
new SpannableString(Html.fromHtml("E' stata scansionata una UL già vuota")),
|
||||
null, this::openLU).show();
|
||||
|
||||
} else {
|
||||
setMtbColt(mtbColt);
|
||||
choosePosition();
|
||||
}
|
||||
} else {
|
||||
DialogSimpleMessageHelper.makeWarningDialog(mContext,
|
||||
new SpannableString(Html.fromHtml("Sono accettate solamente UL di <b>Acquisto</b> o <b>Lavorazione</b> di <b>CARICO</b>")),
|
||||
null, this::openLU).show();
|
||||
}
|
||||
}).show();
|
||||
}
|
||||
|
||||
private void choosePosition() {
|
||||
DialogAskPositionOfLU.makeBase(mContext, null, mtbDepoPosizione -> {
|
||||
if(mtbDepoPosizione != null && mtbColt.get() != null) {
|
||||
createColloScarico(mtbDepoPosizione);
|
||||
} else {
|
||||
DialogSimpleMessageHelper.makeWarningDialog(mContext,
|
||||
new SpannableString(Html.fromHtml("Si è verificato un errore. Riprovare")),
|
||||
null, this::openLU).show();
|
||||
}
|
||||
|
||||
|
||||
}, ex -> {
|
||||
UtilityExceptions.defaultException(mContext, ex);
|
||||
}).show();
|
||||
}
|
||||
|
||||
|
||||
|
||||
private void createColloScarico(MtbDepoPosizione mtbDepoPosizione) {
|
||||
|
||||
MtbColt cloneUL = ((MtbColt) mtbColt.get().clone());
|
||||
cloneUL.setCodJfas(mtbDepoPosizione.getPosizione());
|
||||
|
||||
ColliMagazzinoRESTConsumer.createColloScaricoDaCarico(cloneUL, mtbDepoPosizione, generatedMtbColt -> {
|
||||
showDataSavedDialog(() -> {
|
||||
mOnVersamentoCompleted.run();
|
||||
});
|
||||
}, ex -> {
|
||||
UtilityExceptions.defaultException(mContext, ex);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
public void setMtbColt(MtbColt mtbColt) {
|
||||
this.mtbColt.set(mtbColt);
|
||||
}
|
||||
|
||||
public void resetMtbColt() {
|
||||
this.mtbColt.set(null);
|
||||
openLU();
|
||||
}
|
||||
|
||||
|
||||
private void showDataSavedDialog(Runnable onPositiveClick) {
|
||||
|
||||
DialogSimpleMessageHelper.makeSuccessDialog(
|
||||
mContext,
|
||||
mContext.getResources().getString(R.string.completed),
|
||||
new SpannableString(mContext.getResources().getString(R.string.data_saved)),
|
||||
null, onPositiveClick).show();
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@ -30,6 +30,7 @@ import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
||||
import it.integry.integrywmsnative.core.class_router.ClassRouter;
|
||||
import it.integry.integrywmsnative.core.class_router.interfaces.IOrdiniVendita;
|
||||
import it.integry.integrywmsnative.core.data_recover.ColliDataRecover;
|
||||
import it.integry.integrywmsnative.core.expansion.AtomicBigDecimal;
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||
import it.integry.integrywmsnative.core.model.CommonModelConsts;
|
||||
import it.integry.integrywmsnative.core.model.FiltroOrdineDTO;
|
||||
@ -1046,7 +1047,20 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
|
||||
BigDecimal qtaDaEvadere = item.getQtaOrd().subtract(new BigDecimal(qtaEvasaTotale));
|
||||
if(qtaDaEvadere.floatValue() < 0) qtaDaEvadere = BigDecimal.ZERO;
|
||||
|
||||
BigDecimal qtaDisponibile = item.getQtaCollo().subtract(new BigDecimal(qtaEvasaCurrentUL));
|
||||
|
||||
|
||||
AtomicBigDecimal qtaTest = new AtomicBigDecimal();
|
||||
|
||||
Stream.of(item.getWithdrawRows())
|
||||
.filter(x -> Objects.equals(x.getNumColloRif(), item.getNumCollo()) &&
|
||||
x.getDataColloRifS().equalsIgnoreCase(item.getDataColloS()) &&
|
||||
x.getSerColloRif().equalsIgnoreCase(item.getSerCollo()) &&
|
||||
x.getGestioneRif().equalsIgnoreCase(item.getGestione()))
|
||||
.forEach(x -> {
|
||||
qtaTest.addAndGet(x.getQtaCol());
|
||||
});
|
||||
|
||||
BigDecimal qtaDisponibile = item.getQtaCollo().subtract(qtaTest.get());
|
||||
if(qtaDisponibile.floatValue() < 0) qtaDisponibile = BigDecimal.ZERO;
|
||||
|
||||
DialogInputQuantity.DTO dto = new DialogInputQuantity.DTO()
|
||||
|
||||
@ -279,7 +279,7 @@ public class VersamentoMerceViewModel {
|
||||
MtbColr stornoSourceMtbColr = (MtbColr) destNewMtbColr.get(i).clone();
|
||||
|
||||
stornoSourceMtbColr
|
||||
.setGestione(null)
|
||||
.setGestione((String) null)
|
||||
.setNumCollo(null)
|
||||
.setSerCollo(null)
|
||||
.setDataCollo(null)
|
||||
@ -302,7 +302,7 @@ public class VersamentoMerceViewModel {
|
||||
}
|
||||
|
||||
cloneMtbColr
|
||||
.setGestione(null)
|
||||
.setGestione((String) null)
|
||||
.setSerCollo(null)
|
||||
.setNumCollo(null)
|
||||
.setDataCollo(null);
|
||||
|
||||
@ -153,15 +153,23 @@ public class DialogAskPositionOfLU {
|
||||
askLivello();
|
||||
BarcodeManager.enable();
|
||||
} else {
|
||||
updatePosizione(foundPosizione, () -> {
|
||||
if(mtbColt != null) {
|
||||
updatePosizione(foundPosizione, () -> {
|
||||
completedFlow = true;
|
||||
BarcodeManager.enable();
|
||||
if(onComplete != null) onComplete.run(foundPosizione);
|
||||
}, ex -> {
|
||||
completedFlow = true;
|
||||
BarcodeManager.enable();
|
||||
onFailed.run(ex);
|
||||
});
|
||||
} else {
|
||||
completedFlow = true;
|
||||
BarcodeManager.enable();
|
||||
if(onComplete != null) onComplete.run(foundPosizione);
|
||||
}, ex -> {
|
||||
completedFlow = true;
|
||||
|
||||
mDialog.dismiss();
|
||||
BarcodeManager.enable();
|
||||
onFailed.run(ex);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
} else {
|
||||
@ -182,19 +190,26 @@ public class DialogAskPositionOfLU {
|
||||
|
||||
if(foundPosizione != null) {
|
||||
resetLevelError();
|
||||
ProgressDialog progressDialog = UtilityProgress.createDefaultProgressDialog(mContext);
|
||||
|
||||
ColliMagazzinoRESTConsumer.changePosizione(mtbColt, foundPosizione, () -> {
|
||||
progressDialog.dismiss();
|
||||
if(mtbColt != null) {
|
||||
ProgressDialog progressDialog = UtilityProgress.createDefaultProgressDialog(mContext);
|
||||
|
||||
ColliMagazzinoRESTConsumer.changePosizione(mtbColt, foundPosizione, () -> {
|
||||
progressDialog.dismiss();
|
||||
completedFlow = true;
|
||||
if(onComplete != null) onComplete.run(foundPosizione);
|
||||
mDialog.dismiss();
|
||||
}, ex -> {
|
||||
UtilityExceptions.defaultException(mContext, ex, progressDialog);
|
||||
completedFlow = true;
|
||||
if(onFailed != null) onFailed.run(ex);
|
||||
mDialog.dismiss();
|
||||
});
|
||||
} else {
|
||||
completedFlow = true;
|
||||
onComplete.run(foundPosizione);
|
||||
if(onComplete != null) onComplete.run(foundPosizione);
|
||||
mDialog.dismiss();
|
||||
}, ex -> {
|
||||
UtilityExceptions.defaultException(mContext, ex, progressDialog);
|
||||
completedFlow = true;
|
||||
onFailed.run(ex);
|
||||
mDialog.dismiss();
|
||||
});
|
||||
}
|
||||
|
||||
} else {
|
||||
setLevelError(mContext.getResources().getString(R.string.not_valid));
|
||||
|
||||
BIN
app/src/main/res/drawable/ic_prod_recupero_materiale.png
Normal file
BIN
app/src/main/res/drawable/ic_prod_recupero_materiale.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 3.3 KiB |
BIN
app/src/main/res/drawable/ic_prod_versamento_materiale.png
Normal file
BIN
app/src/main/res/drawable/ic_prod_versamento_materiale.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.7 KiB |
@ -91,15 +91,20 @@
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatButton
|
||||
|
||||
|
||||
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/remove_art_filter_list"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
style="@style/Button.DangerOutline"
|
||||
android:layout_alignParentEnd="true"
|
||||
android:backgroundTint="@color/red_600"
|
||||
android:textColor="@android:color/white"
|
||||
android:text="@string/remove_filter_button"
|
||||
android:onClick="@{() -> viewmodel.removeListFilter()}"
|
||||
android:text="@string/remove_filter_button"/>
|
||||
app:strokeColor="@color/red_600"/>
|
||||
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
|
||||
@ -50,7 +50,7 @@
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical">
|
||||
|
||||
@ -185,253 +185,382 @@
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
<LinearLayout
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:clipToPadding="false"
|
||||
android:orientation="horizontal"
|
||||
android:weightSum="1"
|
||||
android:padding="8dp">
|
||||
|
||||
|
||||
<LinearLayout
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/guide_1"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:layout_weight="0.5">
|
||||
app:layout_constraintGuide_percent="0.5"/>
|
||||
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
android:id="@+id/fast_button_accettazione"
|
||||
style="@style/Widget.MaterialComponents.CardView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="8dp"
|
||||
app:cardBackgroundColor="@android:color/white"
|
||||
app:cardCornerRadius="4dp">
|
||||
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_horizontal"
|
||||
android:orientation="vertical"
|
||||
android:padding="8dp">
|
||||
|
||||
<ImageView
|
||||
android:layout_width="64sp"
|
||||
android:layout_height="wrap_content"
|
||||
android:adjustViewBounds="true"
|
||||
android:src="@drawable/ic_accettazione_96" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:text="@string/accettazione_title_fragment"
|
||||
android:textAllCaps="true"
|
||||
android:textColor="@color/grey_700"
|
||||
android:textStyle="bold" />
|
||||
|
||||
</LinearLayout>
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
android:id="@+id/fast_button_rettifica_giacenze"
|
||||
style="@style/Widget.MaterialComponents.CardView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="8dp"
|
||||
app:cardBackgroundColor="@android:color/white"
|
||||
app:cardCornerRadius="4dp">
|
||||
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_horizontal"
|
||||
android:orientation="vertical"
|
||||
android:padding="8dp">
|
||||
|
||||
<ImageView
|
||||
android:layout_width="64sp"
|
||||
android:layout_height="wrap_content"
|
||||
android:adjustViewBounds="true"
|
||||
android:src="@drawable/ic_rettifica_giacenze_96" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:gravity="center_horizontal"
|
||||
android:text="@string/rettifica_giacenze_fragment_title"
|
||||
android:textAllCaps="true"
|
||||
android:textColor="@color/grey_700"
|
||||
android:textStyle="bold" />
|
||||
|
||||
</LinearLayout>
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
android:id="@+id/fast_button_picking_libero"
|
||||
style="@style/Widget.MaterialComponents.CardView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="8dp"
|
||||
app:cardBackgroundColor="@android:color/white"
|
||||
app:cardCornerRadius="4dp">
|
||||
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_horizontal"
|
||||
android:orientation="vertical"
|
||||
android:padding="8dp">
|
||||
|
||||
<ImageView
|
||||
android:layout_width="64sp"
|
||||
android:layout_height="wrap_content"
|
||||
android:adjustViewBounds="true"
|
||||
android:src="@drawable/ic_picking_libero_96" />
|
||||
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:gravity="center_horizontal"
|
||||
android:text="@string/free_picking"
|
||||
android:textAllCaps="true"
|
||||
android:textColor="@color/grey_700"
|
||||
android:textStyle="bold" />
|
||||
|
||||
</LinearLayout>
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
<TextView
|
||||
android:id="@+id/general_dashboard_group_title"
|
||||
style="@style/AppTheme.NewMaterial.Text.TextBoxGroupTitleDashboard"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:layout_weight="0.5">
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
android:text="@string/general" />
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
android:id="@+id/fast_button_accettazione"
|
||||
style="@style/Widget.MaterialComponents.CardView"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="8dp"
|
||||
app:layout_constraintTop_toBottomOf="@id/general_dashboard_group_title"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@id/guide_1"
|
||||
app:cardBackgroundColor="@android:color/white"
|
||||
app:cardCornerRadius="4dp">
|
||||
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
android:id="@+id/fast_button_spedizione"
|
||||
style="@style/Widget.MaterialComponents.CardView"
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="8dp"
|
||||
app:cardBackgroundColor="@android:color/white"
|
||||
app:cardCornerRadius="4dp">
|
||||
android:gravity="center_horizontal"
|
||||
android:orientation="vertical"
|
||||
android:padding="8dp">
|
||||
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
<ImageView
|
||||
android:layout_width="64sp"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_horizontal"
|
||||
android:orientation="vertical"
|
||||
android:padding="8dp">
|
||||
android:adjustViewBounds="true"
|
||||
android:src="@drawable/ic_accettazione_96" />
|
||||
|
||||
<ImageView
|
||||
android:layout_width="64sp"
|
||||
android:layout_height="wrap_content"
|
||||
android:adjustViewBounds="true"
|
||||
android:src="@drawable/ic_spedizione_96" />
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:text="@string/accettazione_title_fragment"
|
||||
android:textAllCaps="true"
|
||||
android:textColor="@color/grey_700"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:text="@string/vendita_title_fragment"
|
||||
android:textAllCaps="true"
|
||||
android:textColor="@color/grey_700"
|
||||
android:textStyle="bold" />
|
||||
</LinearLayout>
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
</LinearLayout>
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
android:id="@+id/fast_button_versamento"
|
||||
style="@style/Widget.MaterialComponents.CardView"
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
android:id="@+id/fast_button_spedizione"
|
||||
style="@style/Widget.MaterialComponents.CardView"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="8dp"
|
||||
app:layout_constraintTop_toBottomOf="@id/general_dashboard_group_title"
|
||||
app:layout_constraintStart_toEndOf="@id/guide_1"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:cardBackgroundColor="@android:color/white"
|
||||
app:cardCornerRadius="4dp">
|
||||
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="8dp"
|
||||
app:cardBackgroundColor="@android:color/white"
|
||||
app:cardCornerRadius="4dp">
|
||||
android:gravity="center_horizontal"
|
||||
android:orientation="vertical"
|
||||
android:padding="8dp">
|
||||
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
<ImageView
|
||||
android:layout_width="64sp"
|
||||
android:layout_height="wrap_content"
|
||||
android:adjustViewBounds="true"
|
||||
android:src="@drawable/ic_spedizione_96" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:text="@string/vendita_title_fragment"
|
||||
android:textAllCaps="true"
|
||||
android:textColor="@color/grey_700"
|
||||
android:textStyle="bold" />
|
||||
|
||||
</LinearLayout>
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
android:id="@+id/fast_button_rettifica_giacenze"
|
||||
style="@style/Widget.MaterialComponents.CardView"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="8dp"
|
||||
app:layout_constraintTop_toBottomOf="@id/fast_button_accettazione"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@id/guide_1"
|
||||
app:cardBackgroundColor="@android:color/white"
|
||||
app:cardCornerRadius="4dp">
|
||||
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_horizontal"
|
||||
android:orientation="vertical"
|
||||
android:padding="8dp">
|
||||
|
||||
<ImageView
|
||||
android:layout_width="64sp"
|
||||
android:layout_height="wrap_content"
|
||||
android:adjustViewBounds="true"
|
||||
android:src="@drawable/ic_rettifica_giacenze_96" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:gravity="center_horizontal"
|
||||
android:orientation="vertical"
|
||||
android:padding="8dp">
|
||||
android:text="@string/rettifica_giacenze_fragment_title"
|
||||
android:textAllCaps="true"
|
||||
android:textColor="@color/grey_700"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<ImageView
|
||||
android:layout_width="64sp"
|
||||
android:layout_height="wrap_content"
|
||||
android:adjustViewBounds="true"
|
||||
android:src="@drawable/ic_versamento_merce_96" />
|
||||
</LinearLayout>
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:gravity="center_horizontal"
|
||||
android:text="@string/versamento_merce_fragment_title"
|
||||
android:textAllCaps="true"
|
||||
android:textColor="@color/grey_700"
|
||||
android:textStyle="bold" />
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
android:id="@+id/fast_button_versamento"
|
||||
style="@style/Widget.MaterialComponents.CardView"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="8dp"
|
||||
app:layout_constraintTop_toBottomOf="@id/fast_button_spedizione"
|
||||
app:layout_constraintStart_toEndOf="@id/guide_1"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:cardBackgroundColor="@android:color/white"
|
||||
app:cardCornerRadius="4dp">
|
||||
|
||||
</LinearLayout>
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
<!--<com.google.android.material.card.MaterialCardView-->
|
||||
<!--android:id="@+id/fast_button_resi_clienti"-->
|
||||
<!--style="@style/Widget.MaterialComponents.CardView"-->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_horizontal"
|
||||
android:orientation="vertical"
|
||||
android:padding="8dp">
|
||||
|
||||
<ImageView
|
||||
android:layout_width="64sp"
|
||||
android:layout_height="wrap_content"
|
||||
android:adjustViewBounds="true"
|
||||
android:src="@drawable/ic_versamento_merce_96" />
|
||||
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:gravity="center_horizontal"
|
||||
android:text="@string/versamento_merce_fragment_title"
|
||||
android:textAllCaps="true"
|
||||
android:textColor="@color/grey_700"
|
||||
android:textStyle="bold" />
|
||||
|
||||
</LinearLayout>
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
android:id="@+id/fast_button_picking_libero"
|
||||
style="@style/Widget.MaterialComponents.CardView"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="8dp"
|
||||
app:layout_constraintTop_toBottomOf="@id/fast_button_rettifica_giacenze"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@id/guide_1"
|
||||
app:cardBackgroundColor="@android:color/white"
|
||||
app:cardCornerRadius="4dp">
|
||||
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_horizontal"
|
||||
android:orientation="vertical"
|
||||
android:padding="8dp">
|
||||
|
||||
<ImageView
|
||||
android:layout_width="64sp"
|
||||
android:layout_height="wrap_content"
|
||||
android:adjustViewBounds="true"
|
||||
android:src="@drawable/ic_picking_libero_96" />
|
||||
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:gravity="center_horizontal"
|
||||
android:text="@string/free_picking"
|
||||
android:textAllCaps="true"
|
||||
android:textColor="@color/grey_700"
|
||||
android:textStyle="bold" />
|
||||
|
||||
</LinearLayout>
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
|
||||
<!--<com.google.android.material.card.MaterialCardView-->
|
||||
<!--android:id="@+id/fast_button_resi_clienti"-->
|
||||
<!--style="@style/Widget.MaterialComponents.CardView"-->
|
||||
<!--android:layout_width="0dp"-->
|
||||
<!--android:layout_height="wrap_content"-->
|
||||
<!--android:layout_margin="8dp"-->
|
||||
<!--app:layout_constraintTop_toBottomOf="@id/fast_button_versamento"-->
|
||||
<!--app:layout_constraintStart_toEndOf="@id/guide_1"-->
|
||||
<!--app:layout_constraintEnd_toEndOf="parent"-->
|
||||
<!--app:cardBackgroundColor="@android:color/white"-->
|
||||
<!--app:cardCornerRadius="4dp">-->
|
||||
|
||||
|
||||
<!--<LinearLayout-->
|
||||
<!--android:layout_width="match_parent"-->
|
||||
<!--android:layout_height="wrap_content"-->
|
||||
<!--android:layout_margin="8dp"-->
|
||||
<!--app:cardBackgroundColor="@android:color/white"-->
|
||||
<!--app:cardCornerRadius="4dp">-->
|
||||
<!--android:gravity="center_horizontal"-->
|
||||
<!--android:orientation="vertical"-->
|
||||
<!--android:padding="8dp">-->
|
||||
|
||||
|
||||
<!--<LinearLayout-->
|
||||
<!--android:layout_width="match_parent"-->
|
||||
<!--<ImageView-->
|
||||
<!--android:layout_width="64sp"-->
|
||||
<!--android:layout_height="wrap_content"-->
|
||||
<!--android:adjustViewBounds="true"-->
|
||||
<!--android:src="@drawable/ic_versamento_merce_96" />-->
|
||||
|
||||
|
||||
<!--<androidx.appcompat.widget.AppCompatTextView-->
|
||||
<!--android:layout_width="wrap_content"-->
|
||||
<!--android:layout_height="wrap_content"-->
|
||||
<!--android:layout_marginTop="16dp"-->
|
||||
<!--android:gravity="center_horizontal"-->
|
||||
<!--android:orientation="vertical"-->
|
||||
<!--android:padding="8dp">-->
|
||||
<!--android:text="@string/fragment_ultime_consegne_cliente_title"-->
|
||||
<!--android:textAllCaps="true"-->
|
||||
<!--android:textColor="@color/grey_700"-->
|
||||
<!--android:textStyle="bold" />-->
|
||||
|
||||
<!--<ImageView-->
|
||||
<!--android:layout_width="64sp"-->
|
||||
<!--android:layout_height="wrap_content"-->
|
||||
<!--android:adjustViewBounds="true"-->
|
||||
<!--android:src="@drawable/ic_versamento_merce_96" />-->
|
||||
<!--</LinearLayout>-->
|
||||
<!--</com.google.android.material.card.MaterialCardView>-->
|
||||
|
||||
|
||||
<!--<androidx.appcompat.widget.AppCompatTextView-->
|
||||
<!--android:layout_width="wrap_content"-->
|
||||
<!--android:layout_height="wrap_content"-->
|
||||
<!--android:layout_marginTop="16dp"-->
|
||||
<!--android:gravity="center_horizontal"-->
|
||||
<!--android:text="@string/fragment_ultime_consegne_cliente_title"-->
|
||||
<!--android:textAllCaps="true"-->
|
||||
<!--android:textColor="@color/grey_700"-->
|
||||
<!--android:textStyle="bold" />-->
|
||||
|
||||
<!--</LinearLayout>-->
|
||||
<!--</com.google.android.material.card.MaterialCardView>-->
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
</LinearLayout>
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="8dp">
|
||||
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/guide_2"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintGuide_percent="0.5"/>
|
||||
|
||||
|
||||
<TextView
|
||||
android:id="@+id/prod_dashboard_group_title"
|
||||
style="@style/AppTheme.NewMaterial.Text.TextBoxGroupTitleDashboard"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
android:text="@string/production" />
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
android:id="@+id/fast_button_prod_versamento_materiale"
|
||||
style="@style/Widget.MaterialComponents.CardView"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="8dp"
|
||||
app:layout_constraintTop_toBottomOf="@id/prod_dashboard_group_title"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@id/guide_2"
|
||||
app:cardBackgroundColor="@android:color/white"
|
||||
app:cardCornerRadius="4dp">
|
||||
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_horizontal"
|
||||
android:orientation="vertical"
|
||||
android:padding="8dp">
|
||||
|
||||
<ImageView
|
||||
android:layout_width="64sp"
|
||||
android:layout_height="wrap_content"
|
||||
android:adjustViewBounds="true"
|
||||
android:src="@drawable/ic_prod_versamento_materiale" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:gravity="center_horizontal"
|
||||
android:text="@string/prod_versamento_materiale_title_fragment"
|
||||
android:textAllCaps="true"
|
||||
android:textColor="@color/grey_700"
|
||||
android:textStyle="bold" />
|
||||
|
||||
</LinearLayout>
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
|
||||
<!--<com.google.android.material.card.MaterialCardView-->
|
||||
<!--android:id="@+id/fast_button_prod_recupero_materiale"-->
|
||||
<!--style="@style/Widget.MaterialComponents.CardView"-->
|
||||
<!--android:layout_width="0dp"-->
|
||||
<!--android:layout_height="wrap_content"-->
|
||||
<!--android:layout_margin="8dp"-->
|
||||
<!--app:layout_constraintTop_toTopOf="parent"-->
|
||||
<!--app:layout_constraintStart_toEndOf="@id/guide_2"-->
|
||||
<!--app:layout_constraintEnd_toEndOf="parent"-->
|
||||
<!--app:cardBackgroundColor="@android:color/white"-->
|
||||
<!--app:cardCornerRadius="4dp">-->
|
||||
|
||||
|
||||
<!--<LinearLayout-->
|
||||
<!--android:layout_width="match_parent"-->
|
||||
<!--android:layout_height="wrap_content"-->
|
||||
<!--android:gravity="center_horizontal"-->
|
||||
<!--android:orientation="vertical"-->
|
||||
<!--android:padding="8dp">-->
|
||||
|
||||
<!--<ImageView-->
|
||||
<!--android:layout_width="64sp"-->
|
||||
<!--android:layout_height="wrap_content"-->
|
||||
<!--android:adjustViewBounds="true"-->
|
||||
<!--android:src="@drawable/ic_spedizione_96" />-->
|
||||
|
||||
<!--<androidx.appcompat.widget.AppCompatTextView-->
|
||||
<!--android:layout_width="wrap_content"-->
|
||||
<!--android:layout_height="wrap_content"-->
|
||||
<!--android:layout_marginTop="16dp"-->
|
||||
<!--android:text="@string/vendita_title_fragment"-->
|
||||
<!--android:textAllCaps="true"-->
|
||||
<!--android:textColor="@color/grey_700"-->
|
||||
<!--android:textStyle="bold" />-->
|
||||
|
||||
<!--</LinearLayout>-->
|
||||
<!--</com.google.android.material.card.MaterialCardView>-->
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
@ -0,0 +1,18 @@
|
||||
<?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>
|
||||
|
||||
</data>
|
||||
|
||||
<FrameLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
tools:context=".gest.prod_versamento_materiale.ProdVersamentoMaterialeFragment">
|
||||
|
||||
|
||||
</FrameLayout>
|
||||
|
||||
</layout>
|
||||
@ -31,6 +31,22 @@
|
||||
<!--android:icon="@drawable/ic_barcode_96"-->
|
||||
<!--android:title="@string/fragment_ultime_consegne_cliente_title" />-->
|
||||
</group>
|
||||
|
||||
|
||||
<group android:checkableBehavior="single" >
|
||||
<item android:title="@string/production">
|
||||
<menu>
|
||||
<item
|
||||
android:id="@+id/nav_prod_versamento_materiale"
|
||||
android:icon="@drawable/ic_settings_24dp"
|
||||
android:title="@string/prod_versamento_materiale_title_fragment" />
|
||||
<!--<item-->
|
||||
<!--android:id="@+id/nav_prod_recupera_materiale"-->
|
||||
<!--android:icon="@drawable/ic_logout_24dp"-->
|
||||
<!--android:title="Logout" />-->
|
||||
</menu>
|
||||
</item>
|
||||
</group>
|
||||
<!--
|
||||
<item android:title="Communicate">
|
||||
<menu>
|
||||
|
||||
@ -201,4 +201,8 @@
|
||||
<string name="exception_printer_not_found">Stampante non trovata</string>
|
||||
|
||||
<string name="action_select_all">Seleziona tutto</string>
|
||||
|
||||
<string name="general">Generale</string>
|
||||
<string name="production">Produzione</string>
|
||||
<string name="prod_versamento_materiale_title_fragment">Versamento materiale</string>
|
||||
</resources>
|
||||
@ -206,6 +206,9 @@
|
||||
|
||||
<string name="action_select_all">Select all</string>
|
||||
|
||||
<string name="general">General</string>
|
||||
<string name="production">Production</string>
|
||||
<string name="prod_versamento_materiale_title_fragment">Deposit material</string>
|
||||
|
||||
|
||||
</resources>
|
||||
|
||||
@ -56,6 +56,14 @@
|
||||
<item name="android:textSize">14sp</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.NewMaterial.Text.TextBoxGroupTitleDashboard" parent="AppTheme.NewMaterial.Text">
|
||||
<item name="android:textColor">@android:color/black</item>
|
||||
<item name="android:textSize">16sp</item>
|
||||
<item name="android:textAllCaps">true</item>
|
||||
<item name="android:textAlignment">center</item>
|
||||
<item name="android:textStyle">bold</item>
|
||||
</style>
|
||||
|
||||
<style name="SplashTheme" parent="AppTheme.NoActionBar">
|
||||
<item name="android:windowBackground">@drawable/splash_background</item>
|
||||
</style>
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
|
||||
buildscript {
|
||||
ext{
|
||||
kotlin_version = '1.3.21'
|
||||
kotlin_version = '1.3.31'
|
||||
}
|
||||
|
||||
repositories {
|
||||
@ -14,10 +14,10 @@ buildscript {
|
||||
google()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:3.4.0'
|
||||
classpath 'com.android.tools.build:gradle:3.4.1'
|
||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||
classpath 'com.google.gms:google-services:4.2.0'
|
||||
classpath 'com.google.firebase:firebase-plugins:1.1.5'
|
||||
classpath 'com.google.firebase:perf-plugin:1.2.1'
|
||||
|
||||
// NOTE: Do not place your application dependencies here; they belong
|
||||
// in the individual module build.gradle files
|
||||
|
||||
1
honeywellscannerlibrary/.gitignore
vendored
Normal file
1
honeywellscannerlibrary/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
/build
|
||||
34
honeywellscannerlibrary/build.gradle
Normal file
34
honeywellscannerlibrary/build.gradle
Normal file
@ -0,0 +1,34 @@
|
||||
apply plugin: 'com.android.library'
|
||||
|
||||
android {
|
||||
compileSdkVersion 28
|
||||
|
||||
|
||||
defaultConfig {
|
||||
minSdkVersion 21
|
||||
targetSdkVersion 28
|
||||
versionCode 1
|
||||
versionName "1.0"
|
||||
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
release {
|
||||
minifyEnabled false
|
||||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
|
||||
|
||||
implementation 'androidx.appcompat:appcompat:1.0.2'
|
||||
testImplementation 'junit:junit:4.12'
|
||||
androidTestImplementation 'androidx.test:runner:1.1.1'
|
||||
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1'
|
||||
implementation project(path: ':barcode_base_library')
|
||||
}
|
||||
BIN
honeywellscannerlibrary/libs/DataCollection.aar
Normal file
BIN
honeywellscannerlibrary/libs/DataCollection.aar
Normal file
Binary file not shown.
21
honeywellscannerlibrary/proguard-rules.pro
vendored
Normal file
21
honeywellscannerlibrary/proguard-rules.pro
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
# Add project specific ProGuard rules here.
|
||||
# You can control the set of applied configuration files using the
|
||||
# proguardFiles setting in build.gradle.
|
||||
#
|
||||
# For more details, see
|
||||
# http://developer.android.com/guide/developing/tools/proguard.html
|
||||
|
||||
# If your project uses WebView with JS, uncomment the following
|
||||
# and specify the fully qualified class name to the JavaScript interface
|
||||
# class:
|
||||
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
|
||||
# public *;
|
||||
#}
|
||||
|
||||
# Uncomment this to preserve the line number information for
|
||||
# debugging stack traces.
|
||||
#-keepattributes SourceFile,LineNumberTable
|
||||
|
||||
# If you keep the line number information, uncomment this to
|
||||
# hide the original source file name.
|
||||
#-renamesourcefileattribute SourceFile
|
||||
@ -0,0 +1,27 @@
|
||||
package it.integry.honeywellscannerlibrary;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
import androidx.test.InstrumentationRegistry;
|
||||
import androidx.test.runner.AndroidJUnit4;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
/**
|
||||
* Instrumented test, which will execute on an Android device.
|
||||
*
|
||||
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
|
||||
*/
|
||||
@RunWith(AndroidJUnit4.class)
|
||||
public class ExampleInstrumentedTest {
|
||||
@Test
|
||||
public void useAppContext() {
|
||||
// Context of the app under test.
|
||||
Context appContext = InstrumentationRegistry.getTargetContext();
|
||||
|
||||
assertEquals("it.integry.honeywellscannerlibrary.test", appContext.getPackageName());
|
||||
}
|
||||
}
|
||||
6
honeywellscannerlibrary/src/main/AndroidManifest.xml
Normal file
6
honeywellscannerlibrary/src/main/AndroidManifest.xml
Normal file
@ -0,0 +1,6 @@
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="it.integry.honeywellscannerlibrary">
|
||||
|
||||
<uses-permission android:name="com.honeywell.decode.permission.DECODE" />
|
||||
|
||||
</manifest>
|
||||
@ -0,0 +1,61 @@
|
||||
package it.integry.honeywellscannerlibrary;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
import com.honeywell.aidc.AidcManager;
|
||||
|
||||
import it.integry.plugins.barcode_base_library.exception.BarcodeAdapterNotFoundException;
|
||||
import it.integry.plugins.barcode_base_library.extension.RunnableArgs;
|
||||
import it.integry.plugins.barcode_base_library.interfaces.BarcodeReaderInterface;
|
||||
import it.integry.plugins.barcode_base_library.model.BarcodeScanDTO;
|
||||
|
||||
public class HoneyWellBarcodeReader implements BarcodeReaderInterface {
|
||||
|
||||
private Context mContext;
|
||||
|
||||
private boolean canGoOn = false;
|
||||
|
||||
public HoneyWellBarcodeReader(Context context) {
|
||||
this.mContext = context;
|
||||
|
||||
AidcManager.create(context, new AidcManager.CreatedCallback() {
|
||||
@Override
|
||||
public void onCreated(AidcManager aidcManager) {
|
||||
canGoOn = true;
|
||||
}
|
||||
});
|
||||
|
||||
while(!canGoOn) {
|
||||
try {
|
||||
Thread.sleep(100);
|
||||
} catch (InterruptedException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isRightAdapter() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void init() throws BarcodeAdapterNotFoundException {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deinit() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void register(RunnableArgs<BarcodeScanDTO> onScanSuccessfull, RunnableArgs<Exception> onScanFailed) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getAdapterName() {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
3
honeywellscannerlibrary/src/main/res/values/strings.xml
Normal file
3
honeywellscannerlibrary/src/main/res/values/strings.xml
Normal file
@ -0,0 +1,3 @@
|
||||
<resources>
|
||||
<string name="app_name">honeywellscannerlibrary</string>
|
||||
</resources>
|
||||
@ -0,0 +1,17 @@
|
||||
package it.integry.honeywellscannerlibrary;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
/**
|
||||
* Example local unit test, which will execute on the development machine (host).
|
||||
*
|
||||
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
|
||||
*/
|
||||
public class ExampleUnitTest {
|
||||
@Test
|
||||
public void addition_isCorrect() {
|
||||
assertEquals(4, 2 + 2);
|
||||
}
|
||||
}
|
||||
@ -1 +1 @@
|
||||
include ':app', ':pointmobilescannerlibrary', ':barcode_base_library', ':dynamic_vgalimenti', ':dynamic__base', ':zebrascannerlibrary'
|
||||
include ':app', ':pointmobilescannerlibrary', ':barcode_base_library', ':dynamic_vgalimenti', ':dynamic__base', ':zebrascannerlibrary', ':honeywellscannerlibrary'
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user