From 365613be700e4edc181c2af70f08dcd5f1021d72 Mon Sep 17 00:00:00 2001
From: IbrahimSaeedPurdue
<54752803+IbrahimSaeedPurdue@users.noreply.github.com>
Date: Thu, 11 Feb 2021 00:51:01 -0500
Subject: [PATCH 01/17] feature/Basic inspection form UI
---
.idea/.name | 1 +
.idea/vcs.xml | 6 +
app/src/main/AndroidManifest.xml | 1 +
.../InspectionForm.java | 128 ++++++++++++++++++
.../home/HomeFragment.java | 10 ++
app/src/main/res/values/strings.xml | 2 +
6 files changed, 148 insertions(+)
create mode 100644 .idea/.name
create mode 100644 .idea/vcs.xml
create mode 100644 app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
diff --git a/.idea/.name b/.idea/.name
new file mode 100644
index 0000000..c6e7f40
--- /dev/null
+++ b/.idea/.name
@@ -0,0 +1 @@
+StormWaterUtilityAndroid
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..35eb1dd
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 5d437cc..1f7f4e7 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -20,6 +20,7 @@
+
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java b/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
new file mode 100644
index 0000000..d39429e
--- /dev/null
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
@@ -0,0 +1,128 @@
+package com.sf.stormwaterutilityandroid;
+
+import android.os.Bundle;
+import android.widget.Button;
+
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.recyclerview.widget.RecyclerView;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+import me.riddhimanadib.formmaster.FormBuilder;
+import me.riddhimanadib.formmaster.model.BaseFormElement;
+import me.riddhimanadib.formmaster.model.FormElementPickerDate;
+import me.riddhimanadib.formmaster.model.FormElementPickerMulti;
+import me.riddhimanadib.formmaster.model.FormElementPickerSingle;
+import me.riddhimanadib.formmaster.model.FormElementSwitch;
+import me.riddhimanadib.formmaster.model.FormElementTextEmail;
+import me.riddhimanadib.formmaster.model.FormElementTextMultiLine;
+import me.riddhimanadib.formmaster.model.FormElementTextPhone;
+import me.riddhimanadib.formmaster.model.FormElementTextSingleLine;
+import me.riddhimanadib.formmaster.model.FormHeader;
+
+public class InspectionForm extends AppCompatActivity {
+ private FormBuilder formBuilder;
+ private RecyclerView recyclerView;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_sample_fordm);
+ recyclerView = findViewById(R.id.recyclerView2);
+ setupForm();
+ }
+
+
+ private void setupForm() {
+ formBuilder = new FormBuilder(this, recyclerView);
+
+
+
+ FormElementTextSingleLine projectTextField = FormElementTextSingleLine.createInstance().setTitle("Project/Contact:").setHint("Enter text here");
+ FormElementTextSingleLine addressTextField = FormElementTextSingleLine.createInstance().setTitle("Address/Lot#(s):").setHint("Enter text here");
+ FormElementTextSingleLine inspectorTextField = FormElementTextSingleLine.createInstance().setTitle("Inspector:").setHint("Enter name here");
+ FormElementPickerDate dataInspectedDatePicker = FormElementPickerDate.createInstance().setTitle("Date Inspected:").setDateFormat("MMM dd, yyyy");
+
+
+ List typeOptions = new ArrayList<>(Arrays.asList(
+ "Routine Evaluation",
+ "Re-Inspection",
+ "Complaint Investigation",
+ "Entire Development",
+ "Individual Building Lot(s)"
+ ));
+ FormElementPickerSingle inspectionTypePickerSingle = FormElementPickerSingle.createInstance().setTitle("Inspection type:").setOptions(typeOptions).setPickerTitle("Pick inspection type");
+
+ FormElementSwitch projectRepPresentSwitch = FormElementSwitch.createInstance().setTitle("Project Representative Present?").setSwitchTexts("Yes", "No");
+
+ FormHeader stakeholdersHeader = FormHeader.createInstance("THE FOLLOWING INDIVIDUALS BECAME AWARE OF ANY ISSUES THOUGH DISCUSSION AND REVIEW OF FINDINGS ON THE DAY OF INSPECTION:");
+ FormElementTextSingleLine projectManagerTextField = FormElementTextSingleLine.createInstance().setTitle("Project Manager:").setHint("Enter name here");
+ FormElementTextSingleLine siteManagerTextField = FormElementTextSingleLine.createInstance().setTitle("Site Manager:").setHint("Enter name here");
+ FormElementTextSingleLine projectOwnerTextField = FormElementTextSingleLine.createInstance().setTitle("Project Owner").setHint("Enter name here");
+
+
+ FormHeader correctiveActionsHeader = FormHeader.createInstance("CORRECTIVE ACTIONS REQUIRED\n***REDER TO APPROVED STORM WATER POLLUTION PREVENTION PLAN (SWP3) FOR SPECIFICATIONS AND DETAILS ON ITEMS BELOW***");
+ List correctiveActionsOptions= new ArrayList<>(Arrays.asList(
+ "Post a laminated copy of completed 327IAC15-5 \"Rule 5\" NOI with permit number at a location visible to the public",
+ "Remove accumulated sediment from streets sidewalks and gutters (do not flush with water)",
+ "Install/maintain stable temporary construction entrances(s)", "Entire Development",
+ "Individual Building Lot(s)",
+ "Address silt fence issues which includes one or more of the following: Repair, install properly, Replace, Add (areas prone to sheet-flow erosion)",
+ "Install erosions and sediment control for individual building lot(s) as specified in the approved SWP3",
+ "Install check dam(s) according to specifications",
+ "Utilize appropriate construction sequence as specified in the approved SWP3",
+ "Remove sediment from one or more of the following: sediment traps, behind check dams, around storm drain inlets or/and other",
+ "Inform Contractors, subcontractors, material vendors, and others or erosion and sediment control requirements",
+ "Provide copy and self-monitoring inspection records to MS Coordinator within 48 hours",
+ "Acquire copy of Storm Water Pollution Prevention Plan and retain on project site for reference"
+ ));
+ FormElementPickerMulti correctiveActionsPickerMulti = FormElementPickerMulti.createInstance().setTitle("Corrective Actions").setOptions(correctiveActionsOptions).setPickerTitle("Pick corrective action");
+
+ FormElementTextMultiLine otherCorrectiveAction1TextField = FormElementTextMultiLine.createInstance().setTitle("Other 1:").setHint("Enter text here");
+ FormElementTextMultiLine otherCorrectiveAction2TextField = FormElementTextMultiLine.createInstance().setTitle("Other 2:").setHint("Enter text here");
+ FormElementTextMultiLine otherCorrectiveAction3TextField = FormElementTextMultiLine.createInstance().setTitle("Other 3:").setHint("Enter text here");
+
+
+ FormHeader enforcementActionHeader = FormHeader.createInstance("ENFORCEMENT ACTIONS");
+ List enforcementActionOptions = new ArrayList<>(Arrays.asList(
+ "Notice of Violation Issued",
+ "Stop Work Order Issued",
+ "Fine(s) Issued",
+ "Other"
+ ));
+ FormElementPickerSingle enforcementActionPickerSingle = FormElementPickerSingle.createInstance().setTitle("Inspection type:").setOptions(enforcementActionOptions).setPickerTitle("Pick inspection type");
+
+ FormElementTextMultiLine evidenceTextField = FormElementTextMultiLine.createInstance().setTitle("Evidence of off-site sediment/pollutants.\nHere is a description of type and location:").setHint("Enter text here");
+
+ List formItems = new ArrayList<>();
+
+ formItems.add(projectTextField);
+ formItems.add(addressTextField);
+ formItems.add(inspectorTextField);
+ formItems.add(dataInspectedDatePicker);
+
+ formItems.add(inspectionTypePickerSingle);
+ formItems.add(projectRepPresentSwitch);
+
+ formItems.add(stakeholdersHeader);
+ formItems.add(projectManagerTextField);
+ formItems.add(siteManagerTextField);
+ formItems.add(projectOwnerTextField);
+
+ formItems.add(correctiveActionsHeader);
+ formItems.add(correctiveActionsPickerMulti);
+ formItems.add(otherCorrectiveAction1TextField);
+ formItems.add(otherCorrectiveAction2TextField);
+ formItems.add(otherCorrectiveAction3TextField);
+
+ formItems.add(enforcementActionHeader);
+ formItems.add(enforcementActionPickerSingle);
+
+ formItems.add(evidenceTextField);
+
+ formBuilder.addFormElements(formItems);
+
+ }
+}
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/home/HomeFragment.java b/app/src/main/java/com/sf/stormwaterutilityandroid/home/HomeFragment.java
index 7809a22..75b11d9 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/home/HomeFragment.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/home/HomeFragment.java
@@ -10,6 +10,7 @@
import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;
+import com.sf.stormwaterutilityandroid.InspectionForm;
import com.sf.stormwaterutilityandroid.R;
import com.sf.stormwaterutilityandroid.SampleFordm;
@@ -31,6 +32,15 @@ public void onClick(View view) {
}
});
+ b1 = root.findViewById(R.id.button2);
+ b1.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ startActivity(new Intent(getContext(), InspectionForm.class));
+ }
+ });
+
+
//CHeck To5a.03 project for dealing saved instance state
/*
if (savedInstanceState != null) {
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 85a4fdb..381a669 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -46,4 +46,6 @@
Registered Successfully! An email has been sent to verify your email; this must be done before logging in.
Sign in
+
+
\ No newline at end of file
From 4172104d7214222225be38b84eb11abfcb5feca7 Mon Sep 17 00:00:00 2001
From: IbrahimSaeedPurdue
<54752803+IbrahimSaeedPurdue@users.noreply.github.com>
Date: Thu, 11 Feb 2021 16:24:02 -0500
Subject: [PATCH 02/17] feature/added submit button listener
---
.../stormwaterutilityandroid/InspectionForm.java | 16 +++++++++++++---
1 file changed, 13 insertions(+), 3 deletions(-)
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java b/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
index d39429e..0098a52 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
@@ -1,6 +1,7 @@
package com.sf.stormwaterutilityandroid;
import android.os.Bundle;
+import android.view.View;
import android.widget.Button;
import androidx.appcompat.app.AppCompatActivity;
@@ -31,6 +32,7 @@ protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sample_fordm);
recyclerView = findViewById(R.id.recyclerView2);
+
setupForm();
}
@@ -38,8 +40,6 @@ protected void onCreate(Bundle savedInstanceState) {
private void setupForm() {
formBuilder = new FormBuilder(this, recyclerView);
-
-
FormElementTextSingleLine projectTextField = FormElementTextSingleLine.createInstance().setTitle("Project/Contact:").setHint("Enter text here");
FormElementTextSingleLine addressTextField = FormElementTextSingleLine.createInstance().setTitle("Address/Lot#(s):").setHint("Enter text here");
FormElementTextSingleLine inspectorTextField = FormElementTextSingleLine.createInstance().setTitle("Inspector:").setHint("Enter name here");
@@ -96,6 +96,15 @@ private void setupForm() {
FormElementTextMultiLine evidenceTextField = FormElementTextMultiLine.createInstance().setTitle("Evidence of off-site sediment/pollutants.\nHere is a description of type and location:").setHint("Enter text here");
+ Button submitButton = new Button(getApplicationContext());
+ submitButton.setText("Submit");
+ submitButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+
+ }
+ });
+
List formItems = new ArrayList<>();
formItems.add(projectTextField);
@@ -122,7 +131,8 @@ private void setupForm() {
formItems.add(evidenceTextField);
- formBuilder.addFormElements(formItems);
+ formBuilder.addFormElements(formItems);
+ recyclerView.addView(submitButton);
}
}
From 042f8d49b2b873f8a2dad67a0930a996d8f2057c Mon Sep 17 00:00:00 2001
From: IbrahimSaeedPurdue
<54752803+IbrahimSaeedPurdue@users.noreply.github.com>
Date: Wed, 3 Mar 2021 15:59:14 -0500
Subject: [PATCH 03/17] feature/created constructionFormData class and
populated it in actionListener
---
.../InspectionForm.java | 160 +++++++++++++-----
1 file changed, 113 insertions(+), 47 deletions(-)
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java b/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
index d4b0d62..975ca71 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
@@ -9,6 +9,7 @@
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Date;
import java.util.List;
import me.riddhimanadib.formmaster.FormBuilder;
@@ -17,9 +18,7 @@
import me.riddhimanadib.formmaster.model.FormElementPickerMulti;
import me.riddhimanadib.formmaster.model.FormElementPickerSingle;
import me.riddhimanadib.formmaster.model.FormElementSwitch;
-import me.riddhimanadib.formmaster.model.FormElementTextEmail;
import me.riddhimanadib.formmaster.model.FormElementTextMultiLine;
-import me.riddhimanadib.formmaster.model.FormElementTextPhone;
import me.riddhimanadib.formmaster.model.FormElementTextSingleLine;
import me.riddhimanadib.formmaster.model.FormHeader;
@@ -105,49 +104,6 @@ private void setupForm() {
FormElementTextMultiLine evidenceTextField = FormElementTextMultiLine.createInstance().setTitle("Evidence of off-site sediment/pollutants.\nHere is a description of type and location:").setHint("Enter text here");
- submitButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- System.out.println("HELLO");
- String projectContact = projectTextField.getValue();
- String address = addressTextField.getValue();
- String inspector = inspectorTextField.getValue();
- String dateInspected = dateInspectedDatePicker.getValue();
-
- boolean projectRepPresent = getSwitchBool(projectRepPresentSwitch.getValue());
-
- String projectManager = projectManagerTextField.getValue();
- String siteManager = siteManagerTextField.getValue();
- String projectOwner = projectOwnerTextField.getValue();
-
- boolean correctiveAction1 = getSwitchBool(correctiveAction1Switch.getValue());
- boolean correctiveAction2 = getSwitchBool(correctiveAction2Switch.getValue());
- boolean correctiveAction3 = getSwitchBool(correctiveAction3Switch.getValue());
- boolean correctiveAction4 = getSwitchBool(correctiveAction4Switch.getValue());
-
- List correctiveAction5 = correctiveAction5Multi.getOptionsSelected();
-
- boolean correctiveAction6 = getSwitchBool(correctiveAction6Switch.getValue());
- boolean correctiveAction7 = getSwitchBool(correctiveAction6Switch.getValue());
- boolean correctiveAction8 = getSwitchBool(correctiveAction8Switch.getValue());
- boolean correctiveAction9 = getSwitchBool(correctiveAction9Switch.getValue());
-
- String correctiveAction10 = correctiveAction10Multi.getValue();
-
- String otherCorrectiveAction1 = otherCorrectiveAction1TextField.getValue();
- String otherCorrectiveAction2 = otherCorrectiveAction2TextField.getValue();
- String otherCorrectiveAction3 = otherCorrectiveAction3TextField.getValue();
-
- List enforcementAction = enforcementActionPickerSingle.getOptionsSelected();
-
- String evidence = evidenceTextField.getValue();
-
-
- }
- });
-
-
-
List formItems = new ArrayList<>();
formItems.add(projectTextField);
@@ -192,13 +148,123 @@ public void onClick(View view) {
formItems.add(evidenceTextField);
-
+ // populate formBuilder with items
formBuilder.addFormElements(formItems);
+ // onSubmit
+ submitButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ String contact = projectTextField.getValue();
+ String location = addressTextField.getValue();
+ String inspector = inspectorTextField.getValue();
+ String date = dateInspectedDatePicker.getValue();
+
+ ArrayList answersList = new ArrayList<>(20);
+
+ boolean projectRepPresent = getSwitchBool(projectRepPresentSwitch.getValue());
+ answersList.add(projectRepPresent + "");
+
+ String projectManager = projectManagerTextField.getValue();
+ String siteManager = siteManagerTextField.getValue();
+ String projectOwner = projectOwnerTextField.getValue();
+ answersList.add(projectManager);
+ answersList.add(siteManager);
+ answersList.add(projectOwner);
+
+ boolean correctiveAction1 = getSwitchBool(correctiveAction1Switch.getValue());
+ boolean correctiveAction2 = getSwitchBool(correctiveAction2Switch.getValue());
+ boolean correctiveAction3 = getSwitchBool(correctiveAction3Switch.getValue());
+ boolean correctiveAction4 = getSwitchBool(correctiveAction4Switch.getValue());
+ answersList.add(correctiveAction1 + "");
+ answersList.add(correctiveAction2 + "");
+ answersList.add(correctiveAction3 + "");
+ answersList.add(correctiveAction4 + "");
+
+ List correctiveAction5 = correctiveAction5Multi.getOptionsSelected();
+ answersList.addAll(correctiveAction5);
+
+ boolean correctiveAction6 = getSwitchBool(correctiveAction6Switch.getValue());
+ boolean correctiveAction7 = getSwitchBool(correctiveAction6Switch.getValue());
+ boolean correctiveAction8 = getSwitchBool(correctiveAction8Switch.getValue());
+ boolean correctiveAction9 = getSwitchBool(correctiveAction9Switch.getValue());
+ answersList.add(correctiveAction6 + "");
+ answersList.add(correctiveAction7 + "");
+ answersList.add(correctiveAction8 + "");
+ answersList.add(correctiveAction9 + "");
+
+ String correctiveAction10 = correctiveAction10Multi.getValue();
+ answersList.add(correctiveAction10);
+
+ String otherCorrectiveAction1 = otherCorrectiveAction1TextField.getValue();
+ String otherCorrectiveAction2 = otherCorrectiveAction2TextField.getValue();
+ String otherCorrectiveAction3 = otherCorrectiveAction3TextField.getValue();
+ answersList.add(otherCorrectiveAction1);
+ answersList.add(otherCorrectiveAction2);
+ answersList.add(otherCorrectiveAction3);
+
+
+ List enforcementAction = enforcementActionPickerSingle.getOptionsSelected();
+ answersList.addAll(enforcementAction);
+
+ String[] imgLink = new String[]{evidenceTextField.getValue()};
+
+
+ String[] answers = answersList.toArray(new String[0]);
+ // System.out.println(Arrays.toString(answers));
+ ConstructionFormData constructionFormData = new ConstructionFormData(contact, date, inspector, location, answers, imgLink);
+ System.out.println(constructionFormData);
+ }
+ });
+
+
+
+
}
- public boolean getSwitchBool(String value) {
+ private boolean getSwitchBool(String value) {
if (value.equals("yes")) return true;
return false;
}
+
+ private class ConstructionFormData {
+ String contact = "";
+ String date = "";
+ String inspector = "";
+ String location = "";
+ String[] answers;
+
+ // SortTimeStamp set in constructor
+ Date SortTimeStamp;
+
+ String[] imgLink;
+
+ public ConstructionFormData(String contact, String date, String inspector,
+ String location, String[] answers, String[] imgLink) {
+ this.contact = contact;
+ this.date = date;
+ this.inspector = inspector;
+ this.location = location;
+ this.answers = answers;
+
+ this.SortTimeStamp = new Date(System.currentTimeMillis());
+
+ this.answers = answers;
+ }
+
+
+
+ @Override
+ public String toString() {
+ return "ConstructionFormData{" +
+ "contact=" + contact + '\n' +
+ ", date=" + date + '\n' +
+ ", inspector=" + inspector + '\n' +
+ ", location=" + location + '\n' +
+ ", answers=" + Arrays.toString(answers) + "\n" +
+ ", SortTimeStamp=" + SortTimeStamp + "\n" +
+ ", imgLink=" + Arrays.toString(imgLink) + "\n" +
+ '}';
+ }
+ }
}
From 9c2ca342bfad444cc7e10593ae4d1b96f08be75d Mon Sep 17 00:00:00 2001
From: IbrahimSaeedPurdue
<54752803+IbrahimSaeedPurdue@users.noreply.github.com>
Date: Thu, 4 Mar 2021 14:44:24 -0500
Subject: [PATCH 04/17] feature/added FireStore functionality feature/update
form to take in title/Strings of switches rather booleans (as strings)
---
app/build.gradle | 1 +
app/google-services.json | 39 +++++
.../InspectionForm.java | 150 +++++++++++-------
build.gradle | 1 +
4 files changed, 132 insertions(+), 59 deletions(-)
create mode 100644 app/google-services.json
diff --git a/app/build.gradle b/app/build.gradle
index 19093dd..eea8c58 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,5 +1,6 @@
plugins {
id 'com.android.application'
+ id 'com.google.gms.google-services'
}
android {
diff --git a/app/google-services.json b/app/google-services.json
new file mode 100644
index 0000000..50b3497
--- /dev/null
+++ b/app/google-services.json
@@ -0,0 +1,39 @@
+{
+ "project_info": {
+ "project_number": "715047227500",
+ "project_id": "auth-test-978bd",
+ "storage_bucket": "auth-test-978bd.appspot.com"
+ },
+ "client": [
+ {
+ "client_info": {
+ "mobilesdk_app_id": "1:715047227500:android:6d404969351cf9a715c849",
+ "android_client_info": {
+ "package_name": "com.sf.stormwaterutilityandroid"
+ }
+ },
+ "oauth_client": [
+ {
+ "client_id": "715047227500-l993hj8oukroedqgtmuecookfmhjp1co.apps.googleusercontent.com",
+ "client_type": 3
+ }
+ ],
+ "api_key": [
+ {
+ "current_key": "AIzaSyDdVIxvfzkh1W0PCJ985hizZLthG6MrjJc"
+ }
+ ],
+ "services": {
+ "appinvite_service": {
+ "other_platform_oauth_client": [
+ {
+ "client_id": "715047227500-l993hj8oukroedqgtmuecookfmhjp1co.apps.googleusercontent.com",
+ "client_type": 3
+ }
+ ]
+ }
+ }
+ }
+ ],
+ "configuration_version": "1"
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java b/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
index 975ca71..a9f8580 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
@@ -4,13 +4,20 @@
import android.view.View;
import android.widget.Button;
+import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.RecyclerView;
+import com.google.android.gms.tasks.OnFailureListener;
+import com.google.android.gms.tasks.OnSuccessListener;
+import com.google.firebase.firestore.DocumentReference;
+import com.google.firebase.firestore.FirebaseFirestore;
+
import java.util.ArrayList;
import java.util.Arrays;
-import java.util.Date;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import me.riddhimanadib.formmaster.FormBuilder;
import me.riddhimanadib.formmaster.model.BaseFormElement;
@@ -162,8 +169,8 @@ public void onClick(View view) {
ArrayList answersList = new ArrayList<>(20);
- boolean projectRepPresent = getSwitchBool(projectRepPresentSwitch.getValue());
- answersList.add(projectRepPresent + "");
+ String projectRepPresent = getSwitchString(projectRepPresentSwitch);
+ answersList.add(projectRepPresent);
String projectManager = projectManagerTextField.getValue();
String siteManager = siteManagerTextField.getValue();
@@ -172,26 +179,26 @@ public void onClick(View view) {
answersList.add(siteManager);
answersList.add(projectOwner);
- boolean correctiveAction1 = getSwitchBool(correctiveAction1Switch.getValue());
- boolean correctiveAction2 = getSwitchBool(correctiveAction2Switch.getValue());
- boolean correctiveAction3 = getSwitchBool(correctiveAction3Switch.getValue());
- boolean correctiveAction4 = getSwitchBool(correctiveAction4Switch.getValue());
- answersList.add(correctiveAction1 + "");
- answersList.add(correctiveAction2 + "");
- answersList.add(correctiveAction3 + "");
- answersList.add(correctiveAction4 + "");
+ String correctiveAction1 = getSwitchString(correctiveAction1Switch);
+ String correctiveAction2 = getSwitchString(correctiveAction2Switch);
+ String correctiveAction3 = getSwitchString(correctiveAction3Switch);
+ String correctiveAction4 = getSwitchString(correctiveAction4Switch);
+ answersList.add(correctiveAction1);
+ answersList.add(correctiveAction2);
+ answersList.add(correctiveAction3);
+ answersList.add(correctiveAction4);
List correctiveAction5 = correctiveAction5Multi.getOptionsSelected();
answersList.addAll(correctiveAction5);
- boolean correctiveAction6 = getSwitchBool(correctiveAction6Switch.getValue());
- boolean correctiveAction7 = getSwitchBool(correctiveAction6Switch.getValue());
- boolean correctiveAction8 = getSwitchBool(correctiveAction8Switch.getValue());
- boolean correctiveAction9 = getSwitchBool(correctiveAction9Switch.getValue());
- answersList.add(correctiveAction6 + "");
- answersList.add(correctiveAction7 + "");
- answersList.add(correctiveAction8 + "");
- answersList.add(correctiveAction9 + "");
+ String correctiveAction6 = getSwitchString(correctiveAction6Switch);
+ String correctiveAction7 = getSwitchString(correctiveAction6Switch);
+ String correctiveAction8 = getSwitchString(correctiveAction8Switch);
+ String correctiveAction9 = getSwitchString(correctiveAction9Switch);
+ answersList.add(correctiveAction6);
+ answersList.add(correctiveAction7);
+ answersList.add(correctiveAction8);
+ answersList.add(correctiveAction9);
String correctiveAction10 = correctiveAction10Multi.getValue();
answersList.add(correctiveAction10);
@@ -207,64 +214,89 @@ public void onClick(View view) {
List enforcementAction = enforcementActionPickerSingle.getOptionsSelected();
answersList.addAll(enforcementAction);
- String[] imgLink = new String[]{evidenceTextField.getValue()};
+ String imgLink = new String(evidenceTextField.getValue());
String[] answers = answersList.toArray(new String[0]);
- // System.out.println(Arrays.toString(answers));
- ConstructionFormData constructionFormData = new ConstructionFormData(contact, date, inspector, location, answers, imgLink);
- System.out.println(constructionFormData);
+ ConstructionFormData constructionFormData = new ConstructionFormData(contact, date, inspector, location, answersList, imgLink);
+
+ FirebaseFirestore db = FirebaseFirestore.getInstance();
+ db.collection("ConstructionSiteForm")
+ .add(constructionFormData.getMap())
+ .addOnSuccessListener(new OnSuccessListener() {
+ @Override
+ public void onSuccess(DocumentReference documentReference) {
+ System.out.println("ibra SUCCESSFUL - FIRESTORE");
+ }
+ })
+ .addOnFailureListener(new OnFailureListener() {
+ @Override
+ public void onFailure(@NonNull Exception e) {
+ System.out.println("ibra SUCCESSFUL - ERROR/FAILED: " + e);
+ }
+ });
+
+ // System.out.println(constructionFormData);
}
});
-
-
}
- private boolean getSwitchBool(String value) {
- if (value.equals("yes")) return true;
- return false;
+ private String getSwitchString(FormElementSwitch switchElement) {
+ System.out.println(switchElement.getValue());
+ if (switchElement.getValue().equals("Yes")) return switchElement.getTitle();
+ return "";
}
private class ConstructionFormData {
- String contact = "";
- String date = "";
- String inspector = "";
- String location = "";
- String[] answers;
-
+// String contact = "";
+// String date = "";
+// String inspector = "";
+// String location = "";
+// String[] answers;
// SortTimeStamp set in constructor
- Date SortTimeStamp;
+// Date SortTimeStamp;
+//
+// String[] imgLink;
- String[] imgLink;
+ Map data = new HashMap<>();
public ConstructionFormData(String contact, String date, String inspector,
- String location, String[] answers, String[] imgLink) {
- this.contact = contact;
- this.date = date;
- this.inspector = inspector;
- this.location = location;
- this.answers = answers;
-
- this.SortTimeStamp = new Date(System.currentTimeMillis());
-
- this.answers = answers;
+ String location, List answers, String imgLink) {
+ data.put("contact", contact);
+ data.put("date", date);
+ data.put("inspector", inspector);
+ data.put("location", location);
+ data.put("answers", answers);
+ data.put("imgLink", imgLink);
+
+// this.contact = contact;
+// this.date = date;
+// this.inspector = inspector;
+// this.location = location;
+// this.answers = answers;
+//
+// this.SortTimeStamp = new Date(System.currentTimeMillis());
+//
+// this.answers = answers;
}
-
-
- @Override
- public String toString() {
- return "ConstructionFormData{" +
- "contact=" + contact + '\n' +
- ", date=" + date + '\n' +
- ", inspector=" + inspector + '\n' +
- ", location=" + location + '\n' +
- ", answers=" + Arrays.toString(answers) + "\n" +
- ", SortTimeStamp=" + SortTimeStamp + "\n" +
- ", imgLink=" + Arrays.toString(imgLink) + "\n" +
- '}';
+ public Map getMap() {
+ return data;
}
+
+// @Override
+// public String toString() {
+// return "ConstructionFormData{" +
+// "contact=" + contact + '\n' +
+// ", date=" + date + '\n' +
+// ", inspector=" + inspector + '\n' +
+// ", location=" + location + '\n' +
+// ", answers=" + Arrays.toString(answers) + "\n" +
+// ", SortTimeStamp=" + SortTimeStamp + "\n" +
+// ", imgLink=" + Arrays.toString(imgLink) + "\n" +
+// '}';
+// }
}
}
diff --git a/build.gradle b/build.gradle
index 4d24be2..6a4ea19 100644
--- a/build.gradle
+++ b/build.gradle
@@ -6,6 +6,7 @@ buildscript {
}
dependencies {
classpath "com.android.tools.build:gradle:4.1.1"
+ classpath 'com.google.gms:google-services:4.3.5'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
From 5af5a1cbb00127166a16ed9a21b07b34b21f7335 Mon Sep 17 00:00:00 2001
From: IbrahimSaeedPurdue
<54752803+IbrahimSaeedPurdue@users.noreply.github.com>
Date: Thu, 4 Mar 2021 16:43:06 -0500
Subject: [PATCH 05/17] refactor/made ConstructionFormData.java into a public
class refactor/answer switches (in List answers) give "true"/"false"
in firebase refactor/clean up all comments and unused code
---
.../ConstructionFormData.java | 40 ++++++
.../InspectionForm.java | 120 ++++++------------
2 files changed, 76 insertions(+), 84 deletions(-)
create mode 100644 app/src/main/java/com/sf/stormwaterutilityandroid/ConstructionFormData.java
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/ConstructionFormData.java b/app/src/main/java/com/sf/stormwaterutilityandroid/ConstructionFormData.java
new file mode 100644
index 0000000..a66ec46
--- /dev/null
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/ConstructionFormData.java
@@ -0,0 +1,40 @@
+package com.sf.stormwaterutilityandroid;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+public class ConstructionFormData {
+ private Map data;
+ // String contact
+ // String date
+ // String inspector
+ // String location
+
+ // (they are lists because firebase doesn't serialize arrays)
+ // List answers
+ // List imgLink
+
+ public ConstructionFormData(String contact, String date, String inspector,
+ String location, List answers, List imgLink) {
+ data = new HashMap<>();
+ data.put("contact", contact);
+ data.put("date", date);
+ data.put("inspector", inspector);
+ data.put("location", location);
+ data.put("answers", answers);
+ data.put("imgLink", imgLink);
+ }
+
+ public Map getMap() {
+ return data;
+ }
+
+ @Override
+ public String toString() {
+ return "ConstructionFormData{" +
+ "data=" + data +
+ '}';
+ }
+
+}
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java b/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
index a9f8580..f8a16f1 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
@@ -15,9 +15,7 @@
import java.util.ArrayList;
import java.util.Arrays;
-import java.util.HashMap;
import java.util.List;
-import java.util.Map;
import me.riddhimanadib.formmaster.FormBuilder;
import me.riddhimanadib.formmaster.model.BaseFormElement;
@@ -45,6 +43,23 @@ protected void onCreate(Bundle savedInstanceState) {
setupForm();
}
+ private void uploadToFirestore(ConstructionFormData constructionFormData) {
+ FirebaseFirestore db = FirebaseFirestore.getInstance();
+ db.collection("ConstructionSiteForm")
+ .add(constructionFormData.getMap())
+ .addOnSuccessListener(new OnSuccessListener() {
+ @Override
+ public void onSuccess(DocumentReference documentReference) {
+ System.out.println("SUCCESSFUL - FIRESTORE");
+ }
+ })
+ .addOnFailureListener(new OnFailureListener() {
+ @Override
+ public void onFailure(@NonNull Exception e) {
+ System.out.println("FAILED - FIRESTORE: " + e);
+ }
+ });
+ }
private void setupForm() {
formBuilder = new FormBuilder(this, recyclerView);
@@ -162,6 +177,8 @@ private void setupForm() {
submitButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
+
+ // data retrieval from forms
String contact = projectTextField.getValue();
String location = addressTextField.getValue();
String inspector = inspectorTextField.getValue();
@@ -169,7 +186,7 @@ public void onClick(View view) {
ArrayList answersList = new ArrayList<>(20);
- String projectRepPresent = getSwitchString(projectRepPresentSwitch);
+ String projectRepPresent = getSwitchBool(projectRepPresentSwitch);
answersList.add(projectRepPresent);
String projectManager = projectManagerTextField.getValue();
@@ -179,10 +196,10 @@ public void onClick(View view) {
answersList.add(siteManager);
answersList.add(projectOwner);
- String correctiveAction1 = getSwitchString(correctiveAction1Switch);
- String correctiveAction2 = getSwitchString(correctiveAction2Switch);
- String correctiveAction3 = getSwitchString(correctiveAction3Switch);
- String correctiveAction4 = getSwitchString(correctiveAction4Switch);
+ String correctiveAction1 = getSwitchBool(correctiveAction1Switch);
+ String correctiveAction2 = getSwitchBool(correctiveAction2Switch);
+ String correctiveAction3 = getSwitchBool(correctiveAction3Switch);
+ String correctiveAction4 = getSwitchBool(correctiveAction4Switch);
answersList.add(correctiveAction1);
answersList.add(correctiveAction2);
answersList.add(correctiveAction3);
@@ -191,10 +208,10 @@ public void onClick(View view) {
List correctiveAction5 = correctiveAction5Multi.getOptionsSelected();
answersList.addAll(correctiveAction5);
- String correctiveAction6 = getSwitchString(correctiveAction6Switch);
- String correctiveAction7 = getSwitchString(correctiveAction6Switch);
- String correctiveAction8 = getSwitchString(correctiveAction8Switch);
- String correctiveAction9 = getSwitchString(correctiveAction9Switch);
+ String correctiveAction6 = getSwitchBool(correctiveAction6Switch);
+ String correctiveAction7 = getSwitchBool(correctiveAction6Switch);
+ String correctiveAction8 = getSwitchBool(correctiveAction8Switch);
+ String correctiveAction9 = getSwitchBool(correctiveAction9Switch);
answersList.add(correctiveAction6);
answersList.add(correctiveAction7);
answersList.add(correctiveAction8);
@@ -214,89 +231,24 @@ public void onClick(View view) {
List enforcementAction = enforcementActionPickerSingle.getOptionsSelected();
answersList.addAll(enforcementAction);
- String imgLink = new String(evidenceTextField.getValue());
-
+ List imgLink = new ArrayList<>();
+ imgLink.add(evidenceTextField.getValue());
String[] answers = answersList.toArray(new String[0]);
ConstructionFormData constructionFormData = new ConstructionFormData(contact, date, inspector, location, answersList, imgLink);
- FirebaseFirestore db = FirebaseFirestore.getInstance();
- db.collection("ConstructionSiteForm")
- .add(constructionFormData.getMap())
- .addOnSuccessListener(new OnSuccessListener() {
- @Override
- public void onSuccess(DocumentReference documentReference) {
- System.out.println("ibra SUCCESSFUL - FIRESTORE");
- }
- })
- .addOnFailureListener(new OnFailureListener() {
- @Override
- public void onFailure(@NonNull Exception e) {
- System.out.println("ibra SUCCESSFUL - ERROR/FAILED: " + e);
- }
- });
-
- // System.out.println(constructionFormData);
+
+ // submit data to firestore
+ uploadToFirestore(constructionFormData);
}
});
}
- private String getSwitchString(FormElementSwitch switchElement) {
- System.out.println(switchElement.getValue());
- if (switchElement.getValue().equals("Yes")) return switchElement.getTitle();
- return "";
+ private String getSwitchBool(FormElementSwitch switchElement) {
+ if (switchElement.getValue().equals("Yes")) return "true";
+ return "false";
}
- private class ConstructionFormData {
-// String contact = "";
-// String date = "";
-// String inspector = "";
-// String location = "";
-// String[] answers;
- // SortTimeStamp set in constructor
-// Date SortTimeStamp;
-//
-// String[] imgLink;
-
- Map data = new HashMap<>();
-
- public ConstructionFormData(String contact, String date, String inspector,
- String location, List answers, String imgLink) {
- data.put("contact", contact);
- data.put("date", date);
- data.put("inspector", inspector);
- data.put("location", location);
- data.put("answers", answers);
- data.put("imgLink", imgLink);
-
-// this.contact = contact;
-// this.date = date;
-// this.inspector = inspector;
-// this.location = location;
-// this.answers = answers;
-//
-// this.SortTimeStamp = new Date(System.currentTimeMillis());
-//
-// this.answers = answers;
- }
-
- public Map getMap() {
- return data;
- }
-
-// @Override
-// public String toString() {
-// return "ConstructionFormData{" +
-// "contact=" + contact + '\n' +
-// ", date=" + date + '\n' +
-// ", inspector=" + inspector + '\n' +
-// ", location=" + location + '\n' +
-// ", answers=" + Arrays.toString(answers) + "\n" +
-// ", SortTimeStamp=" + SortTimeStamp + "\n" +
-// ", imgLink=" + Arrays.toString(imgLink) + "\n" +
-// '}';
-// }
- }
}
From 31317320c2405cf01ad3d887fb50d3da66d2e706 Mon Sep 17 00:00:00 2001
From: IbrahimSaeedPurdue
<54752803+IbrahimSaeedPurdue@users.noreply.github.com>
Date: Thu, 4 Mar 2021 16:45:43 -0500
Subject: [PATCH 06/17] refactor/made ConstructionFormData.java into a public
class refactor/answer switches (in List answers) give "true"/"false"
in firebase refactor/clean up all comments and unused code
---
.../InspectionForm.java | 152 ++++++++----------
1 file changed, 66 insertions(+), 86 deletions(-)
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java b/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
index f8a16f1..9efb51c 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/InspectionForm.java
@@ -1,16 +1,11 @@
package com.sf.stormwaterutilityandroid;
import android.os.Bundle;
-import android.view.View;
import android.widget.Button;
-import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.RecyclerView;
-import com.google.android.gms.tasks.OnFailureListener;
-import com.google.android.gms.tasks.OnSuccessListener;
-import com.google.firebase.firestore.DocumentReference;
import com.google.firebase.firestore.FirebaseFirestore;
import java.util.ArrayList;
@@ -28,7 +23,6 @@
import me.riddhimanadib.formmaster.model.FormHeader;
public class InspectionForm extends AppCompatActivity {
- private FormBuilder formBuilder;
private RecyclerView recyclerView;
private Button submitButton;
@@ -47,22 +41,12 @@ private void uploadToFirestore(ConstructionFormData constructionFormData) {
FirebaseFirestore db = FirebaseFirestore.getInstance();
db.collection("ConstructionSiteForm")
.add(constructionFormData.getMap())
- .addOnSuccessListener(new OnSuccessListener() {
- @Override
- public void onSuccess(DocumentReference documentReference) {
- System.out.println("SUCCESSFUL - FIRESTORE");
- }
- })
- .addOnFailureListener(new OnFailureListener() {
- @Override
- public void onFailure(@NonNull Exception e) {
- System.out.println("FAILED - FIRESTORE: " + e);
- }
- });
+ .addOnSuccessListener(documentReference -> System.out.println("SUCCESSFUL - FIRESTORE"))
+ .addOnFailureListener(e -> System.out.println("FAILED - FIRESTORE: " + e));
}
private void setupForm() {
- formBuilder = new FormBuilder(this, recyclerView);
+ FormBuilder formBuilder = new FormBuilder(this, recyclerView);
FormElementTextSingleLine projectTextField = FormElementTextSingleLine.createInstance().setTitle("Project/Contact:").setHint("Enter text here");
FormElementTextSingleLine addressTextField = FormElementTextSingleLine.createInstance().setTitle("Address/Lot#(s):").setHint("Enter text here");
@@ -174,73 +158,69 @@ private void setupForm() {
formBuilder.addFormElements(formItems);
// onSubmit
- submitButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
-
- // data retrieval from forms
- String contact = projectTextField.getValue();
- String location = addressTextField.getValue();
- String inspector = inspectorTextField.getValue();
- String date = dateInspectedDatePicker.getValue();
-
- ArrayList answersList = new ArrayList<>(20);
-
- String projectRepPresent = getSwitchBool(projectRepPresentSwitch);
- answersList.add(projectRepPresent);
-
- String projectManager = projectManagerTextField.getValue();
- String siteManager = siteManagerTextField.getValue();
- String projectOwner = projectOwnerTextField.getValue();
- answersList.add(projectManager);
- answersList.add(siteManager);
- answersList.add(projectOwner);
-
- String correctiveAction1 = getSwitchBool(correctiveAction1Switch);
- String correctiveAction2 = getSwitchBool(correctiveAction2Switch);
- String correctiveAction3 = getSwitchBool(correctiveAction3Switch);
- String correctiveAction4 = getSwitchBool(correctiveAction4Switch);
- answersList.add(correctiveAction1);
- answersList.add(correctiveAction2);
- answersList.add(correctiveAction3);
- answersList.add(correctiveAction4);
-
- List correctiveAction5 = correctiveAction5Multi.getOptionsSelected();
- answersList.addAll(correctiveAction5);
-
- String correctiveAction6 = getSwitchBool(correctiveAction6Switch);
- String correctiveAction7 = getSwitchBool(correctiveAction6Switch);
- String correctiveAction8 = getSwitchBool(correctiveAction8Switch);
- String correctiveAction9 = getSwitchBool(correctiveAction9Switch);
- answersList.add(correctiveAction6);
- answersList.add(correctiveAction7);
- answersList.add(correctiveAction8);
- answersList.add(correctiveAction9);
-
- String correctiveAction10 = correctiveAction10Multi.getValue();
- answersList.add(correctiveAction10);
-
- String otherCorrectiveAction1 = otherCorrectiveAction1TextField.getValue();
- String otherCorrectiveAction2 = otherCorrectiveAction2TextField.getValue();
- String otherCorrectiveAction3 = otherCorrectiveAction3TextField.getValue();
- answersList.add(otherCorrectiveAction1);
- answersList.add(otherCorrectiveAction2);
- answersList.add(otherCorrectiveAction3);
-
-
- List enforcementAction = enforcementActionPickerSingle.getOptionsSelected();
- answersList.addAll(enforcementAction);
-
- List imgLink = new ArrayList<>();
- imgLink.add(evidenceTextField.getValue());
-
- String[] answers = answersList.toArray(new String[0]);
- ConstructionFormData constructionFormData = new ConstructionFormData(contact, date, inspector, location, answersList, imgLink);
-
-
- // submit data to firestore
- uploadToFirestore(constructionFormData);
- }
+ submitButton.setOnClickListener(view -> {
+
+ // data retrieval from forms
+ String contact = projectTextField.getValue();
+ String location = addressTextField.getValue();
+ String inspector = inspectorTextField.getValue();
+ String date = dateInspectedDatePicker.getValue();
+
+ ArrayList answersList = new ArrayList<>(20);
+
+ String projectRepPresent = getSwitchBool(projectRepPresentSwitch);
+ answersList.add(projectRepPresent);
+
+ String projectManager = projectManagerTextField.getValue();
+ String siteManager = siteManagerTextField.getValue();
+ String projectOwner = projectOwnerTextField.getValue();
+ answersList.add(projectManager);
+ answersList.add(siteManager);
+ answersList.add(projectOwner);
+
+ String correctiveAction1 = getSwitchBool(correctiveAction1Switch);
+ String correctiveAction2 = getSwitchBool(correctiveAction2Switch);
+ String correctiveAction3 = getSwitchBool(correctiveAction3Switch);
+ String correctiveAction4 = getSwitchBool(correctiveAction4Switch);
+ answersList.add(correctiveAction1);
+ answersList.add(correctiveAction2);
+ answersList.add(correctiveAction3);
+ answersList.add(correctiveAction4);
+
+ List correctiveAction5 = correctiveAction5Multi.getOptionsSelected();
+ answersList.addAll(correctiveAction5);
+
+ String correctiveAction6 = getSwitchBool(correctiveAction6Switch);
+ String correctiveAction7 = getSwitchBool(correctiveAction6Switch);
+ String correctiveAction8 = getSwitchBool(correctiveAction8Switch);
+ String correctiveAction9 = getSwitchBool(correctiveAction9Switch);
+ answersList.add(correctiveAction6);
+ answersList.add(correctiveAction7);
+ answersList.add(correctiveAction8);
+ answersList.add(correctiveAction9);
+
+ String correctiveAction10 = correctiveAction10Multi.getValue();
+ answersList.add(correctiveAction10);
+
+ String otherCorrectiveAction1 = otherCorrectiveAction1TextField.getValue();
+ String otherCorrectiveAction2 = otherCorrectiveAction2TextField.getValue();
+ String otherCorrectiveAction3 = otherCorrectiveAction3TextField.getValue();
+ answersList.add(otherCorrectiveAction1);
+ answersList.add(otherCorrectiveAction2);
+ answersList.add(otherCorrectiveAction3);
+
+
+ List enforcementAction = enforcementActionPickerSingle.getOptionsSelected();
+ answersList.addAll(enforcementAction);
+
+ List imgLink = new ArrayList<>();
+ imgLink.add(evidenceTextField.getValue());
+
+ ConstructionFormData constructionFormData = new ConstructionFormData(contact, date, inspector, location, answersList, imgLink);
+
+
+ // submit data to firestore
+ uploadToFirestore(constructionFormData);
});
From 31a995bd4c9e3b0b6c2a7b5bdaf5ab2668ae3dc8 Mon Sep 17 00:00:00 2001
From: IbrahimSaeedPurdue
<54752803+IbrahimSaeedPurdue@users.noreply.github.com>
Date: Thu, 4 Mar 2021 16:54:20 -0500
Subject: [PATCH 07/17] refactor/removed google-services.json (my own firebase
testing database)
---
app/google-services.json | 39 ---------------------------------------
1 file changed, 39 deletions(-)
delete mode 100644 app/google-services.json
diff --git a/app/google-services.json b/app/google-services.json
deleted file mode 100644
index 50b3497..0000000
--- a/app/google-services.json
+++ /dev/null
@@ -1,39 +0,0 @@
-{
- "project_info": {
- "project_number": "715047227500",
- "project_id": "auth-test-978bd",
- "storage_bucket": "auth-test-978bd.appspot.com"
- },
- "client": [
- {
- "client_info": {
- "mobilesdk_app_id": "1:715047227500:android:6d404969351cf9a715c849",
- "android_client_info": {
- "package_name": "com.sf.stormwaterutilityandroid"
- }
- },
- "oauth_client": [
- {
- "client_id": "715047227500-l993hj8oukroedqgtmuecookfmhjp1co.apps.googleusercontent.com",
- "client_type": 3
- }
- ],
- "api_key": [
- {
- "current_key": "AIzaSyDdVIxvfzkh1W0PCJ985hizZLthG6MrjJc"
- }
- ],
- "services": {
- "appinvite_service": {
- "other_platform_oauth_client": [
- {
- "client_id": "715047227500-l993hj8oukroedqgtmuecookfmhjp1co.apps.googleusercontent.com",
- "client_type": 3
- }
- ]
- }
- }
- }
- ],
- "configuration_version": "1"
-}
\ No newline at end of file
From ffc61fb794fc9fb9196d80bb173d3d4b8a164a4d Mon Sep 17 00:00:00 2001
From: evanwilliams
Date: Thu, 11 Mar 2021 14:35:44 -0500
Subject: [PATCH 08/17] SWU: WQI formulas
---
.../com/sf/stormwaterutilityandroid/WQI.java | 108 ++++++++++++++++++
1 file changed, 108 insertions(+)
create mode 100644 app/src/main/java/com/sf/stormwaterutilityandroid/WQI.java
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/WQI.java b/app/src/main/java/com/sf/stormwaterutilityandroid/WQI.java
new file mode 100644
index 0000000..813c0dd
--- /dev/null
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/WQI.java
@@ -0,0 +1,108 @@
+package com.sf.stormwaterutilityandroid;
+
+public class WQI {
+ private double QHEI_substrate_size;
+ private double QHEI_smothering;
+ private double QHEI_silting;
+ private double QHEI_rootwads;
+ private double QHEI_overhanging_veg;
+ private double QHEI_oxbowsblack_waters;
+ private double QHEI_downed_treeslogs;
+ private double QHEI_shallows;
+ private double QHEI_water_plants;
+ private double QHEI_deep_pools;
+ private double QHEI_logswoody_debris;
+ private double QHEI_boulders;
+ private double QHEI_undercut_banks;
+ private double QHEI_sinuosity;
+ private double QHEI_natural;
+ private double QHEI_riparian_width;
+ private double QHEI_land_use;
+ private double QHEI_bank_erosion;
+ private double QHEI_stream_shading;
+ private double QHEI_deepest_pool;
+ private double QHEI_velocity;
+ private double QHEI_rifflerun_depth;
+ private double QHEI_rifflerun_substrate;
+
+ //constructor
+ WQI(double QHEI_substrate_size, double QHEI_smothering, double QHEI_silting, double QHEI_rootwads, double QHEI_overhanging_veg,
+ double QHEI_oxbowsblack_waters, double QHEI_downed_treeslogs, double QHEI_shallows, double QHEI_water_plants, double QHEI_logswoody_debris,
+ double QHEI_boulders, double QHEI_undercut_banks, double QHEI_sinuosity, double QHEI_natural, double QHEI_riparian_width,
+ double QHEI_land_use, double QHEI_bank_erosion, double QHEI_stream_shading, double QHEI_deepest_pool, double QHEI_velocity,
+ double QHEI_rifflerun_depth, double QHEI_rifflerun_substrate, double QHEI_deep_pools) {
+
+ this.QHEI_substrate_size = QHEI_substrate_size;
+ this.QHEI_smothering = QHEI_smothering;
+ this.QHEI_silting = QHEI_silting;
+ this.QHEI_rootwads = QHEI_rootwads;
+ this.QHEI_overhanging_veg = QHEI_overhanging_veg;
+ this.QHEI_oxbowsblack_waters = QHEI_oxbowsblack_waters;
+ this.QHEI_downed_treeslogs = QHEI_downed_treeslogs;
+ this.QHEI_shallows = QHEI_shallows;
+ this.QHEI_water_plants = QHEI_water_plants;
+ this.QHEI_logswoody_debris = QHEI_logswoody_debris;
+ this.QHEI_boulders = QHEI_boulders;
+ this.QHEI_undercut_banks = QHEI_undercut_banks;
+ this.QHEI_sinuosity = QHEI_sinuosity;
+ this.QHEI_natural = QHEI_natural;
+ this.QHEI_riparian_width = QHEI_riparian_width;
+ this.QHEI_land_use = QHEI_land_use;
+ this.QHEI_bank_erosion = QHEI_bank_erosion;
+ this.QHEI_stream_shading = QHEI_stream_shading;
+ this.QHEI_deepest_pool = QHEI_deepest_pool;
+ this.QHEI_velocity = QHEI_velocity;
+ this.QHEI_rifflerun_depth = QHEI_rifflerun_depth;
+ this.QHEI_rifflerun_substrate = QHEI_rifflerun_substrate;
+ this.QHEI_deep_pools = QHEI_deep_pools;
+ }
+
+ WQI()
+ {
+ QHEI_substrate_size = 0;
+ QHEI_smothering = 0;
+ QHEI_silting = 0;
+ QHEI_rootwads = 0;
+ QHEI_overhanging_veg = 0;
+ QHEI_oxbowsblack_waters = 0;
+ QHEI_downed_treeslogs = 0;
+ QHEI_shallows = 0;
+ QHEI_water_plants = 0;
+ QHEI_deep_pools = 0;
+ QHEI_logswoody_debris = 0;
+ QHEI_boulders = 0;
+ QHEI_undercut_banks = 0;
+ QHEI_sinuosity = 0;
+ QHEI_natural = 0;
+ QHEI_riparian_width = 0;
+ QHEI_land_use = 0;
+ QHEI_bank_erosion = 0;
+ QHEI_stream_shading = 0;
+ QHEI_deepest_pool = 0;
+ QHEI_velocity = 0;
+ QHEI_rifflerun_depth = 0;
+ QHEI_rifflerun_substrate = 0;
+ }
+
+ public double calculate_WQI() {
+ return QHEI_substrate_size + QHEI_smothering + QHEI_silting + QHEI_rootwads + QHEI_overhanging_veg +
+ QHEI_oxbowsblack_waters + QHEI_downed_treeslogs + QHEI_shallows + QHEI_water_plants + QHEI_deep_pools +
+ QHEI_logswoody_debris + QHEI_boulders + QHEI_undercut_banks + 2 * (QHEI_sinuosity + QHEI_natural) +
+ QHEI_riparian_width + QHEI_land_use + QHEI_bank_erosion + QHEI_stream_shading + QHEI_deepest_pool +
+ QHEI_velocity + QHEI_rifflerun_depth + QHEI_rifflerun_substrate;
+ }
+
+ public static double get_WQI(double QHEI_substrate_size, double QHEI_smothering, double QHEI_silting, double QHEI_rootwads, double QHEI_overhanging_veg,
+ double QHEI_oxbowsblack_waters, double QHEI_downed_treeslogs, double QHEI_shallows, double QHEI_water_plants, double QHEI_logswoody_debris,
+ double QHEI_boulders, double QHEI_undercut_banks, double QHEI_sinuosity, double QHEI_natural, double QHEI_riparian_width,
+ double QHEI_land_use, double QHEI_bank_erosion, double QHEI_stream_shading, double QHEI_deepest_pool, double QHEI_velocity,
+ double QHEI_rifflerun_depth, double QHEI_rifflerun_substrate, double QHEI_deep_pools)
+ {
+ return QHEI_substrate_size + QHEI_smothering + QHEI_silting + QHEI_rootwads + QHEI_overhanging_veg +
+ QHEI_oxbowsblack_waters + QHEI_downed_treeslogs + QHEI_shallows + QHEI_water_plants + QHEI_deep_pools +
+ QHEI_logswoody_debris + QHEI_boulders + QHEI_undercut_banks + 2 * (QHEI_sinuosity + QHEI_natural) +
+ QHEI_riparian_width + QHEI_land_use + QHEI_bank_erosion + QHEI_stream_shading + QHEI_deepest_pool +
+ QHEI_velocity + QHEI_rifflerun_depth + QHEI_rifflerun_substrate;
+ }
+
+}
From cf698ff7e54202c3672cb1c251d448dade7e8e72 Mon Sep 17 00:00:00 2001
From: evanwilliams
Date: Thu, 11 Mar 2021 14:45:39 -0500
Subject: [PATCH 09/17] added PTI calculation
---
.../WaterWay/PTI.java | 39 +++++++++++++++++++
1 file changed, 39 insertions(+)
create mode 100644 app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/PTI.java
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/PTI.java b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/PTI.java
new file mode 100644
index 0000000..9a4c346
--- /dev/null
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/PTI.java
@@ -0,0 +1,39 @@
+package com.sf.stormwaterutilityandroid.WaterWay;
+
+public class PTI {
+ private double BM_intolerant = 0;
+ private double BM_moderately_tolerant = 0;
+ private double BM_fairly_tolerant = 0;
+ private double BM_very_tolerant = 0;
+
+ PTI(double BM_intolerant, double BM_moderately_tolerant, double BM_fairly_tolerant, double BM_very_tolerant) {
+ this.BM_intolerant = BM_intolerant;
+ this.BM_moderately_tolerant = BM_moderately_tolerant;
+ this.BM_fairly_tolerant = BM_fairly_tolerant;
+ this.BM_very_tolerant = BM_very_tolerant;
+ }
+
+ public void setBM_intolerant(double value) {
+ BM_intolerant = value;
+ }
+
+ public void setBM_moderately_tolerant(double value) {
+ BM_moderately_tolerant = value;
+ }
+
+ public void setBM_fairly_tolerant(double value) {
+ BM_fairly_tolerant = value;
+ }
+
+ public void setBM_very_tolerant(double value) {
+ BM_very_tolerant = value;
+ }
+
+ public double calculatePTI() {
+ return 4.0 * BM_intolerant + 3.0 * BM_moderately_tolerant + 2.0 * BM_fairly_tolerant + 1.0 * BM_very_tolerant;
+ }
+
+ public static double getPTI(double intolerant, double moderate, double fairly, double very) {
+ return 4.0 * intolerant + 3.0 * moderate + 2.0 * fairly + 1.0 * very;
+ }
+}
From 30cf3920a9648546dd7c127c3ff7f244b2253194 Mon Sep 17 00:00:00 2001
From: evanwilliams
Date: Thu, 11 Mar 2021 16:29:59 -0500
Subject: [PATCH 10/17] SWU: HEI, not WQI
---
.../{WQI.java => HEI.java} | 82 +++++++------------
1 file changed, 28 insertions(+), 54 deletions(-)
rename app/src/main/java/com/sf/stormwaterutilityandroid/{WQI.java => HEI.java} (67%)
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/WQI.java b/app/src/main/java/com/sf/stormwaterutilityandroid/HEI.java
similarity index 67%
rename from app/src/main/java/com/sf/stormwaterutilityandroid/WQI.java
rename to app/src/main/java/com/sf/stormwaterutilityandroid/HEI.java
index 813c0dd..1051afa 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/WQI.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/HEI.java
@@ -1,32 +1,33 @@
package com.sf.stormwaterutilityandroid;
-public class WQI {
- private double QHEI_substrate_size;
- private double QHEI_smothering;
- private double QHEI_silting;
- private double QHEI_rootwads;
- private double QHEI_overhanging_veg;
- private double QHEI_oxbowsblack_waters;
- private double QHEI_downed_treeslogs;
- private double QHEI_shallows;
- private double QHEI_water_plants;
- private double QHEI_deep_pools;
- private double QHEI_logswoody_debris;
- private double QHEI_boulders;
- private double QHEI_undercut_banks;
- private double QHEI_sinuosity;
- private double QHEI_natural;
- private double QHEI_riparian_width;
- private double QHEI_land_use;
- private double QHEI_bank_erosion;
- private double QHEI_stream_shading;
- private double QHEI_deepest_pool;
- private double QHEI_velocity;
- private double QHEI_rifflerun_depth;
- private double QHEI_rifflerun_substrate;
+public class HEI {
+ //by default, all values are set to be 0
+ private double QHEI_substrate_size = 0;
+ private double QHEI_smothering = 0;
+ private double QHEI_silting = 0;
+ private double QHEI_rootwads = 0;
+ private double QHEI_overhanging_veg = 0;
+ private double QHEI_oxbowsblack_waters = 0;
+ private double QHEI_downed_treeslogs = 0;
+ private double QHEI_shallows = 0;
+ private double QHEI_water_plants = 0;
+ private double QHEI_deep_pools = 0;
+ private double QHEI_logswoody_debris = 0;
+ private double QHEI_boulders = 0;
+ private double QHEI_undercut_banks = 0;
+ private double QHEI_sinuosity = 0;
+ private double QHEI_natural = 0;
+ private double QHEI_riparian_width = 0;
+ private double QHEI_land_use = 0;
+ private double QHEI_bank_erosion = 0;
+ private double QHEI_stream_shading = 0;
+ private double QHEI_deepest_pool = 0;
+ private double QHEI_velocity = 0;
+ private double QHEI_rifflerun_depth = 0;
+ private double QHEI_rifflerun_substrate = 0;
//constructor
- WQI(double QHEI_substrate_size, double QHEI_smothering, double QHEI_silting, double QHEI_rootwads, double QHEI_overhanging_veg,
+ HEI(double QHEI_substrate_size, double QHEI_smothering, double QHEI_silting, double QHEI_rootwads, double QHEI_overhanging_veg,
double QHEI_oxbowsblack_waters, double QHEI_downed_treeslogs, double QHEI_shallows, double QHEI_water_plants, double QHEI_logswoody_debris,
double QHEI_boulders, double QHEI_undercut_banks, double QHEI_sinuosity, double QHEI_natural, double QHEI_riparian_width,
double QHEI_land_use, double QHEI_bank_erosion, double QHEI_stream_shading, double QHEI_deepest_pool, double QHEI_velocity,
@@ -57,34 +58,7 @@ public class WQI {
this.QHEI_deep_pools = QHEI_deep_pools;
}
- WQI()
- {
- QHEI_substrate_size = 0;
- QHEI_smothering = 0;
- QHEI_silting = 0;
- QHEI_rootwads = 0;
- QHEI_overhanging_veg = 0;
- QHEI_oxbowsblack_waters = 0;
- QHEI_downed_treeslogs = 0;
- QHEI_shallows = 0;
- QHEI_water_plants = 0;
- QHEI_deep_pools = 0;
- QHEI_logswoody_debris = 0;
- QHEI_boulders = 0;
- QHEI_undercut_banks = 0;
- QHEI_sinuosity = 0;
- QHEI_natural = 0;
- QHEI_riparian_width = 0;
- QHEI_land_use = 0;
- QHEI_bank_erosion = 0;
- QHEI_stream_shading = 0;
- QHEI_deepest_pool = 0;
- QHEI_velocity = 0;
- QHEI_rifflerun_depth = 0;
- QHEI_rifflerun_substrate = 0;
- }
-
- public double calculate_WQI() {
+ public double calculate_HEI() {
return QHEI_substrate_size + QHEI_smothering + QHEI_silting + QHEI_rootwads + QHEI_overhanging_veg +
QHEI_oxbowsblack_waters + QHEI_downed_treeslogs + QHEI_shallows + QHEI_water_plants + QHEI_deep_pools +
QHEI_logswoody_debris + QHEI_boulders + QHEI_undercut_banks + 2 * (QHEI_sinuosity + QHEI_natural) +
@@ -92,7 +66,7 @@ public double calculate_WQI() {
QHEI_velocity + QHEI_rifflerun_depth + QHEI_rifflerun_substrate;
}
- public static double get_WQI(double QHEI_substrate_size, double QHEI_smothering, double QHEI_silting, double QHEI_rootwads, double QHEI_overhanging_veg,
+ public static double get_HEI(double QHEI_substrate_size, double QHEI_smothering, double QHEI_silting, double QHEI_rootwads, double QHEI_overhanging_veg,
double QHEI_oxbowsblack_waters, double QHEI_downed_treeslogs, double QHEI_shallows, double QHEI_water_plants, double QHEI_logswoody_debris,
double QHEI_boulders, double QHEI_undercut_banks, double QHEI_sinuosity, double QHEI_natural, double QHEI_riparian_width,
double QHEI_land_use, double QHEI_bank_erosion, double QHEI_stream_shading, double QHEI_deepest_pool, double QHEI_velocity,
From 625faf5cb332b6cb8edcde892b87166bc02b07b2 Mon Sep 17 00:00:00 2001
From: evanwilliams
Date: Thu, 11 Mar 2021 16:39:11 -0500
Subject: [PATCH 11/17] added WQI
---
.../WaterWay/WQI.java | 31 +++++++++++++++++++
1 file changed, 31 insertions(+)
create mode 100644 app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WQI.java
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WQI.java b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WQI.java
new file mode 100644
index 0000000..529fae8
--- /dev/null
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WQI.java
@@ -0,0 +1,31 @@
+package com.sf.stormwaterutilityandroid.WaterWay;
+
+public class WQI {
+ private double CT_temperature_change = 0;
+ private double CT_turbidity = 0;
+ private double CT_pH = 0;
+ private double CT_nitrate = 0;
+ private double CT_total_phosphate = 0;
+ private double CT_dissolved_oxygen = 0;
+
+ WQI(double CT_temperature_change, double CT_turbidity, double CT_pH, double CT_nitrate, double CT_total_phosphate,
+ double CT_dissolved_oxygen) {
+ this.CT_temperature_change = CT_temperature_change;
+ this.CT_turbidity = CT_turbidity;
+ this.CT_pH = CT_pH;
+ this.CT_nitrate = CT_nitrate;
+ this.CT_total_phosphate = CT_total_phosphate;
+ this.CT_dissolved_oxygen = CT_dissolved_oxygen;
+ }
+
+ public double calculateWQI() {
+ double WQIScore = CT_temperature_change * 0.11 + CT_turbidity * 0.09 + CT_pH * 0.12 + CT_nitrate * 0.1 +
+ CT_total_phosphate * 0.11 + CT_dissolved_oxygen * 0.18;
+
+ return WQIScore;
+ }
+
+ public static double getWQI(double tempChange, double turbidity, double pH, double nitrate, double phosphate, double oxygen) {
+ return tempChange * 0.11 + turbidity * 0.09 + pH * 0.12 + nitrate * 0.1 + phosphate * 0.11 + oxygen * 0.18;
+ }
+}
From be253d628d2643ba8ed7a797230028896f70873f Mon Sep 17 00:00:00 2001
From: John Parrell
Date: Fri, 19 Mar 2021 12:25:44 -0400
Subject: [PATCH 12/17] Renamed waterwayForm elements for easier mapping
---
.../WaterWay/WaterWayForm.java | 73 ++++++++++---------
1 file changed, 37 insertions(+), 36 deletions(-)
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWayForm.java b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWayForm.java
index a797f99..b289859 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWayForm.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWayForm.java
@@ -31,45 +31,46 @@ private void setupForm() {
formBuilder = new FormBuilder(this, recyclerView);
- FormElementTextNumber element2 = FormElementTextNumber.createInstance().setTitle("Substrate Size").setValue("0");
- FormElementTextNumber element3 = FormElementTextNumber.createInstance().setTitle("Smothering").setValue("0");
- FormElementTextNumber element4 = FormElementTextNumber.createInstance().setTitle("Silting").setValue("0");
- FormElementTextNumber element5 = FormElementTextNumber.createInstance().setTitle("Rootwads").setValue("0");
- FormElementTextNumber element6 = FormElementTextNumber.createInstance().setTitle("Overhanging Veg.").setValue("0");
- FormElementTextNumber element7 = FormElementTextNumber.createInstance().setTitle("Oxbows/Black Waters").setValue("0");
- FormElementTextNumber element8 = FormElementTextNumber.createInstance().setTitle("Downed Trees/Logs").setValue("0");
- FormElementTextNumber element9 = FormElementTextNumber.createInstance().setTitle("Shallows (slow water)").setValue("0");
- FormElementTextNumber element10 = FormElementTextNumber.createInstance().setTitle("Water Plants").setValue("0");
- FormElementTextNumber element11 = FormElementTextNumber.createInstance().setTitle("Deep Pools").setValue("0");
- FormElementTextNumber element12 = FormElementTextNumber.createInstance().setTitle("Logs/Woody Debris").setValue("0");
- FormElementTextNumber element13 = FormElementTextNumber.createInstance().setTitle("Boulders").setValue("0");
- FormElementTextNumber element14 = FormElementTextNumber.createInstance().setTitle("Undercut Banks").setValue("0");
- FormElementTextNumber element15 = FormElementTextNumber.createInstance().setTitle("Sinuosity").setValue("0");
- FormElementTextNumber element16 = FormElementTextNumber.createInstance().setTitle("Natural").setValue("0");
- FormElementTextNumber element17 = FormElementTextNumber.createInstance().setTitle("Riparian Width").setValue("0");
- FormElementTextNumber element18 = FormElementTextNumber.createInstance().setTitle("Land Use").setValue("0");
- FormElementTextNumber element19 = FormElementTextNumber.createInstance().setTitle("Bank Erosion").setValue("0");
+ FormElementTextNumber SubstrateSize = FormElementTextNumber.createInstance().setTitle("Substrate Size").setValue("0");
+ FormElementTextNumber Smothering = FormElementTextNumber.createInstance().setTitle("Smothering").setValue("0");
+ FormElementTextNumber Silting = FormElementTextNumber.createInstance().setTitle("Silting").setValue("0");
+ FormElementTextNumber Rootwads = FormElementTextNumber.createInstance().setTitle("Rootwads").setValue("0");
+ FormElementTextNumber OverhangingVeg = FormElementTextNumber.createInstance().setTitle("Overhanging Veg.").setValue("0");
+ FormElementTextNumber Oxbows = FormElementTextNumber.createInstance().setTitle("Oxbows/Black Waters").setValue("0");
+ FormElementTextNumber DownedTrees = FormElementTextNumber.createInstance().setTitle("Downed Trees/Logs").setValue("0");
+ FormElementTextNumber Shallows = FormElementTextNumber.createInstance().setTitle("Shallows (slow water)").setValue("0");
+ FormElementTextNumber WaterPlants = FormElementTextNumber.createInstance().setTitle("Water Plants").setValue("0");
+ FormElementTextNumber DeepPools = FormElementTextNumber.createInstance().setTitle("Deep Pools").setValue("0");
+ FormElementTextNumber Logs = FormElementTextNumber.createInstance().setTitle("Logs/Woody Debris").setValue("0");
+ FormElementTextNumber Boulders = FormElementTextNumber.createInstance().setTitle("Boulders").setValue("0");
+ FormElementTextNumber Undercut = FormElementTextNumber.createInstance().setTitle("Undercut Banks").setValue("0");
+ FormElementTextNumber Sinuosity = FormElementTextNumber.createInstance().setTitle("Sinuosity").setValue("0");
+ FormElementTextNumber Natural = FormElementTextNumber.createInstance().setTitle("Natural").setValue("0");
+ FormElementTextNumber Riparian = FormElementTextNumber.createInstance().setTitle("Riparian Width").setValue("0");
+ FormElementTextNumber Land = FormElementTextNumber.createInstance().setTitle("Land Use").setValue("0");
+ FormElementTextNumber BankErosion = FormElementTextNumber.createInstance().setTitle("Bank Erosion").setValue("0");
List formItems = new ArrayList<>();
- formItems.add(element2);
- formItems.add(element3);
- formItems.add(element4);
- formItems.add(element5);
- formItems.add(element6);
- formItems.add(element7);
- formItems.add(element8);
- formItems.add(element9);
- formItems.add(element10);
- formItems.add(element11);
- formItems.add(element12);
- formItems.add(element13);
- formItems.add(element14);
- formItems.add(element15);
- formItems.add(element16);
- formItems.add(element17);
- formItems.add(element18);
- formItems.add(element19);
+ formItems.add(SubstrateSize);
+ formItems.add(Smothering);
+ formItems.add(Silting);
+ formItems.add(Rootwads);
+ formItems.add(OverhangingVeg);
+ formItems.add(Oxbows);
+ formItems.add(DownedTrees);
+ formItems.add(Shallows);
+ formItems.add(WaterPlants);
+ formItems.add(DeepPools);
+ formItems.add(Logs);
+ formItems.add(Boulders);
+ formItems.add(Undercut);
+ formItems.add(Sinuosity);
+ formItems.add(Natural);
+ formItems.add(Riparian);
+ formItems.add(Land);
+ formItems.add(BankErosion);
+
formBuilder.addFormElements(formItems);
}
From f4a813b56a46c439eba9cd9812d061688b33af16 Mon Sep 17 00:00:00 2001
From: evanwilliams
Date: Sat, 20 Mar 2021 12:02:31 -0400
Subject: [PATCH 13/17] started building the map
---
.../WaterWay/ChemicalTesting.java | 1 -
.../WaterWay/WaterWay.java | 49 +++++++++++++++++++
.../WaterWay/WaterWayForm.java | 2 +-
3 files changed, 50 insertions(+), 2 deletions(-)
create mode 100644 app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWay.java
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/ChemicalTesting.java b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/ChemicalTesting.java
index 19e621c..21cb7aa 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/ChemicalTesting.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/ChemicalTesting.java
@@ -93,6 +93,5 @@ private void setupForm() {
formItems.add(other2Data);
formBuilder.addFormElements(formItems);
-
}
}
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWay.java b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWay.java
new file mode 100644
index 0000000..7dd92ca
--- /dev/null
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWay.java
@@ -0,0 +1,49 @@
+package com.sf.stormwaterutilityandroid.WaterWay;
+
+import java.util.Map;
+import java.util.HashMap;
+
+public class WaterWay {
+
+ private Map WaterWayDoubleFields = new HashMap();
+ private Map WaterWayBoolFields = new HashMap();
+ private Map WaterWayStringFields = new HashMap();
+
+ public WaterWay() {
+ //Water Quality Index Data
+ WaterWayDoubleFields.put("CT_temperature_change", new Double(0.0));
+ WaterWayDoubleFields.put("CT_turbidity", new Double(0.0));
+ WaterWayDoubleFields.put("CT_pH", new Double(0.0));
+ WaterWayDoubleFields.put("CT_nitrate", new Double(0.0));
+ WaterWayDoubleFields.put("CT_total_phosphate", new Double(0.0));
+ WaterWayDoubleFields.put("CT_dissolved_oxygen", new Double(0.0));
+ //PTI Data
+ WaterWayDoubleFields.put("BM_intolerant", new Double(0.0));
+ WaterWayDoubleFields.put("BM_moderately_tolerant", new Double(0.0));
+ WaterWayDoubleFields.put("BM_fairly_tolerant", new Double(0.0));
+ WaterWayDoubleFields.put("BM_very_tolerant", new Double(0.0));
+ //HEI Data
+ WaterWayDoubleFields.put("QHEI_substrate_size", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_smothering", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_silting", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_rootwads", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_overhanging_veg", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_oxbowsblack_waters", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_downed_treeslogs", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_shallows", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_water_plants", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_deep_pools", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_logswoody_debris", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_boulders", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_undercut_banks", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_sinuosity", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_riparian_width", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_land_use", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_bank_erosion", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_stream_shading", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_deepest_pool", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_velocity", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_rifflerun_depth", new Double(0.0));
+ WaterWayDoubleFields.put("QHEI_rifflerun_substrate", new Double(0.0));
+ }
+}
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWayForm.java b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWayForm.java
index a797f99..11b3bf1 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWayForm.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWayForm.java
@@ -29,7 +29,6 @@ protected void onCreate(Bundle savedInstanceState) {
private void setupForm() {
-
formBuilder = new FormBuilder(this, recyclerView);
FormElementTextNumber element2 = FormElementTextNumber.createInstance().setTitle("Substrate Size").setValue("0");
FormElementTextNumber element3 = FormElementTextNumber.createInstance().setTitle("Smothering").setValue("0");
@@ -70,6 +69,7 @@ private void setupForm() {
formItems.add(element17);
formItems.add(element18);
formItems.add(element19);
+
formBuilder.addFormElements(formItems);
}
From b2e1d14fbb0f5407c0b56e12b7eecb4d9327276c Mon Sep 17 00:00:00 2001
From: evanwilliams
Date: Sat, 20 Mar 2021 12:16:53 -0400
Subject: [PATCH 14/17] fixed map
---
.../WaterWay/WaterWay.java | 80 +++++++++++++------
1 file changed, 57 insertions(+), 23 deletions(-)
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWay.java b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWay.java
index 7dd92ca..b7449aa 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWay.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWay.java
@@ -22,28 +22,62 @@ public WaterWay() {
WaterWayDoubleFields.put("BM_moderately_tolerant", new Double(0.0));
WaterWayDoubleFields.put("BM_fairly_tolerant", new Double(0.0));
WaterWayDoubleFields.put("BM_very_tolerant", new Double(0.0));
- //HEI Data
- WaterWayDoubleFields.put("QHEI_substrate_size", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_smothering", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_silting", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_rootwads", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_overhanging_veg", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_oxbowsblack_waters", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_downed_treeslogs", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_shallows", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_water_plants", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_deep_pools", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_logswoody_debris", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_boulders", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_undercut_banks", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_sinuosity", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_riparian_width", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_land_use", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_bank_erosion", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_stream_shading", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_deepest_pool", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_velocity", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_rifflerun_depth", new Double(0.0));
- WaterWayDoubleFields.put("QHEI_rifflerun_substrate", new Double(0.0));
+
+ WaterWayDoubleFields.put("WQI", new Double(0.0));
+ WaterWayDoubleFields.put("HEI", new Double(0.0));
+ WaterWayDoubleFields.put("PTI", new Double(0.0));
+
+ //Boolean Fields
+ WaterWayBoolFields.put("DWS_needs_maintenance", new Boolean(false));
+ WaterWayBoolFields.put("DWS_obstruction", new Boolean(false));
+ WaterWayBoolFields.put("DWS_polutants", new Boolean(false));
+ WaterWayBoolFields.put("DWS_presence_of_flow", new Boolean(false));
+ WaterWayBoolFields.put("DWS_screened_OK", new Boolean(false));
+ WaterWayBoolFields.put("DWS_unusual_color", new Boolean(false));
+ WaterWayBoolFields.put("DWS_unusual_odor", new Boolean(false));
+ WaterWayBoolFields.put("FC_complaint_investigation", new Boolean(false));
+ WaterWayBoolFields.put("FC_further_action_needed", new Boolean(false));
+ WaterWayBoolFields.put("FC_illicit_discharge_detected", new Boolean(false));
+ WaterWayBoolFields.put("FC_no_illicit_discharge_detected", new Boolean(false));
+ WaterWayBoolFields.put("FC_routine_evaluation", new Boolean(false));
+
+ //String Fields
+//HEI Data
+ WaterWayStringFields.put("QHEI_substrate_size", "");
+ WaterWayStringFields.put("QHEI_smothering", "");
+ WaterWayStringFields.put("QHEI_silting", "");
+ WaterWayStringFields.put("QHEI_rootwads", "");
+ WaterWayStringFields.put("QHEI_overhanging_veg", "");
+ WaterWayStringFields.put("QHEI_oxbowsblack_waters", "");
+ WaterWayStringFields.put("QHEI_downed_treeslogs","");
+ WaterWayStringFields.put("QHEI_shallows", "");
+ WaterWayStringFields.put("QHEI_water_plants", "");
+ WaterWayStringFields.put("QHEI_deep_pools", "");
+ WaterWayStringFields.put("QHEI_logswoody_debris", "");
+ WaterWayStringFields.put("QHEI_boulders", "");
+ WaterWayStringFields.put("QHEI_undercut_banks", "");
+ WaterWayStringFields.put("QHEI_sinuosity", "");
+ WaterWayStringFields.put("QHEI_riparian_width", "");
+ WaterWayStringFields.put("QHEI_land_use", "");
+ WaterWayStringFields.put("QHEI_bank_erosion", "");
+ WaterWayStringFields.put("QHEI_stream_shading", "");
+ WaterWayStringFields.put("QHEI_deepest_pool", "");
+ WaterWayStringFields.put("QHEI_velocity", "");
+ WaterWayStringFields.put("QHEI_rifflerun_depth", "");
+ WaterWayStringFields.put("QHEI_rifflerun_substrate", "");
+
+ WaterWayStringFields.put("GOD_channel_bottom_width", "");
+ WaterWayStringFields.put("GOD_invert_elevation", "");
+ WaterWayStringFields.put("GOD_latitude", "");
+ WaterWayStringFields.put("GOD_longitude", "");
+ WaterWayStringFields.put("GOD_outfall", "");
+ WaterWayStringFields.put("GOD_pipe_size", "");
+ WaterWayStringFields.put("GOD_receiving_water", "");
+ WaterWayStringFields.put("GOD_type", "");
+
+ //Comments
+ WaterWayStringFields.put("CS_comments", "");
+ WaterWayStringFields.put("CT_other_1", "");
+ WaterWayStringFields.put("CT_other_2", "");
}
}
From f19c6c61f5c1c273a55d7fa2470ef89810f913b3 Mon Sep 17 00:00:00 2001
From: evanwilliams
Date: Mon, 22 Mar 2021 15:54:33 -0400
Subject: [PATCH 15/17] added data fetching to the form functionality
---
.../DryWeatherScreening.java | 16 ++++++++++++++
.../WaterWay/ChemicalTesting.java | 22 +++++++++++++++++++
2 files changed, 38 insertions(+)
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/DryWeatherScreening.java b/app/src/main/java/com/sf/stormwaterutilityandroid/DryWeatherScreening.java
index 8220c5a..8fade11 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/DryWeatherScreening.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/DryWeatherScreening.java
@@ -27,6 +27,15 @@ public class DryWeatherScreening extends AppCompatActivity{
private FormBuilder formBuilder;
private RecyclerView recyclerView;
+
+ String flowVal = "";
+ String odorVal = "";
+ String colorVal = "";
+ String polutantsVal = "";
+ String obstructionVal = "";
+ String maintenanceVal = "";
+ String screenVal = "";
+
FormElementTextEmail element11;
//I assume onCreate is important so I will leave it unchanged
protected void onCreate(Bundle savedInstanceState) {
@@ -42,24 +51,31 @@ private void setupForm() {
//Outfall --> Question: How do you do a subheading?
FormElementTextSingleLine flow = new FormElementTextSingleLine().setTitle("Presence of Flow");
FormElementTextNumber flowData = FormElementTextNumber.createInstance(); //what data type is this?
+ flowVal = flowData.getValue();
FormElementTextSingleLine odor = new FormElementTextSingleLine().setTitle("Unusual Odor");
FormElementTextNumber odorData = FormElementTextNumber.createInstance();
+ odorVal = odorData.getValue();
FormElementTextSingleLine color = new FormElementTextSingleLine().setTitle("Unusual Color");
FormElementTextNumber colorData = FormElementTextNumber.createInstance();
+ colorVal = colorData.getValue();
FormElementTextSingleLine polutants = new FormElementTextSingleLine().setTitle("Polutants Nearby");
FormElementTextNumber polutantsData = FormElementTextNumber.createInstance();
+ polutantsVal = polutantsData.getValue();
FormElementTextSingleLine obstruction = new FormElementTextSingleLine().setTitle("Obstruction");
FormElementTextNumber obstructionData = FormElementTextNumber.createInstance();
+ obstructionVal = obstructionData.getValue();
FormElementTextSingleLine maintenance = new FormElementTextSingleLine().setTitle("Needs Maintenance");
FormElementTextNumber maintenanceData = FormElementTextNumber.createInstance();
+ maintenanceVal = maintenanceData.getValue();
FormElementTextSingleLine screen = new FormElementTextSingleLine().setTitle("Screen OK");
FormElementTextNumber screenData = FormElementTextNumber.createInstance();
+ screenVal = screenData.getValue();
List formItems = new ArrayList<>();
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/ChemicalTesting.java b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/ChemicalTesting.java
index 21cb7aa..7befa77 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/ChemicalTesting.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/ChemicalTesting.java
@@ -26,9 +26,22 @@
public class ChemicalTesting extends AppCompatActivity{
private FormBuilder formBuilder;
private RecyclerView recyclerView;
+
+ double tempVal = 0.0;
+ double turbidityVal = 0.0;
+ double phVal = 0.0;
+ double nitrateVal = 0.0;
+ double phosphateVal = 0.0;
+ double oxygenVal = 0.0;
+ double coliVal = 0.0;
+ double other1Val = 0.0;
+ double other2Val = 0.0;
+
FormElementTextEmail element11;
@Override
//I assume onCreate is important so I will leave it unchanged
+
+
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sample_fordm);
@@ -45,30 +58,39 @@ private void setupForm() {
FormElementTextSingleLine temperature = new FormElementTextSingleLine().setTitle("Temperature (C) Change");
//FormHeader temp = FormHeader.createInstance("Temperature (C) Change");
FormElementTextNumber tempData = FormElementTextNumber.createInstance(); //what data type is this?
+ tempVal = Double.parseDouble(tempData.getValue());
FormElementTextSingleLine tubidity = new FormElementTextSingleLine().setTitle("Tubidity (NTU)");
FormElementTextNumber tubidityData = FormElementTextNumber.createInstance();
+ turbidityVal = Double.parseDouble(tubidityData.getValue());
FormElementTextSingleLine pH = new FormElementTextSingleLine().setTitle("pH");
FormElementTextNumber pHData = FormElementTextNumber.createInstance();
+ phVal = Double.parseDouble(pHData.getValue());
FormElementTextSingleLine nitrate = new FormElementTextSingleLine().setTitle("Nitrate (mg/L)");
FormElementTextNumber nitrateData = FormElementTextNumber.createInstance();
+ nitrateVal = Double.parseDouble(nitrateData.getValue());
FormElementTextSingleLine phosphate = new FormElementTextSingleLine().setTitle("Total Phosphate (mg/L)");
FormElementTextNumber phosphateData = FormElementTextNumber.createInstance();
+ phosphateVal = Double.parseDouble(nitrateData.getValue());
FormElementTextSingleLine oxygen = new FormElementTextSingleLine().setTitle("Dissolved Oxygen (mg/L)");
FormElementTextNumber oxygenData = FormElementTextNumber.createInstance();
+ oxygenVal = Double.parseDouble(oxygenData.getValue());
FormElementTextSingleLine coli = new FormElementTextSingleLine().setTitle("E Coli (col/100mL)");
FormElementTextNumber coliData = FormElementTextNumber.createInstance();
+ coliVal = Double.parseDouble(coliData.getValue());
FormElementTextSingleLine other1 = new FormElementTextSingleLine().setTitle("Other 1");
FormElementTextNumber other1Data = FormElementTextNumber.createInstance();
+ other1Val = Double.parseDouble(other1Data.getValue());
FormElementTextSingleLine other2 = new FormElementTextSingleLine().setTitle("Other 2");
FormElementTextNumber other2Data = FormElementTextNumber.createInstance();
+ other2Val = Double.parseDouble(other2.getValue());
List formItems = new ArrayList<>();
From b63383e88c4237bff5aa3a964ac78dd1dbe95936 Mon Sep 17 00:00:00 2001
From: John Parrell
Date: Mon, 22 Mar 2021 20:42:36 -0400
Subject: [PATCH 16/17] Renamed waterwayForm elements for easier mapping, added
retrieval of waterwayForm values
---
.../WaterWay/WaterWayForm.java | 112 ++++++++++++------
1 file changed, 76 insertions(+), 36 deletions(-)
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWayForm.java b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWayForm.java
index 11b3bf1..2596dfa 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWayForm.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWayForm.java
@@ -8,7 +8,9 @@
import com.sf.stormwaterutilityandroid.R;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import me.riddhimanadib.formmaster.FormBuilder;
import me.riddhimanadib.formmaster.model.BaseFormElement;
@@ -18,6 +20,24 @@ public class WaterWayForm extends AppCompatActivity {
//HQ form
private FormBuilder formBuilder;
private RecyclerView recyclerView;
+ double subVal = 0.0;
+ double smothVal = 0.0;
+ double siltVal = 0.0;
+ double rootVal = 0.0;
+ double overVegVal = 0.0;
+ double oxVal = 0.0;
+ double downVal = 0.0;
+ double shallowVal = 0.0;
+ double watVal = 0.0;
+ double deepVal = 0.0;
+ double logVal = 0.0;
+ double bouldVal = 0.0;
+ double underVal = 0.0;
+ double sinVal = 0.0;
+ double natVal = 0.0;
+ double ripVal = 0.0;
+ double landVal = 0.0;
+ double bankVal = 0.0;
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -30,47 +50,67 @@ protected void onCreate(Bundle savedInstanceState) {
private void setupForm() {
formBuilder = new FormBuilder(this, recyclerView);
- FormElementTextNumber element2 = FormElementTextNumber.createInstance().setTitle("Substrate Size").setValue("0");
- FormElementTextNumber element3 = FormElementTextNumber.createInstance().setTitle("Smothering").setValue("0");
- FormElementTextNumber element4 = FormElementTextNumber.createInstance().setTitle("Silting").setValue("0");
- FormElementTextNumber element5 = FormElementTextNumber.createInstance().setTitle("Rootwads").setValue("0");
- FormElementTextNumber element6 = FormElementTextNumber.createInstance().setTitle("Overhanging Veg.").setValue("0");
- FormElementTextNumber element7 = FormElementTextNumber.createInstance().setTitle("Oxbows/Black Waters").setValue("0");
- FormElementTextNumber element8 = FormElementTextNumber.createInstance().setTitle("Downed Trees/Logs").setValue("0");
- FormElementTextNumber element9 = FormElementTextNumber.createInstance().setTitle("Shallows (slow water)").setValue("0");
- FormElementTextNumber element10 = FormElementTextNumber.createInstance().setTitle("Water Plants").setValue("0");
- FormElementTextNumber element11 = FormElementTextNumber.createInstance().setTitle("Deep Pools").setValue("0");
- FormElementTextNumber element12 = FormElementTextNumber.createInstance().setTitle("Logs/Woody Debris").setValue("0");
- FormElementTextNumber element13 = FormElementTextNumber.createInstance().setTitle("Boulders").setValue("0");
- FormElementTextNumber element14 = FormElementTextNumber.createInstance().setTitle("Undercut Banks").setValue("0");
- FormElementTextNumber element15 = FormElementTextNumber.createInstance().setTitle("Sinuosity").setValue("0");
- FormElementTextNumber element16 = FormElementTextNumber.createInstance().setTitle("Natural").setValue("0");
- FormElementTextNumber element17 = FormElementTextNumber.createInstance().setTitle("Riparian Width").setValue("0");
- FormElementTextNumber element18 = FormElementTextNumber.createInstance().setTitle("Land Use").setValue("0");
- FormElementTextNumber element19 = FormElementTextNumber.createInstance().setTitle("Bank Erosion").setValue("0");
+ FormElementTextNumber subSize = FormElementTextNumber.createInstance().setTitle("Substrate Size").setValue("0");
+ FormElementTextNumber smothering = FormElementTextNumber.createInstance().setTitle("Smothering").setValue("0");
+ FormElementTextNumber silting = FormElementTextNumber.createInstance().setTitle("Silting").setValue("0");
+ FormElementTextNumber rootwads = FormElementTextNumber.createInstance().setTitle("Rootwads").setValue("0");
+ FormElementTextNumber overhangingVeg = FormElementTextNumber.createInstance().setTitle("Overhanging Veg.").setValue("0");
+ FormElementTextNumber oxbows = FormElementTextNumber.createInstance().setTitle("Oxbows/Black Waters").setValue("0");
+ FormElementTextNumber downed = FormElementTextNumber.createInstance().setTitle("Downed Trees/Logs").setValue("0");
+ FormElementTextNumber shallows = FormElementTextNumber.createInstance().setTitle("Shallows (slow water)").setValue("0");
+ FormElementTextNumber waterPlants = FormElementTextNumber.createInstance().setTitle("Water Plants").setValue("0");
+ FormElementTextNumber deepPools = FormElementTextNumber.createInstance().setTitle("Deep Pools").setValue("0");
+ FormElementTextNumber logs = FormElementTextNumber.createInstance().setTitle("Logs/Woody Debris").setValue("0");
+ FormElementTextNumber boulders = FormElementTextNumber.createInstance().setTitle("Boulders").setValue("0");
+ FormElementTextNumber undercutBanks = FormElementTextNumber.createInstance().setTitle("Undercut Banks").setValue("0");
+ FormElementTextNumber sinuosity = FormElementTextNumber.createInstance().setTitle("Sinuosity").setValue("0");
+ FormElementTextNumber natural = FormElementTextNumber.createInstance().setTitle("Natural").setValue("0");
+ FormElementTextNumber riparianWidth = FormElementTextNumber.createInstance().setTitle("Riparian Width").setValue("0");
+ FormElementTextNumber landUse = FormElementTextNumber.createInstance().setTitle("Land Use").setValue("0");
+ FormElementTextNumber bankErosion = FormElementTextNumber.createInstance().setTitle("Bank Erosion").setValue("0");
List formItems = new ArrayList<>();
- formItems.add(element2);
- formItems.add(element3);
- formItems.add(element4);
- formItems.add(element5);
- formItems.add(element6);
- formItems.add(element7);
- formItems.add(element8);
- formItems.add(element9);
- formItems.add(element10);
- formItems.add(element11);
- formItems.add(element12);
- formItems.add(element13);
- formItems.add(element14);
- formItems.add(element15);
- formItems.add(element16);
- formItems.add(element17);
- formItems.add(element18);
- formItems.add(element19);
+ formItems.add(subSize);
+ formItems.add(smothering);
+ formItems.add(silting);
+ formItems.add(rootwads);
+ formItems.add(overhangingVeg);
+ formItems.add(oxbows);
+ formItems.add(downed);
+ formItems.add(shallows);
+ formItems.add(waterPlants);
+ formItems.add(deepPools);
+ formItems.add(logs);
+ formItems.add(boulders);
+ formItems.add(undercutBanks);
+ formItems.add(sinuosity);
+ formItems.add(natural);
+ formItems.add(riparianWidth);
+ formItems.add(landUse);
+ formItems.add(bankErosion);
formBuilder.addFormElements(formItems);
+ subVal = Double.parseDouble(subSize.getValue());
+ smothVal = Double.parseDouble(smothering.getValue());
+ siltVal = Double.parseDouble(silting.getValue());
+ rootVal = Double.parseDouble(rootwads.getValue());
+ overVegVal = Double.parseDouble(overhangingVeg.getValue());
+ oxVal = Double.parseDouble(oxbows.getValue());
+ downVal = Double.parseDouble(downed.getValue());
+ shallowVal = Double.parseDouble(shallows.getValue());
+ watVal = Double.parseDouble(waterPlants.getValue());
+ deepVal = Double.parseDouble(deepPools.getValue());
+ logVal = Double.parseDouble(logs.getValue());
+ bouldVal = Double.parseDouble(boulders.getValue());
+ underVal = Double.parseDouble(undercutBanks.getValue());
+ sinVal = Double.parseDouble(sinuosity.getValue());
+ natVal = Double.parseDouble(natural.getValue());
+ ripVal = Double.parseDouble(riparianWidth.getValue());
+ landVal = Double.parseDouble(landUse.getValue());
+ bankVal = Double.parseDouble(bankErosion.getValue());
+
+
}
}
\ No newline at end of file
From 39ba0fe6b2c2a441156a3e9e8a1643fe6e2d4886 Mon Sep 17 00:00:00 2001
From: John Parrell
Date: Mon, 22 Mar 2021 20:48:40 -0400
Subject: [PATCH 17/17] Added tolerant form with retrieval
---
.../WaterWay/WaterWayForm.java | 31 +++++++++++++++++--
1 file changed, 29 insertions(+), 2 deletions(-)
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWayForm.java b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWayForm.java
index 2596dfa..2d934ac 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWayForm.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WaterWayForm.java
@@ -39,15 +39,21 @@ public class WaterWayForm extends AppCompatActivity {
double landVal = 0.0;
double bankVal = 0.0;
+ //Tolerant Form
+ double intolerantVal = 0.0;
+ double modTolerantVal = 0.0;
+ double fairTolerantVal = 0.0;
+ double veryTolerantVal = 0.0;
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sample_fordm);
recyclerView = findViewById(R.id.recyclerView2);
- setupForm();
+ setupHQForm();
}
- private void setupForm() {
+ private void setupHQForm() {
formBuilder = new FormBuilder(this, recyclerView);
FormElementTextNumber subSize = FormElementTextNumber.createInstance().setTitle("Substrate Size").setValue("0");
@@ -112,5 +118,26 @@ private void setupForm() {
bankVal = Double.parseDouble(bankErosion.getValue());
+ }
+ private void setupTolerantForm(){
+ formBuilder = new FormBuilder(this, recyclerView);
+ FormElementTextNumber intolerant = FormElementTextNumber.createInstance().setTitle("Intolerant").setValue("0");
+ FormElementTextNumber moderatelyTolerant = FormElementTextNumber.createInstance().setTitle("Moderately Tolerant").setValue("0");
+ FormElementTextNumber fairlyTolerant = FormElementTextNumber.createInstance().setTitle("Fairly Tolerant").setValue("0");
+ FormElementTextNumber veryTolerant = FormElementTextNumber.createInstance().setTitle("Very Tolerant").setValue("0");
+
+ List formItems = new ArrayList<>();
+ formItems.add(intolerant);
+ formItems.add(moderatelyTolerant);
+ formItems.add(fairlyTolerant);
+ formItems.add(veryTolerant);
+
+ intolerantVal = Double.parseDouble(intolerant.getValue());
+ modTolerantVal = Double.parseDouble(moderatelyTolerant.getValue());
+ fairTolerantVal = Double.parseDouble(fairlyTolerant.getValue());
+ veryTolerantVal = Double.parseDouble(veryTolerant.getValue());
+
+
+
}
}
\ No newline at end of file