Nuova gestione linee di produzione

This commit is contained in:
Valerio Castellana 2022-05-25 17:17:58 +02:00
parent e0e9e657c9
commit 9dc3996aef
9 changed files with 215 additions and 139 deletions

View File

@ -45,6 +45,8 @@ import it.integry.integrywmsnative.gest.prod_fabbisogno_linee_prod.ProdFabbisogn
import it.integry.integrywmsnative.gest.prod_fabbisogno_linee_prod.ProdFabbisognoLineeProdModule;
import it.integry.integrywmsnative.gest.prod_fabbisogno_linee_prod.dialog_ask_mag_prossimita.DialogAskMagazzinoProssimitaComponent;
import it.integry.integrywmsnative.gest.prod_fabbisogno_linee_prod.dialog_ask_mag_prossimita.DialogAskMagazzinoProssimitaModule;
import it.integry.integrywmsnative.gest.prod_linee_produzione.ProdLineeProduzioneComponent;
import it.integry.integrywmsnative.gest.prod_linee_produzione.ProdLineeProduzioneModule;
import it.integry.integrywmsnative.gest.prod_recupero_materiale.ProdRecuperoMaterialeComponent;
import it.integry.integrywmsnative.gest.prod_recupero_materiale.ProdRecuperoMaterialeModule;
import it.integry.integrywmsnative.gest.prod_rientro_merce.ProdRientroMerceComponent;
@ -131,7 +133,8 @@ import it.integry.integrywmsnative.view.dialogs.scan_or_create_lu.DialogScanOrCr
DialogSelectDocRowsModule.class,
DialogAskClienteModule.class,
DialogEditArticoloModule.class,
DialogPrintOrderSSCCListModule.class
DialogPrintOrderSSCCListModule.class,
ProdLineeProduzioneModule.class
})
public interface MainApplicationComponent {
@ -221,6 +224,8 @@ public interface MainApplicationComponent {
DialogPrintOrderSSCCListComponent.Factory dialogPrintOrderSSCCListComponent();
ProdLineeProduzioneComponent.Factory prodLineeProduzioneComponent();
void inject(MainApplication mainApplication);
void inject(AppContext mainApplication);

View File

@ -8,6 +8,7 @@ import it.integry.integrywmsnative.gest.ordini_uscita_elenco.OrdiniUscitaElencoF
import it.integry.integrywmsnative.gest.picking_libero.PickingLiberoFragment;
import it.integry.integrywmsnative.gest.prod_accettazione_ord_produzione.ProdOrdineProduzioneElencoFragment;
import it.integry.integrywmsnative.gest.prod_fabbisogno_linee_prod.ProdFabbisognoLineeProdFragment;
import it.integry.integrywmsnative.gest.prod_linee_produzione.ProdLineeProduzioneFragment;
import it.integry.integrywmsnative.gest.prod_recupero_materiale.ProdRecuperoMaterialeFragment;
import it.integry.integrywmsnative.gest.prod_rientro_merce.ProdRientroMerceFragment;
import it.integry.integrywmsnative.gest.prod_versamento_materiale.ProdVersamentoMaterialeFragment;
@ -133,6 +134,14 @@ public class MenuConfiguration extends BaseMenuConfiguration {
.setTitleIcon(it.integry.integrywmsnative.R.drawable.ic_dashboard_prod_accettazione_produzione)
.setDrawerIcon(it.integry.integrywmsnative.R.drawable.ic_black_external)
.setFragmentFactory(ProdRientroMerceFragment::newInstance))
.addItem(new MenuItem()
.setID(it.integry.integrywmsnative.R.id.nav_prod_linee)
.setCodMenu("MG061")
.setTitleText(it.integry.integrywmsnative.R.string.nav_prod_linee_title)
.setTitleIcon(R.drawable.ic_production_line)
.setDrawerIcon(it.integry.integrywmsnative.R.drawable.ic_production_line)
.setFragmentFactory(ProdLineeProduzioneFragment::newInstance))
).addGroup(
new MenuGroup()
.setGroupText(R.string.internal_handling)

View File

@ -32,6 +32,10 @@ public class UtilityBarcode {
return barcodeScanDTO != null && (barcodeScanDTO.getType() == BarcodeType.CODE128 || barcodeScanDTO.getType() == BarcodeType.EAN128);
}
public static boolean isEan128(BarcodeScanDTO barcodeScanDTO) {
return barcodeScanDTO != null && barcodeScanDTO.getType() == BarcodeType.EAN128;
}
public static boolean isEtichettaPosizione(BarcodeScanDTO barcodeScanDTO) {
return isEtichettaPosizione(barcodeScanDTO, true);
}

View File

@ -4,6 +4,7 @@ import android.app.Dialog;
import android.content.Context;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.text.InputType;
import android.view.LayoutInflater;
import androidx.databinding.DataBindingUtil;
@ -21,12 +22,11 @@ import it.integry.integrywmsnative.databinding.DialogInputGeneralBinding;
public class DialogSimpleInputHelper {
private static Dialog makeBase(Context mContext, String titleText, String defaultTextValue, String hintText, RunnableArgs<String> onPositiveClick, Runnable onNegativeClick){
private static Dialog makeBase(Context mContext, String titleText, String defaultTextValue, String hintText, RunnableArgs<String> onPositiveClick, Runnable onNegativeClick, Integer inputType) {
Dialog dialog = new Dialog(mContext);
DialogSimpleInputViewModel viewModel = new DialogSimpleInputViewModel(dialog);
DialogInputGeneralBinding mBinding = DataBindingUtil.inflate(LayoutInflater.from(mContext), R.layout.dialog_input_general, null, false);
viewModel
.setOnPositive(() -> {
@ -38,6 +38,7 @@ public class DialogSimpleInputHelper {
mBinding.setViewmodel(viewModel);
//Title VIEW
mBinding.titleText.setText(titleText);
if (!UtilityString.isNullOrEmpty(hintText)) {
@ -47,7 +48,9 @@ public class DialogSimpleInputHelper {
if (!UtilityString.isNullOrEmpty(defaultTextValue)) {
mBinding.generalInput.setText(defaultTextValue);
}
if (inputType != null) {
mBinding.generalInput.setInputType(InputType.TYPE_CLASS_NUMBER);
}
//Content View
dialog.setCancelable(true);
dialog.setCanceledOnTouchOutside(false);
@ -66,7 +69,8 @@ public class DialogSimpleInputHelper {
null,
null,
onPositiveClick,
onNegativeClick);
onNegativeClick,
null);
}
@ -78,10 +82,35 @@ public class DialogSimpleInputHelper {
defaultTextValue,
hintText,
onPositiveClick,
onNegativeClick);
onNegativeClick,
null);
}
public static Dialog makeInputDialog(Context mContext, String title, RunnableArgs<String> onPositiveClick, Runnable onNegativeClick, Integer inputType) {
return makeBase(mContext,
title,
null,
null,
onPositiveClick,
onNegativeClick,
inputType);
}
public static Dialog makeInputDialog(Context mContext, String title, String defaultTextValue, String hintText, RunnableArgs<String> onPositiveClick, Runnable onNegativeClick, Integer inputType) {
return makeBase(mContext,
title,
defaultTextValue,
hintText,
onPositiveClick,
onNegativeClick,
inputType);
}
}

View File

@ -67,7 +67,7 @@
android:id="@+id/radioGroup"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onCheckedChanged="@{view.onCheckChange}"
android:onCheckedChanged="@{view::onCheckChange}"
android:layout_marginTop="8dp"
app:layout_constraintTop_toBottomOf="@id/description_text">

View File

@ -1,12 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:app="http://schemas.android.com/apk/res-auto">
<layout>
<data>
<import type="it.integry.integrywmsnative.R" />
</data>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
<LinearLayout 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"

View File

@ -8,6 +8,7 @@
<string name="waiting">Attendere</string>
<string name="loading">Caricamento</string>
<string name="completed">Completato</string>
<string name="success">Successo</string>
<string name="ord_acq_testata"><![CDATA[N° <b>%s</b> del <b>%s</b>]]></string>
<string name="ord_ven_testata"><![CDATA[N° <b>%s</b> del <b>%s</b>]]></string>
<string name="ord_testata"><![CDATA[N° <b>%s</b> del <b>%s</b>]]></string>
@ -390,4 +391,17 @@
<string name="newly_inserted_prod">Nuovo articolo in griglia</string>
<string name="doc_interni_select_row_to_edit">Seleziona la riga da modificare</string>
<string name="incoming_cnf">Colli in arrivo</string>
<string name="nav_prod_linee_title">Linee di produzione</string>
<string name="no_line_available">Nessuna linea disponibile</string>
<string name="in_progress">In lavorazione</string>
<string name="stand_by">In pausa</string>
<string name="stopped">Ferma</string>
<string name="risorse_impostate">Risorse allocate</string>
<string name="orders_in_progress">Ordini in lavorazione</string>
<string name="ridistribuisci_risorse">Ridistribuisci risorse</string>
<string name="avvia_nuova_produzione">Avvia nuova produzione</string>
<string name="arresta_produzione">Arresta produzione</string>
<string name="inizio_produzione">Inizio produzione</string>
<string name="ultima_produzione">Ultima produzione</string>
<string name="nessuna_linea_disponibile">Nessuna linea disponibile</string>
</resources>

View File

@ -28,6 +28,7 @@
<item name="nav_pv_ordini_acquisto" type="id" />
<item name="nav_pv_ordini_acquisto_trasmessi" type="id" />
<item name="nav_prod_rientro_merce" type="id" />
<item name="nav_prod_linee" type="id" />
<item name="nav_settings" type="id" />
<item name="nav_logout" type="id" />
<item name="nav_pv_doc_interni" type="id" />

View File

@ -45,6 +45,7 @@
<string name="waiting">Waiting</string>
<string name="loading">Loading</string>
<string name="completed">Completed</string>
<string name="success">Success</string>
<string name="search">Search&#8230;</string>
<string name="login">Login</string>
<string name="permission_request_message">Permissions are required for app to work properly</string>
@ -396,4 +397,17 @@
<string name="newly_inserted_prod">Newly added product</string>
<string name="doc_interni_select_row_to_edit">Select document row to edit</string>
<string name="incoming_cnf">Incoming packages</string>
<string name="nav_prod_linee_title">Production lines</string>
<string name="no_line_available">No line available</string>
<string name="in_progress">in progress</string>
<string name="stand_by">Stand by</string>
<string name="stopped">Stopped</string>
<string name="risorse_impostate">Resources set</string>
<string name="orders_in_progress">Orders in progress</string>
<string name="ridistribuisci_risorse">Redistribute resources</string>
<string name="avvia_nuova_produzione">Start production</string>
<string name="arresta_produzione">Stop production</string>
<string name="inizio_produzione">Production start</string>
<string name="ultima_produzione">Last production</string>
<string name="nessuna_linea_disponibile">No production line available</string>
</resources>