From 87dad68685295b27177b92201c102d5226e20d4f Mon Sep 17 00:00:00 2001 From: Tor-Einar Skog <tor-einar.skog@nibio.no> Date: Thu, 11 May 2023 16:01:26 +0200 Subject: [PATCH] Add observation.is_positive [VIPSUTV-469] --- .../controller/servlet/ObservationController.java | 1 + .../java/no/nibio/vips/logic/entity/Observation.java | 11 ++++++++++- .../nibio/vips/logic/i18n/vipslogictexts.properties | 2 +- .../vips/logic/i18n/vipslogictexts_bs.properties | 1 + .../vips/logic/i18n/vipslogictexts_hr.properties | 2 +- .../vips/logic/i18n/vipslogictexts_nb.properties | 3 +-- .../vips/logic/i18n/vipslogictexts_sr.properties | 2 +- .../vips/logic/i18n/vipslogictexts_zh_CN.properties | 1 + src/main/webapp/formdefinitions/observationForm.json | 5 +++++ src/main/webapp/templates/observationForm.ftl | 10 +++++++++- 10 files changed, 31 insertions(+), 7 deletions(-) diff --git a/src/main/java/no/nibio/vips/logic/controller/servlet/ObservationController.java b/src/main/java/no/nibio/vips/logic/controller/servlet/ObservationController.java index 8cdcbb17..66842864 100755 --- a/src/main/java/no/nibio/vips/logic/controller/servlet/ObservationController.java +++ b/src/main/java/no/nibio/vips/logic/controller/servlet/ObservationController.java @@ -464,6 +464,7 @@ public class ObservationController extends HttpServlet { null : formValidation.getFormField("observationData").getWebValue() ); + observation.setIsPositive(formValidation.getFormField("isPositiveRegistration").getWebValue() != null); observation.setIsQuantified(formValidation.getFormField("isQuantified").getWebValue() != null); this.setObservationLocationVisibility(observation, formValidation.getFormField("locationVisibility").getWebValue()); observation.setBroadcastMessage(formValidation.getFormField("broadcastMessage").getWebValue() != null); diff --git a/src/main/java/no/nibio/vips/logic/entity/Observation.java b/src/main/java/no/nibio/vips/logic/entity/Observation.java index d34522ac..d9d732ac 100755 --- a/src/main/java/no/nibio/vips/logic/entity/Observation.java +++ b/src/main/java/no/nibio/vips/logic/entity/Observation.java @@ -105,6 +105,7 @@ public class Observation implements Serializable, no.nibio.vips.observation.Obse private String statusRemarks; private String observationData; private Boolean isQuantified; + private Boolean isPositive; private Boolean broadcastMessage; private Boolean locationIsPrivate; private PolygonService polygonService; @@ -665,5 +666,13 @@ public class Observation implements Serializable, no.nibio.vips.observation.Obse public void setLastEditedTime(Date lastEditedTime) { this.lastEditedTime = lastEditedTime; } - + + @Column(name = "is_positive") + public Boolean getIsPositive() { + return isPositive; + } + + public void setIsPositive(Boolean positive) { + isPositive = positive; + } } diff --git a/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts.properties b/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts.properties index b05c1069..7a7b2ba2 100755 --- a/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts.properties +++ b/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts.properties @@ -389,7 +389,7 @@ isPest = Is pest isPrivate = Is private isQuantified = Is quantified - +isPositiveRegistration=Positive registration isRequiredField = Required field language = Language diff --git a/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_bs.properties b/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_bs.properties index 74853b8c..1c08fd30 100755 --- a/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_bs.properties +++ b/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_bs.properties @@ -15,6 +15,7 @@ # You should have received a copy of the NIBIO Open Source License # along with VIPSLogic. If not, see <http://www.nibio.no/licenses/>. # +isPositiveRegistration=Positive registration ALTERNARIA = Alternaria Model APPLESCABM = Apple scab model diff --git a/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_hr.properties b/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_hr.properties index f601b244..89b795fc 100755 --- a/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_hr.properties +++ b/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_hr.properties @@ -15,7 +15,7 @@ # You should have received a copy of the NIBIO Open Source License # along with VIPSLogic. If not, see <http://www.nibio.no/licenses/>. # - +isPositiveRegistration=Positive registration ALTERNARIA = Alternaria Model APPLESCABM = Apple scab model diff --git a/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_nb.properties b/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_nb.properties index 086079ba..15d53c9e 100755 --- a/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_nb.properties +++ b/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_nb.properties @@ -15,8 +15,7 @@ # You should have received a copy of the NIBIO Open Source License # along with VIPSLogic. If not, see <http://www.nibio.no/licenses/>. # - - +isPositiveRegistration=Positiv registrering ALTERNARIA = Alternariamodell APPLESCABM = Epleskurvmodell diff --git a/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_sr.properties b/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_sr.properties index e413bd27..701fc7ac 100755 --- a/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_sr.properties +++ b/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_sr.properties @@ -15,7 +15,7 @@ # You should have received a copy of the NIBIO Open Source License # along with VIPSLogic. If not, see <http://www.nibio.no/licenses/>. # - +isPositiveRegistration=Positive registration ALTERNARIA = Alternaria Model APPLESCABM = Apple scab model diff --git a/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_zh_CN.properties b/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_zh_CN.properties index b0b8fa8f..915f84b1 100755 --- a/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_zh_CN.properties +++ b/src/main/resources/no/nibio/vips/logic/i18n/vipslogictexts_zh_CN.properties @@ -15,6 +15,7 @@ # You should have received a copy of the NIBIO Open Source License # along with VIPSLogic. If not, see <http://www.nibio.no/licenses/>. # +isPositiveRegistration=Positive registration ALTERNARIA = Alternaria Model APPLESCABM = \u82f9\u679c\u9ed1\u661f\u75c5\u6a21\u578b diff --git a/src/main/webapp/formdefinitions/observationForm.json b/src/main/webapp/formdefinitions/observationForm.json index 652dd4e9..d559d505 100755 --- a/src/main/webapp/formdefinitions/observationForm.json +++ b/src/main/webapp/formdefinitions/observationForm.json @@ -69,6 +69,11 @@ "fieldType" : "SELECT_MULTIPLE", "required" : false }, + { + "name" : "isPositive", + "dataType" : "STRING", + "required" : false + }, { "name" : "isQuantified", "dataType" : "STRING", diff --git a/src/main/webapp/templates/observationForm.ftl b/src/main/webapp/templates/observationForm.ftl index aa57b3d0..24bd4a96 100755 --- a/src/main/webapp/templates/observationForm.ftl +++ b/src/main/webapp/templates/observationForm.ftl @@ -619,7 +619,15 @@ <input type="text" class="form-control" id="timeOfObservation" name="timeOfObservation" placeholder="${i18nBundle.timeOfObservation}" value="${(observation.timeOfObservation?string("yyyy-MM-dd HH:mmZ"))!.now?string("yyyy-MM-dd HH:mmZ")}" onblur="validateField(this);" <#if editAccess!="W">readonly="readonly"</#if>/> <span class="help-block" id="${formId}_timeOfObservation_validation"></span> </div> - + <div class="form-group"> + <div class="checkbox"> + <#if editAccess!="W" && observation.isPositive?has_content && observation.isPositive ==true><input type="hidden" name="isPositive" value="true"/></#if> + <label> + <input type="checkbox" name="isPositive"<#if observation.isPositive?has_content && observation.isPositive == false><#else> checked="checked"</#if> <#if editAccess!="W">disabled="disabled"</#if>/> + </label> + ${i18nBundle.isPositiveRegistration} + </div> + </div> <div class="form-group"> <div class="checkbox"> <#if editAccess!="W" && observation.isQuantified?has_content && observation.isQuantified ==true><input type="hidden" name="isQuantified" value="true"/></#if> -- GitLab