diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 461987f..4a6f9bb 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -30,6 +30,8 @@ android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/Theme.HSEObservationsApp" + android:allowClearUserData="true" + android:usesCleartextTraffic="true" tools:targetApi="31"> obClassArrayList = new ArrayList<>(); + private ArrayList obClassArrayList = new ArrayList<>(); private Button btnSubmit; ImageView imgBack; @@ -88,9 +89,9 @@ public class ObservationNearMissActivity extends AppCompatActivity { imgBack = findViewById(R.id.img_back); etDescription = findViewById(R.id.et_description); - obClassArrayList.add(new Shift(1, "Option 1")); + /*obClassArrayList.add(new Shift(1, "Option 1")); obClassArrayList.add(new Shift(2, "Option 2")); - obClassArrayList.add(new Shift(3, "Option 3")); + obClassArrayList.add(new Shift(3, "Option 3"));*/ observationClassAdapter = new ObservationClassAdapter(this, obClassArrayList); observationTextview.setAdapter(observationClassAdapter); diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/activities/ObservationForms/ObservationOneActivity.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/activities/ObservationForms/ObservationOneActivity.java index 683f053..e56da16 100644 --- a/app/src/main/java/com/utopiaindustries/hseobservationsapp/activities/ObservationForms/ObservationOneActivity.java +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/activities/ObservationForms/ObservationOneActivity.java @@ -2,6 +2,7 @@ package com.utopiaindustries.hseobservationsapp.activities.ObservationForms; import android.content.Intent; import android.os.Bundle; +import android.util.Log; import android.view.View; import android.widget.AdapterView; import android.widget.AutoCompleteTextView; @@ -19,9 +20,16 @@ import com.utopiaindustries.hseobservationsapp.R; import com.utopiaindustries.hseobservationsapp.adapters.ObservationClassAdapter; import com.utopiaindustries.hseobservationsapp.adapters.ObservationSubClassAdapter; import com.utopiaindustries.hseobservationsapp.adapters.ShiftAdapter; +import com.utopiaindustries.hseobservationsapp.helper.Helper; +import com.utopiaindustries.hseobservationsapp.models.HseData.HseObservationClass; +import com.utopiaindustries.hseobservationsapp.models.HseData.HseObservationSubClass; +import com.utopiaindustries.hseobservationsapp.models.HseData.Site; import com.utopiaindustries.hseobservationsapp.models.Shift; import java.util.ArrayList; +import java.util.List; +import java.util.Objects; +import java.util.stream.Collectors; public class ObservationOneActivity extends AppCompatActivity { @@ -29,14 +37,16 @@ public class ObservationOneActivity extends AppCompatActivity { private ObservationClassAdapter observationClassAdapter; private ObservationSubClassAdapter observationSubClassAdapter; - private ArrayList obClassArrayList = new ArrayList<>(); + private ArrayList obClassArrayList = new ArrayList<>(); - private ArrayList obSubClassArrayList = new ArrayList<>(); + private ArrayList obSubClassArrayList_temp = new ArrayList<>(); + private ArrayList obSubClassArrayList = new ArrayList<>(); private Button btnNext; ImageView imgBack; String observationClass = "", observationSubClass = ""; + int observationClassId = 0, observationSubClassId = 0; @Override protected void onCreate(Bundle savedInstanceState) { @@ -81,6 +91,30 @@ public class ObservationOneActivity extends AppCompatActivity { // Perform action when shiftTextview item is clicked //Toast.makeText(ObservationOneActivity.this, "Item clicked: " + obClassArrayList.get(position).getTitle(), Toast.LENGTH_SHORT).show(); observationClass = obClassArrayList.get(position).getTitle(); + HseObservationClass clickedItem = obClassArrayList.get(position); + + observationSubTextview.setText(null); + + Log.e("ob-Sub-Class: ",""+obSubClassArrayList_temp.size()); + if (!obSubClassArrayList_temp.isEmpty()) { + + List filteredUnitItems = obSubClassArrayList_temp.stream() + .filter(item -> Objects.equals(item.getObservationClassId(), clickedItem.getId())) + .collect(Collectors.toList()); + + Log.e("clickedItem.getId(): ",""+clickedItem.getId()); + Log.e("filteredUnitItems: ",""+filteredUnitItems.size()); + + for (int i = 0; i < obSubClassArrayList_temp.size(); i++) { + Log.e("Sub-Items: ",""+obSubClassArrayList_temp.get(i).getId()); + } + + obSubClassArrayList.clear(); + obSubClassArrayList.addAll(filteredUnitItems); + observationSubClassAdapter = new ObservationSubClassAdapter(ObservationOneActivity.this, filteredUnitItems); + observationSubTextview.setAdapter(observationSubClassAdapter); + + } } }); @@ -100,9 +134,8 @@ public class ObservationOneActivity extends AppCompatActivity { btnNext = findViewById(R.id.btn_next); imgBack = findViewById(R.id.img_back); - obClassArrayList.add(new Shift(1, "Unsafe Act")); - obClassArrayList.add(new Shift(2, "Unsafe Condition")); - obClassArrayList.add(new Shift(3, "Near Miss")); + obClassArrayList.addAll(Helper.getList(Helper.observationClass, this, HseObservationClass.class)); + obSubClassArrayList_temp.addAll(Helper.getList(Helper.observationSubClass, this, HseObservationSubClass.class)); observationClassAdapter = new ObservationClassAdapter(this, obClassArrayList); observationTextview.setAdapter(observationClassAdapter); @@ -111,8 +144,8 @@ public class ObservationOneActivity extends AppCompatActivity { //for Unsafe //for condition //never miss - observationSubClassAdapter = new ObservationSubClassAdapter(this, obSubClassArrayList); - observationSubTextview.setAdapter(observationSubClassAdapter); + //observationSubClassAdapter = new ObservationSubClassAdapter(this, obSubClassArrayList); + //observationSubTextview.setAdapter(observationSubClassAdapter); } public boolean isValidate() { diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/ObservationClassAdapter.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/ObservationClassAdapter.java index 9209b03..328681e 100644 --- a/app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/ObservationClassAdapter.java +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/ObservationClassAdapter.java @@ -8,16 +8,17 @@ import android.widget.ArrayAdapter; import android.widget.TextView; import com.utopiaindustries.hseobservationsapp.R; +import com.utopiaindustries.hseobservationsapp.models.HseData.HseObservationClass; import com.utopiaindustries.hseobservationsapp.models.Shift; import java.util.List; -public class ObservationClassAdapter extends ArrayAdapter { +public class ObservationClassAdapter extends ArrayAdapter { private final Context context; - private final List items; + private final List items; - public ObservationClassAdapter(Context context, List items) { + public ObservationClassAdapter(Context context, List items) { super(context, 0, items); this.context = context; this.items = items; @@ -29,7 +30,7 @@ public class ObservationClassAdapter extends ArrayAdapter { convertView = LayoutInflater.from(context).inflate(R.layout.list_items, parent, false); } - Shift item = items.get(position); + HseObservationClass item = items.get(position); TextView titleTextView = convertView.findViewById(R.id.item_text); diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/ObservationSubClassAdapter.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/ObservationSubClassAdapter.java index 284b923..97f15bd 100644 --- a/app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/ObservationSubClassAdapter.java +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/ObservationSubClassAdapter.java @@ -8,16 +8,17 @@ import android.widget.ArrayAdapter; import android.widget.TextView; import com.utopiaindustries.hseobservationsapp.R; +import com.utopiaindustries.hseobservationsapp.models.HseData.HseObservationSubClass; import com.utopiaindustries.hseobservationsapp.models.Shift; import java.util.List; -public class ObservationSubClassAdapter extends ArrayAdapter { +public class ObservationSubClassAdapter extends ArrayAdapter { private final Context context; - private final List items; + private final List items; - public ObservationSubClassAdapter(Context context, List items) { + public ObservationSubClassAdapter(Context context, List items) { super(context, 0, items); this.context = context; this.items = items; @@ -29,7 +30,7 @@ public class ObservationSubClassAdapter extends ArrayAdapter { convertView = LayoutInflater.from(context).inflate(R.layout.list_items, parent, false); } - Shift item = items.get(position); + HseObservationSubClass item = items.get(position); TextView titleTextView = convertView.findViewById(R.id.item_text); diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/RecordTypeAdapter.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/RecordTypeAdapter.java new file mode 100644 index 0000000..4153512 --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/RecordTypeAdapter.java @@ -0,0 +1,40 @@ +package com.utopiaindustries.hseobservationsapp.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.hseobservationsapp.R; +import com.utopiaindustries.hseobservationsapp.models.HseData.RecordType; + +import java.util.List; + +public class RecordTypeAdapter extends ArrayAdapter { + + private final Context context; + private final List items; + + public RecordTypeAdapter(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); + } + + RecordType 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/hseobservationsapp/adapters/FormTypeAdapter.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/SiteAdapter.java similarity index 71% rename from app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/FormTypeAdapter.java rename to app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/SiteAdapter.java index f060771..1360552 100644 --- a/app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/FormTypeAdapter.java +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/SiteAdapter.java @@ -8,17 +8,17 @@ import android.widget.ArrayAdapter; import android.widget.TextView; import com.utopiaindustries.hseobservationsapp.R; -import com.utopiaindustries.hseobservationsapp.models.FormType; -import com.utopiaindustries.hseobservationsapp.models.LocationSite; +import com.utopiaindustries.hseobservationsapp.models.HseData.Site; +import com.utopiaindustries.hseobservationsapp.models.Shift; import java.util.List; -public class FormTypeAdapter extends ArrayAdapter { +public class SiteAdapter extends ArrayAdapter { private final Context context; - private final List items; + private final List items; - public FormTypeAdapter(Context context, List items) { + public SiteAdapter(Context context, List items) { super(context, 0, items); this.context = context; this.items = items; @@ -30,7 +30,7 @@ public class FormTypeAdapter extends ArrayAdapter { convertView = LayoutInflater.from(context).inflate(R.layout.list_items, parent, false); } - FormType item = items.get(position); + Site item = items.get(position); TextView titleTextView = convertView.findViewById(R.id.item_text); diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/SupervisorAdapter.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/SupervisorAdapter.java new file mode 100644 index 0000000..6bb6975 --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/adapters/SupervisorAdapter.java @@ -0,0 +1,41 @@ +package com.utopiaindustries.hseobservationsapp.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.hseobservationsapp.R; +import com.utopiaindustries.hseobservationsapp.models.HseData.HseObservationClass; +import com.utopiaindustries.hseobservationsapp.models.HseData.Supervisor; + +import java.util.List; + +public class SupervisorAdapter extends ArrayAdapter { + + private final Context context; + private final List items; + + public SupervisorAdapter(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); + } + + Supervisor item = items.get(position); + + TextView titleTextView = convertView.findViewById(R.id.item_text); + + titleTextView.setText(item.getName()); + + return convertView; + } +} diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/apiservice/ApiService.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/apiservice/ApiService.java index 9e1c32d..719ff66 100644 --- a/app/src/main/java/com/utopiaindustries/hseobservationsapp/apiservice/ApiService.java +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/apiservice/ApiService.java @@ -1,5 +1,6 @@ package com.utopiaindustries.hseobservationsapp.apiservice; +import com.utopiaindustries.hseobservationsapp.models.HseData.HseResponse; import com.utopiaindustries.hseobservationsapp.models.QualityControl; import com.utopiaindustries.hseobservationsapp.models.QualityControlResponse; import com.utopiaindustries.hseobservationsapp.models.QualitySaveResponse; @@ -17,8 +18,8 @@ public interface ApiService { @Query("username") String username );*/ - @GET("rest/uic/quality-control/get-quality-control-data") - Call getQualityControlData(); + @GET("rest/uic/hse/get-hse-report-data") + Call getHseData(); @POST("rest/uic/quality-control/save-quality-control") diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/fragments/HomeFragment.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/fragments/HomeFragment.java index 97cda30..a3745e0 100644 --- a/app/src/main/java/com/utopiaindustries/hseobservationsapp/fragments/HomeFragment.java +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/fragments/HomeFragment.java @@ -7,6 +7,7 @@ import android.os.Bundle; import androidx.annotation.Nullable; import androidx.fragment.app.Fragment; +import androidx.lifecycle.ViewModelProvider; import android.view.LayoutInflater; import android.view.View; @@ -27,17 +28,26 @@ import com.utopiaindustries.hseobservationsapp.activities.OtherHSEActivityForms. import com.utopiaindustries.hseobservationsapp.activities.PermitToWorkForms.PermitOneActivity; import com.utopiaindustries.hseobservationsapp.activities.ProgressiveActivityForms.ProgressiveActivity; import com.utopiaindustries.hseobservationsapp.activities.WeeklyActivityForms.WeeklyFormOne; -import com.utopiaindustries.hseobservationsapp.adapters.FormTypeAdapter; +import com.utopiaindustries.hseobservationsapp.adapters.RecordTypeAdapter; import com.utopiaindustries.hseobservationsapp.adapters.ShiftAdapter; +import com.utopiaindustries.hseobservationsapp.adapters.SiteAdapter; +import com.utopiaindustries.hseobservationsapp.adapters.SupervisorAdapter; import com.utopiaindustries.hseobservationsapp.helper.Helper; import com.utopiaindustries.hseobservationsapp.helper.Preference; -import com.utopiaindustries.hseobservationsapp.models.FormType; +import com.utopiaindustries.hseobservationsapp.models.HseData.RecordType; +import com.utopiaindustries.hseobservationsapp.models.HseData.Site; +import com.utopiaindustries.hseobservationsapp.models.HseData.Supervisor; import com.utopiaindustries.hseobservationsapp.models.Shift; +import com.utopiaindustries.hseobservationsapp.utils.ProgressDialogFragment; +import com.utopiaindustries.hseobservationsapp.viewmodels.LoginViewModel; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; +import java.util.List; import java.util.Locale; +import java.util.Objects; +import java.util.stream.Collectors; public class HomeFragment extends Fragment { @@ -46,18 +56,29 @@ public class HomeFragment extends Fragment { private TextView txtUserName, txtDate; private ImageView imgCalendar; private Button btnNext; - private AutoCompleteTextView shiftTextview, formTextview; + private AutoCompleteTextView siteTextView, supervisorTextView, shiftTextview, formTextview; + + private SiteAdapter siteAdapter; + private ArrayList siteArrayList = new ArrayList<>(); + + private SupervisorAdapter supervisorAdapter; + private ArrayList supervisorArrayList_temp = new ArrayList<>(); + private ArrayList supervisorArrayList = new ArrayList<>(); private ShiftAdapter shiftAdapter; private ArrayList shiftArrayList = new ArrayList<>(); - private FormTypeAdapter formTypeAdapter; - private ArrayList formArrayList = new ArrayList<>(); + private RecordTypeAdapter recordTypeAdapter; + private List recordTypeArrayList = new ArrayList<>(); int selectedOption = 0; String userName = ""; + String siteName = ""; + String supervisorName = ""; String shiftName = ""; + LoginViewModel loginViewModel; + @Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -79,6 +100,29 @@ public class HomeFragment extends Fragment { } }); + siteTextView.setOnItemClickListener(new AdapterView.OnItemClickListener() { + @Override + public void onItemClick(AdapterView parent, View view, int position, long id) { + // Perform action when siteTextView item is clicked + //Toast.makeText(getActivity(), "Item clicked: " + siteArrayList.get(position).getTitle(), Toast.LENGTH_SHORT).show(); + siteName = siteArrayList.get(position).getTitle(); + Site clickedItem = siteArrayList.get(position); + supervisorTextView.setText(null); + + if (!supervisorArrayList_temp.isEmpty()) { + List filteredUnitItems = supervisorArrayList_temp.stream() + .filter(item -> Objects.equals(item.getSiteId(), clickedItem.getId())) + .collect(Collectors.toList()); + + supervisorArrayList.clear(); + supervisorArrayList.addAll(filteredUnitItems); + supervisorAdapter = new SupervisorAdapter(getActivity(), supervisorArrayList); + supervisorTextView.setAdapter(supervisorAdapter); + + } + } + }); + shiftTextview.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView parent, View view, int position, long id) { @@ -94,7 +138,7 @@ public class HomeFragment extends Fragment { public void onItemClick(AdapterView parent, View view, int position, long id) { // Perform action when formTextview item is clicked // Toast.makeText(getActivity(), "Item clicked: " + formArrayList.get(position).getTitle(), Toast.LENGTH_SHORT).show(); - selectedOption = formArrayList.get(position).getId(); + selectedOption = recordTypeArrayList.get(position).getId(); } }); @@ -148,28 +192,144 @@ public class HomeFragment extends Fragment { imgCalendar = view.findViewById(R.id.img_calendar); btnNext = view.findViewById(R.id.btn_next); + siteTextView = view.findViewById(R.id.site_textview); + supervisorTextView = view.findViewById(R.id.supervisor_textview); shiftTextview = view.findViewById(R.id.shift_textview); formTextview = view.findViewById(R.id.form_textview); userName = Preference.getMyStringPref(Helper.project_file, Helper.logInUser, getActivity()); + loginViewModel = new ViewModelProvider(getActivity()).get(LoginViewModel.class); + + loginViewModel.getLoadingState().observe(getActivity(), isLoading -> { + + if (isLoading != null && isLoading) { + showProgressDialog(); + } else { + dismissProgressDialog(); + } + }); + + loginViewModel.getErrorMessage().observe(getActivity(), errorResponse -> { + Toast.makeText(getActivity(), errorResponse, Toast.LENGTH_SHORT).show(); + }); + + loginViewModel.getUserLiveData().observe(getActivity(), qcResponse -> { + if (qcResponse != null) { + + if (!qcResponse.getSites().isEmpty()) { + + Helper.saveList(qcResponse.getSites(), Helper.homeSite, getActivity()); + siteArrayList.addAll(qcResponse.getSites()); + siteAdapter = new SiteAdapter(getActivity(), siteArrayList); + siteTextView.setAdapter(siteAdapter); + } + + if (!qcResponse.getRecordTypes().isEmpty()) { + + Helper.saveList(qcResponse.getRecordTypes(), Helper.recordType, getActivity()); + recordTypeArrayList.addAll(qcResponse.getRecordTypes()); + recordTypeAdapter = new RecordTypeAdapter(getActivity(), recordTypeArrayList); + formTextview.setAdapter(recordTypeAdapter); + } + + if (!qcResponse.getSupervisors().isEmpty()) { + + Helper.saveList(qcResponse.getSupervisors(), Helper.superVisor, getActivity()); + supervisorArrayList_temp.addAll(qcResponse.getSupervisors()); + } + + if (!qcResponse.getHseObservationClasses().isEmpty()) { + + Helper.saveList(qcResponse.getHseObservationClasses(), Helper.observationClass, getActivity()); + } + + if (!qcResponse.getHseObservationSubClasses().isEmpty()) { + + Helper.saveList(qcResponse.getHseObservationSubClasses(), Helper.observationSubClass, getActivity()); + } + + if (!qcResponse.getHseFloors().isEmpty()) { + + Helper.saveList(qcResponse.getHseFloors(), Helper.hseFloors, getActivity()); + } + + if (!qcResponse.getHseActivities().isEmpty()) { + + Helper.saveList(qcResponse.getHseActivities(), Helper.hseActivities, getActivity()); + } + + if (!qcResponse.getHseDepartment().isEmpty()) { + + Helper.saveList(qcResponse.getHseDepartment(), Helper.hseDepartment, getActivity()); + } + + if (!qcResponse.getHseIncidentTypes().isEmpty()) { + + Helper.saveList(qcResponse.getHseIncidentTypes(), Helper.hseIncidentTypes, getActivity()); + } + + if (!qcResponse.getHseInjuredBodyPart().isEmpty()) { + + Helper.saveList(qcResponse.getHseInjuredBodyPart(), Helper.hseInjuredBodyPart, getActivity()); + } + + if (!qcResponse.getHsePtwType().isEmpty()) { + + Helper.saveList(qcResponse.getHsePtwType(), Helper.hsePtwType, getActivity()); + } + + if (!qcResponse.getHseSafetyTrainingTopics().isEmpty()) { + + Helper.saveList(qcResponse.getHseSafetyTrainingTopics(), Helper.hseSafetyTrainingTopics, getActivity()); + } + + if (!qcResponse.getHseBuildings().isEmpty()) { + + Helper.saveList(qcResponse.getHseBuildings(), Helper.hseBuildings, getActivity()); + } + + if (!qcResponse.getHseInjuries().isEmpty()) { + + Helper.saveList(qcResponse.getHseInjuries(), Helper.hseInjuries, getActivity()); + } + + Preference.setMyStringPref(Helper.project_file, Helper.firstTimeApiCall, getActivity(), "true"); + + } else { + Toast.makeText(getActivity(), "Fetching Records Failed", Toast.LENGTH_SHORT).show(); + } + }); + + if (Preference.getMyStringPref(Helper.project_file, Helper.firstTimeApiCall, getActivity()).equalsIgnoreCase("false") || + Preference.getMyStringPref(Helper.project_file, Helper.firstTimeApiCall, getActivity()).equalsIgnoreCase("default")) { + loginViewModel.getHSEData(); + } + else { + + siteArrayList.clear(); + recordTypeArrayList.clear(); + siteArrayList.clear(); + supervisorArrayList_temp.clear(); + supervisorArrayList.clear(); + + siteArrayList.addAll(Helper.getList(Helper.homeSite, getActivity(), Site.class)); + siteAdapter = new SiteAdapter(getActivity(), siteArrayList); + siteTextView.setAdapter(siteAdapter); + + supervisorArrayList_temp.addAll(Helper.getList(Helper.superVisor, getActivity(), Supervisor.class)); + + recordTypeArrayList.addAll(Helper.getList(Helper.recordType, getActivity(), RecordType.class)); + recordTypeAdapter = new RecordTypeAdapter(getActivity(), recordTypeArrayList); + formTextview.setAdapter(recordTypeAdapter); + } + shiftArrayList.add(new Shift(1, "General Shift(08:00AM - 05:00PM)")); shiftArrayList.add(new Shift(2, "Evening Shift(12:00PM - 09:00PM)")); shiftArrayList.add(new Shift(3, "Night Shift(09:00PM - 06:00AM)")); shiftAdapter = new ShiftAdapter(getActivity(), shiftArrayList); shiftTextview.setAdapter(shiftAdapter); - - formArrayList.add(new FormType(1, "Observation Form")); - formArrayList.add(new FormType(2, "Permit To Work Form")); - formArrayList.add(new FormType(3, "HSE Training Form")); - formArrayList.add(new FormType(4, "Injury Record Form")); - formArrayList.add(new FormType(5, "Weekly Activities Form")); - formArrayList.add(new FormType(6, "Progressive Activities Form")); - formArrayList.add(new FormType(7, "Other HSE Form")); - - formTypeAdapter = new FormTypeAdapter(getActivity(), formArrayList); - formTextview.setAdapter(formTypeAdapter); } private void showDatePickerDialog(Context context) { @@ -216,4 +376,18 @@ public class HomeFragment extends Fragment { return returnValue; } + + public void showProgressDialog() { + ProgressDialogFragment progressDialog = new ProgressDialogFragment(); + progressDialog.setCancelable(false); + progressDialog.show(requireActivity().getSupportFragmentManager(), "progressDialog"); + } + + public void dismissProgressDialog() { + ProgressDialogFragment progressDialog = (ProgressDialogFragment) + requireActivity().getSupportFragmentManager().findFragmentByTag("progressDialog"); + if (progressDialog != null) { + progressDialog.dismiss(); + } + } } \ No newline at end of file diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/helper/Helper.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/helper/Helper.java index a015470..0cc9fb2 100644 --- a/app/src/main/java/com/utopiaindustries/hseobservationsapp/helper/Helper.java +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/helper/Helper.java @@ -31,6 +31,28 @@ public class Helper { public static final String logInUser = "LogInUser"; + public static final String firstTimeApiCall = "isFirstTimeApiCall"; + + public static final String homeSite = "Sites"; + public static final String superVisor = "SuperVisor"; + public static final String recordType = "RecordType"; + + public static final String observationClass = "observationClass"; + public static final String observationSubClass = "observationSubClass"; + + public static final String hseFloors = "hseFloors"; + public static final String hseActivities = "hseActivities"; + + public static final String hseDepartment = "hseDepartment"; + public static final String hseIncidentTypes = "hseIncidentTypes"; + public static final String hseInjuredBodyPart = "hseInjuredBodyPart"; + public static final String hsePtwType = "hsePtwType"; + + public static final String hseSafetyTrainingTopics = "hseSafetyTrainingTopics"; + public static final String hseBuildings = "hseBuildings"; + + public static final String hseInjuries = "hseInjuries"; + public static boolean isValidEmail(CharSequence target) { return !TextUtils.isEmpty(target) && android.util.Patterns.EMAIL_ADDRESS.matcher(target).matches(); } diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseActivity.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseActivity.java new file mode 100644 index 0000000..6a3e6d5 --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseActivity.java @@ -0,0 +1,32 @@ + +package com.utopiaindustries.hseobservationsapp.models.HseData; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class HseActivity { + + @SerializedName("id") + @Expose + private Integer id; + @SerializedName("title") + @Expose + private String title; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + +} diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseBuilding.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseBuilding.java new file mode 100644 index 0000000..b3d037d --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseBuilding.java @@ -0,0 +1,43 @@ + +package com.utopiaindustries.hseobservationsapp.models.HseData; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class HseBuilding { + + @SerializedName("id") + @Expose + private Integer id; + @SerializedName("siteId") + @Expose + private Integer siteId; + @SerializedName("title") + @Expose + private String title; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public Integer getSiteId() { + return siteId; + } + + public void setSiteId(Integer siteId) { + this.siteId = siteId; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + +} diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseDepartment.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseDepartment.java new file mode 100644 index 0000000..761f8ea --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseDepartment.java @@ -0,0 +1,43 @@ + +package com.utopiaindustries.hseobservationsapp.models.HseData; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class HseDepartment { + + @SerializedName("id") + @Expose + private Integer id; + @SerializedName("title") + @Expose + private String title; + @SerializedName("siteId") + @Expose + private Integer siteId; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public Integer getSiteId() { + return siteId; + } + + public void setSiteId(Integer siteId) { + this.siteId = siteId; + } + +} diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseFloor.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseFloor.java new file mode 100644 index 0000000..d284193 --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseFloor.java @@ -0,0 +1,43 @@ + +package com.utopiaindustries.hseobservationsapp.models.HseData; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class HseFloor { + + @SerializedName("id") + @Expose + private Integer id; + @SerializedName("siteId") + @Expose + private Integer siteId; + @SerializedName("title") + @Expose + private String title; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public Integer getSiteId() { + return siteId; + } + + public void setSiteId(Integer siteId) { + this.siteId = siteId; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + +} diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseIncidentType.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseIncidentType.java new file mode 100644 index 0000000..da410a8 --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseIncidentType.java @@ -0,0 +1,32 @@ + +package com.utopiaindustries.hseobservationsapp.models.HseData; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class HseIncidentType { + + @SerializedName("id") + @Expose + private Integer id; + @SerializedName("title") + @Expose + private String title; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + +} diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseInjuredBodyPart.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseInjuredBodyPart.java new file mode 100644 index 0000000..3a2a32e --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseInjuredBodyPart.java @@ -0,0 +1,32 @@ + +package com.utopiaindustries.hseobservationsapp.models.HseData; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class HseInjuredBodyPart { + + @SerializedName("id") + @Expose + private Integer id; + @SerializedName("title") + @Expose + private String title; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + +} diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseInjury.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseInjury.java new file mode 100644 index 0000000..32eb7d5 --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseInjury.java @@ -0,0 +1,43 @@ + +package com.utopiaindustries.hseobservationsapp.models.HseData; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class HseInjury { + + @SerializedName("id") + @Expose + private Integer id; + @SerializedName("incidentId") + @Expose + private Integer incidentId; + @SerializedName("title") + @Expose + private String title; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public Integer getIncidentId() { + return incidentId; + } + + public void setIncidentId(Integer incidentId) { + this.incidentId = incidentId; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + +} diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseObservationClass.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseObservationClass.java new file mode 100644 index 0000000..517e82b --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseObservationClass.java @@ -0,0 +1,37 @@ + +package com.utopiaindustries.hseobservationsapp.models.HseData; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class HseObservationClass { + + @SerializedName("id") + @Expose + private Integer id; + @SerializedName("title") + @Expose + private String title; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + @Override + public String toString() { + return title; + } + +} diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseObservationSubClass.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseObservationSubClass.java new file mode 100644 index 0000000..670fb08 --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseObservationSubClass.java @@ -0,0 +1,48 @@ + +package com.utopiaindustries.hseobservationsapp.models.HseData; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class HseObservationSubClass { + + @SerializedName("id") + @Expose + private Integer id; + @SerializedName("title") + @Expose + private String title; + @SerializedName("observationClassId") + @Expose + private Integer observationClassId; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public Integer getObservationClassId() { + return observationClassId; + } + + public void setObservationClassId(Integer observationClassId) { + this.observationClassId = observationClassId; + } + + @Override + public String toString() { + return title; + } + +} diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HsePtwType.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HsePtwType.java new file mode 100644 index 0000000..127256b --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HsePtwType.java @@ -0,0 +1,32 @@ + +package com.utopiaindustries.hseobservationsapp.models.HseData; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class HsePtwType { + + @SerializedName("id") + @Expose + private Integer id; + @SerializedName("title") + @Expose + private String title; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + +} diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseResponse.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseResponse.java new file mode 100644 index 0000000..886e227 --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseResponse.java @@ -0,0 +1,165 @@ + +package com.utopiaindustries.hseobservationsapp.models.HseData; + +import java.util.List; +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class HseResponse { + + @SerializedName("hseFloors") + @Expose + private List hseFloors; + @SerializedName("hseObservationSubClasses") + @Expose + private List hseObservationSubClasses; + @SerializedName("recordTypes") + @Expose + private List recordTypes; + @SerializedName("hseObservationClasses") + @Expose + private List hseObservationClasses; + @SerializedName("hseActivities") + @Expose + private List hseActivities; + @SerializedName("sites") + @Expose + private List sites; + @SerializedName("hseDepartment") + @Expose + private List hseDepartment; + @SerializedName("hseIncidentTypes") + @Expose + private List hseIncidentTypes; + @SerializedName("hseInjuredBodyPart") + @Expose + private List hseInjuredBodyPart; + @SerializedName("hsePtwType") + @Expose + private List hsePtwType; + @SerializedName("hseSafetyTrainingTopics") + @Expose + private List hseSafetyTrainingTopics; + @SerializedName("hseBuildings") + @Expose + private List hseBuildings; + @SerializedName("hseInjuries") + @Expose + private List hseInjuries; + @SerializedName("supervisors") + @Expose + private List supervisors; + + public List getHseFloors() { + return hseFloors; + } + + public void setHseFloors(List hseFloors) { + this.hseFloors = hseFloors; + } + + public List getHseObservationSubClasses() { + return hseObservationSubClasses; + } + + public void setHseObservationSubClasses(List hseObservationSubClasses) { + this.hseObservationSubClasses = hseObservationSubClasses; + } + + public List getRecordTypes() { + return recordTypes; + } + + public void setRecordTypes(List recordTypes) { + this.recordTypes = recordTypes; + } + + public List getHseObservationClasses() { + return hseObservationClasses; + } + + public void setHseObservationClasses(List hseObservationClasses) { + this.hseObservationClasses = hseObservationClasses; + } + + public List getHseActivities() { + return hseActivities; + } + + public void setHseActivities(List hseActivities) { + this.hseActivities = hseActivities; + } + + public List getSites() { + return sites; + } + + public void setSites(List sites) { + this.sites = sites; + } + + public List getHseDepartment() { + return hseDepartment; + } + + public void setHseDepartment(List hseDepartment) { + this.hseDepartment = hseDepartment; + } + + public List getHseIncidentTypes() { + return hseIncidentTypes; + } + + public void setHseIncidentTypes(List hseIncidentTypes) { + this.hseIncidentTypes = hseIncidentTypes; + } + + public List getHseInjuredBodyPart() { + return hseInjuredBodyPart; + } + + public void setHseInjuredBodyPart(List hseInjuredBodyPart) { + this.hseInjuredBodyPart = hseInjuredBodyPart; + } + + public List getHsePtwType() { + return hsePtwType; + } + + public void setHsePtwType(List hsePtwType) { + this.hsePtwType = hsePtwType; + } + + public List getHseSafetyTrainingTopics() { + return hseSafetyTrainingTopics; + } + + public void setHseSafetyTrainingTopics(List hseSafetyTrainingTopics) { + this.hseSafetyTrainingTopics = hseSafetyTrainingTopics; + } + + public List getHseBuildings() { + return hseBuildings; + } + + public void setHseBuildings(List hseBuildings) { + this.hseBuildings = hseBuildings; + } + + public List getHseInjuries() { + return hseInjuries; + } + + public void setHseInjuries(List hseInjuries) { + this.hseInjuries = hseInjuries; + } + + public List getSupervisors() { + return supervisors; + } + + public void setSupervisors(List supervisors) { + this.supervisors = supervisors; + } + +} diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseSafetyTrainingTopic.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseSafetyTrainingTopic.java new file mode 100644 index 0000000..9961a8d2 --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/HseSafetyTrainingTopic.java @@ -0,0 +1,32 @@ + +package com.utopiaindustries.hseobservationsapp.models.HseData; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class HseSafetyTrainingTopic { + + @SerializedName("id") + @Expose + private Integer id; + @SerializedName("title") + @Expose + private String title; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + +} diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/RecordType.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/RecordType.java new file mode 100644 index 0000000..3043d49 --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/RecordType.java @@ -0,0 +1,37 @@ + +package com.utopiaindustries.hseobservationsapp.models.HseData; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class RecordType { + + @SerializedName("id") + @Expose + private Integer id; + @SerializedName("title") + @Expose + private String title; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + @Override + public String toString() { + return title; + } + +} diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/Site.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/Site.java new file mode 100644 index 0000000..e492b4d --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/Site.java @@ -0,0 +1,81 @@ + +package com.utopiaindustries.hseobservationsapp.models.HseData; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class Site { + + @SerializedName("id") + @Expose + private Integer id; + @SerializedName("title") + @Expose + private String title; + @SerializedName("shortTitle") + @Expose + private String shortTitle; + @SerializedName("address") + @Expose + private String address; + @SerializedName("hasColony") + @Expose + private Boolean hasColony; + @SerializedName("units") + @Expose + private Object units; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getShortTitle() { + return shortTitle; + } + + public void setShortTitle(String shortTitle) { + this.shortTitle = shortTitle; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public Boolean getHasColony() { + return hasColony; + } + + public void setHasColony(Boolean hasColony) { + this.hasColony = hasColony; + } + + public Object getUnits() { + return units; + } + + public void setUnits(Object units) { + this.units = units; + } + + @Override + public String toString() { + return title; + } + +} diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/Supervisor.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/Supervisor.java new file mode 100644 index 0000000..81b2067 --- /dev/null +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/models/HseData/Supervisor.java @@ -0,0 +1,48 @@ + +package com.utopiaindustries.hseobservationsapp.models.HseData; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class Supervisor { + + @SerializedName("id") + @Expose + private Integer id; + @SerializedName("name") + @Expose + private String name; + @SerializedName("siteId") + @Expose + private Integer siteId; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Integer getSiteId() { + return siteId; + } + + public void setSiteId(Integer siteId) { + this.siteId = siteId; + } + + @Override + public String toString() { + return name; + } + +} diff --git a/app/src/main/java/com/utopiaindustries/hseobservationsapp/viewmodels/LoginViewModel.java b/app/src/main/java/com/utopiaindustries/hseobservationsapp/viewmodels/LoginViewModel.java index 13400ad..23792f8 100644 --- a/app/src/main/java/com/utopiaindustries/hseobservationsapp/viewmodels/LoginViewModel.java +++ b/app/src/main/java/com/utopiaindustries/hseobservationsapp/viewmodels/LoginViewModel.java @@ -7,6 +7,7 @@ import androidx.lifecycle.ViewModel; import com.utopiaindustries.hseobservationsapp.apiservice.ApiService; import com.utopiaindustries.hseobservationsapp.apiservice.ApiServiceFactory; +import com.utopiaindustries.hseobservationsapp.models.HseData.HseResponse; import com.utopiaindustries.hseobservationsapp.models.QualityControlResponse; import retrofit2.Call; @@ -15,7 +16,7 @@ import retrofit2.Response; public class LoginViewModel extends ViewModel { - private MutableLiveData userLiveData; + private MutableLiveData userLiveData; private MutableLiveData userLoginLiveData; private MutableLiveData errorLiveData; private MutableLiveData isLoading; @@ -29,7 +30,7 @@ public class LoginViewModel extends ViewModel { isLoading = new MutableLiveData<>(); } - public LiveData getUserLiveData() { + public LiveData getUserLiveData() { return userLiveData; } @@ -66,11 +67,35 @@ public class LoginViewModel extends ViewModel { }); } + public void getHSEData() { + isLoading.setValue(true); + apiService.getHseData().enqueue(new Callback() { + @Override + public void onResponse(Call call, Response response) { + + isLoading.setValue(false); + if (response.isSuccessful() && response.body() != null) { + //Log.e("onResponse: ", "Successful"); + userLiveData.setValue(response.body()); + } else { + errorLiveData.setValue(response.message()); + } + } + + @Override + public void onFailure(Call call, Throwable t) { + //Log.e("onResponse: ", "Fail"); + isLoading.setValue(false); + errorLiveData.setValue(t.getMessage()); + } + }); + } + public LiveData getLoginUser() { return userLoginLiveData; } - public LiveData getUser() { + public LiveData getUser() { return userLiveData; } diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragment_home.xml index 4df1d17..4308cb1 100644 --- a/app/src/main/res/layout/fragment_home.xml +++ b/app/src/main/res/layout/fragment_home.xml @@ -8,14 +8,14 @@ + android:layout_height="wrap_content"> - + android:layout_height="0dp" + android:layout_above="@+id/btn_next" + android:layout_below="@+id/txt_user_name"> - - - - - - - + android:padding="5dp"> - - - - + android:gravity="left" + android:layout_marginStart="5dp" + android:padding="5dp" + android:text="Date *" + android:textColor="@color/black" + android:textSize="@dimen/_13sdp" + android:textStyle="bold" /> - + - + - - + android:layout_marginTop="10dp" + android:layout_below="@+id/txt_date" + android:gravity="left" + android:padding="5dp" + android:text="Site Name *" + android:textColor="@color/black" + android:textSize="@dimen/_13sdp" + android:textStyle="bold" /> + + + + + + + + + + + + + + + + + + + + + + + + + + - + + +