Finish v1.24.0
This commit is contained in:
commit
a74d865c57
3
.idea/runConfigurations/app_base.xml
generated
3
.idea/runConfigurations/app_base.xml
generated
@ -15,6 +15,7 @@
|
|||||||
<option name="SHOW_LOGCAT_AUTOMATICALLY" value="true" />
|
<option name="SHOW_LOGCAT_AUTOMATICALLY" value="true" />
|
||||||
<option name="SKIP_NOOP_APK_INSTALLATIONS" value="true" />
|
<option name="SKIP_NOOP_APK_INSTALLATIONS" value="true" />
|
||||||
<option name="FORCE_STOP_RUNNING_APP" value="true" />
|
<option name="FORCE_STOP_RUNNING_APP" value="true" />
|
||||||
|
<option name="INSPECTION_WITHOUT_ACTIVITY_RESTART" value="false" />
|
||||||
<option name="TARGET_SELECTION_MODE" value="SHOW_DIALOG" />
|
<option name="TARGET_SELECTION_MODE" value="SHOW_DIALOG" />
|
||||||
<option name="SELECTED_CLOUD_MATRIX_CONFIGURATION_ID" value="-1" />
|
<option name="SELECTED_CLOUD_MATRIX_CONFIGURATION_ID" value="-1" />
|
||||||
<option name="SELECTED_CLOUD_MATRIX_PROJECT_ID" value="" />
|
<option name="SELECTED_CLOUD_MATRIX_PROJECT_ID" value="" />
|
||||||
@ -45,7 +46,7 @@
|
|||||||
<option name="ADVANCED_PROFILING_ENABLED" value="false" />
|
<option name="ADVANCED_PROFILING_ENABLED" value="false" />
|
||||||
<option name="STARTUP_PROFILING_ENABLED" value="false" />
|
<option name="STARTUP_PROFILING_ENABLED" value="false" />
|
||||||
<option name="STARTUP_CPU_PROFILING_ENABLED" value="false" />
|
<option name="STARTUP_CPU_PROFILING_ENABLED" value="false" />
|
||||||
<option name="STARTUP_CPU_PROFILING_CONFIGURATION_NAME" value="Sample Java Methods" />
|
<option name="STARTUP_CPU_PROFILING_CONFIGURATION_NAME" value="Callstack Sample" />
|
||||||
<option name="STARTUP_NATIVE_MEMORY_PROFILING_ENABLED" value="false" />
|
<option name="STARTUP_NATIVE_MEMORY_PROFILING_ENABLED" value="false" />
|
||||||
<option name="NATIVE_MEMORY_SAMPLE_RATE_BYTES" value="2048" />
|
<option name="NATIVE_MEMORY_SAMPLE_RATE_BYTES" value="2048" />
|
||||||
</Profilers>
|
</Profilers>
|
||||||
|
|||||||
3
.idea/runConfigurations/app_vglimenti.xml
generated
3
.idea/runConfigurations/app_vglimenti.xml
generated
@ -15,6 +15,7 @@
|
|||||||
<option name="SHOW_LOGCAT_AUTOMATICALLY" value="true" />
|
<option name="SHOW_LOGCAT_AUTOMATICALLY" value="true" />
|
||||||
<option name="SKIP_NOOP_APK_INSTALLATIONS" value="true" />
|
<option name="SKIP_NOOP_APK_INSTALLATIONS" value="true" />
|
||||||
<option name="FORCE_STOP_RUNNING_APP" value="true" />
|
<option name="FORCE_STOP_RUNNING_APP" value="true" />
|
||||||
|
<option name="INSPECTION_WITHOUT_ACTIVITY_RESTART" value="false" />
|
||||||
<option name="TARGET_SELECTION_MODE" value="SHOW_DIALOG" />
|
<option name="TARGET_SELECTION_MODE" value="SHOW_DIALOG" />
|
||||||
<option name="SELECTED_CLOUD_MATRIX_CONFIGURATION_ID" value="-1" />
|
<option name="SELECTED_CLOUD_MATRIX_CONFIGURATION_ID" value="-1" />
|
||||||
<option name="SELECTED_CLOUD_MATRIX_PROJECT_ID" value="" />
|
<option name="SELECTED_CLOUD_MATRIX_PROJECT_ID" value="" />
|
||||||
@ -45,7 +46,7 @@
|
|||||||
<option name="ADVANCED_PROFILING_ENABLED" value="false" />
|
<option name="ADVANCED_PROFILING_ENABLED" value="false" />
|
||||||
<option name="STARTUP_PROFILING_ENABLED" value="false" />
|
<option name="STARTUP_PROFILING_ENABLED" value="false" />
|
||||||
<option name="STARTUP_CPU_PROFILING_ENABLED" value="false" />
|
<option name="STARTUP_CPU_PROFILING_ENABLED" value="false" />
|
||||||
<option name="STARTUP_CPU_PROFILING_CONFIGURATION_NAME" value="Sample Java Methods" />
|
<option name="STARTUP_CPU_PROFILING_CONFIGURATION_NAME" value="Callstack Sample" />
|
||||||
<option name="STARTUP_NATIVE_MEMORY_PROFILING_ENABLED" value="false" />
|
<option name="STARTUP_NATIVE_MEMORY_PROFILING_ENABLED" value="false" />
|
||||||
<option name="NATIVE_MEMORY_SAMPLE_RATE_BYTES" value="2048" />
|
<option name="NATIVE_MEMORY_SAMPLE_RATE_BYTES" value="2048" />
|
||||||
</Profilers>
|
</Profilers>
|
||||||
|
|||||||
@ -10,8 +10,8 @@ apply plugin: 'com.google.gms.google-services'
|
|||||||
|
|
||||||
android {
|
android {
|
||||||
|
|
||||||
def appVersionCode = 267
|
def appVersionCode = 268
|
||||||
def appVersionName = '1.23.12'
|
def appVersionName = '1.24.0'
|
||||||
|
|
||||||
signingConfigs {
|
signingConfigs {
|
||||||
release {
|
release {
|
||||||
@ -85,6 +85,7 @@ android {
|
|||||||
dynamicFeatures = [":dynamic__base", ":dynamic_vgalimenti"]
|
dynamicFeatures = [":dynamic__base", ":dynamic_vgalimenti"]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
@ -138,7 +139,6 @@ dependencies {
|
|||||||
implementation 'com.github.cachapa:ExpandableLayout:2.9.2'
|
implementation 'com.github.cachapa:ExpandableLayout:2.9.2'
|
||||||
implementation 'com.github.frankiesardo:linearlistview:1.0.1@aar'
|
implementation 'com.github.frankiesardo:linearlistview:1.0.1@aar'
|
||||||
implementation 'com.github.fede87:StatusBarAlert:1.0.1'
|
implementation 'com.github.fede87:StatusBarAlert:1.0.1'
|
||||||
testImplementation 'junit:junit:4.13.2'
|
|
||||||
implementation 'com.github.zhukic:sectioned-recyclerview:1.2.3'
|
implementation 'com.github.zhukic:sectioned-recyclerview:1.2.3'
|
||||||
implementation 'com.github.pedromassango:doubleClick:3.0'
|
implementation 'com.github.pedromassango:doubleClick:3.0'
|
||||||
|
|
||||||
@ -157,11 +157,14 @@ dependencies {
|
|||||||
implementation project(':barcode_base_android_library')
|
implementation project(':barcode_base_android_library')
|
||||||
implementation project(':honeywellscannerlibrary')
|
implementation project(':honeywellscannerlibrary')
|
||||||
implementation project(':keyobardemulatorscannerlibrary')
|
implementation project(':keyobardemulatorscannerlibrary')
|
||||||
androidTestImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.1'
|
|
||||||
androidTestImplementation 'org.testng:testng:7.4.0'
|
|
||||||
|
|
||||||
|
|
||||||
implementation 'com.github.RaviKoradiya:LiveAdapter:1.3.4'
|
implementation 'com.github.RaviKoradiya:LiveAdapter:1.3.4'
|
||||||
|
|
||||||
|
// Required -- JUnit 4 framework
|
||||||
|
// testImplementation "org.junit.jupiter:junit-jupiter-api:5.8.1"
|
||||||
|
// androidTestImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
|
||||||
|
// androidTestImplementation 'org.testng:testng:7.4.0'
|
||||||
}
|
}
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
|
|||||||
@ -1,8 +0,0 @@
|
|||||||
package it.integry.integrywmsnative.gest.spedizione;
|
|
||||||
|
|
||||||
class SpedizioneViewModelTest {
|
|
||||||
|
|
||||||
@org.junit.jupiter.api.Test
|
|
||||||
void createNewLU() {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -87,7 +87,7 @@ public class ArticoloOrdine {
|
|||||||
return articoloOrdineId;
|
return articoloOrdineId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setArticoloOrdineId(int articoloOrdineId) {
|
public void setArticoloOrdineId(Integer articoloOrdineId) {
|
||||||
this.articoloOrdineId = articoloOrdineId;
|
this.articoloOrdineId = articoloOrdineId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -53,7 +53,7 @@ public class PosizioniRESTConsumer extends _BaseRESTConsumer{
|
|||||||
String codMdep = null;
|
String codMdep = null;
|
||||||
|
|
||||||
PosizioniRESTConsumerService posizioniRESTConsumerService = RESTBuilder.getService(PosizioniRESTConsumerService.class);
|
PosizioniRESTConsumerService posizioniRESTConsumerService = RESTBuilder.getService(PosizioniRESTConsumerService.class);
|
||||||
posizioniRESTConsumerService.getAvailablePosizioni(codMdep).enqueue(new Callback<ServiceRESTResponse<List<MtbDepoPosizione>>>() {
|
posizioniRESTConsumerService.getAvailablePosizioni(codMdep).enqueue(new Callback<>() {
|
||||||
@Override
|
@Override
|
||||||
public void onResponse(Call<ServiceRESTResponse<List<MtbDepoPosizione>>> call, Response<ServiceRESTResponse<List<MtbDepoPosizione>>> response) {
|
public void onResponse(Call<ServiceRESTResponse<List<MtbDepoPosizione>>> call, Response<ServiceRESTResponse<List<MtbDepoPosizione>>> response) {
|
||||||
analyzeAnswer(response, "getAvailablePosizioni", (m) -> {
|
analyzeAnswer(response, "getAvailablePosizioni", (m) -> {
|
||||||
|
|||||||
@ -22,7 +22,7 @@ public class DBSettingsModel {
|
|||||||
private String defaultCausaleRettificaGiacenze;
|
private String defaultCausaleRettificaGiacenze;
|
||||||
private DistribuzioneColloDTO.CriterioDistribuzione defaultCriterioDistribuzione;
|
private DistribuzioneColloDTO.CriterioDistribuzione defaultCriterioDistribuzione;
|
||||||
private boolean flagAskClienteInPickingLibero;
|
private boolean flagAskClienteInPickingLibero;
|
||||||
private boolean flagAllowEmptyClienteInPickingLibero;
|
private boolean flagPickLiberoAllowEmptyCliente;
|
||||||
|
|
||||||
private boolean flagCanAddExtraItemSpedizione;
|
private boolean flagCanAddExtraItemSpedizione;
|
||||||
private boolean flagCanAutoOpenNewULAccettazione;
|
private boolean flagCanAutoOpenNewULAccettazione;
|
||||||
@ -42,6 +42,7 @@ public class DBSettingsModel {
|
|||||||
private String reportNameSpedizionChiudiOrdine;
|
private String reportNameSpedizionChiudiOrdine;
|
||||||
private int onNumCnfInputChanged = 1;
|
private int onNumCnfInputChanged = 1;
|
||||||
private boolean flagAccettazioneUseQtaOrd = false;
|
private boolean flagAccettazioneUseQtaOrd = false;
|
||||||
|
private boolean flagPickLiberoAllowEmptyDest = false;
|
||||||
|
|
||||||
public boolean isFlagSpedizioneEnableFakeGiacenza() {
|
public boolean isFlagSpedizioneEnableFakeGiacenza() {
|
||||||
return flagSpedizioneEnableFakeGiacenza;
|
return flagSpedizioneEnableFakeGiacenza;
|
||||||
@ -141,12 +142,12 @@ public class DBSettingsModel {
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isFlagAllowEmptyClienteInPickingLibero() {
|
public boolean isFlagPickLiberoAllowEmptyCliente() {
|
||||||
return flagAllowEmptyClienteInPickingLibero;
|
return flagPickLiberoAllowEmptyCliente;
|
||||||
}
|
}
|
||||||
|
|
||||||
public DBSettingsModel setFlagAllowEmptyClienteInPickingLibero(boolean flagAllowEmptyClienteInPickingLibero) {
|
public DBSettingsModel setFlagPickLiberoAllowEmptyCliente(boolean flagPickLiberoAllowEmptyCliente) {
|
||||||
this.flagAllowEmptyClienteInPickingLibero = flagAllowEmptyClienteInPickingLibero;
|
this.flagPickLiberoAllowEmptyCliente = flagPickLiberoAllowEmptyCliente;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -312,4 +313,13 @@ public class DBSettingsModel {
|
|||||||
this.flagAccettazioneUseQtaOrd = flagAccettazioneUseQtaOrd;
|
this.flagAccettazioneUseQtaOrd = flagAccettazioneUseQtaOrd;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isFlagPickLiberoAllowEmptyDest() {
|
||||||
|
return flagPickLiberoAllowEmptyDest;
|
||||||
|
}
|
||||||
|
|
||||||
|
public DBSettingsModel setFlagPickLiberoAllowEmptyDest(boolean flagPickLiberoAllowEmptyDest) {
|
||||||
|
this.flagPickLiberoAllowEmptyDest = flagPickLiberoAllowEmptyDest;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -282,6 +282,10 @@ public class SettingsManager {
|
|||||||
.setGestName("PICKING")
|
.setGestName("PICKING")
|
||||||
.setSection("ACCETTAZIONE")
|
.setSection("ACCETTAZIONE")
|
||||||
.setKeySection("FLAG_USE_QTA_ORD"));
|
.setKeySection("FLAG_USE_QTA_ORD"));
|
||||||
|
stbGestSetupList.add(new StbGestSetup()
|
||||||
|
.setGestName("PICKING")
|
||||||
|
.setSection("PICKING_LIBERO")
|
||||||
|
.setKeySection("FLAG_ALLOW_EMPTY_DEST"));
|
||||||
|
|
||||||
|
|
||||||
GestSetupRESTConsumer.getValues(stbGestSetupList, list -> {
|
GestSetupRESTConsumer.getValues(stbGestSetupList, list -> {
|
||||||
@ -291,7 +295,7 @@ public class SettingsManager {
|
|||||||
dbSettingsModelIstance.setDefaultCodAnag(getValueFromList(list, "SETUP", "COD_ANAG_DEFAULT", String.class));
|
dbSettingsModelIstance.setDefaultCodAnag(getValueFromList(list, "SETUP", "COD_ANAG_DEFAULT", String.class));
|
||||||
dbSettingsModelIstance.setDefaultCriterioDistribuzione(getValueFromList(list, "SETUP", "DEFAULT_CRITERIO_DISTRIBUZIONE", String.class));
|
dbSettingsModelIstance.setDefaultCriterioDistribuzione(getValueFromList(list, "SETUP", "DEFAULT_CRITERIO_DISTRIBUZIONE", String.class));
|
||||||
dbSettingsModelIstance.setFlagAskClienteInPickingLibero(getValueFromList(list, "PICKING_LIBERO", "FLAG_ASK_CLIENTE", Boolean.class));
|
dbSettingsModelIstance.setFlagAskClienteInPickingLibero(getValueFromList(list, "PICKING_LIBERO", "FLAG_ASK_CLIENTE", Boolean.class));
|
||||||
dbSettingsModelIstance.setFlagAllowEmptyClienteInPickingLibero(getValueFromList(list, "PICKING_LIBERO", "FLAG_ALLOW_EMPTY_CLIENTE", Boolean.class));
|
dbSettingsModelIstance.setFlagPickLiberoAllowEmptyCliente(getValueFromList(list, "PICKING_LIBERO", "FLAG_ALLOW_EMPTY_CLIENTE", Boolean.class));
|
||||||
dbSettingsModelIstance.setFlagCanAddExtraItemSpedizione(getValueFromList(list, "SPEDIZIONE", "FLAG_CAN_ADD_EXTRA_ITEMS", Boolean.class));
|
dbSettingsModelIstance.setFlagCanAddExtraItemSpedizione(getValueFromList(list, "SPEDIZIONE", "FLAG_CAN_ADD_EXTRA_ITEMS", Boolean.class));
|
||||||
dbSettingsModelIstance.setFlagCanAutoOpenNewULAccettazione(getValueFromList(list, "ACCETTAZIONE", "FLAG_AUTO_OPEN_NEW_UL", Boolean.class));
|
dbSettingsModelIstance.setFlagCanAutoOpenNewULAccettazione(getValueFromList(list, "ACCETTAZIONE", "FLAG_AUTO_OPEN_NEW_UL", Boolean.class));
|
||||||
dbSettingsModelIstance.setFlagCanAddExtraQuantitySpedizione(getValueFromList(list, "SPEDIZIONE", "FLAG_CAN_ADD_EXTRA_QUANTITY", Boolean.class));
|
dbSettingsModelIstance.setFlagCanAddExtraQuantitySpedizione(getValueFromList(list, "SPEDIZIONE", "FLAG_CAN_ADD_EXTRA_QUANTITY", Boolean.class));
|
||||||
@ -309,6 +313,7 @@ public class SettingsManager {
|
|||||||
dbSettingsModelIstance.setFlagOrdinaNuoviArticoliInGriglia(getValueFromList(list, "ORDINI_A", "ORDINA_NUOVI_ARTICOLI", Boolean.class));
|
dbSettingsModelIstance.setFlagOrdinaNuoviArticoliInGriglia(getValueFromList(list, "ORDINI_A", "ORDINA_NUOVI_ARTICOLI", Boolean.class));
|
||||||
dbSettingsModelIstance.setDocInterniCheckFornitore(getValueFromList(list, "DOC_INTERNI", "CHECK_FORNITORE", String.class));
|
dbSettingsModelIstance.setDocInterniCheckFornitore(getValueFromList(list, "DOC_INTERNI", "CHECK_FORNITORE", String.class));
|
||||||
dbSettingsModelIstance.setFlagAccettazioneUseQtaOrd(getValueFromList(list, "ACCETTAZIONE", "FLAG_USE_QTA_ORD", Boolean.class));
|
dbSettingsModelIstance.setFlagAccettazioneUseQtaOrd(getValueFromList(list, "ACCETTAZIONE", "FLAG_USE_QTA_ORD", Boolean.class));
|
||||||
|
dbSettingsModelIstance.setFlagPickLiberoAllowEmptyDest(getValueFromList(list, "PICKING_LIBERO", "FLAG_ALLOW_EMPTY_DEST", Boolean.class));
|
||||||
|
|
||||||
String notePerdita = getValueFromList(list, "DOC_INTERNI", "NOTE_PERDITA", String.class);
|
String notePerdita = getValueFromList(list, "DOC_INTERNI", "NOTE_PERDITA", String.class);
|
||||||
if (notePerdita != null) {
|
if (notePerdita != null) {
|
||||||
|
|||||||
@ -125,6 +125,7 @@ public class SpedizioneListAdapter extends SectionedRecyclerViewAdapter<Spedizio
|
|||||||
holder.mBinding.deactivatedOverBg.setVisibility(!pickingObjectDTO.isActive() ? View.VISIBLE : View.GONE);
|
holder.mBinding.deactivatedOverBg.setVisibility(!pickingObjectDTO.isActive() ? View.VISIBLE : View.GONE);
|
||||||
holder.mBinding.getRoot().setAlpha(!pickingObjectDTO.isActive() ? 0.8f : 1);
|
holder.mBinding.getRoot().setAlpha(!pickingObjectDTO.isActive() ? 0.8f : 1);
|
||||||
holder.mBinding.badge1.setBackground(ResourcesCompat.getDrawable(mContext.getResources(), !pickingObjectDTO.isActive() ? R.drawable.badge_round_corner : R.drawable.badge1_round_corner, null));
|
holder.mBinding.badge1.setBackground(ResourcesCompat.getDrawable(mContext.getResources(), !pickingObjectDTO.isActive() ? R.drawable.badge_round_corner : R.drawable.badge1_round_corner, null));
|
||||||
|
holder.mBinding.badge1.setTextColor(ResourcesCompat.getColor(mContext.getResources(), !pickingObjectDTO.isActive() ? R.color.gray_600 : R.color.white, null));
|
||||||
holder.mBinding.qtaEvasa.setTextColor(ResourcesCompat.getColor(mContext.getResources(), !pickingObjectDTO.isActive() ? R.color.gray_600 : R.color.green_700, null));
|
holder.mBinding.qtaEvasa.setTextColor(ResourcesCompat.getColor(mContext.getResources(), !pickingObjectDTO.isActive() ? R.color.gray_600 : R.color.green_700, null));
|
||||||
|
|
||||||
holder.mBinding.descrizione.setText(pickingObjectDTO.getDescrizione());
|
holder.mBinding.descrizione.setText(pickingObjectDTO.getDescrizione());
|
||||||
|
|||||||
@ -94,7 +94,7 @@ public class DialogAskClienteDestinatarioDTO {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return String.format("%s (%s)", getDestinatario(), getCodVdes());
|
return getDestinatario() + (getCodVdes() != null ? (" (" + getCodVdes() + ")") : "");
|
||||||
}
|
}
|
||||||
|
|
||||||
public VtbDest toVtbDestModel() {
|
public VtbDest toVtbDestModel() {
|
||||||
|
|||||||
@ -145,7 +145,12 @@ public class DialogAskCliente_Page1ViewModel implements IDialogAskClienteViewMod
|
|||||||
|
|
||||||
|
|
||||||
private void initializeAdapter(ArrayList<DialogAskClienteClienteDTO> items) {
|
private void initializeAdapter(ArrayList<DialogAskClienteClienteDTO> items) {
|
||||||
DialogAskCliente_Page1_Cliente_ArrayAdapter adapter = new DialogAskCliente_Page1_Cliente_ArrayAdapter(mContext, items);
|
|
||||||
|
var orderedList = Stream.of(items)
|
||||||
|
.sortBy(x -> x.getRagSoc() != null ? x.getRagSoc() : "")
|
||||||
|
.toList();
|
||||||
|
|
||||||
|
DialogAskCliente_Page1_Cliente_ArrayAdapter adapter = new DialogAskCliente_Page1_Cliente_ArrayAdapter(mContext, orderedList);
|
||||||
|
|
||||||
AutoCompleteTextView editTextDropdownCliente = mBinding.dropdownCliente;
|
AutoCompleteTextView editTextDropdownCliente = mBinding.dropdownCliente;
|
||||||
editTextDropdownCliente.setThreshold(0);
|
editTextDropdownCliente.setThreshold(0);
|
||||||
@ -177,7 +182,7 @@ public class DialogAskCliente_Page1ViewModel implements IDialogAskClienteViewMod
|
|||||||
|
|
||||||
|
|
||||||
private boolean validateCliente() {
|
private boolean validateCliente() {
|
||||||
if (SettingsManager.iDB().isFlagAllowEmptyClienteInPickingLibero() && mBinding.inputCliente.getEditText().getText().toString().trim().length() == 0) {
|
if (SettingsManager.iDB().isFlagPickLiberoAllowEmptyCliente() && mBinding.inputCliente.getEditText().getText().toString().trim().length() == 0) {
|
||||||
return true;
|
return true;
|
||||||
} else return getCurrentCliente() != null;
|
} else return getCurrentCliente() != null;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -20,13 +20,13 @@ import it.integry.integrywmsnative.view.dialogs.ask_cliente.dto.DialogAskCliente
|
|||||||
|
|
||||||
public class DialogAskCliente_Page1_Cliente_ArrayAdapter extends ArrayAdapter<DialogAskClienteClienteDTO> implements Filterable {
|
public class DialogAskCliente_Page1_Cliente_ArrayAdapter extends ArrayAdapter<DialogAskClienteClienteDTO> implements Filterable {
|
||||||
|
|
||||||
private Context mContext;
|
private final Context mContext;
|
||||||
private List<DialogAskClienteClienteDTO> mDataset;
|
private final List<DialogAskClienteClienteDTO> mDataset;
|
||||||
private List<DialogAskClienteClienteDTO> mDatasetAllItems;
|
private List<DialogAskClienteClienteDTO> mDatasetAllItems;
|
||||||
|
|
||||||
private ListFilter listFilter = new ListFilter();
|
private final ListFilter listFilter = new ListFilter();
|
||||||
|
|
||||||
public DialogAskCliente_Page1_Cliente_ArrayAdapter(@NonNull Context context, @NonNull ArrayList<DialogAskClienteClienteDTO> list) {
|
public DialogAskCliente_Page1_Cliente_ArrayAdapter(@NonNull Context context, @NonNull List<DialogAskClienteClienteDTO> list) {
|
||||||
super(context, 0 , list);
|
super(context, 0 , list);
|
||||||
mContext = context;
|
mContext = context;
|
||||||
mDataset = list;
|
mDataset = list;
|
||||||
@ -37,13 +37,15 @@ public class DialogAskCliente_Page1_Cliente_ArrayAdapter extends ArrayAdapter<Di
|
|||||||
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
|
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
|
||||||
View listItem = convertView;
|
View listItem = convertView;
|
||||||
if(listItem == null) {
|
if(listItem == null) {
|
||||||
listItem = LayoutInflater.from(mContext).inflate(R.layout.dropdown_simple_item, parent, false);
|
listItem = LayoutInflater.from(mContext).inflate(R.layout.dropdown_simple_item_w_subtitle, parent, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(position < mDataset.size()) {
|
if(position < mDataset.size()) {
|
||||||
AppCompatTextView textView = listItem.findViewById(R.id.text);
|
AppCompatTextView textView = listItem.findViewById(R.id.title);
|
||||||
|
AppCompatTextView subTitle = listItem.findViewById(R.id.subtitle);
|
||||||
|
|
||||||
textView.setText(mDataset.get(position).getRagSoc());
|
textView.setText(mDataset.get(position).getRagSoc());
|
||||||
|
subTitle.setText(mDataset.get(position).getCodAnag());
|
||||||
|
|
||||||
return listItem;
|
return listItem;
|
||||||
}
|
}
|
||||||
@ -59,7 +61,7 @@ public class DialogAskCliente_Page1_Cliente_ArrayAdapter extends ArrayAdapter<Di
|
|||||||
}
|
}
|
||||||
|
|
||||||
public class ListFilter extends Filter {
|
public class ListFilter extends Filter {
|
||||||
private Object lock = new Object();
|
private final Object lock = new Object();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected FilterResults performFiltering(CharSequence prefix) {
|
protected FilterResults performFiltering(CharSequence prefix) {
|
||||||
@ -81,7 +83,7 @@ public class DialogAskCliente_Page1_Cliente_ArrayAdapter extends ArrayAdapter<Di
|
|||||||
ArrayList<DialogAskClienteClienteDTO> matchValues = new ArrayList<>();
|
ArrayList<DialogAskClienteClienteDTO> matchValues = new ArrayList<>();
|
||||||
|
|
||||||
for (DialogAskClienteClienteDTO dataItem : mDatasetAllItems) {
|
for (DialogAskClienteClienteDTO dataItem : mDatasetAllItems) {
|
||||||
if (dataItem.getRagSoc().toLowerCase().startsWith(searchStrLowerCase)) {
|
if (dataItem.getRagSoc().toLowerCase().contains(searchStrLowerCase)) {
|
||||||
matchValues.add(dataItem);
|
matchValues.add(dataItem);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -23,7 +23,7 @@ public class DialogAskCliente_Page1_Commessa_ArrayAdapter extends ArrayAdapter<S
|
|||||||
private List<String> mDataset = new ArrayList<>();
|
private List<String> mDataset = new ArrayList<>();
|
||||||
private List<String> mDatasetAllItems;
|
private List<String> mDatasetAllItems;
|
||||||
|
|
||||||
private DialogAskCliente_Page1_Commessa_ArrayAdapter.ListFilter listFilter = new DialogAskCliente_Page1_Commessa_ArrayAdapter.ListFilter();
|
private final DialogAskCliente_Page1_Commessa_ArrayAdapter.ListFilter listFilter = new DialogAskCliente_Page1_Commessa_ArrayAdapter.ListFilter();
|
||||||
|
|
||||||
public DialogAskCliente_Page1_Commessa_ArrayAdapter(@NonNull Context context) {
|
public DialogAskCliente_Page1_Commessa_ArrayAdapter(@NonNull Context context) {
|
||||||
super(context, 0);
|
super(context, 0);
|
||||||
@ -56,7 +56,7 @@ public class DialogAskCliente_Page1_Commessa_ArrayAdapter extends ArrayAdapter<S
|
|||||||
}
|
}
|
||||||
|
|
||||||
public class ListFilter extends Filter {
|
public class ListFilter extends Filter {
|
||||||
private Object lock = new Object();
|
private final Object lock = new Object();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected FilterResults performFiltering(CharSequence prefix) {
|
protected FilterResults performFiltering(CharSequence prefix) {
|
||||||
@ -78,7 +78,7 @@ public class DialogAskCliente_Page1_Commessa_ArrayAdapter extends ArrayAdapter<S
|
|||||||
ArrayList<String> matchValues = new ArrayList<>();
|
ArrayList<String> matchValues = new ArrayList<>();
|
||||||
|
|
||||||
for (String dataItem : mDatasetAllItems) {
|
for (String dataItem : mDatasetAllItems) {
|
||||||
if (dataItem.toLowerCase().startsWith(searchStrLowerCase)) {
|
if (dataItem.toLowerCase().contains(searchStrLowerCase)) {
|
||||||
matchValues.add(dataItem);
|
matchValues.add(dataItem);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -11,6 +11,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.settings.SettingsManager;
|
||||||
import it.integry.integrywmsnative.databinding.DialogAskClientePage2Binding;
|
import it.integry.integrywmsnative.databinding.DialogAskClientePage2Binding;
|
||||||
import it.integry.integrywmsnative.view.dialogs.ask_cliente.dto.DialogAskClienteDestinatarioDTO;
|
import it.integry.integrywmsnative.view.dialogs.ask_cliente.dto.DialogAskClienteDestinatarioDTO;
|
||||||
|
|
||||||
@ -57,6 +58,12 @@ public class DialogAskCliente_Page2ViewModel implements IDialogAskClienteViewMod
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(SettingsManager.iDB().isFlagPickLiberoAllowEmptyDest()) {
|
||||||
|
filteredDestinatari.add(new DialogAskClienteDestinatarioDTO()
|
||||||
|
.setCodAnag(null)
|
||||||
|
.setDestinatario("Nessuno"));
|
||||||
|
}
|
||||||
|
|
||||||
initializeAdapter(filteredDestinatari);
|
initializeAdapter(filteredDestinatari);
|
||||||
|
|
||||||
|
|
||||||
@ -95,7 +102,11 @@ public class DialogAskCliente_Page2ViewModel implements IDialogAskClienteViewMod
|
|||||||
|
|
||||||
|
|
||||||
private void initializeAdapter(List<DialogAskClienteDestinatarioDTO> items) {
|
private void initializeAdapter(List<DialogAskClienteDestinatarioDTO> items) {
|
||||||
DialogAskCliente_Page2_ArrayAdapter adapter = new DialogAskCliente_Page2_ArrayAdapter(mContext, items);
|
var orderedList = Stream.of(items)
|
||||||
|
.sortBy(x -> x.getCodAnag() != null ? x.getCodAnag() : "")
|
||||||
|
.toList();
|
||||||
|
|
||||||
|
DialogAskCliente_Page2_ArrayAdapter adapter = new DialogAskCliente_Page2_ArrayAdapter(mContext, orderedList);
|
||||||
|
|
||||||
|
|
||||||
AutoCompleteTextView editTextFilledExposedDropdown = mBinding.dropdownDestinatario;
|
AutoCompleteTextView editTextFilledExposedDropdown = mBinding.dropdownDestinatario;
|
||||||
@ -105,7 +116,9 @@ public class DialogAskCliente_Page2ViewModel implements IDialogAskClienteViewMod
|
|||||||
|
|
||||||
|
|
||||||
private boolean validateDestinatario() {
|
private boolean validateDestinatario() {
|
||||||
return getCurrentDestinatario() != null;
|
if (SettingsManager.iDB().isFlagPickLiberoAllowEmptyDest() && getCurrentDestinatario() == null) {
|
||||||
|
return true;
|
||||||
|
} else return getCurrentDestinatario() != null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public DialogAskClienteDestinatarioDTO getCurrentDestinatario() {
|
public DialogAskClienteDestinatarioDTO getCurrentDestinatario() {
|
||||||
|
|||||||
@ -11,6 +11,7 @@ import android.widget.Filterable;
|
|||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
import androidx.appcompat.widget.AppCompatTextView;
|
import androidx.appcompat.widget.AppCompatTextView;
|
||||||
|
import androidx.core.content.ContextCompat;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -21,14 +22,15 @@ import it.integry.integrywmsnative.view.dialogs.ask_cliente.dto.DialogAskCliente
|
|||||||
|
|
||||||
public class DialogAskCliente_Page2_ArrayAdapter extends ArrayAdapter<DialogAskClienteDestinatarioDTO> implements Filterable {
|
public class DialogAskCliente_Page2_ArrayAdapter extends ArrayAdapter<DialogAskClienteDestinatarioDTO> implements Filterable {
|
||||||
|
|
||||||
private Context mContext;
|
private final Context mContext;
|
||||||
private List<DialogAskClienteDestinatarioDTO> mDataset;
|
private final List<DialogAskClienteDestinatarioDTO> mDataset;
|
||||||
private List<DialogAskClienteDestinatarioDTO> mDatasetAllItems;
|
private List<DialogAskClienteDestinatarioDTO> mDatasetAllItems;
|
||||||
|
|
||||||
private ListFilter listFilter = new ListFilter();
|
private final ListFilter listFilter = new ListFilter();
|
||||||
|
|
||||||
public DialogAskCliente_Page2_ArrayAdapter(@NonNull Context context, @NonNull List<DialogAskClienteDestinatarioDTO> list) {
|
public DialogAskCliente_Page2_ArrayAdapter(@NonNull Context context, @NonNull List<DialogAskClienteDestinatarioDTO> list) {
|
||||||
super(context, 0 , list);
|
super(context, 0 , list);
|
||||||
|
|
||||||
mContext = context;
|
mContext = context;
|
||||||
mDataset = list;
|
mDataset = list;
|
||||||
}
|
}
|
||||||
@ -43,18 +45,21 @@ public class DialogAskCliente_Page2_ArrayAdapter extends ArrayAdapter<DialogAskC
|
|||||||
|
|
||||||
if(position < mDataset.size()) {
|
if(position < mDataset.size()) {
|
||||||
|
|
||||||
|
var item = mDataset.get(position);
|
||||||
|
|
||||||
AppCompatTextView destinatario = listItem.findViewById(R.id.destinatario);
|
AppCompatTextView destinatario = listItem.findViewById(R.id.destinatario);
|
||||||
destinatario.setText(UtilityString.capitalizeWords(mDataset.get(position).toString()));
|
destinatario.setText(UtilityString.capitalizeWords(item.getDestinatario() + (item.getCodVdes() != null ? ("(" + item.getCodVdes() + ")") : "")));
|
||||||
|
if(item.getCodVdes() == null) destinatario.setTextColor(ContextCompat.getColor(mContext, R.color.gray_800));
|
||||||
|
|
||||||
AppCompatTextView subtitle = listItem.findViewById(R.id.subtitle);
|
AppCompatTextView subtitle = listItem.findViewById(R.id.subtitle);
|
||||||
|
|
||||||
StringBuilder subtitleStr = new StringBuilder();
|
StringBuilder subtitleStr = new StringBuilder();
|
||||||
if(!UtilityString.isNullOrEmpty(mDataset.get(position).getCitta())) {
|
if(!UtilityString.isNullOrEmpty(mDataset.get(position).getCitta())) {
|
||||||
subtitleStr.append(UtilityString.capitalizeWords(mDataset.get(position).getCitta()) + " - ");
|
subtitleStr.append(UtilityString.capitalizeWords(item.getCitta())).append(" - ");
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!UtilityString.isNullOrEmpty(mDataset.get(position).getIndirizzo())) {
|
if(!UtilityString.isNullOrEmpty(mDataset.get(position).getIndirizzo())) {
|
||||||
subtitleStr.append(UtilityString.capitalizeWords(mDataset.get(position).getIndirizzo()));
|
subtitleStr.append(UtilityString.capitalizeWords(item.getIndirizzo()));
|
||||||
}
|
}
|
||||||
|
|
||||||
subtitle.setText(subtitleStr);
|
subtitle.setText(subtitleStr);
|
||||||
@ -95,7 +100,7 @@ public class DialogAskCliente_Page2_ArrayAdapter extends ArrayAdapter<DialogAskC
|
|||||||
ArrayList<DialogAskClienteDestinatarioDTO> matchValues = new ArrayList<>();
|
ArrayList<DialogAskClienteDestinatarioDTO> matchValues = new ArrayList<>();
|
||||||
|
|
||||||
for (DialogAskClienteDestinatarioDTO dataItem : mDatasetAllItems) {
|
for (DialogAskClienteDestinatarioDTO dataItem : mDatasetAllItems) {
|
||||||
if (dataItem.toString().toLowerCase().startsWith(searchStrLowerCase)) {
|
if (dataItem.toString().toLowerCase().contains(searchStrLowerCase)) {
|
||||||
matchValues.add(dataItem);
|
matchValues.add(dataItem);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -5,13 +5,17 @@ import dagger.Provides;
|
|||||||
import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer;
|
import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer;
|
||||||
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.rest.consumers.PosizioniRESTConsumer;
|
||||||
|
|
||||||
@Module(subcomponents = DialogScanArtComponent.class)
|
@Module(subcomponents = DialogScanArtComponent.class)
|
||||||
public class DialogScanArtModule {
|
public class DialogScanArtModule {
|
||||||
|
|
||||||
@Provides
|
@Provides
|
||||||
DialogScanArtViewModel providesDialogScanArtViewModel(BarcodeRESTConsumer barcodeRESTConsumer, ColliMagazzinoRESTConsumer colliMagazzinoRESTConsumer, ArticoloRESTConsumer articoloRESTConsumer) {
|
DialogScanArtViewModel providesDialogScanArtViewModel(BarcodeRESTConsumer barcodeRESTConsumer,
|
||||||
return new DialogScanArtViewModel(barcodeRESTConsumer, colliMagazzinoRESTConsumer, articoloRESTConsumer);
|
ColliMagazzinoRESTConsumer colliMagazzinoRESTConsumer,
|
||||||
|
ArticoloRESTConsumer articoloRESTConsumer,
|
||||||
|
PosizioniRESTConsumer posizioniRESTConsumer) {
|
||||||
|
return new DialogScanArtViewModel(barcodeRESTConsumer, colliMagazzinoRESTConsumer, articoloRESTConsumer, posizioniRESTConsumer);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,6 +12,8 @@ import androidx.annotation.NonNull;
|
|||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
import androidx.databinding.DataBindingUtil;
|
import androidx.databinding.DataBindingUtil;
|
||||||
|
|
||||||
|
import com.annimon.stream.Stream;
|
||||||
|
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
@ -84,7 +86,6 @@ public class DialogScanArtView extends BaseDialogFragment implements DialogScanA
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onDismiss(@NonNull DialogInterface dialog) {
|
public void onDismiss(@NonNull DialogInterface dialog) {
|
||||||
BarcodeManager.removeCallback(mBarcodeScannerIstanceID);
|
BarcodeManager.removeCallback(mBarcodeScannerIstanceID);
|
||||||
@ -107,14 +108,28 @@ public class DialogScanArtView extends BaseDialogFragment implements DialogScanA
|
|||||||
this.openProgress();
|
this.openProgress();
|
||||||
|
|
||||||
this.mViewModel.processBarcodeDTO(data, (status, mtbAart, ean128Model, mtbColrList) -> {
|
this.mViewModel.processBarcodeDTO(data, (status, mtbAart, ean128Model, mtbColrList) -> {
|
||||||
if(mtbColrList != null && mtbColrList.size() > 0) {
|
|
||||||
DialogChooseArtFromListaMtbColrView.make(getActivity(), mtbColrList, mtbColrChose -> {
|
var filteredMtbColrList = mtbColrList;
|
||||||
|
|
||||||
|
if (mtbAart != null) {
|
||||||
|
filteredMtbColrList = Stream.of(filteredMtbColrList)
|
||||||
|
.filter(x -> x.getCodMart().equalsIgnoreCase(mtbAart.getCodMart()))
|
||||||
|
.toList();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (filteredMtbColrList != null && filteredMtbColrList.size() > 1) {
|
||||||
|
DialogChooseArtFromListaMtbColrView.make(getActivity(), filteredMtbColrList, mtbColrChose -> {
|
||||||
mOnItemChoosed.run(status, mtbAart, ean128Model, mtbColrChose);
|
mOnItemChoosed.run(status, mtbAart, ean128Model, mtbColrChose);
|
||||||
}).show();
|
}).show();
|
||||||
|
|
||||||
|
} else if (filteredMtbColrList != null && filteredMtbColrList.size() == 1) {
|
||||||
|
mOnItemChoosed.run(status, mtbAart, ean128Model, filteredMtbColrList.get(0));
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
mOnItemChoosed.run(status, mtbAart, ean128Model, null);
|
mOnItemChoosed.run(status, mtbAart, ean128Model, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
BarcodeManager.enable();
|
BarcodeManager.enable();
|
||||||
this.closeProgress();
|
this.closeProgress();
|
||||||
|
|
||||||
|
|||||||
@ -7,16 +7,21 @@ import java.util.List;
|
|||||||
import it.integry.barcode_base_android_library.model.BarcodeScanDTO;
|
import it.integry.barcode_base_android_library.model.BarcodeScanDTO;
|
||||||
import it.integry.integrywmsnative.core.exception.InvalidLUException;
|
import it.integry.integrywmsnative.core.exception.InvalidLUException;
|
||||||
import it.integry.integrywmsnative.core.exception.NoArtsFoundException;
|
import it.integry.integrywmsnative.core.exception.NoArtsFoundException;
|
||||||
|
import it.integry.integrywmsnative.core.exception.NoLUFoundException;
|
||||||
import it.integry.integrywmsnative.core.exception.NoResultFromBarcodeException;
|
import it.integry.integrywmsnative.core.exception.NoResultFromBarcodeException;
|
||||||
|
import it.integry.integrywmsnative.core.exception.TooManyLUFoundInMonoLUPositionException;
|
||||||
import it.integry.integrywmsnative.core.expansion.RunnableArgssss;
|
import it.integry.integrywmsnative.core.expansion.RunnableArgssss;
|
||||||
import it.integry.integrywmsnative.core.model.MtbAart;
|
import it.integry.integrywmsnative.core.model.MtbAart;
|
||||||
import it.integry.integrywmsnative.core.model.MtbColr;
|
import it.integry.integrywmsnative.core.model.MtbColr;
|
||||||
|
import it.integry.integrywmsnative.core.model.MtbDepoPosizione;
|
||||||
import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer;
|
import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer;
|
||||||
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.rest.consumers.PosizioniRESTConsumer;
|
||||||
import it.integry.integrywmsnative.core.rest.model.Ean128Model;
|
import it.integry.integrywmsnative.core.rest.model.Ean128Model;
|
||||||
import it.integry.integrywmsnative.core.rest.model.Ean13PesoModel;
|
import it.integry.integrywmsnative.core.rest.model.Ean13PesoModel;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityBarcode;
|
import it.integry.integrywmsnative.core.utility.UtilityBarcode;
|
||||||
|
import it.integry.integrywmsnative.core.utility.UtilityPosizione;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityString;
|
import it.integry.integrywmsnative.core.utility.UtilityString;
|
||||||
import it.integry.integrywmsnative.view.dialogs.DialogConsts;
|
import it.integry.integrywmsnative.view.dialogs.DialogConsts;
|
||||||
|
|
||||||
@ -25,15 +30,20 @@ public class DialogScanArtViewModel {
|
|||||||
private final BarcodeRESTConsumer mBarcodeRESTConsumer;
|
private final BarcodeRESTConsumer mBarcodeRESTConsumer;
|
||||||
private final ColliMagazzinoRESTConsumer mColliMagazzinoRESTConsumer;
|
private final ColliMagazzinoRESTConsumer mColliMagazzinoRESTConsumer;
|
||||||
private final ArticoloRESTConsumer mArticoloRESTConsumer;
|
private final ArticoloRESTConsumer mArticoloRESTConsumer;
|
||||||
|
private final PosizioniRESTConsumer mPosizioniRESTConsumer;
|
||||||
|
|
||||||
private boolean mForceOnlyUL;
|
private boolean mForceOnlyUL;
|
||||||
|
|
||||||
private Listener mListener;
|
private Listener mListener;
|
||||||
|
|
||||||
public DialogScanArtViewModel(BarcodeRESTConsumer barcodeRESTConsumer, ColliMagazzinoRESTConsumer colliMagazzinoRESTConsumer, ArticoloRESTConsumer articoloRESTConsumer) {
|
public DialogScanArtViewModel(BarcodeRESTConsumer barcodeRESTConsumer,
|
||||||
|
ColliMagazzinoRESTConsumer colliMagazzinoRESTConsumer,
|
||||||
|
ArticoloRESTConsumer articoloRESTConsumer,
|
||||||
|
PosizioniRESTConsumer posizioniRESTConsumer) {
|
||||||
this.mBarcodeRESTConsumer = barcodeRESTConsumer;
|
this.mBarcodeRESTConsumer = barcodeRESTConsumer;
|
||||||
this.mColliMagazzinoRESTConsumer = colliMagazzinoRESTConsumer;
|
this.mColliMagazzinoRESTConsumer = colliMagazzinoRESTConsumer;
|
||||||
this.mArticoloRESTConsumer = articoloRESTConsumer;
|
this.mArticoloRESTConsumer = articoloRESTConsumer;
|
||||||
|
this.mPosizioniRESTConsumer = posizioniRESTConsumer;
|
||||||
}
|
}
|
||||||
|
|
||||||
public DialogScanArtViewModel setForceOnlyUL(boolean forceOnlyUL) {
|
public DialogScanArtViewModel setForceOnlyUL(boolean forceOnlyUL) {
|
||||||
@ -52,13 +62,17 @@ public class DialogScanArtViewModel {
|
|||||||
|
|
||||||
} else if (UtilityBarcode.isEtichetta128(barcodeScanDTO)) {
|
} else if (UtilityBarcode.isEtichetta128(barcodeScanDTO)) {
|
||||||
this.executeEtichettaEan128(barcodeScanDTO, onComplete);
|
this.executeEtichettaEan128(barcodeScanDTO, onComplete);
|
||||||
|
|
||||||
} else if (UtilityBarcode.isEanPeso(barcodeScanDTO) && !mForceOnlyUL) {
|
} else if (UtilityBarcode.isEanPeso(barcodeScanDTO) && !mForceOnlyUL) {
|
||||||
this.executeEtichettaEanPeso(barcodeScanDTO, onComplete);
|
this.executeEtichettaEanPeso(barcodeScanDTO, onComplete);
|
||||||
} else if (!mForceOnlyUL){
|
|
||||||
this.loadArticolo(barcodeScanDTO.getStringValue(), null, onComplete);
|
|
||||||
} else {
|
} else {
|
||||||
this.sendError(new Exception("Barcode non valido"));
|
this.loadArticolo(barcodeScanDTO.getStringValue(), null, onComplete);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
// else {
|
||||||
|
// this.sendError(new Exception("Barcode non valido"));
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -117,26 +131,50 @@ public class DialogScanArtViewModel {
|
|||||||
}, this::sendError);
|
}, this::sendError);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void executePosizione(MtbDepoPosizione posizione, MtbAart articolo, RunnableArgssss<DialogConsts.Results, MtbAart, Ean128Model, List<MtbColr>> onComplete) {
|
||||||
|
this.mPosizioniRESTConsumer.getBancaliInPosizione(posizione, mtbColtList -> {
|
||||||
|
|
||||||
|
if (mtbColtList == null || mtbColtList.size() == 0) {
|
||||||
|
this.sendError(new NoLUFoundException());
|
||||||
|
} else if (mtbColtList.size() == 1) {
|
||||||
|
this.mColliMagazzinoRESTConsumer.getByTestata(mtbColtList.get(0), true, false, mtbColt -> {
|
||||||
|
onComplete.run(DialogConsts.Results.YES, articolo, null, mtbColt.getMtbColr());
|
||||||
|
}, this::sendError);
|
||||||
|
} else {
|
||||||
|
this.sendError(new TooManyLUFoundInMonoLUPositionException());
|
||||||
|
}
|
||||||
|
|
||||||
|
}, this::sendError);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private void loadArticolo(@NotNull String barcodeProd, Ean128Model ean128Model, RunnableArgssss<DialogConsts.Results, MtbAart, Ean128Model, List<MtbColr>> onComplete) {
|
private void loadArticolo(@NotNull String barcodeProd, Ean128Model ean128Model, RunnableArgssss<DialogConsts.Results, MtbAart, Ean128Model, List<MtbColr>> onComplete) {
|
||||||
if (barcodeProd.length() == 14) {
|
if (barcodeProd.length() == 14) {
|
||||||
// barcodeProd = UtilityBarcode.convertITF14toNeutral(barcodeProd);
|
|
||||||
barcodeProd = UtilityBarcode.convertITF14toEAN13(barcodeProd);
|
barcodeProd = UtilityBarcode.convertITF14toEAN13(barcodeProd);
|
||||||
}
|
}
|
||||||
|
|
||||||
String finalBarcodeProd = barcodeProd;
|
String finalBarcodeProd = barcodeProd;
|
||||||
this.mArticoloRESTConsumer.getByBarcodeProd(barcodeProd, mtbAartList -> {
|
this.mArticoloRESTConsumer.getByBarcodeProd(barcodeProd, mtbAartList -> {
|
||||||
if (mtbAartList != null && mtbAartList.size() > 0) {
|
if (mtbAartList != null && mtbAartList.size() > 0) {
|
||||||
|
|
||||||
|
MtbAart firstArt = mtbAartList.get(0);
|
||||||
|
MtbDepoPosizione firstArtPosition = UtilityPosizione.getFromCache(firstArt.getPosizione());
|
||||||
|
|
||||||
|
if (firstArtPosition != null && firstArtPosition.isFlagMonoCollo() && mForceOnlyUL) {
|
||||||
|
this.executePosizione(firstArtPosition, firstArt, onComplete);
|
||||||
|
} else if (!mForceOnlyUL) {
|
||||||
onComplete.run(DialogConsts.Results.YES, mtbAartList.get(0), ean128Model, null);
|
onComplete.run(DialogConsts.Results.YES, mtbAartList.get(0), ean128Model, null);
|
||||||
} else {
|
} else {
|
||||||
this.sendError(new NoResultFromBarcodeException(finalBarcodeProd));
|
this.sendError(new NoResultFromBarcodeException(finalBarcodeProd));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
|
this.sendError(new NoResultFromBarcodeException(finalBarcodeProd));
|
||||||
|
}
|
||||||
}, this::sendError);
|
}, this::sendError);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private void sendError(Exception ex) {
|
private void sendError(Exception ex) {
|
||||||
if (this.mListener != null) mListener.onError(ex);
|
if (this.mListener != null) mListener.onError(ex);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,38 +1,33 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<androidx.appcompat.widget.LinearLayoutCompat xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:orientation="vertical"
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical"
|
||||||
android:paddingStart="16dp"
|
android:paddingStart="16dp"
|
||||||
android:paddingEnd="16dp"
|
|
||||||
android:paddingTop="8dp"
|
android:paddingTop="8dp"
|
||||||
|
android:paddingEnd="16dp"
|
||||||
android:paddingBottom="8dp">
|
android:paddingBottom="8dp">
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatTextView
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
android:id="@+id/destinatario"
|
android:id="@+id/destinatario"
|
||||||
|
style="@style/AppTheme.NewMaterial.Text"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:ellipsize="end"
|
android:ellipsize="end"
|
||||||
android:maxLines="1"
|
android:maxLines="1"
|
||||||
android:textAppearance="?attr/textAppearanceSubtitle1"
|
android:textAppearance="?attr/textAppearanceSubtitle1"
|
||||||
tools:text="Destinatario"
|
tools:text="Destinatario" />
|
||||||
style="@style/AppTheme.NewMaterial.Text"/>
|
|
||||||
|
|
||||||
<LinearLayout
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:orientation="horizontal">
|
|
||||||
|
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatTextView
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
android:id="@+id/subtitle"
|
android:id="@+id/subtitle"
|
||||||
|
style="@style/AppTheme.NewMaterial.Text.Small"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:maxLines="1"
|
android:maxLines="1"
|
||||||
android:textAppearance="?attr/textAppearanceSubtitle1"
|
android:textAppearance="?attr/textAppearanceSubtitle1"
|
||||||
tools:text="Città"
|
android:textColor="@color/gray_800"
|
||||||
style="@style/AppTheme.NewMaterial.Text.Small"/>
|
tools:text="Città" />
|
||||||
</LinearLayout>
|
|
||||||
|
|
||||||
</LinearLayout>
|
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||||
@ -4,9 +4,10 @@
|
|||||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||||
|
|
||||||
<androidx.cardview.widget.CardView
|
<androidx.cardview.widget.CardView
|
||||||
android:orientation="vertical" android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_gravity="center_horizontal"
|
android:layout_gravity="center_horizontal"
|
||||||
|
android:orientation="vertical"
|
||||||
app:cardCornerRadius="12dp"
|
app:cardCornerRadius="12dp"
|
||||||
app:cardElevation="0dp">
|
app:cardElevation="0dp">
|
||||||
|
|
||||||
@ -21,17 +22,17 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
android:paddingStart="24dp"
|
android:paddingStart="24dp"
|
||||||
android:paddingEnd="24dp"
|
|
||||||
android:paddingTop="24dp"
|
android:paddingTop="24dp"
|
||||||
|
android:paddingEnd="24dp"
|
||||||
android:paddingBottom="12dp">
|
android:paddingBottom="12dp">
|
||||||
|
|
||||||
<TextView
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
android:id="@+id/title_text"
|
android:id="@+id/title_text"
|
||||||
|
style="@style/TextViewMaterial.Dialog.HeadlineText"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
style="@style/TextViewMaterial.Dialog.HeadlineText"
|
android:gravity="center_horizontal"
|
||||||
android:text="@string/extra_item"
|
android:text="@string/extra_item" />
|
||||||
android:gravity="center_horizontal"/>
|
|
||||||
|
|
||||||
<androidx.appcompat.widget.LinearLayoutCompat
|
<androidx.appcompat.widget.LinearLayoutCompat
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
@ -48,29 +49,28 @@
|
|||||||
android:layout_height="wrap_content" />
|
android:layout_height="wrap_content" />
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatTextView
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
style="@style/AppTheme.NewMaterial.Text"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:textSize="16sp"
|
android:layout_gravity="center_vertical"
|
||||||
android:layout_marginStart="8dp"
|
android:layout_marginStart="8dp"
|
||||||
android:layout_marginEnd="12dp"
|
android:layout_marginEnd="12dp"
|
||||||
android:layout_gravity="center_vertical"
|
|
||||||
android:gravity="center_horizontal"
|
android:gravity="center_horizontal"
|
||||||
style="@style/AppTheme.NewMaterial.Text"
|
android:text="@string/scan_item"
|
||||||
android:text="@string/scan_item"/>
|
android:textSize="16sp" />
|
||||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<com.google.android.material.button.MaterialButton
|
<com.google.android.material.button.MaterialButton
|
||||||
android:id="@+id/button_no"
|
android:id="@+id/button_no"
|
||||||
|
style="@style/Button.DangerOutline"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="16dp"
|
|
||||||
style="@style/Button.DangerOutline"
|
|
||||||
app:strokeColor="@color/red_400"
|
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
|
||||||
android:layout_gravity="center_horizontal"
|
android:layout_gravity="center_horizontal"
|
||||||
android:text="@string/abort"/>
|
android:layout_marginTop="16dp"
|
||||||
|
android:text="@string/abort"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:strokeColor="@color/red_400" />
|
||||||
|
|
||||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||||
|
|
||||||
@ -78,5 +78,4 @@
|
|||||||
</androidx.cardview.widget.CardView>
|
</androidx.cardview.widget.CardView>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</layout>
|
</layout>
|
||||||
33
app/src/main/res/layout/dropdown_simple_item_w_subtitle.xml
Normal file
33
app/src/main/res/layout/dropdown_simple_item_w_subtitle.xml
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<androidx.appcompat.widget.LinearLayoutCompat xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:paddingStart="16dp"
|
||||||
|
android:paddingTop="8dp"
|
||||||
|
android:paddingEnd="16dp"
|
||||||
|
android:paddingBottom="8dp">
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:id="@+id/title"
|
||||||
|
style="@style/AppTheme.NewMaterial.Text"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:textAppearance="?attr/textAppearanceSubtitle1"
|
||||||
|
tools:text="Destinatario" />
|
||||||
|
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:id="@+id/subtitle"
|
||||||
|
style="@style/AppTheme.NewMaterial.Text.Small"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:textAppearance="?attr/textAppearanceSubtitle1"
|
||||||
|
android:textColor="@color/gray_800"
|
||||||
|
tools:text="Città" />
|
||||||
|
|
||||||
|
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||||
1
barcode_base_library/.gitignore
vendored
1
barcode_base_library/.gitignore
vendored
@ -1 +0,0 @@
|
|||||||
/build
|
|
||||||
@ -1,5 +0,0 @@
|
|||||||
apply plugin: 'java-library'
|
|
||||||
|
|
||||||
dependencies {
|
|
||||||
implementation fileTree(dir: 'libs', include: ['*.jar'])
|
|
||||||
}
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
package it.integry.barcode_base_android_library.exception;
|
|
||||||
|
|
||||||
public class BarcodeAdapterNotFoundException extends Exception {
|
|
||||||
|
|
||||||
public BarcodeAdapterNotFoundException(String adapterName) {
|
|
||||||
super("L'adapter " + adapterName + " non è stato rilevato sul dispositivo corrente");
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,7 +0,0 @@
|
|||||||
package it.integry.barcode_base_android_library.extension;
|
|
||||||
|
|
||||||
public interface RunnableArgs<T> {
|
|
||||||
|
|
||||||
void run(T data);
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,22 +0,0 @@
|
|||||||
package it.integry.barcode_base_android_library.interfaces;
|
|
||||||
|
|
||||||
|
|
||||||
import it.integry.barcode_base_android_library.extension.RunnableArgs;
|
|
||||||
import it.integry.barcode_base_android_library.exception.BarcodeAdapterNotFoundException;
|
|
||||||
import it.integry.barcode_base_android_library.model.BarcodeScanDTO;
|
|
||||||
|
|
||||||
public interface BarcodeReaderInterface {
|
|
||||||
|
|
||||||
boolean isRightAdapter();
|
|
||||||
|
|
||||||
void init(Runnable onDeviceReady) throws BarcodeAdapterNotFoundException;
|
|
||||||
|
|
||||||
void deinit();
|
|
||||||
|
|
||||||
void register(RunnableArgs<BarcodeScanDTO> onScanSuccessfull, RunnableArgs<Exception> onScanFailed);
|
|
||||||
|
|
||||||
String getAdapterName();
|
|
||||||
|
|
||||||
//void onKeyEvent(KeyEvent keyEvent);
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,55 +0,0 @@
|
|||||||
package it.integry.barcode_base_android_library.model;
|
|
||||||
|
|
||||||
public class BarcodeScanDTO {
|
|
||||||
|
|
||||||
private BarcodeType type;
|
|
||||||
private String stringValue;
|
|
||||||
private byte[] byteValue;
|
|
||||||
private String name;
|
|
||||||
private int decodingTime;
|
|
||||||
|
|
||||||
public BarcodeType getType() {
|
|
||||||
return type;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BarcodeScanDTO setType(BarcodeType type) {
|
|
||||||
this.type = type;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getStringValue() {
|
|
||||||
return stringValue;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BarcodeScanDTO setStringValue(String stringValue) {
|
|
||||||
this.stringValue = stringValue;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public byte[] getByteValue() {
|
|
||||||
return byteValue;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BarcodeScanDTO setByteValue(byte[] byteValue) {
|
|
||||||
this.byteValue = byteValue;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getName() {
|
|
||||||
return name;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BarcodeScanDTO setName(String name) {
|
|
||||||
this.name = name;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getDecodingTime() {
|
|
||||||
return decodingTime;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BarcodeScanDTO setDecodingTime(int decodingTime) {
|
|
||||||
this.decodingTime = decodingTime;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,91 +0,0 @@
|
|||||||
package it.integry.barcode_base_android_library.model;
|
|
||||||
|
|
||||||
public enum BarcodeType {
|
|
||||||
|
|
||||||
NIL(0),
|
|
||||||
AIRLINE_2OF5_13_DIGIT(1),
|
|
||||||
AIRLINE_2OF5_15_DIGIT(2),
|
|
||||||
AZTEC(3),
|
|
||||||
AUSTRALIAN_POSTAL(4),
|
|
||||||
BOOKLAND_EAN(5),
|
|
||||||
BPO(6),
|
|
||||||
CANPOST(7),
|
|
||||||
CHINAPOST(8),
|
|
||||||
CHINESE_2OF5(9),
|
|
||||||
CODABAR(10),
|
|
||||||
CODABLOCK(11),
|
|
||||||
CODE11(12),
|
|
||||||
CODE128(13),
|
|
||||||
CODE16K(14),
|
|
||||||
CODE32(15),
|
|
||||||
CODE39(16),
|
|
||||||
CODE49(17),
|
|
||||||
CODE93(18),
|
|
||||||
COMPOSITE(19),
|
|
||||||
COUPON_CODE(20),
|
|
||||||
DATAMATRIX(21),
|
|
||||||
DISCRETE_2OF5(22),
|
|
||||||
DUTCH_POSTAL(23),
|
|
||||||
EAN128(24),
|
|
||||||
EAN13(25),
|
|
||||||
EAN8(26),
|
|
||||||
GS1_DATABAR_14(27),
|
|
||||||
GS1_DATABAR_EXPANDED(28),
|
|
||||||
GS1_DATABAR_LIMITED(29),
|
|
||||||
HONGKONG_2OF5(30),
|
|
||||||
IATA_2OF5(31),
|
|
||||||
IDTAG(32),
|
|
||||||
INTERLEAVED_2OF5(33),
|
|
||||||
ISBT128(34),
|
|
||||||
JAPANESE_POSTAL(35),
|
|
||||||
KOREAN_POSTAL(36),
|
|
||||||
MATRIX_2OF5(37),
|
|
||||||
MAXICODE(38),
|
|
||||||
MESA(39),
|
|
||||||
MICRO_PDF417(40),
|
|
||||||
MICRO_QR(41),
|
|
||||||
MSI(42),
|
|
||||||
NEC_2OF5(43),
|
|
||||||
OCR(44),
|
|
||||||
PDF417(45),
|
|
||||||
PLESSEY(46),
|
|
||||||
POSICODE(47),
|
|
||||||
POST_US4(48),
|
|
||||||
QR(49),
|
|
||||||
STRAIGHT_2OF5(50),
|
|
||||||
STANDARD_2OF5(51),
|
|
||||||
TELEPEN(52),
|
|
||||||
TLCODE39(53),
|
|
||||||
TRIOPTIC(54),
|
|
||||||
UK_POSTAL(55),
|
|
||||||
UPCA(56),
|
|
||||||
UPCE(57),
|
|
||||||
UPCE1(58),
|
|
||||||
US_PLANET(59),
|
|
||||||
US_POSTNET(60),
|
|
||||||
USPS_4CB(61),
|
|
||||||
RSS(62),
|
|
||||||
LABEL(63),
|
|
||||||
HANXIN(64),
|
|
||||||
GRIDMATRIX(65),
|
|
||||||
INFO_MAIL(66),
|
|
||||||
INTELLIGENT_MAIL(67),
|
|
||||||
SWEDENPOST(68),
|
|
||||||
LAST(69);
|
|
||||||
|
|
||||||
private Integer text;
|
|
||||||
BarcodeType(Integer text) {
|
|
||||||
this.text = text;
|
|
||||||
}
|
|
||||||
public Integer getValue() {
|
|
||||||
return this.text;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static BarcodeType fromInt(Integer text) {
|
|
||||||
for (BarcodeType b : BarcodeType.values()) {
|
|
||||||
if (b.text.equals(text)) return b;
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
Loading…
x
Reference in New Issue
Block a user