diff --git a/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/DepartmentItemAdapter.java b/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/DepartmentItemAdapter.java new file mode 100644 index 0000000..a83ffab --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/DepartmentItemAdapter.java @@ -0,0 +1,75 @@ +package com.utopiaindustries.qualitycontrol.adapters; + +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.EditText; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; + +import com.utopiaindustries.qualitycontrol.models.Department; + +import java.util.List; + +public class DepartmentItemAdapter extends RecyclerView.Adapter { + + private final List items; + private OnItemClickListener onItemClickListener; + private EditText editText; + private RecyclerView recyclerView; + + public DepartmentItemAdapter(List items, OnItemClickListener listener, EditText editText, RecyclerView recyclerView) { + this.items = items; + this.onItemClickListener = listener; + this.editText = editText; + this.recyclerView = recyclerView; + } + + public interface OnItemClickListener { + void onItemClick(Department item); + } + + @NonNull + @Override + public ItemViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { + View view = LayoutInflater.from(parent.getContext()) + .inflate(android.R.layout.simple_list_item_1, parent, false); + return new ItemViewHolder(view); + } + + @Override + public void onBindViewHolder(@NonNull ItemViewHolder holder, int position) { + Department item = items.get(position); + holder.textView.setText(item.getTitle()); + + // Set the click listener on the item view + holder.itemView.setOnClickListener(v -> { + editText.setText(item.getTitle()); + recyclerView.setVisibility(View.GONE); + + if (onItemClickListener != null) { + onItemClickListener.onItemClick(item); + } + }); + /*holder.itemView.setOnClickListener(v -> { + // Handle item selection + System.out.println("Selected: " + item); + });*/ + } + + @Override + public int getItemCount() { + return items.size(); + } + + static class ItemViewHolder extends RecyclerView.ViewHolder { + TextView textView; + + public ItemViewHolder(@NonNull View itemView) { + super(itemView); + textView = itemView.findViewById(android.R.id.text1); + } + } +} diff --git a/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/FloorAdapter.java b/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/FloorAdapter.java new file mode 100644 index 0000000..e915c76 --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/FloorAdapter.java @@ -0,0 +1,41 @@ +package com.utopiaindustries.qualitycontrol.adapters; + +import android.content.Context; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ArrayAdapter; +import android.widget.TextView; + +import com.utopiaindustries.qualitycontrol.R; +import com.utopiaindustries.qualitycontrol.models.LocationFloor; +import com.utopiaindustries.qualitycontrol.models.LocationSite; + +import java.util.List; + +public class FloorAdapter extends ArrayAdapter { + + private final Context context; + private final List items; + + public FloorAdapter(Context context, List items) { + super(context, 0, items); + this.context = context; + this.items = items; + } + + @Override + public View getView(int position, View convertView, ViewGroup parent) { + if (convertView == null) { + convertView = LayoutInflater.from(context).inflate(R.layout.list_items, parent, false); + } + + LocationFloor item = items.get(position); + + TextView titleTextView = convertView.findViewById(R.id.item_text); + + titleTextView.setText(item.getTitle()); + + return convertView; + } +} diff --git a/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemCheckingAdapter.java b/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemCheckingAdapter.java new file mode 100644 index 0000000..3020856 --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemCheckingAdapter.java @@ -0,0 +1,117 @@ +package com.utopiaindustries.qualitycontrol.adapters; + +import android.content.Context; +import android.util.Log; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ArrayAdapter; +import android.widget.Spinner; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; + +import com.utopiaindustries.qualitycontrol.R; +import com.utopiaindustries.qualitycontrol.models.Item; +import com.utopiaindustries.qualitycontrol.utils.SharedViewModel; + +import java.util.List; + +public class ItemCheckingAdapter extends RecyclerView.Adapter { + + private final Context context; + private final List items; + private final String[] dropdownOptions = {"1", "2", "3", "4", "5"}; + SharedViewModel viewModel; + + public ItemCheckingAdapter(Context context, List items, SharedViewModel viewModel) { + this.context = context; + this.items = items; + this.viewModel = viewModel; + } + + @NonNull + @Override + public ItemViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { + View view = LayoutInflater.from(context).inflate(R.layout.item_recycler_view, parent, false); + return new ItemViewHolder(view); + } + + @Override + public void onBindViewHolder(@NonNull ItemViewHolder holder, int position) { + Item currentItem = items.get(position); + holder.tvItemName.setText(currentItem.getName()); + + ArrayAdapter adapter = new ArrayAdapter<>(context,R.layout.spinner_style,dropdownOptions); + adapter.setDropDownViewResource(R.layout.spinner_style); + // Set up the Spinner (Dropdown) + /*ArrayAdapter adapter = new ArrayAdapter<>(context, android.R.layout.simple_spinner_item, dropdownOptions); + adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);*/ + holder.spinnerOptions.setAdapter(adapter); + + // Preselect an option if needed + holder.spinnerOptions.setSelection(currentItem.getSelectedOption()); + + // Save selected option when user selects one + holder.spinnerOptions.setOnItemSelectedListener(new android.widget.AdapterView.OnItemSelectedListener() { + @Override + public void onItemSelected(android.widget.AdapterView parent, View view, int sub_position, long id) { + //currentItem.setSelectedOption(position); // Save the selected option + + if (currentItem.getSelectedOption() != sub_position) { // Avoid unnecessary updates + currentItem.setSelectedOption(sub_position); // Save the selected option + Log.e("Position: ",""+holder.getAdapterPosition()); + Log.e("Sub-Position: ",""+sub_position); + + switch (holder.getAdapterPosition()) { + case 0: + viewModel.setCheckingSort(sub_position); + break; + + case 1: + viewModel.setCheckingSetInOrder(sub_position); + break; + + case 2: + viewModel.setCheckingShine(sub_position); + break; + + case 3: + viewModel.setCheckingStandardize(sub_position); + break; + + case 4: + viewModel.setCheckingSustain(sub_position); + break; + + case 5: + viewModel.setCheckingSafety(sub_position); + break; + } + } + } + + @Override + public void onNothingSelected(android.widget.AdapterView parent) { + // Do nothing + } + }); + } + + @Override + public int getItemCount() { + return items.size(); + } + + public static class ItemViewHolder extends RecyclerView.ViewHolder { + TextView tvItemName; + Spinner spinnerOptions; + + public ItemViewHolder(@NonNull View itemView) { + super(itemView); + tvItemName = itemView.findViewById(R.id.tv_item_name); + spinnerOptions = itemView.findViewById(R.id.spinner_item_options); + } + } +} diff --git a/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemAdapter.java b/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemCuttingAdapter.java similarity index 60% rename from app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemAdapter.java rename to app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemCuttingAdapter.java index 327246d..d61edfb 100644 --- a/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemAdapter.java +++ b/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemCuttingAdapter.java @@ -1,6 +1,7 @@ package com.utopiaindustries.qualitycontrol.adapters; import android.content.Context; +import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -13,18 +14,21 @@ import androidx.recyclerview.widget.RecyclerView; import com.utopiaindustries.qualitycontrol.R; import com.utopiaindustries.qualitycontrol.models.Item; +import com.utopiaindustries.qualitycontrol.utils.SharedViewModel; import java.util.List; -public class ItemAdapter extends RecyclerView.Adapter { +public class ItemCuttingAdapter extends RecyclerView.Adapter { private final Context context; private final List items; private final String[] dropdownOptions = {"1", "2", "3", "4", "5"}; + SharedViewModel viewModel; - public ItemAdapter(Context context, List items) { + public ItemCuttingAdapter(Context context, List items, SharedViewModel viewModel) { this.context = context; this.items = items; + this.viewModel = viewModel; } @NonNull @@ -52,11 +56,39 @@ public class ItemAdapter extends RecyclerView.Adapter parent, View view, int position, long id) { - currentItem.setSelectedOption(position); // Save the selected option + public void onItemSelected(android.widget.AdapterView parent, View view, int sub_position, long id) { + //currentItem.setSelectedOption(position); // Save the selected option - if (currentItem.getSelectedOption() != position) { // Avoid unnecessary updates - currentItem.setSelectedOption(position); // Save the selected option + if (currentItem.getSelectedOption() != sub_position) { // Avoid unnecessary updates + currentItem.setSelectedOption(sub_position); // Save the selected option + Log.e("Position: ",""+holder.getAdapterPosition()); + Log.e("Sub-Position: ",""+sub_position); + + switch (holder.getAdapterPosition()) { + case 0: + viewModel.setCuttingSort(sub_position); + break; + + case 1: + viewModel.setCuttingSetInOrder(sub_position); + break; + + case 2: + viewModel.setCuttingShine(sub_position); + break; + + case 3: + viewModel.setCuttingStandardize(sub_position); + break; + + case 4: + viewModel.setCuttingSustain(sub_position); + break; + + case 5: + viewModel.setCuttingSafety(sub_position); + break; + } } } diff --git a/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemPackingAdapter.java b/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemPackingAdapter.java new file mode 100644 index 0000000..277502f --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemPackingAdapter.java @@ -0,0 +1,117 @@ +package com.utopiaindustries.qualitycontrol.adapters; + +import android.content.Context; +import android.util.Log; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ArrayAdapter; +import android.widget.Spinner; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; + +import com.utopiaindustries.qualitycontrol.R; +import com.utopiaindustries.qualitycontrol.models.Item; +import com.utopiaindustries.qualitycontrol.utils.SharedViewModel; + +import java.util.List; + +public class ItemPackingAdapter extends RecyclerView.Adapter { + + private final Context context; + private final List items; + private final String[] dropdownOptions = {"1", "2", "3", "4", "5"}; + SharedViewModel viewModel; + + public ItemPackingAdapter(Context context, List items, SharedViewModel viewModel) { + this.context = context; + this.items = items; + this.viewModel = viewModel; + } + + @NonNull + @Override + public ItemViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { + View view = LayoutInflater.from(context).inflate(R.layout.item_recycler_view, parent, false); + return new ItemViewHolder(view); + } + + @Override + public void onBindViewHolder(@NonNull ItemViewHolder holder, int position) { + Item currentItem = items.get(position); + holder.tvItemName.setText(currentItem.getName()); + + ArrayAdapter adapter = new ArrayAdapter<>(context,R.layout.spinner_style,dropdownOptions); + adapter.setDropDownViewResource(R.layout.spinner_style); + // Set up the Spinner (Dropdown) + /*ArrayAdapter adapter = new ArrayAdapter<>(context, android.R.layout.simple_spinner_item, dropdownOptions); + adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);*/ + holder.spinnerOptions.setAdapter(adapter); + + // Preselect an option if needed + holder.spinnerOptions.setSelection(currentItem.getSelectedOption()); + + // Save selected option when user selects one + holder.spinnerOptions.setOnItemSelectedListener(new android.widget.AdapterView.OnItemSelectedListener() { + @Override + public void onItemSelected(android.widget.AdapterView parent, View view, int sub_position, long id) { + //currentItem.setSelectedOption(position); // Save the selected option + + if (currentItem.getSelectedOption() != sub_position) { // Avoid unnecessary updates + currentItem.setSelectedOption(sub_position); // Save the selected option + Log.e("Position: ",""+holder.getAdapterPosition()); + Log.e("Sub-Position: ",""+sub_position); + + switch (holder.getAdapterPosition()) { + case 0: + viewModel.setPackingSort(sub_position); + break; + + case 1: + viewModel.setPackingSetInOrder(sub_position); + break; + + case 2: + viewModel.setPackingShine(sub_position); + break; + + case 3: + viewModel.setPackingStandardize(sub_position); + break; + + case 4: + viewModel.setPackingSustain(sub_position); + break; + + case 5: + viewModel.setPackingSafety(sub_position); + break; + } + } + } + + @Override + public void onNothingSelected(android.widget.AdapterView parent) { + // Do nothing + } + }); + } + + @Override + public int getItemCount() { + return items.size(); + } + + public static class ItemViewHolder extends RecyclerView.ViewHolder { + TextView tvItemName; + Spinner spinnerOptions; + + public ItemViewHolder(@NonNull View itemView) { + super(itemView); + tvItemName = itemView.findViewById(R.id.tv_item_name); + spinnerOptions = itemView.findViewById(R.id.spinner_item_options); + } + } +} diff --git a/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemStitchingAdapter.java b/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemStitchingAdapter.java new file mode 100644 index 0000000..31ce6b7 --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemStitchingAdapter.java @@ -0,0 +1,117 @@ +package com.utopiaindustries.qualitycontrol.adapters; + +import android.content.Context; +import android.util.Log; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ArrayAdapter; +import android.widget.Spinner; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; + +import com.utopiaindustries.qualitycontrol.R; +import com.utopiaindustries.qualitycontrol.models.Item; +import com.utopiaindustries.qualitycontrol.utils.SharedViewModel; + +import java.util.List; + +public class ItemStitchingAdapter extends RecyclerView.Adapter { + + private final Context context; + private final List items; + private final String[] dropdownOptions = {"1", "2", "3", "4", "5"}; + SharedViewModel viewModel; + + public ItemStitchingAdapter(Context context, List items, SharedViewModel viewModel) { + this.context = context; + this.items = items; + this.viewModel = viewModel; + } + + @NonNull + @Override + public ItemViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { + View view = LayoutInflater.from(context).inflate(R.layout.item_recycler_view, parent, false); + return new ItemViewHolder(view); + } + + @Override + public void onBindViewHolder(@NonNull ItemViewHolder holder, int position) { + Item currentItem = items.get(position); + holder.tvItemName.setText(currentItem.getName()); + + ArrayAdapter adapter = new ArrayAdapter<>(context,R.layout.spinner_style,dropdownOptions); + adapter.setDropDownViewResource(R.layout.spinner_style); + // Set up the Spinner (Dropdown) + /*ArrayAdapter adapter = new ArrayAdapter<>(context, android.R.layout.simple_spinner_item, dropdownOptions); + adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);*/ + holder.spinnerOptions.setAdapter(adapter); + + // Preselect an option if needed + holder.spinnerOptions.setSelection(currentItem.getSelectedOption()); + + // Save selected option when user selects one + holder.spinnerOptions.setOnItemSelectedListener(new android.widget.AdapterView.OnItemSelectedListener() { + @Override + public void onItemSelected(android.widget.AdapterView parent, View view, int sub_position, long id) { + //currentItem.setSelectedOption(position); // Save the selected option + + if (currentItem.getSelectedOption() != sub_position) { // Avoid unnecessary updates + currentItem.setSelectedOption(sub_position); // Save the selected option + Log.e("Position: ",""+holder.getAdapterPosition()); + Log.e("Sub-Position: ",""+sub_position); + + switch (holder.getAdapterPosition()) { + case 0: + viewModel.setStitchingSort(sub_position); + break; + + case 1: + viewModel.setStitchingSetInOrder(sub_position); + break; + + case 2: + viewModel.setStitchingShine(sub_position); + break; + + case 3: + viewModel.setStitchingStandardize(sub_position); + break; + + case 4: + viewModel.setStitchingSustain(sub_position); + break; + + case 5: + viewModel.setStitchingSafety(sub_position); + break; + } + } + } + + @Override + public void onNothingSelected(android.widget.AdapterView parent) { + // Do nothing + } + }); + } + + @Override + public int getItemCount() { + return items.size(); + } + + public static class ItemViewHolder extends RecyclerView.ViewHolder { + TextView tvItemName; + Spinner spinnerOptions; + + public ItemViewHolder(@NonNull View itemView) { + super(itemView); + tvItemName = itemView.findViewById(R.id.tv_item_name); + spinnerOptions = itemView.findViewById(R.id.spinner_item_options); + } + } +} diff --git a/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemSubstoreAdapter.java b/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemSubstoreAdapter.java new file mode 100644 index 0000000..475121b --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/ItemSubstoreAdapter.java @@ -0,0 +1,117 @@ +package com.utopiaindustries.qualitycontrol.adapters; + +import android.content.Context; +import android.util.Log; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ArrayAdapter; +import android.widget.Spinner; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; + +import com.utopiaindustries.qualitycontrol.R; +import com.utopiaindustries.qualitycontrol.models.Item; +import com.utopiaindustries.qualitycontrol.utils.SharedViewModel; + +import java.util.List; + +public class ItemSubstoreAdapter extends RecyclerView.Adapter { + + private final Context context; + private final List items; + private final String[] dropdownOptions = {"1", "2", "3", "4", "5"}; + SharedViewModel viewModel; + + public ItemSubstoreAdapter(Context context, List items, SharedViewModel viewModel) { + this.context = context; + this.items = items; + this.viewModel = viewModel; + } + + @NonNull + @Override + public ItemViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { + View view = LayoutInflater.from(context).inflate(R.layout.item_recycler_view, parent, false); + return new ItemViewHolder(view); + } + + @Override + public void onBindViewHolder(@NonNull ItemViewHolder holder, int position) { + Item currentItem = items.get(position); + holder.tvItemName.setText(currentItem.getName()); + + ArrayAdapter adapter = new ArrayAdapter<>(context,R.layout.spinner_style,dropdownOptions); + adapter.setDropDownViewResource(R.layout.spinner_style); + // Set up the Spinner (Dropdown) + /*ArrayAdapter adapter = new ArrayAdapter<>(context, android.R.layout.simple_spinner_item, dropdownOptions); + adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);*/ + holder.spinnerOptions.setAdapter(adapter); + + // Preselect an option if needed + holder.spinnerOptions.setSelection(currentItem.getSelectedOption()); + + // Save selected option when user selects one + holder.spinnerOptions.setOnItemSelectedListener(new android.widget.AdapterView.OnItemSelectedListener() { + @Override + public void onItemSelected(android.widget.AdapterView parent, View view, int sub_position, long id) { + //currentItem.setSelectedOption(position); // Save the selected option + + if (currentItem.getSelectedOption() != sub_position) { // Avoid unnecessary updates + currentItem.setSelectedOption(sub_position); // Save the selected option + Log.e("Position: ",""+holder.getAdapterPosition()); + Log.e("Sub-Position: ",""+sub_position); + + switch (holder.getAdapterPosition()) { + case 0: + viewModel.setCuttingSort(sub_position); + break; + + case 1: + viewModel.setSubStoreSetInOrder(sub_position); + break; + + case 2: + viewModel.setSubStoreShine(sub_position); + break; + + case 3: + viewModel.setSubStoreStandardize(sub_position); + break; + + case 4: + viewModel.setSubStoreSustain(sub_position); + break; + + case 5: + viewModel.setSubStoreSafety(sub_position); + break; + } + } + } + + @Override + public void onNothingSelected(android.widget.AdapterView parent) { + // Do nothing + } + }); + } + + @Override + public int getItemCount() { + return items.size(); + } + + public static class ItemViewHolder extends RecyclerView.ViewHolder { + TextView tvItemName; + Spinner spinnerOptions; + + public ItemViewHolder(@NonNull View itemView) { + super(itemView); + tvItemName = itemView.findViewById(R.id.tv_item_name); + spinnerOptions = itemView.findViewById(R.id.spinner_item_options); + } + } +} diff --git a/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/LocationSitesAdapter.java b/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/LocationSitesAdapter.java new file mode 100644 index 0000000..839d1da --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/qualitycontrol/adapters/LocationSitesAdapter.java @@ -0,0 +1,40 @@ +package com.utopiaindustries.qualitycontrol.adapters; + +import android.content.Context; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ArrayAdapter; +import android.widget.TextView; + +import com.utopiaindustries.qualitycontrol.R; +import com.utopiaindustries.qualitycontrol.models.LocationSite; + +import java.util.List; + +public class LocationSitesAdapter extends ArrayAdapter { + + private final Context context; + private final List items; + + public LocationSitesAdapter(Context context, List items) { + super(context, 0, items); + this.context = context; + this.items = items; + } + + @Override + public View getView(int position, View convertView, ViewGroup parent) { + if (convertView == null) { + convertView = LayoutInflater.from(context).inflate(R.layout.list_items, parent, false); + } + + LocationSite item = items.get(position); + + TextView titleTextView = convertView.findViewById(R.id.item_text); + + titleTextView.setText(item.getTitle()); + + return convertView; + } +} diff --git a/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/CheckingFragment.java b/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/CheckingFragment.java index e11cef8..a7b4c9a 100644 --- a/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/CheckingFragment.java +++ b/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/CheckingFragment.java @@ -19,6 +19,7 @@ import androidx.annotation.Nullable; import androidx.appcompat.app.AlertDialog; import androidx.core.content.FileProvider; import androidx.fragment.app.Fragment; +import androidx.lifecycle.ViewModelProvider; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; @@ -36,8 +37,10 @@ import android.widget.Toast; import com.utopiaindustries.qualitycontrol.R; import com.utopiaindustries.qualitycontrol.activities.HomeActivity; import com.utopiaindustries.qualitycontrol.adapters.ImageAdapter; -import com.utopiaindustries.qualitycontrol.adapters.ItemAdapter; +import com.utopiaindustries.qualitycontrol.adapters.ItemCheckingAdapter; +import com.utopiaindustries.qualitycontrol.adapters.ItemCuttingAdapter; import com.utopiaindustries.qualitycontrol.models.Item; +import com.utopiaindustries.qualitycontrol.utils.SharedViewModel; import java.io.ByteArrayOutputStream; import java.io.File; @@ -65,6 +68,7 @@ public class CheckingFragment extends Fragment implements EasyPermissions.Permis ArrayList imageList = new ArrayList<>(); Button nextButton; ImageButton imagePicker, deleteImage; + SharedViewModel sharedViewModel; // Activity Result Launcher for Gallery private final ActivityResultLauncher imagePickerLauncher = @@ -151,7 +155,7 @@ public class CheckingFragment extends Fragment implements EasyPermissions.Permis itemList.add(new Item("Safety", 0)); // Set up RecyclerView - ItemAdapter adapter = new ItemAdapter(getActivity(), itemList); + ItemCheckingAdapter adapter = new ItemCheckingAdapter(getActivity(), itemList, sharedViewModel); recyclerView.setLayoutManager(new LinearLayoutManager(getActivity())); recyclerView.setAdapter(adapter); @@ -187,6 +191,7 @@ public class CheckingFragment extends Fragment implements EasyPermissions.Permis private void initializeLayout(View view) { + sharedViewModel = new ViewModelProvider(requireActivity()).get(SharedViewModel.class); imagePicker = view.findViewById(R.id.image_picker); deleteImage = view.findViewById(R.id.delete_image); nextButton = view.findViewById(R.id.btn_next); diff --git a/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/CuttingFragment.java b/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/CuttingFragment.java index 8de2377..3673950 100644 --- a/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/CuttingFragment.java +++ b/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/CuttingFragment.java @@ -1,7 +1,5 @@ package com.utopiaindustries.qualitycontrol.fragments; -import static android.app.Activity.RESULT_OK; - import android.Manifest; import android.content.ActivityNotFoundException; import android.content.Context; @@ -21,6 +19,7 @@ import androidx.annotation.Nullable; import androidx.appcompat.app.AlertDialog; import androidx.core.content.FileProvider; import androidx.fragment.app.Fragment; +import androidx.lifecycle.ViewModelProvider; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; @@ -38,22 +37,21 @@ import android.widget.Toast; import com.utopiaindustries.qualitycontrol.R; import com.utopiaindustries.qualitycontrol.activities.HomeActivity; import com.utopiaindustries.qualitycontrol.adapters.ImageAdapter; -import com.utopiaindustries.qualitycontrol.adapters.ItemAdapter; +import com.utopiaindustries.qualitycontrol.adapters.ItemCuttingAdapter; import com.utopiaindustries.qualitycontrol.helper.Helper; import com.utopiaindustries.qualitycontrol.models.Item; import com.utopiaindustries.qualitycontrol.models.QualityControlProcessStep; import com.utopiaindustries.qualitycontrol.models.QualityControlResponse; +import com.utopiaindustries.qualitycontrol.utils.SharedViewModel; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.IOException; import java.io.InputStream; -import java.lang.reflect.Array; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; -import java.util.Locale; import java.util.Objects; import java.util.function.Consumer; @@ -73,6 +71,7 @@ public class CuttingFragment extends Fragment implements EasyPermissions.Permiss ArrayList imageList = new ArrayList<>(); ArrayList qualityControlProcessStepList = new ArrayList<>(); QualityControlResponse qualityControlResponse; + SharedViewModel sharedViewModel; // Activity Result Launcher for Gallery private final ActivityResultLauncher imagePickerLauncher = @@ -158,7 +157,7 @@ public class CuttingFragment extends Fragment implements EasyPermissions.Permiss itemList.add(new Item("Safety", 0)); // Set up RecyclerView - ItemAdapter adapter = new ItemAdapter(getActivity(), itemList); + ItemCuttingAdapter adapter = new ItemCuttingAdapter(getActivity(), itemList, sharedViewModel); recyclerView.setLayoutManager(new LinearLayoutManager(getActivity())); recyclerView.setAdapter(adapter); @@ -189,6 +188,8 @@ public class CuttingFragment extends Fragment implements EasyPermissions.Permiss private void initializeLayout(View view) { + sharedViewModel = new ViewModelProvider(requireActivity()).get(SharedViewModel.class); + imagePicker = view.findViewById(R.id.image_picker); deleteImage = view.findViewById(R.id.delete_image); nextButton = view.findViewById(R.id.btn_next); diff --git a/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/HomeFragment.java b/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/HomeFragment.java index 53b4af7..709a05e 100644 --- a/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/HomeFragment.java +++ b/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/HomeFragment.java @@ -7,19 +7,28 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.fragment.app.Fragment; import androidx.lifecycle.ViewModelProvider; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; +import android.text.Editable; +import android.text.TextWatcher; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; +import android.widget.ArrayAdapter; import android.widget.AutoCompleteTextView; import android.widget.Button; +import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; import com.utopiaindustries.qualitycontrol.R; import com.utopiaindustries.qualitycontrol.activities.HomeActivity; +import com.utopiaindustries.qualitycontrol.adapters.DepartmentItemAdapter; +import com.utopiaindustries.qualitycontrol.adapters.FloorAdapter; +import com.utopiaindustries.qualitycontrol.adapters.LocationSitesAdapter; import com.utopiaindustries.qualitycontrol.helper.Helper; import com.utopiaindustries.qualitycontrol.helper.Preference; import com.utopiaindustries.qualitycontrol.models.Department; @@ -28,30 +37,47 @@ import com.utopiaindustries.qualitycontrol.models.LocationSite; import com.utopiaindustries.qualitycontrol.models.QualityControlProcess; import com.utopiaindustries.qualitycontrol.models.QualityControlProcessStep; import com.utopiaindustries.qualitycontrol.utils.ProgressDialogFragment; +import com.utopiaindustries.qualitycontrol.utils.SharedViewModel; import com.utopiaindustries.qualitycontrol.viewmodels.LoginViewModel; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; +import java.util.List; import java.util.Locale; +import java.util.Objects; +import java.util.stream.Collectors; -public class HomeFragment extends Fragment { +public class HomeFragment extends Fragment implements DepartmentItemAdapter.OnItemClickListener{ AutoCompleteTextView locationTextview, departmentTextView, floorTextview; TextView txtCurrentDate; LoginViewModel loginViewModel; + Button nextButton; + + LocationSitesAdapter locationSitesAdapter; + FloorAdapter floorAdapter; ArrayList locationFloorList = new ArrayList<>(); ArrayList locationSiteList = new ArrayList<>(); ArrayList departmentList = new ArrayList<>(); ArrayList qualityControlProcessList = new ArrayList<>(); + EditText searchEditText; + RecyclerView recyclerView; + List itemList, filteredList; + private DepartmentItemAdapter departmentItemAdapter; + + SharedViewModel sharedViewModel; + @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_home, container, false); + Log.e("onCreateView: ","===================="); + initializeLayout(view); String date = new SimpleDateFormat("EEEE, MMM d, yyyy", Locale.getDefault()).format(new Date()); @@ -60,14 +86,30 @@ public class HomeFragment extends Fragment { locationTextview.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView adapterView, View view, int position, long l) { - String item = adapterView.getItemAtPosition(position).toString(); - Log.e("Item-----------: ", "" + item); + LocationSite clickedItem = locationSiteList.get(position); + Log.e("Item-----------: ", clickedItem.getTitle()); + floorTextview.setText("Select Floor"); + //floorTextview.clearListSelection(); + if (!locationFloorList.isEmpty()) { + List filteredItems = locationFloorList.stream() + .filter(item -> Objects.equals(item.getSiteId(), clickedItem.getId())) + .collect(Collectors.toList()); + Log.e("Filtered-size: ",""+filteredItems.size()); + + floorAdapter = new FloorAdapter(getActivity(), filteredItems); + floorTextview.setAdapter(floorAdapter); + + // Print filtered items + for (LocationFloor item : filteredItems) { + Log.e("Floor-Title: ", item.getTitle()); + } + } } }); - departmentTextView.setOnItemClickListener(new AdapterView.OnItemClickListener() { + /* departmentTextView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView adapterView, View view, int position, long l) { String item = adapterView.getItemAtPosition(position).toString(); @@ -75,25 +117,57 @@ public class HomeFragment extends Fragment { } - }); + });*/ floorTextview.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView adapterView, View view, int position, long l) { - String item = adapterView.getItemAtPosition(position).toString(); - Log.e("Item-----------: ", "" + item); + LocationFloor clickedItem = locationFloorList.get(position); + Log.e("Item-----------: ", clickedItem.getTitle()); } }); - Button nextButton = view.findViewById(R.id.btn_next); nextButton.setOnClickListener(v -> { if (getActivity() instanceof HomeActivity) { + sharedViewModel.setFromViewModel(true); ((HomeActivity) getActivity()).navigateToFragment(new CuttingFragment(), true); } }); + searchEditText.addTextChangedListener(new TextWatcher() { + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + // Do nothing + } + + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + filterList(s.toString()); + + + if (s.length() > 0) { + Log.e("filterList","0.1"); + if (sharedViewModel.isFromViewModel()) { + recyclerView.setVisibility(View.GONE); + } + else { + recyclerView.setVisibility(View.VISIBLE); // Show the list when typing + } + + } else { + Log.e("filterList","0.21"); + recyclerView.setVisibility(View.GONE); // Hide when no text is entered + } + } + + @Override + public void afterTextChanged(Editable s) { + // Do nothing + } + }); + return view; } @@ -103,10 +177,18 @@ public class HomeFragment extends Fragment { } public void initializeLayout(View view) { + sharedViewModel = new ViewModelProvider(requireActivity()).get(SharedViewModel.class); + txtCurrentDate = view.findViewById(R.id.txt_current_date); locationTextview = view.findViewById(R.id.location_textview); - departmentTextView = view.findViewById(R.id.department_textview); + //departmentTextView = view.findViewById(R.id.department_textview); floorTextview = view.findViewById(R.id.floor_textview); + nextButton = view.findViewById(R.id.btn_next); + + searchEditText = view.findViewById(R.id.searchEditText); + recyclerView = view.findViewById(R.id.recyclerView); + + recyclerView.setVisibility(View.GONE); loginViewModel = new ViewModelProvider(getActivity()).get(LoginViewModel.class); @@ -127,17 +209,38 @@ public class HomeFragment extends Fragment { Helper.setPreferenceObject(getActivity().getApplicationContext(), qcResponse, "qcResponse"); + if (!qcResponse.getLocationSites().isEmpty()) { + + sharedViewModel.setLocationSiteList(qcResponse.getLocationSites()); + locationSiteList.addAll(qcResponse.getLocationSites()); Log.e("locationSiteList-size: ",""+locationSiteList.size()); + + locationSitesAdapter = new LocationSitesAdapter(getActivity(), locationSiteList); + locationTextview.setAdapter(locationSitesAdapter); + //locationSitesAdapter.notifyDataSetChanged(); } if (!qcResponse.getDepartments().isEmpty()) { + + sharedViewModel.setDepartmentList(qcResponse.getDepartments()); + departmentList.addAll(qcResponse.getDepartments()); Log.e("departmentList-size: ",""+departmentList.size()); + + filteredList = new ArrayList<>(departmentList); + + // Set up RecyclerView + departmentItemAdapter = new DepartmentItemAdapter(filteredList, this, searchEditText, recyclerView); + recyclerView.setLayoutManager(new LinearLayoutManager(getActivity())); + recyclerView.setAdapter(departmentItemAdapter); } if (!qcResponse.getLocationFloors().isEmpty()) { + + sharedViewModel.setFloorList(qcResponse.getLocationFloors()); + locationFloorList.addAll(qcResponse.getLocationFloors()); Log.e("locationFloorList-size: ",""+locationFloorList.size()); } @@ -147,7 +250,37 @@ public class HomeFragment extends Fragment { } }); - loginViewModel.getQualityControlData(); + if (sharedViewModel.getLocationSiteList().isEmpty()) { + loginViewModel.getQualityControlData(); + } + else { + + //location list + locationSiteList.addAll(sharedViewModel.getLocationSiteList()); + Log.e("locationSiteList-size: ",""+locationSiteList.size()); + + locationSitesAdapter = new LocationSitesAdapter(getActivity(), locationSiteList); + locationTextview.setAdapter(locationSitesAdapter); + + //department list + departmentList.addAll(sharedViewModel.getDepartmentList()); + Log.e("departmentList-size: ",""+departmentList.size()); + + //filteredList = new ArrayList<>(departmentList); + + // Set up RecyclerView + departmentItemAdapter = new DepartmentItemAdapter(filteredList, this, searchEditText, recyclerView); + recyclerView.setLayoutManager(new LinearLayoutManager(getActivity())); + recyclerView.setAdapter(departmentItemAdapter); + + //floor list + locationFloorList.addAll(sharedViewModel.getFloorList()); + Log.e("locationFloorList-size: ",""+locationFloorList.size()); + + recyclerView.setVisibility(View.GONE); + + } + } public void showProgressDialog() { @@ -163,4 +296,30 @@ public class HomeFragment extends Fragment { progressDialog.dismiss(); } } + + private void filterList(String query) { + Log.e("filterList","1"); + filteredList.clear(); + if (query.isEmpty()) { + // Hide the RecyclerView when there's no query + recyclerView.setVisibility(View.GONE); + Log.e("filterList","2"); + } else { + // Show RecyclerView when there's a query + recyclerView.setVisibility(View.VISIBLE); + Log.e("filterList","3"); + + for (Department item : departmentList) { + if (item.getTitle().toLowerCase().contains(query.toLowerCase())) { + filteredList.add(item); + } + } + } + departmentItemAdapter.notifyDataSetChanged(); + } + + @Override + public void onItemClick(Department item) { + Toast.makeText(getActivity(), "Selected: " + item.getTitle(), Toast.LENGTH_SHORT).show(); + } } \ No newline at end of file diff --git a/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/PackingFragment.java b/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/PackingFragment.java index 7d8c000..5123d26 100644 --- a/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/PackingFragment.java +++ b/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/PackingFragment.java @@ -36,7 +36,7 @@ import android.widget.Toast; import com.utopiaindustries.qualitycontrol.R; import com.utopiaindustries.qualitycontrol.activities.HomeActivity; import com.utopiaindustries.qualitycontrol.adapters.ImageAdapter; -import com.utopiaindustries.qualitycontrol.adapters.ItemAdapter; +import com.utopiaindustries.qualitycontrol.adapters.ItemCuttingAdapter; import com.utopiaindustries.qualitycontrol.models.Item; import java.io.ByteArrayOutputStream; @@ -152,7 +152,7 @@ public class PackingFragment extends Fragment implements EasyPermissions.Permiss itemList.add(new Item("Safety", 0)); // Set up RecyclerView - ItemAdapter adapter = new ItemAdapter(getActivity(), itemList); + ItemCuttingAdapter adapter = new ItemCuttingAdapter(getActivity(), itemList); recyclerView.setLayoutManager(new LinearLayoutManager(getActivity())); recyclerView.setAdapter(adapter); diff --git a/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/StitchingFragment.java b/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/StitchingFragment.java index 5684772..20800e2 100644 --- a/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/StitchingFragment.java +++ b/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/StitchingFragment.java @@ -36,7 +36,7 @@ import android.widget.Toast; import com.utopiaindustries.qualitycontrol.R; import com.utopiaindustries.qualitycontrol.activities.HomeActivity; import com.utopiaindustries.qualitycontrol.adapters.ImageAdapter; -import com.utopiaindustries.qualitycontrol.adapters.ItemAdapter; +import com.utopiaindustries.qualitycontrol.adapters.ItemCuttingAdapter; import com.utopiaindustries.qualitycontrol.models.Item; import java.io.ByteArrayOutputStream; @@ -153,7 +153,7 @@ public class StitchingFragment extends Fragment implements EasyPermissions.Permi itemList.add(new Item("Safety", 0)); // Set up RecyclerView - ItemAdapter adapter = new ItemAdapter(getActivity(), itemList); + ItemCuttingAdapter adapter = new ItemCuttingAdapter(getActivity(), itemList); recyclerView.setLayoutManager(new LinearLayoutManager(getActivity())); recyclerView.setAdapter(adapter); diff --git a/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/SubStoreFragment.java b/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/SubStoreFragment.java index 8d3aa94..fc85be1 100644 --- a/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/SubStoreFragment.java +++ b/app/src/main/java/com/utopiaindustries/qualitycontrol/fragments/SubStoreFragment.java @@ -34,10 +34,9 @@ import android.widget.TextView; import android.widget.Toast; import com.utopiaindustries.qualitycontrol.R; -import com.utopiaindustries.qualitycontrol.activities.HomeActivity; import com.utopiaindustries.qualitycontrol.activities.SummaryActivity; import com.utopiaindustries.qualitycontrol.adapters.ImageAdapter; -import com.utopiaindustries.qualitycontrol.adapters.ItemAdapter; +import com.utopiaindustries.qualitycontrol.adapters.ItemCuttingAdapter; import com.utopiaindustries.qualitycontrol.models.Item; import java.io.ByteArrayOutputStream; @@ -152,7 +151,7 @@ public class SubStoreFragment extends Fragment implements EasyPermissions.Permis itemList.add(new Item("Safety", 0)); // Set up RecyclerView - ItemAdapter adapter = new ItemAdapter(getActivity(), itemList); + ItemCuttingAdapter adapter = new ItemCuttingAdapter(getActivity(), itemList); recyclerView.setLayoutManager(new LinearLayoutManager(getActivity())); recyclerView.setAdapter(adapter); diff --git a/app/src/main/java/com/utopiaindustries/qualitycontrol/models/LocationFloor.java b/app/src/main/java/com/utopiaindustries/qualitycontrol/models/LocationFloor.java index 0b02f84..237007d 100644 --- a/app/src/main/java/com/utopiaindustries/qualitycontrol/models/LocationFloor.java +++ b/app/src/main/java/com/utopiaindustries/qualitycontrol/models/LocationFloor.java @@ -62,4 +62,8 @@ public class LocationFloor { this.stores = stores; } + @Override + public String toString() { + return title; + } } diff --git a/app/src/main/java/com/utopiaindustries/qualitycontrol/models/LocationSite.java b/app/src/main/java/com/utopiaindustries/qualitycontrol/models/LocationSite.java index 183bd9b..560bca7 100644 --- a/app/src/main/java/com/utopiaindustries/qualitycontrol/models/LocationSite.java +++ b/app/src/main/java/com/utopiaindustries/qualitycontrol/models/LocationSite.java @@ -73,4 +73,8 @@ public class LocationSite { this.units = units; } + @Override + public String toString() { + return title; + } } diff --git a/app/src/main/java/com/utopiaindustries/qualitycontrol/utils/SharedViewModel.java b/app/src/main/java/com/utopiaindustries/qualitycontrol/utils/SharedViewModel.java index 7b1efbe..4f72f34 100644 --- a/app/src/main/java/com/utopiaindustries/qualitycontrol/utils/SharedViewModel.java +++ b/app/src/main/java/com/utopiaindustries/qualitycontrol/utils/SharedViewModel.java @@ -2,75 +2,99 @@ package com.utopiaindustries.qualitycontrol.utils; import androidx.lifecycle.ViewModel; +import com.utopiaindustries.qualitycontrol.models.Department; +import com.utopiaindustries.qualitycontrol.models.LocationFloor; +import com.utopiaindustries.qualitycontrol.models.LocationSite; + import java.util.ArrayList; +import java.util.List; public class SharedViewModel extends ViewModel { private String currentDate; + + private List locationSiteList; + private List departmentList; + private List floorList; + private String location; private String department; private String floor; //Cutting - private String cuttingSort; - private String cuttingSetInOrder; - private String cuttingShine; - private String cuttingStandardize; - private String cuttingSustain; - private String cuttingSafety; + private int cuttingSort; + private int cuttingSetInOrder; + private int cuttingShine; + private int cuttingStandardize; + private int cuttingSustain; + private int cuttingSafety; private String cuttingPercentage; private String cuttingRemarks; private ArrayList cuttingImageList; //Stitching - private String stitchingSort; - private String stitchingSetInOrder; - private String stitchingShine; - private String stitchingStandardize; - private String stitchingSustain; - private String stitchingSafety; + private int stitchingSort; + private int stitchingSetInOrder; + private int stitchingShine; + private int stitchingStandardize; + private int stitchingSustain; + private int stitchingSafety; private String stitchingPercentage; private String stitchingRemarks; private ArrayList stitchingImageList; //Checking - private String checkingSort; - private String checkingSetInOrder; - private String checkingShine; - private String checkingStandardize; - private String checkingSustain; - private String checkingSafety; + private int checkingSort; + private int checkingSetInOrder; + private int checkingShine; + private int checkingStandardize; + private int checkingSustain; + private int checkingSafety; private String checkingPercentage; private String checkingRemarks; private ArrayList checkingImageList; //Packing - private String packingSort; - private String packingSetInOrder; - private String packingShine; - private String packingStandardize; - private String packingSustain; - private String packingSafety; + private int packingSort; + private int packingSetInOrder; + private int packingShine; + private int packingStandardize; + private int packingSustain; + private int packingSafety; private String packingPercentage; private String packingRemarks; private ArrayList packingImageList; //Sub Store - private String subStoreSort; - private String subStoreSetInOrder; - private String subStoreShine; - private String subStoreStandardize; - private String subStoreSustain; - private String subStoreSafety; + private int subStoreSort; + private int subStoreSetInOrder; + private int subStoreShine; + private int subStoreStandardize; + private int subStoreSustain; + private int subStoreSafety; private String subStorePercentage; private String subStoreRemarks; private ArrayList subStoreImageList; + private boolean fromViewModel; + + public boolean isFromViewModel() { + return fromViewModel; + } + + public void setFromViewModel(boolean fromViewModel) { + this.fromViewModel = fromViewModel; + } + public SharedViewModel() { cuttingImageList = new ArrayList<>(); stitchingImageList = new ArrayList<>(); checkingImageList = new ArrayList<>(); packingImageList = new ArrayList<>(); subStoreImageList = new ArrayList<>(); + + locationSiteList = new ArrayList<>(); + departmentList = new ArrayList<>(); + floorList = new ArrayList<>(); } public String getCurrentDate() { @@ -105,51 +129,51 @@ public class SharedViewModel extends ViewModel { this.floor = floor; } - public String getCuttingSort() { + public int getCuttingSort() { return cuttingSort; } - public void setCuttingSort(String cuttingSort) { + public void setCuttingSort(int cuttingSort) { this.cuttingSort = cuttingSort; } - public String getCuttingSetInOrder() { + public int getCuttingSetInOrder() { return cuttingSetInOrder; } - public void setCuttingSetInOrder(String cuttingSetInOrder) { + public void setCuttingSetInOrder(int cuttingSetInOrder) { this.cuttingSetInOrder = cuttingSetInOrder; } - public String getCuttingShine() { + public int getCuttingShine() { return cuttingShine; } - public void setCuttingShine(String cuttingShine) { + public void setCuttingShine(int cuttingShine) { this.cuttingShine = cuttingShine; } - public String getCuttingStandardize() { + public int getCuttingStandardize() { return cuttingStandardize; } - public void setCuttingStandardize(String cuttingStandardize) { + public void setCuttingStandardize(int cuttingStandardize) { this.cuttingStandardize = cuttingStandardize; } - public String getCuttingSustain() { + public int getCuttingSustain() { return cuttingSustain; } - public void setCuttingSustain(String cuttingSustain) { + public void setCuttingSustain(int cuttingSustain) { this.cuttingSustain = cuttingSustain; } - public String getCuttingSafety() { + public int getCuttingSafety() { return cuttingSafety; } - public void setCuttingSafety(String cuttingSafety) { + public void setCuttingSafety(int cuttingSafety) { this.cuttingSafety = cuttingSafety; } @@ -177,51 +201,51 @@ public class SharedViewModel extends ViewModel { this.cuttingImageList = cuttingImageList; } - public String getStitchingSort() { + public int getStitchingSort() { return stitchingSort; } - public void setStitchingSort(String stitchingSort) { + public void setStitchingSort(int stitchingSort) { this.stitchingSort = stitchingSort; } - public String getStitchingSetInOrder() { + public int getStitchingSetInOrder() { return stitchingSetInOrder; } - public void setStitchingSetInOrder(String stitchingSetInOrder) { + public void setStitchingSetInOrder(int stitchingSetInOrder) { this.stitchingSetInOrder = stitchingSetInOrder; } - public String getStitchingShine() { + public int getStitchingShine() { return stitchingShine; } - public void setStitchingShine(String stitchingShine) { + public void setStitchingShine(int stitchingShine) { this.stitchingShine = stitchingShine; } - public String getStitchingStandardize() { + public int getStitchingStandardize() { return stitchingStandardize; } - public void setStitchingStandardize(String stitchingStandardize) { + public void setStitchingStandardize(int stitchingStandardize) { this.stitchingStandardize = stitchingStandardize; } - public String getStitchingSustain() { + public int getStitchingSustain() { return stitchingSustain; } - public void setStitchingSustain(String stitchingSustain) { + public void setStitchingSustain(int stitchingSustain) { this.stitchingSustain = stitchingSustain; } - public String getStitchingSafety() { + public int getStitchingSafety() { return stitchingSafety; } - public void setStitchingSafety(String stitchingSafety) { + public void setStitchingSafety(int stitchingSafety) { this.stitchingSafety = stitchingSafety; } @@ -249,51 +273,51 @@ public class SharedViewModel extends ViewModel { this.stitchingImageList = stitchingImageList; } - public String getCheckingSort() { + public int getCheckingSort() { return checkingSort; } - public void setCheckingSort(String checkingSort) { + public void setCheckingSort(int checkingSort) { this.checkingSort = checkingSort; } - public String getCheckingSetInOrder() { + public int getCheckingSetInOrder() { return checkingSetInOrder; } - public void setCheckingSetInOrder(String checkingSetInOrder) { + public void setCheckingSetInOrder(int checkingSetInOrder) { this.checkingSetInOrder = checkingSetInOrder; } - public String getCheckingShine() { + public int getCheckingShine() { return checkingShine; } - public void setCheckingShine(String checkingShine) { + public void setCheckingShine(int checkingShine) { this.checkingShine = checkingShine; } - public String getCheckingStandardize() { + public int getCheckingStandardize() { return checkingStandardize; } - public void setCheckingStandardize(String checkingStandardize) { + public void setCheckingStandardize(int checkingStandardize) { this.checkingStandardize = checkingStandardize; } - public String getCheckingSustain() { + public int getCheckingSustain() { return checkingSustain; } - public void setCheckingSustain(String checkingSustain) { + public void setCheckingSustain(int checkingSustain) { this.checkingSustain = checkingSustain; } - public String getCheckingSafety() { + public int getCheckingSafety() { return checkingSafety; } - public void setCheckingSafety(String checkingSafety) { + public void setCheckingSafety(int checkingSafety) { this.checkingSafety = checkingSafety; } @@ -321,51 +345,51 @@ public class SharedViewModel extends ViewModel { this.checkingImageList = checkingImageList; } - public String getPackingSort() { + public int getPackingSort() { return packingSort; } - public void setPackingSort(String packingSort) { + public void setPackingSort(int packingSort) { this.packingSort = packingSort; } - public String getPackingSetInOrder() { + public int getPackingSetInOrder() { return packingSetInOrder; } - public void setPackingSetInOrder(String packingSetInOrder) { + public void setPackingSetInOrder(int packingSetInOrder) { this.packingSetInOrder = packingSetInOrder; } - public String getPackingShine() { + public int getPackingShine() { return packingShine; } - public void setPackingShine(String packingShine) { + public void setPackingShine(int packingShine) { this.packingShine = packingShine; } - public String getPackingStandardize() { + public int getPackingStandardize() { return packingStandardize; } - public void setPackingStandardize(String packingStandardize) { + public void setPackingStandardize(int packingStandardize) { this.packingStandardize = packingStandardize; } - public String getPackingSustain() { + public int getPackingSustain() { return packingSustain; } - public void setPackingSustain(String packingSustain) { + public void setPackingSustain(int packingSustain) { this.packingSustain = packingSustain; } - public String getPackingSafety() { + public int getPackingSafety() { return packingSafety; } - public void setPackingSafety(String packingSafety) { + public void setPackingSafety(int packingSafety) { this.packingSafety = packingSafety; } @@ -393,51 +417,51 @@ public class SharedViewModel extends ViewModel { this.packingImageList = packingImageList; } - public String getSubStoreSort() { + public int getSubStoreSort() { return subStoreSort; } - public void setSubStoreSort(String subStoreSort) { + public void setSubStoreSort(int subStoreSort) { this.subStoreSort = subStoreSort; } - public String getSubStoreSetInOrder() { + public int getSubStoreSetInOrder() { return subStoreSetInOrder; } - public void setSubStoreSetInOrder(String subStoreSetInOrder) { + public void setSubStoreSetInOrder(int subStoreSetInOrder) { this.subStoreSetInOrder = subStoreSetInOrder; } - public String getSubStoreShine() { + public int getSubStoreShine() { return subStoreShine; } - public void setSubStoreShine(String subStoreShine) { + public void setSubStoreShine(int subStoreShine) { this.subStoreShine = subStoreShine; } - public String getSubStoreStandardize() { + public int getSubStoreStandardize() { return subStoreStandardize; } - public void setSubStoreStandardize(String subStoreStandardize) { + public void setSubStoreStandardize(int subStoreStandardize) { this.subStoreStandardize = subStoreStandardize; } - public String getSubStoreSustain() { + public int getSubStoreSustain() { return subStoreSustain; } - public void setSubStoreSustain(String subStoreSustain) { + public void setSubStoreSustain(int subStoreSustain) { this.subStoreSustain = subStoreSustain; } - public String getSubStoreSafety() { + public int getSubStoreSafety() { return subStoreSafety; } - public void setSubStoreSafety(String subStoreSafety) { + public void setSubStoreSafety(int subStoreSafety) { this.subStoreSafety = subStoreSafety; } @@ -464,4 +488,28 @@ public class SharedViewModel extends ViewModel { public void setSubStoreImageList(ArrayList subStoreImageList) { this.subStoreImageList = subStoreImageList; } + + public List getLocationSiteList() { + return locationSiteList; + } + + public void setLocationSiteList(List locationSiteList) { + this.locationSiteList = locationSiteList; + } + + public List getDepartmentList() { + return departmentList; + } + + public void setDepartmentList(List departmentList) { + this.departmentList = departmentList; + } + + public List getFloorList() { + return floorList; + } + + public void setFloorList(List floorList) { + this.floorList = floorList; + } } diff --git a/app/src/main/res/drawable/dropdown_item_bg.xml b/app/src/main/res/drawable/dropdown_item_bg.xml new file mode 100644 index 0000000..16b011c --- /dev/null +++ b/app/src/main/res/drawable/dropdown_item_bg.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/et_border_dropdown.xml b/app/src/main/res/drawable/et_border_dropdown.xml new file mode 100644 index 0000000..d8998b5 --- /dev/null +++ b/app/src/main/res/drawable/et_border_dropdown.xml @@ -0,0 +1,8 @@ + + + + + diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragment_home.xml index e99d71a..4b32404 100644 --- a/app/src/main/res/layout/fragment_home.xml +++ b/app/src/main/res/layout/fragment_home.xml @@ -16,9 +16,57 @@ android:id="@+id/txt_current_date" android:layout_width="match_parent" android:layout_height="wrap_content" - android:textSize="@dimen/_16sdp" android:layout_margin="5dp" - android:padding="5dp" /> + android:padding="5dp" + android:textSize="@dimen/_16sdp" /> + + + + + + + + + + - - - - - - - + android:text="Next" /> \ No newline at end of file diff --git a/app/src/main/res/layout/item_recycler_view.xml b/app/src/main/res/layout/item_recycler_view.xml index 051dd94..5f4e499 100644 --- a/app/src/main/res/layout/item_recycler_view.xml +++ b/app/src/main/res/layout/item_recycler_view.xml @@ -4,7 +4,8 @@ android:layout_height="wrap_content" android:orientation="horizontal" android:weightSum="1" - android:padding="8dp"> + android:background="@drawable/et_border_dropdown" + android:padding="10dp"> + + \ No newline at end of file