Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe

Commits:

18 changed files:

Changes:

  • client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/data/common/TripUIHandler.java
    ... ... @@ -38,7 +38,7 @@ class TripUIHandler extends GeneratedTripUIHandler {
    38 38
         public void startEditUI() {
    
    39 39
             TripDto bean = getModel().getStates().getBean();
    
    40 40
             // See https://gitlab.com/ultreiaio/ird-observe/-/issues/2729#note_1472547867
    
    41
    -        if (bean.getActivitiesAcquisitionModeByTimeEnabled() == null) {
    
    41
    +        if (bean.isPersisted() && bean.getActivitiesAcquisitionModeByTimeEnabled() == null) {
    
    42 42
                 // compute it
    
    43 43
                 boolean activitiesAcquisitionModeByTimeEnabled = getPsCommonTripService().isActivitiesAcquisitionModeByTimeEnabled(bean.getId());
    
    44 44
                 // set it to bean (will be used then by validation on field activitiesAcquisitionMode)
    

  • core/api/validation/src/main/filtered-resources/META-INF/validators/validation.json
    ... ... @@ -14657,10 +14657,10 @@
    14657 14657
             ]
    
    14658 14658
           },
    
    14659 14659
           {
    
    14660
    -        "name": "endTime",
    
    14660
    +        "name": "endTimeStamp",
    
    14661 14661
             "comments": [
    
    14662
    -          "endTime >= haulingEndTime and max delay is 45 minutes",
    
    14663
    -          "endTime >= startTime"
    
    14662
    +          "endTimeStamp >= haulingEndTimeStamp and min delay is 45 minutes",
    
    14663
    +          "endTimeStamp >= startTime"
    
    14664 14664
             ]
    
    14665 14665
           },
    
    14666 14666
           {
    
    ... ... @@ -14670,9 +14670,9 @@
    14670 14670
             ]
    
    14671 14671
           },
    
    14672 14672
           {
    
    14673
    -        "name": "haulingEndTime",
    
    14673
    +        "name": "haulingEndTimeStamp",
    
    14674 14674
             "comments": [
    
    14675
    -          "haulingEndTime >= startTime"
    
    14675
    +          "haulingEndTimeStamp >= startTime"
    
    14676 14676
             ]
    
    14677 14677
           },
    
    14678 14678
           {
    
    ... ... @@ -14754,9 +14754,9 @@
    14754 14754
             ]
    
    14755 14755
           },
    
    14756 14756
           {
    
    14757
    -        "name": "endTime",
    
    14757
    +        "name": "endTimeStamp",
    
    14758 14758
             "comments": [
    
    14759
    -          "endTime >= startTime and max delay is 300 minutes"
    
    14759
    +          "endTimeStamp >= startTime and max delay is 300 minutes"
    
    14760 14760
             ]
    
    14761 14761
           },
    
    14762 14762
           {
    
    ... ... @@ -14813,10 +14813,10 @@
    14813 14813
             ]
    
    14814 14814
           },
    
    14815 14815
           {
    
    14816
    -        "name": "endTime",
    
    14816
    +        "name": "endTimeStamp",
    
    14817 14817
             "comments": [
    
    14818
    -          "endTime >= haulingEndTime and max delay is 45 minutes",
    
    14819
    -          "endTime >= startTime"
    
    14818
    +          "endTimeStamp >= haulingEndTimeStamp and min delay is 45 minutes",
    
    14819
    +          "endTimeStamp >= startTime"
    
    14820 14820
             ]
    
    14821 14821
           },
    
    14822 14822
           {
    
    ... ... @@ -14826,9 +14826,9 @@
    14826 14826
             ]
    
    14827 14827
           },
    
    14828 14828
           {
    
    14829
    -        "name": "haulingEndTime",
    
    14829
    +        "name": "haulingEndTimeStamp",
    
    14830 14830
             "comments": [
    
    14831
    -          "haulingEndTime >= startTime"
    
    14831
    +          "haulingEndTimeStamp >= startTime"
    
    14832 14832
             ]
    
    14833 14833
           },
    
    14834 14834
           {
    
    ... ... @@ -14910,9 +14910,9 @@
    14910 14910
             ]
    
    14911 14911
           },
    
    14912 14912
           {
    
    14913
    -        "name": "endTime",
    
    14913
    +        "name": "endTimeStamp",
    
    14914 14914
             "comments": [
    
    14915
    -          "endTime >= startTime and max delay is 300 minutes"
    
    14915
    +          "endTimeStamp >= startTime and max delay is 300 minutes"
    
    14916 14916
             ]
    
    14917 14917
           },
    
    14918 14918
           {
    

  • core/api/validation/src/main/i18n/getters/eugene.getter
    ... ... @@ -359,8 +359,10 @@ observe.data.ps.observation.SchoolEstimate.meanWeight
    359 359
     observe.data.ps.observation.SchoolEstimate.species
    
    360 360
     observe.data.ps.observation.SchoolEstimate.totalWeight
    
    361 361
     observe.data.ps.observation.Set.currentMeasureDepth
    
    362
    +observe.data.ps.observation.Set.endTimeStamp
    
    362 363
     observe.data.ps.observation.Set.haulingEndDate
    
    363 364
     observe.data.ps.observation.Set.haulingEndTime
    
    365
    +observe.data.ps.observation.Set.haulingEndTimeStamp
    
    364 366
     observe.data.ps.observation.Set.haulingStartTimeStamp
    
    365 367
     observe.data.ps.observation.Set.maxGearDepth
    
    366 368
     observe.data.ps.observation.Set.schoolMeanDepth
    

  • core/api/validation/src/main/i18n/getters/validation-messages.getter
    ... ... @@ -111,12 +111,12 @@ observe.data.ps.observation.SampleMeasure.weight.validation.required
    111 111
     observe.data.ps.observation.SchoolEstimate.meanWeight.validation.required
    
    112 112
     observe.data.ps.observation.SchoolEstimate.totalWeight.validation.required
    
    113 113
     observe.data.ps.observation.Set.validation.endDate.after.haulingEndDate
    
    114
    -observe.data.ps.observation.Set.validation.endTime.after.haulingEndTime
    
    115
    -observe.data.ps.observation.Set.validation.endTime.after.startTime
    
    116
    -observe.data.ps.observation.Set.validation.endTime.delay.too.long
    
    117
    -observe.data.ps.observation.Set.validation.endTime.delay.too.short
    
    114
    +observe.data.ps.observation.Set.validation.endTimeStamp.after.haulingEndTimeStamp
    
    115
    +observe.data.ps.observation.Set.validation.endTimeStamp.after.startTime
    
    116
    +observe.data.ps.observation.Set.validation.endTimeStamp.delay.too.long
    
    117
    +observe.data.ps.observation.Set.validation.endTimeStamp.delay.too.short
    
    118 118
     observe.data.ps.observation.Set.validation.haulingEndDate.after.currentPsObservationRoute.date
    
    119
    -observe.data.ps.observation.Set.validation.haulingEndTime.after.startTime
    
    119
    +observe.data.ps.observation.Set.validation.haulingEndTimeStamp.after.startTime
    
    120 120
     observe.data.ps.observation.Set.validation.haulingStartTimeStamp.after.startTime
    
    121 121
     observe.data.ps.observation.Set.validation.startTime.after.currentPsObservationActivity.time
    
    122 122
     observe.referential.Referential.validation.disabled
    

  • core/api/validation/src/main/resources/fr/ird/observe/dto/data/ps/observation/SetDto-create-error-validation.xml
    ... ... @@ -86,18 +86,18 @@
    86 86
         </field-validator>
    
    87 87
       </field>
    
    88 88
     
    
    89
    -  <field name="endTime">
    
    90
    -    <!-- endTime >= startTime -->
    
    91
    -    <field-validator type="timeAfter">
    
    89
    +  <field name="endTimeStamp">
    
    90
    +    <!-- endTimeStamp >= startTime -->
    
    91
    +    <field-validator type="timestampAfter">
    
    92 92
           <param name="otherDateProperty">startTime</param>
    
    93
    -      <message>observe.data.ps.observation.Set.validation.endTime.after.startTime##${startDate}##${endDate}</message>
    
    93
    +      <message>observe.data.ps.observation.Set.validation.endTimeStamp.after.startTime##${startDate}##${endDate}</message>
    
    94 94
         </field-validator>
    
    95
    -    <!-- endTime >= haulingEndTime and max delay is 45 minutes -->
    
    96
    -    <field-validator type="timeAfter">
    
    97
    -      <param name="otherDateProperty">haulingEndTime</param>
    
    95
    +    <!-- endTimeStamp >= haulingEndTimeStamp and min delay is 45 minutes -->
    
    96
    +    <field-validator type="timestampAfter">
    
    97
    +      <param name="otherDateProperty">haulingEndTimeStamp</param>
    
    98 98
           <param name="minDelayInMinutes">45</param>
    
    99
    -      <param name="delayErrorMessage">observe.data.ps.observation.Set.validation.endTime.delay.too.short##${delayInMinutes}##${minDelayInMinutes}</param>
    
    100
    -      <message>observe.data.ps.observation.Set.validation.endTime.after.haulingEndTime##${startDate}##${endDate}</message>
    
    99
    +      <param name="delayErrorMessage">observe.data.ps.observation.Set.validation.endTimeStamp.delay.too.short##${delayInMinutes}##${minDelayInMinutes}</param>
    
    100
    +      <message>observe.data.ps.observation.Set.validation.endTimeStamp.after.haulingEndTimeStamp##${startDate}##${endDate}</message>
    
    101 101
         </field-validator>
    
    102 102
       </field>
    
    103 103
     
    
    ... ... @@ -109,11 +109,11 @@
    109 109
         </field-validator>
    
    110 110
       </field>
    
    111 111
     
    
    112
    -  <field name="haulingEndTime">
    
    113
    -    <!-- haulingEndTime >= startTime -->
    
    114
    -    <field-validator type="timeAfter">
    
    112
    +  <field name="haulingEndTimeStamp">
    
    113
    +    <!-- haulingEndTimeStamp >= startTime -->
    
    114
    +    <field-validator type="timestampAfter">
    
    115 115
           <param name="otherDateProperty">startTime</param>
    
    116
    -      <message>observe.data.ps.observation.Set.validation.haulingEndTime.after.startTime##${startDate}##${endDate}</message>
    
    116
    +      <message>observe.data.ps.observation.Set.validation.haulingEndTimeStamp.after.startTime##${startDate}##${endDate}</message>
    
    117 117
         </field-validator>
    
    118 118
       </field>
    
    119 119
     
    

  • core/api/validation/src/main/resources/fr/ird/observe/dto/data/ps/observation/SetDto-create-warning-validation.xml
    ... ... @@ -31,13 +31,13 @@
    31 31
         </field-validator>
    
    32 32
       </field>
    
    33 33
     
    
    34
    -  <field name="endTime">
    
    35
    -    <!-- endTime >= startTime and max delay is 300 minutes -->
    
    36
    -    <field-validator type="timeAfter">
    
    34
    +  <field name="endTimeStamp">
    
    35
    +    <!-- endTimeStamp >= startTime and max delay is 300 minutes -->
    
    36
    +    <field-validator type="timestampAfter">
    
    37 37
           <param name="otherDateProperty">startTime</param>
    
    38 38
           <param name="maxDelayInMinutes">300</param>
    
    39
    -      <param name="delayErrorMessage">observe.data.ps.observation.Set.validation.endTime.delay.too.long##${delayInMinutes}##${maxDelayInMinutes}</param>
    
    40
    -      <message>observe.data.ps.observation.Set.validation.endTime.after.startTime##${startDate}##${endDate}</message>
    
    39
    +      <param name="delayErrorMessage">observe.data.ps.observation.Set.validation.endTimeStamp.delay.too.long##${delayInMinutes}##${maxDelayInMinutes}</param>
    
    40
    +      <message>observe.data.ps.observation.Set.validation.endTimeStamp.after.startTime##${startDate}##${endDate}</message>
    
    41 41
         </field-validator>
    
    42 42
       </field>
    
    43 43
     
    

  • core/api/validation/src/main/resources/fr/ird/observe/dto/data/ps/observation/SetDto-update-error-validation.xml
    ... ... @@ -86,18 +86,18 @@
    86 86
         </field-validator>
    
    87 87
       </field>
    
    88 88
     
    
    89
    -  <field name="endTime">
    
    90
    -    <!-- endTime >= startTime -->
    
    91
    -    <field-validator type="timeAfter">
    
    89
    +  <field name="endTimeStamp">
    
    90
    +    <!-- endTimeStamp >= startTime -->
    
    91
    +    <field-validator type="timestampAfter">
    
    92 92
           <param name="otherDateProperty">startTime</param>
    
    93
    -      <message>observe.data.ps.observation.Set.validation.endTime.after.startTime##${startDate}##${endDate}</message>
    
    93
    +      <message>observe.data.ps.observation.Set.validation.endTimeStamp.after.startTime##${startDate}##${endDate}</message>
    
    94 94
         </field-validator>
    
    95
    -    <!-- endTime >= haulingEndTime and max delay is 45 minutes -->
    
    96
    -    <field-validator type="timeAfter">
    
    97
    -      <param name="otherDateProperty">haulingEndTime</param>
    
    95
    +    <!-- endTimeStamp >= haulingEndTimeStamp and min delay is 45 minutes -->
    
    96
    +    <field-validator type="timestampAfter">
    
    97
    +      <param name="otherDateProperty">haulingEndTimeStamp</param>
    
    98 98
           <param name="minDelayInMinutes">45</param>
    
    99
    -      <param name="delayErrorMessage">observe.data.ps.observation.Set.validation.endTime.delay.too.short##${delayInMinutes}##${minDelayInMinutes}</param>
    
    100
    -      <message>observe.data.ps.observation.Set.validation.endTime.after.haulingEndTime##${startDate}##${endDate}</message>
    
    99
    +      <param name="delayErrorMessage">observe.data.ps.observation.Set.validation.endTimeStamp.delay.too.short##${delayInMinutes}##${minDelayInMinutes}</param>
    
    100
    +      <message>observe.data.ps.observation.Set.validation.endTimeStamp.after.haulingEndTimeStamp##${startDate}##${endDate}</message>
    
    101 101
         </field-validator>
    
    102 102
       </field>
    
    103 103
     
    
    ... ... @@ -109,11 +109,11 @@
    109 109
         </field-validator>
    
    110 110
       </field>
    
    111 111
     
    
    112
    -  <field name="haulingEndTime">
    
    113
    -    <!-- haulingEndTime >= startTime -->
    
    114
    -    <field-validator type="timeAfter">
    
    112
    +  <field name="haulingEndTimeStamp">
    
    113
    +    <!-- haulingEndTimeStamp >= startTime -->
    
    114
    +    <field-validator type="timestampAfter">
    
    115 115
           <param name="otherDateProperty">startTime</param>
    
    116
    -      <message>observe.data.ps.observation.Set.validation.haulingEndTime.after.startTime##${startDate}##${endDate}</message>
    
    116
    +      <message>observe.data.ps.observation.Set.validation.haulingEndTimeStamp.after.startTime##${startDate}##${endDate}</message>
    
    117 117
         </field-validator>
    
    118 118
       </field>
    
    119 119
     
    

  • core/api/validation/src/main/resources/fr/ird/observe/dto/data/ps/observation/SetDto-update-warning-validation.xml
    ... ... @@ -31,13 +31,13 @@
    31 31
         </field-validator>
    
    32 32
       </field>
    
    33 33
     
    
    34
    -  <field name="endTime">
    
    35
    -    <!-- endTime >= startTime and max delay is 300 minutes -->
    
    36
    -    <field-validator type="timeAfter">
    
    34
    +  <field name="endTimeStamp">
    
    35
    +    <!-- endTimeStamp >= startTime and max delay is 300 minutes -->
    
    36
    +    <field-validator type="timestampAfter">
    
    37 37
           <param name="otherDateProperty">startTime</param>
    
    38 38
           <param name="maxDelayInMinutes">300</param>
    
    39
    -      <param name="delayErrorMessage">observe.data.ps.observation.Set.validation.endTime.delay.too.long##${delayInMinutes}##${maxDelayInMinutes}</param>
    
    40
    -      <message>observe.data.ps.observation.Set.validation.endTime.after.startTime##${startDate}##${endDate}</message>
    
    39
    +      <param name="delayErrorMessage">observe.data.ps.observation.Set.validation.endTimeStamp.delay.too.long##${delayInMinutes}##${maxDelayInMinutes}</param>
    
    40
    +      <message>observe.data.ps.observation.Set.validation.endTimeStamp.after.startTime##${startDate}##${endDate}</message>
    
    41 41
         </field-validator>
    
    42 42
       </field>
    
    43 43
     
    

  • core/persistence/resources/src/main/resources/fr/ird/observe/entities/data/ps/observation/Set/validation-create.json
    ... ... @@ -31,13 +31,13 @@
    31 31
           "endDate >= haulingEndDate"
    
    32 32
         ]
    
    33 33
       },
    
    34
    -  "endTime": {
    
    34
    +  "endTimeStamp": {
    
    35 35
         "errors": [
    
    36
    -      "endTime >= haulingEndTime and max delay is 45 minutes",
    
    37
    -      "endTime >= startTime"
    
    36
    +      "endTimeStamp >= haulingEndTimeStamp and min delay is 45 minutes",
    
    37
    +      "endTimeStamp >= startTime"
    
    38 38
         ],
    
    39 39
         "warnings": [
    
    40
    -      "endTime >= startTime and max delay is 300 minutes"
    
    40
    +      "endTimeStamp >= startTime and max delay is 300 minutes"
    
    41 41
         ]
    
    42 42
       },
    
    43 43
       "haulingEndDate": {
    
    ... ... @@ -45,9 +45,9 @@
    45 45
           "haulingEndDate >= currentPsObservationRoute.date"
    
    46 46
         ]
    
    47 47
       },
    
    48
    -  "haulingEndTime": {
    
    48
    +  "haulingEndTimeStamp": {
    
    49 49
         "errors": [
    
    50
    -      "haulingEndTime >= startTime"
    
    50
    +      "haulingEndTimeStamp >= startTime"
    
    51 51
         ]
    
    52 52
       },
    
    53 53
       "haulingStartTimeStamp": {
    

  • core/persistence/resources/src/main/resources/fr/ird/observe/entities/data/ps/observation/Set/validation-update.json
    ... ... @@ -31,13 +31,13 @@
    31 31
           "endDate >= haulingEndDate"
    
    32 32
         ]
    
    33 33
       },
    
    34
    -  "endTime": {
    
    34
    +  "endTimeStamp": {
    
    35 35
         "errors": [
    
    36
    -      "endTime >= haulingEndTime and max delay is 45 minutes",
    
    37
    -      "endTime >= startTime"
    
    36
    +      "endTimeStamp >= haulingEndTimeStamp and min delay is 45 minutes",
    
    37
    +      "endTimeStamp >= startTime"
    
    38 38
         ],
    
    39 39
         "warnings": [
    
    40
    -      "endTime >= startTime and max delay is 300 minutes"
    
    40
    +      "endTimeStamp >= startTime and max delay is 300 minutes"
    
    41 41
         ]
    
    42 42
       },
    
    43 43
       "haulingEndDate": {
    
    ... ... @@ -45,9 +45,9 @@
    45 45
           "haulingEndDate >= currentPsObservationRoute.date"
    
    46 46
         ]
    
    47 47
       },
    
    48
    -  "haulingEndTime": {
    
    48
    +  "haulingEndTimeStamp": {
    
    49 49
         "errors": [
    
    50
    -      "haulingEndTime >= startTime"
    
    50
    +      "haulingEndTimeStamp >= startTime"
    
    51 51
         ]
    
    52 52
       },
    
    53 53
       "haulingStartTimeStamp": {
    

  • core/services/i18n/src/main/i18n/translations/services_en_GB.properties
    ... ... @@ -1488,8 +1488,13 @@ observe.data.ps.observation.Set.validation.endTime.after.haulingEndTime=End time
    1488 1488
     observe.data.ps.observation.Set.validation.endTime.after.startTime=End time (%2$s) must be after start time (%1$s).
    
    1489 1489
     observe.data.ps.observation.Set.validation.endTime.delay.too.long=Delay of set (%1$s minutes) is too long (maximum of %2$s minutes).
    
    1490 1490
     observe.data.ps.observation.Set.validation.endTime.delay.too.short=Delay between start of set and end of pursing time (%1$s minutes) is too short (minimum of %2$s minutes).
    
    1491
    +observe.data.ps.observation.Set.validation.endTimeStamp.after.haulingEndTimeStamp=End time (%2$s) must be after end pursing time (%1$s).
    
    1492
    +observe.data.ps.observation.Set.validation.endTimeStamp.after.startTime=End time (%2$s) must be after start time (%1$s).
    
    1493
    +observe.data.ps.observation.Set.validation.endTimeStamp.delay.too.long=Delay of set (%1$s minutes) is too long (maximum of %2$s minutes).
    
    1494
    +observe.data.ps.observation.Set.validation.endTimeStamp.delay.too.short=Delay between start of set and end of pursing time (%1$s minutes) is too short (minimum of %2$s minutes).
    
    1491 1495
     observe.data.ps.observation.Set.validation.haulingEndDate.after.currentPsObservationRoute.date=End pursing date (%2$s) must be after observation date (%1$s).
    
    1492 1496
     observe.data.ps.observation.Set.validation.haulingEndTime.after.startTime=Pursing time (%2$s) must be after starting time (%1$s).
    
    1497
    +observe.data.ps.observation.Set.validation.haulingEndTimeStamp.after.startTime=End time (%2$s) must be after start time (%1$s).
    
    1493 1498
     observe.data.ps.observation.Set.validation.haulingStartTimeStamp.after.startTime=Hauling start time (%2$s) must be after starting time (%1).
    
    1494 1499
     observe.data.ps.observation.Set.validation.startTime.after.currentPsObservationActivity.time=Start time (%2$s) must be before end time (%1$s).
    
    1495 1500
     observe.data.ps.observation.SetCatch.catches=Catches
    

  • core/services/i18n/src/main/i18n/translations/services_es_ES.properties
    ... ... @@ -1488,8 +1488,13 @@ observe.data.ps.observation.Set.validation.endTime.after.haulingEndTime=La hora
    1488 1488
     observe.data.ps.observation.Set.validation.endTime.after.startTime=End time (%2$s) must be after start time (%1$s). \#TODO
    
    1489 1489
     observe.data.ps.observation.Set.validation.endTime.delay.too.long=La duración del lance (%1$s minutes) es elevada (máximo %2$s minutos). \#TODO
    
    1490 1490
     observe.data.ps.observation.Set.validation.endTime.delay.too.short=La duración entre la hora final del lance y la de fin de recogida de la jareta debe (%1$s minutos) ser al menos de %1$s minutos. \#TODO
    
    1491
    +observe.data.ps.observation.Set.validation.endTimeStamp.after.haulingEndTimeStamp=La hora de fin (%2$s) debe ser superior o igual a la hora de fin de recogida de la jareta (%1$s).
    
    1492
    +observe.data.ps.observation.Set.validation.endTimeStamp.after.startTime=End time (%2$s) must be after start time (%1$s). \#TODO
    
    1493
    +observe.data.ps.observation.Set.validation.endTimeStamp.delay.too.long=La duración del lance (%1$s minutes) es elevada (máximo %2$s minutos). \#TODO
    
    1494
    +observe.data.ps.observation.Set.validation.endTimeStamp.delay.too.short=La duración entre la hora final del lance y la de fin de recogida de la jareta debe (%1$s minutos) ser al menos de %1$s minutos. \#TODO
    
    1491 1495
     observe.data.ps.observation.Set.validation.haulingEndDate.after.currentPsObservationRoute.date=El día de final de recogida de la jareta (%2$s) debe ser superior o igual a la día de observación (%1$s).
    
    1492 1496
     observe.data.ps.observation.Set.validation.haulingEndTime.after.startTime=La hora final de recogida de la jareta (%2$s) debe ser superior o igual a la hora de comienzo (%1$s).
    
    1497
    +observe.data.ps.observation.Set.validation.haulingEndTimeStamp.after.startTime=La hora final de recogida de la jareta (%2$s) debe ser superior o igual a la hora de comienzo (%1$s).
    
    1493 1498
     observe.data.ps.observation.Set.validation.haulingStartTimeStamp.after.startTime=Hauling start time (%2$s) must be after starting time (%1$s). \#TODO
    
    1494 1499
     observe.data.ps.observation.Set.validation.startTime.after.currentPsObservationActivity.time=La hora de inicio (%2$s) debe ser superior o igual a la hora de observación de la actividad (%1$s).
    
    1495 1500
     observe.data.ps.observation.SetCatch.catches=Captura
    

  • core/services/i18n/src/main/i18n/translations/services_fr_FR.properties
    ... ... @@ -1488,8 +1488,13 @@ observe.data.ps.observation.Set.validation.endTime.after.haulingEndTime=L'heure
    1488 1488
     observe.data.ps.observation.Set.validation.endTime.after.startTime=L'heure de fin (%2$s) doit être supérieure ou égal à l'heure de de début (%1$s).
    
    1489 1489
     observe.data.ps.observation.Set.validation.endTime.delay.too.long=La durée de la calée (%1$s minutes) est trop longue (maximum de %2$s minutes).
    
    1490 1490
     observe.data.ps.observation.Set.validation.endTime.delay.too.short=La durée entre l'heure de fin de calée et l'heure de fin de coulissage (%1$s minutes) est trop courte (minimum de %2$s minutes).
    
    1491
    +observe.data.ps.observation.Set.validation.endTimeStamp.after.haulingEndTimeStamp=L'heure de fin (%2$s) doit être supérieure ou égal à l'heure de fin de coulissage (%1$s).
    
    1492
    +observe.data.ps.observation.Set.validation.endTimeStamp.after.startTime=L'heure de fin (%2$s) doit être supérieure ou égal à l'heure de de début (%1$s).
    
    1493
    +observe.data.ps.observation.Set.validation.endTimeStamp.delay.too.long=La durée de la calée (%1$s minutes) est trop longue (maximum de %2$s minutes).
    
    1494
    +observe.data.ps.observation.Set.validation.endTimeStamp.delay.too.short=La durée entre l'heure de fin de calée et l'heure de fin de coulissage (%1$s minutes) est trop courte (minimum de %2$s minutes).
    
    1491 1495
     observe.data.ps.observation.Set.validation.haulingEndDate.after.currentPsObservationRoute.date=La date de fin de coulissage (%2$s) doit être supérieure ou égal à la date du jour d'observation (%1$s).
    
    1492 1496
     observe.data.ps.observation.Set.validation.haulingEndTime.after.startTime=L'heure de fin de coulissage (%2$s) doit être supérieure ou égal à l'heure de début (%1$s).
    
    1497
    +observe.data.ps.observation.Set.validation.haulingEndTimeStamp.after.startTime=L'heure de fin de coulissage (%2$s) doit être supérieure ou égal à l'heure de début (%1$s).
    
    1493 1498
     observe.data.ps.observation.Set.validation.haulingStartTimeStamp.after.startTime=L'heure de début de virage (%2$s) doit être supérieure ou égal à celle de début (%1$s).
    
    1494 1499
     observe.data.ps.observation.Set.validation.startTime.after.currentPsObservationActivity.time=L'heure de début (%2$s) doit être supérieure ou égal à l'heure d'observation de l'activité (%1$s).
    
    1495 1500
     observe.data.ps.observation.SetCatch.catches=Captures
    

  • model/src/main/models/Observe/dto/attribute/timeAfter.properties
    ... ... @@ -21,6 +21,4 @@
    21 21
     ###
    
    22 22
     data.ll.logbook.Activity.attribute.endTimeStamp=startTime
    
    23 23
     data.ps.logbook.SampleSpecies.attribute.endTime=startTime
    
    24
    -data.ps.observation.Set.attribute.endTimeStamp=startTime,haulingEndTimeStamp:-45
    
    25
    -data.ps.observation.Set.attribute.haulingEndTimeStamp=startTime
    
    26 24
     data.ps.observation.Set.attribute.startTime=currentPsObservationActivity.time

  • model/src/main/models/Observe/dto/attribute/timestampAfter.properties
    ... ... @@ -26,4 +26,6 @@ data.ll.observation.Set.attribute.settingEndTimeStamp=!settingStartTimeStamp
    26 26
     data.ll.observation.Tdr.attribute.deploymentEnd=!fishingEnd
    
    27 27
     data.ll.observation.Tdr.attribute.fishingEnd=!fishingStart
    
    28 28
     data.ll.observation.Tdr.attribute.fishingStart=!deploymentStart
    
    29
    +data.ps.observation.Set.attribute.endTimeStamp=startTime,haulingEndTimeStamp:-45
    
    30
    +data.ps.observation.Set.attribute.haulingEndTimeStamp=startTime
    
    29 31
     data.ps.observation.Set.attribute.haulingStartTimeStamp=startTime

  • model/src/main/models/Observe/dto/attribute/timeAfterWarning.propertiesmodel/src/main/models/Observe/dto/attribute/timestampAfterWarning.properties

  • toolkit/templates/src/main/java/fr/ird/observe/toolkit/templates/validation/DtoFormValidatorTransformer.java
    ... ... @@ -393,7 +393,7 @@ public class DtoFormValidatorTransformer extends ObjectModelTransformerToJava {
    393 393
                         "      <message>%3$s##${startDate}##${endDate}</message>\n" +
    
    394 394
                         "    </field-validator>\n";
    
    395 395
         private static final String TIME_AFTER_WITH_MIN_DELAY_FIELD_TEMPLATE =
    
    396
    -            "    <!-- %1$s >= %2$s and max delay is %4$s minutes -->\n" +
    
    396
    +            "    <!-- %1$s >= %2$s and min delay is %4$s minutes -->\n" +
    
    397 397
                         "    <field-validator type=\"timeAfter\">\n" +
    
    398 398
                         "      <param name=\"otherDateProperty\">%2$s</param>\n" +
    
    399 399
                         "      <param name=\"minDelayInMinutes\">%4$s</param>\n" +
    
    ... ... @@ -409,7 +409,7 @@ public class DtoFormValidatorTransformer extends ObjectModelTransformerToJava {
    409 409
                         "      <message>%3$s##${startDate}##${endDate}</message>\n" +
    
    410 410
                         "    </field-validator>\n";
    
    411 411
         private static final String TIMESTAMP_AFTER_WITH_MIN_DELAY_FIELD_TEMPLATE =
    
    412
    -            "    <!-- %1$s >= %2$s and max delay is %4$s minutes -->\n" +
    
    412
    +            "    <!-- %1$s >= %2$s and min delay is %4$s minutes -->\n" +
    
    413 413
                         "    <field-validator type=\"timestampAfter\">\n" +
    
    414 414
                         "      <param name=\"otherDateProperty\">%2$s</param>\n" +
    
    415 415
                         "      <param name=\"minDelayInMinutes\">%4$s</param>\n" +
    
    ... ... @@ -622,8 +622,8 @@ public class DtoFormValidatorTransformer extends ObjectModelTransformerToJava {
    622 622
                 Map<String, String> dayAfter = getStringProperties(beanClass, attributes, (c, a) -> validationTagValues.getDayAfter(tagValuesStore, c, a));
    
    623 623
                 Map<String, String> dayAfterWarning = getStringProperties(beanClass, attributes, (c, a) -> validationTagValues.getDayAfterWarning(tagValuesStore, c, a));
    
    624 624
                 Map<String, String> timeAfter = getStringProperties(beanClass, attributes, (c, a) -> validationTagValues.getTimeAfter(tagValuesStore, c, a));
    
    625
    -            Map<String, String> timeAfterWarning = getStringProperties(beanClass, attributes, (c, a) -> validationTagValues.getTimeAfterWarning(tagValuesStore, c, a));
    
    626 625
                 Map<String, String> timestampAfter = getStringProperties(beanClass, attributes, (c, a) -> validationTagValues.getTimestampAfter(tagValuesStore, c, a));
    
    626
    +            Map<String, String> timestampAfterWarning = getStringProperties(beanClass, attributes, (c, a) -> validationTagValues.getTimestampAfterWarning(tagValuesStore, c, a));
    
    627 627
                 List<String> mandatory = TemplateContract.getProperties(beanClass, attributes, (c, a) -> validationTagValues.isNotNull(tagValuesStore, c, a) && !"String".equals(GeneratorUtil.getSimpleName(a.getType())));
    
    628 628
                 List<String> mandatoryString = TemplateContract.getProperties(beanClass, attributes, (c, a) -> validationTagValues.isNotNull(tagValuesStore, c, a) && "String".equals(GeneratorUtil.getSimpleName(a.getType())));
    
    629 629
                 List<String> mandatoryCollection = TemplateContract.getProperties(beanClass, attributes, (c, a) -> validationTagValues.isNotNull(tagValuesStore, c, a) && GeneratorUtil.isNMultiplicity(a));
    
    ... ... @@ -690,7 +690,7 @@ public class DtoFormValidatorTransformer extends ObjectModelTransformerToJava {
    690 690
                     return String.format(MANDATORY_IF_STRING_FIELD_TEMPLATE, f, value, i18n);
    
    691 691
                 });
    
    692 692
     
    
    693
    -            addTemporalValidators(dayBefore, dayAfter, dayAfterWarning, timeAfter, timeAfterWarning, timestampAfter);
    
    693
    +            addTemporalValidators(dayBefore, dayAfter, dayAfterWarning, timeAfter, timestampAfter, timestampAfterWarning);
    
    694 694
     
    
    695 695
                 addErrorValidators(positiveNumber, POSITIVE_NUMBER_FIELD_TEMPLATE);
    
    696 696
                 addErrorValidators(strictlyPositiveNumber, STRICTLY_POSITIVE_NUMBER_FIELD_TEMPLATE);
    
    ... ... @@ -802,7 +802,7 @@ public class DtoFormValidatorTransformer extends ObjectModelTransformerToJava {
    802 802
             addUserValidators(userValidators, dtoClazz);
    
    803 803
         }
    
    804 804
     
    
    805
    -    private void addTemporalValidators(Map<String, String> dayBefore, Map<String, String> dayAfter, Map<String, String> dayAfterWarning, Map<String, String> timeAfter, Map<String, String> timeAfterWarning, Map<String, String> timestampAfter) {
    
    805
    +    private void addTemporalValidators(Map<String, String> dayBefore, Map<String, String> dayAfter, Map<String, String> dayAfterWarning, Map<String, String> timeAfter, Map<String, String> timestampAfter, Map<String, String> timestampAfterWarning) {
    
    806 806
             addErrorValidators(dayBefore, (f, v) -> {
    
    807 807
                 String values = (String) v;
    
    808 808
                 StringBuilder result = new StringBuilder();
    
    ... ... @@ -923,10 +923,10 @@ public class DtoFormValidatorTransformer extends ObjectModelTransformerToJava {
    923 923
                         if (delay.startsWith("-")) {
    
    924 924
                             delay = delay.substring(1);
    
    925 925
                             template = TIMESTAMP_AFTER_WITH_MIN_DELAY_FIELD_TEMPLATE;
    
    926
    -                        i18n2 = labelsBuilder.getI18nPropertyKey(dtoClazz, String.format("validation.%s.delay.too.long", f));
    
    926
    +                        i18n2 = labelsBuilder.getI18nPropertyKey(dtoClazz, String.format("validation.%s.delay.too.short", f));
    
    927 927
                         } else {
    
    928 928
                             template = TIMESTAMP_AFTER_WITH_MAX_DELAY_FIELD_TEMPLATE;
    
    929
    -                        i18n2 = labelsBuilder.getI18nPropertyKey(dtoClazz, String.format("validation.%s.delay.too.short", f));
    
    929
    +                        i18n2 = labelsBuilder.getI18nPropertyKey(dtoClazz, String.format("validation.%s.delay.too.long", f));
    
    930 930
                         }
    
    931 931
                         value = value.substring(0, index);
    
    932 932
                         String i18n = labelsBuilder.getI18nPropertyKey(dtoClazz, String.format("validation.%s.after.%s", f, value));
    
    ... ... @@ -948,7 +948,7 @@ public class DtoFormValidatorTransformer extends ObjectModelTransformerToJava {
    948 948
                 }
    
    949 949
                 return result.toString();
    
    950 950
             });
    
    951
    -        addWarningValidators(timeAfterWarning, (f, v) -> {
    
    951
    +        addWarningValidators(timestampAfterWarning, (f, v) -> {
    
    952 952
                 String values = (String) v;
    
    953 953
                 StringBuilder result = new StringBuilder();
    
    954 954
                 for (String value : values.split("\\s*,\\s*")) {
    
    ... ... @@ -960,11 +960,11 @@ public class DtoFormValidatorTransformer extends ObjectModelTransformerToJava {
    960 960
                         String i18n2;
    
    961 961
                         if (delay.startsWith("-")) {
    
    962 962
                             delay = delay.substring(1);
    
    963
    -                        template = TIME_AFTER_WITH_MIN_DELAY_FIELD_TEMPLATE;
    
    963
    +                        template = TIMESTAMP_AFTER_WITH_MIN_DELAY_FIELD_TEMPLATE;
    
    964 964
                             i18n2 = labelsBuilder.getI18nPropertyKey(dtoClazz, String.format("validation.%s.delay.too.short", f));
    
    965 965
                         } else {
    
    966 966
                             i18n2 = labelsBuilder.getI18nPropertyKey(dtoClazz, String.format("validation.%s.delay.too.long", f));
    
    967
    -                        template = TIME_AFTER_WITH_MAX_DELAY_FIELD_TEMPLATE;
    
    967
    +                        template = TIMESTAMP_AFTER_WITH_MAX_DELAY_FIELD_TEMPLATE;
    
    968 968
                         }
    
    969 969
                         value = value.substring(0, index);
    
    970 970
                         String i18n = labelsBuilder.getI18nPropertyKey(dtoClazz, String.format("validation.%s.after.%s", f, value));
    
    ... ... @@ -976,7 +976,7 @@ public class DtoFormValidatorTransformer extends ObjectModelTransformerToJava {
    976 976
                     }
    
    977 977
                 }
    
    978 978
                 return result.toString();
    
    979
    -        }, timeFunction);
    
    979
    +        });
    
    980 980
         }
    
    981 981
     
    
    982 982
         private void addBoundTemperature(Map<String, String> boundTemperature) {
    

  • toolkit/templates/src/main/java/fr/ird/observe/toolkit/templates/validation/ValidationTagValues.java
    ... ... @@ -269,8 +269,8 @@ public class ValidationTagValues extends DefaultTagValueMetadatasProvider {
    269 269
         public String getTimeAfter(ObjectModelTagValuesStore store, ObjectModelClass clazz, ObjectModelAttribute attribute) {
    
    270 270
             return store.findAttributeTagValue(Store.timeAfter, clazz, attribute);
    
    271 271
         }
    
    272
    -    public String getTimeAfterWarning(ObjectModelTagValuesStore store, ObjectModelClass clazz, ObjectModelAttribute attribute) {
    
    273
    -        return store.findAttributeTagValue(Store.timeAfterWarning, clazz, attribute);
    
    272
    +    public String getTimestampAfterWarning(ObjectModelTagValuesStore store, ObjectModelClass clazz, ObjectModelAttribute attribute) {
    
    273
    +        return store.findAttributeTagValue(Store.timestampAfterWarning, clazz, attribute);
    
    274 274
         }
    
    275 275
     
    
    276 276
         public String getTimestampAfter(ObjectModelTagValuesStore store, ObjectModelClass clazz, ObjectModelAttribute attribute) {
    
    ... ... @@ -343,7 +343,7 @@ public class ValidationTagValues extends DefaultTagValueMetadatasProvider {
    343 343
             dayAfterWarning("Pour qualifier un attribut date avec validation warning", String.class, null, ObjectModelAttribute.class),
    
    344 344
             dayBefore("Pour qualifier un attribut date avec validation", String.class, null, ObjectModelAttribute.class),
    
    345 345
             timeAfter("Pour qualifier un attribut time avec validation", String.class, null, ObjectModelAttribute.class),
    
    346
    -        timeAfterWarning("Pour qualifier un attribut time avec validation warning", String.class, null, ObjectModelAttribute.class),
    
    346
    +        timestampAfterWarning("Pour qualifier un attribut time avec validation warning", String.class, null, ObjectModelAttribute.class),
    
    347 347
             timestampAfter("Pour qualifier un attribut timestamp avec validation", String.class, null, ObjectModelAttribute.class),
    
    348 348
             notNullIf("Pour qualifier un attribut non null avec une condition pour ne pas traiter la validation", boolean.class, null, ObjectModelAttribute.class),
    
    349 349
             unique("Pour qualifier un attribut qui doit être unique", boolean.class, null, ObjectModelAttribute.class),